[save gc pointer in evaluator function rather than in eval itself
John Meacham <john@repetae.net>**20100327021222
 Ignore-this: 554d0ca6576d8467741ce6243782cf97
] hunk ./src/C/FromGrin2.hs 850
-        aname = name "arg";
-        rvar = localVariable wptr_t (name "r");
+        aname = name "arg"
+        rvar = localVariable wptr_t (name "r")
hunk ./src/C/FromGrin2.hs 856
-    tellFunctions [function fname wptr_t (mgct [(aname,atype)]) [a_STD, a_FALIGNED] (body & update & addroot & creturn rvar )]
+        body' = if not isCAF && fopts FO.Jgc then subBlock (gc_roots [variable aname] & rest) else rest
+        rest = body & update & addroot & creturn rvar
+    tellFunctions [function fname wptr_t (mgct [(aname,atype)]) [a_STD, a_FALIGNED] body']
hunk ./src/data/rts/jhc_jgc.h 31
-#define GC_MINIMUM_SIZE 1
+#define GC_MINIMUM_SIZE 3
hunk ./src/data/rts/jhc_rts2.c 285
-                            gc_frame0(gc,1,s);
-                            wptr_t r = (*fn)(gc,NODEP(ds));
+                        wptr_t r = (*fn)(gc,NODEP(ds));