     _ (init-gc)
     _ (mark-stack)
 
-    _ (<-b (llvm/BuildRetVoid))]
+    [val blk] (add-block "loop"
+                         (gen-plan
+                          [val (alloc-amc ::cons_t)
+                           this-blk (get-block)
+                           _ (<-b (llvm/BuildBr this-blk))]
+                          nil))
+
+    _ (<-b (llvm/BuildBr blk))
+
+
+    #_ _ #_(<-b (llvm/BuildRetVoid))]
    nil))
 
 (defn do-it2 []

    _ (<-b (llvm/BuildCondBr small? small not-small))]
   nil))



(defn add-externals []
  (gen-plan

                               (&tp obj_pad_t)
                               (&tp obj_skip_t)
                               (&tp obj_isfwd_t)]
                              i8*))
    cm_pool_amc_reserve (add-function "cm_pool_amc_reserve"
                                      (function-type
                                       [i8** size-t] size-t))
    cm_pool_amc_commit (add-function "cm_pool_amc_commit"
                                     (function-type
                                      [i8** size-t] size-t))]
   nil))


