[call jhc_malloc_atomic when appropriate
John Meacham <john@repetae.net>**20060430013307] hunk ./C/FromGrin.hs 173
+jhc_malloc_atomic sz = functionCall (name "jhc_malloc_atomic") [sz]
hunk ./C/FromGrin.hs 192
-        malloc =  tmp `assign` jhc_malloc (sizeof  (if tagIsWHNF t then st else node_t))
+        malloc =  tmp `assign` wmalloc (sizeof  (if tagIsWHNF t then st else node_t))
hunk ./C/FromGrin.hs 194
+        wmalloc = if tagIsWHNF t && all (nonPtr . getType) as then jhc_malloc_atomic else jhc_malloc
hunk ./C/FromGrin.hs 196
+        nonPtr TyPtr {} = False
+        nonPtr TyNode = False
+        nonPtr (TyTup xs) = all nonPtr xs
+        nonPtr _ = True
hunk ./C/FromGrin.hs 452
+
hunk ./data/jhc_rts.c 17
+#define jhc_malloc_atomic GC_malloc_atomic
hunk ./data/jhc_rts.c 80
+#define jhc_malloc_atomic(x) jhc_malloc(x)
+
hunk ./data/jhc_rts.c 135
+#else
+        GC_INIT()