]> gitweb.factorcode.org Git - factor.git/commitdiff
Add some compiler tests
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 28 Jul 2009 11:45:31 +0000 (06:45 -0500)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 28 Jul 2009 11:45:31 +0000 (06:45 -0500)
basis/compiler/tests/codegen.factor
basis/compiler/tests/low-level-ir.factor

index c93e20294efff5b5079f480e55f63694862498ec..f1d17fe4a26c03479e5dd5a09eee1e7a7e508fe7 100644 (file)
@@ -333,4 +333,16 @@ cell 4 = [
         ] if
     ] any? ; inline recursive
 
-[ t ] [ 3 [ return-recursive-bug ] compile-call ] unit-test
\ No newline at end of file
+[ t ] [ 3 [ return-recursive-bug ] compile-call ] unit-test
+
+! Coalescing reductions
+[ f ] [ V{ } 0 [ [ vector? ] both? ] compile-call ] unit-test
+[ f ] [ 0 V{ } [ [ vector? ] both? ] compile-call ] unit-test
+
+[ f ] [
+    f vector [
+        [ dup [ \ vector eq? ] [ drop f ] if ] dip
+        dup [ \ vector eq? ] [ drop f ] if
+        over rot [ drop ] [ nip ] if
+    ] compile-call
+] unit-test
\ No newline at end of file
index 313fd65dac38daeeb5614e8d81ccb062ccde466a..706a404330cdf68b2a809029095722019c45926a 100644 (file)
@@ -111,6 +111,13 @@ IN: compiler.tests
     } compile-test-bb
 ] unit-test
 
+[ 1 ] [
+    V{
+        T{ ##load-immediate f V int-regs 0 16 }
+        T{ ##add-imm f V int-regs 0 V int-regs 0 -8 }
+    } compile-test-bb
+] unit-test
+
 ! These are def-is-use-insns
 USE: multiline