From 4b35ff71df2f6f6c649a64cb28e37fda43fe63a9 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Mon, 24 Apr 2017 17:40:08 +0000 Subject: [PATCH] Do not copy pairs Already do not allow cons to be inlined, so it is (should be?) safe to pass any pairs directly through. Cannot make copies of any pairs except those between ptr and stack_top because that could cause equality checks to fail later on. --- include/cyclone/types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 6ee4b688..50c9ae11 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -1050,7 +1050,7 @@ typedef union { t == symbol_tag || /* Allocated in their own area */ \ t == bignum_tag) { /* Always heap allocated */ \ return obj; \ - } else if (t == pair_tag) { \ + } else if (0 && t == pair_tag) { \ ((common_type *)ptr)->pair_t.hdr.mark = gc_color_red; \ ((common_type *)ptr)->pair_t.hdr.grayed = 0; \ ((common_type *)ptr)->pair_t.tag = pair_tag; \