diff options
Diffstat (limited to 'test/builtins/append.sail')
| -rw-r--r-- | test/builtins/append.sail | 260 |
1 files changed, 260 insertions, 0 deletions
diff --git a/test/builtins/append.sail b/test/builtins/append.sail new file mode 100644 index 00000000..aae60da6 --- /dev/null +++ b/test/builtins/append.sail @@ -0,0 +1,260 @@ +default Order dec + +$include <exception_basic.sail> +$include <flow.sail> +$include <vector_dec.sail> + +function main (() : unit) -> unit = { + assert(0^0x0 @ 128^0x0 == 128^0x0); + assert(0^0x0 @ 64^0x10000cc == 64^0x10000cc); + assert(0^0x0 @ 64^0x1000254 == 64^0x1000254); + assert(0^0x0 @ 64^0x101070 == 64^0x101070); + assert(0^0x0 @ 64^0x10200c == 64^0x10200c); + assert(0^0x0 @ 64^0x1021ac == 64^0x1021ac); + assert(0^0x0 @ 64^0x1040d8 == 64^0x1040d8); + assert(0^0x0 @ 64^0x104550 == 64^0x104550); + assert(0^0x0 @ 64^0x104e10 == 64^0x104e10); + assert(0^0x0 @ 64^0x104fc0 == 64^0x104fc0); + assert(0^0x0 @ 64^0x105190 == 64^0x105190); + assert(0^0x0 @ 64^0x1054a0 == 64^0x1054a0); + assert(0^0x0 @ 64^0x1056d4 == 64^0x1056d4); + assert(0^0x0 @ 64^0x10ef8 == 64^0x10ef8); + assert(0^0x0 @ 64^0x125a8 == 64^0x125a8); + assert(0^0x0 @ 64^0x140000c == 64^0x140000c); + assert(0^0x0 @ 64^0x14001b0 == 64^0x14001b0); + assert(0^0x0 @ 64^0x1400354 == 64^0x1400354); + assert(0^0x0 @ 64^0x14004f8 == 64^0x14004f8); + assert(0^0x0 @ 64^0x14006b0 == 64^0x14006b0); + assert(0^0x0 @ 64^0x1400860 == 64^0x1400860); + assert(0^0x0 @ 64^0x14d80 == 64^0x14d80); + assert(0^0x0 @ 64^0x164a8 == 64^0x164a8); + assert(0^0x0 @ 64^0x1a778 == 64^0x1a778); + assert(0^0x0 @ 64^0x1a9b8 == 64^0x1a9b8); + assert(0^0x0 @ 64^0x1ad3c == 64^0x1ad3c); + assert(0^0x0 @ 64^0x1af4c == 64^0x1af4c); + assert(0^0x0 @ 64^0x1b0e4 == 64^0x1b0e4); + assert(0^0x0 @ 64^0x1b2a0 == 64^0x1b2a0); + assert(0^0x0 @ 64^0x1b874 == 64^0x1b874); + assert(0^0x0 @ 64^0x1baf0 == 64^0x1baf0); + assert(0^0x0 @ 64^0x1beb8 == 64^0x1beb8); + assert(0^0x0 @ 64^0x1c0c0 == 64^0x1c0c0); + assert(0^0x0 @ 64^0x1c464 == 64^0x1c464); + assert(0^0x0 @ 64^0x1c624 == 64^0x1c624); + assert(0^0x0 @ 64^0x1c7c0 == 64^0x1c7c0); + assert(0^0x0 @ 64^0x1c9b8 == 64^0x1c9b8); + assert(0^0x0 @ 64^0x1cb50 == 64^0x1cb50); + assert(0^0x0 @ 64^0x1ccf0 == 64^0x1ccf0); + assert(0^0x0 @ 64^0x1cef4 == 64^0x1cef4); + assert(0^0x0 @ 64^0x1d0c8 == 64^0x1d0c8); + assert(0^0x0 @ 64^0x1d66c == 64^0x1d66c); + assert(0^0x0 @ 64^0x1e118 == 64^0x1e118); + assert(0^0x0 @ 64^0x1e644 == 64^0x1e644); + assert(0^0x0 @ 64^0x1ec33 == 64^0x1ec33); + assert(0^0x0 @ 64^0x1f600 == 64^0x1f600); + assert(0^0x0 @ 64^0x215c8 == 64^0x215c8); + assert(0^0x0 @ 64^0x217c2 == 64^0x217c2); + assert(0^0x0 @ 64^0x2197c == 64^0x2197c); + assert(0^0x0 @ 64^0x21a97 == 64^0x21a97); + assert(0^0x0 @ 64^0x21cd8 == 64^0x21cd8); + assert(0^0x0 @ 64^0x21d6e == 64^0x21d6e); + assert(0^0x0 @ 64^0x22348 == 64^0x22348); + assert(0^0x0 @ 64^0x2311c == 64^0x2311c); + assert(0^0x0 @ 64^0x23590 == 64^0x23590); + assert(0^0x0 @ 64^0x2e == 64^0x2e); + assert(0^0x0 @ 64^0x2e00310 == 64^0x2e00310); + assert(0^0x0 @ 64^0x2e010f8 == 64^0x2e010f8); + assert(0^0x0 @ 64^0x2e01418 == 64^0x2e01418); + assert(0^0x0 @ 64^0x2e01738 == 64^0x2e01738); + assert(0^0x0 @ 64^0x2f00110 == 64^0x2f00110); + assert(0^0x0 @ 64^0x2f00430 == 64^0x2f00430); + assert(0^0x0 @ 64^0x2f00750 == 64^0x2f00750); + assert(0^0x0 @ 64^0x2f00a70 == 64^0x2f00a70); + assert(0^0x0 @ 64^0x2f00d90 == 64^0x2f00d90); + assert(0^0x0 @ 64^0x3008d8c == 64^0x3008d8c); + assert(0^0x0 @ 64^0x31d00c0 == 64^0x31d00c0); + assert(0^0x0 @ 64^0x31d0594 == 64^0x31d0594); + assert(0^0x0 @ 64^0x31d0760 == 64^0x31d0760); + assert(0^0x0 @ 64^0x31d095c == 64^0x31d095c); + assert(0^0x0 @ 64^0x31d0af8 == 64^0x31d0af8); + assert(0^0x0 @ 64^0x31d0cc8 == 64^0x31d0cc8); + assert(0^0x0 @ 64^0x31d0e88 == 64^0x31d0e88); + assert(0^0x0 @ 64^0x31d11a4 == 64^0x31d11a4); + assert(0^0x0 @ 64^0x31d13e8 == 64^0x31d13e8); + assert(0^0x0 @ 64^0x31d1708 == 64^0x31d1708); + assert(0^0x0 @ 64^0x31d1c4c == 64^0x31d1c4c); + assert(0^0x0 @ 64^0x3808068 == 64^0x3808068); + assert(0^0x0 @ 64^0x3819d98 == 64^0x3819d98); + assert(0^0x0 @ 64^0x381b2f8 == 64^0x381b2f8); + assert(0^0x0 @ 64^0x600003c0 == 64^0x600003c0); + assert(0^0x0 @ 64^0x7c == 64^0x7c); + assert(0^0x0 @ 64^0x9 == 64^0x9); + assert(0^0x0 @ 64^0xc00fefff == 64^0xc00fefff); + assert(1^0x0 @ 5^0x1e == 6^0x1e); + assert(10^0x202 @ 1^0x0 == 11^0x404); + assert(14^0x0 @ 64^0x5c003 == 78^0x5c003); + assert(19^0x33 @ 2^0x0 == 21^0xcc); + assert(19^0x9f @ 2^0x0 == 21^0x27c); + assert(24^0x0 @ 32^0x8 == 56^0x8); + assert(26^0x1 @ 2^0x0 == 28^0x4); + assert(26^0x3b08414 @ 2^0x0 == 28^0xec21050); + assert(26^0x3ffdc6b @ 2^0x0 == 28^0xfff71ac); + assert(26^0x3ffe79d @ 2^0x0 == 28^0xfff9e74); + assert(26^0x3ffee69 @ 2^0x0 == 28^0xfffb9a4); + assert(26^0x56d @ 2^0x0 == 28^0x15b4); + assert(31^0x0 @ 33^0x37fb000 == 64^0x37fb000); + assert(32^0x0 @ 32^0x4b == 64^0x4b); + assert(32^0x0 @ 32^0xffffff80 == 64^0xffffff80); + assert(32^0x5 @ 8^0x0 == 40^0x500); + assert(34^0x1cd @ 14^0x754 == 48^0x734754); + assert(34^0xc44 @ 14^0x0 == 48^0x3110000); + assert(36^0x0 @ 28^0x6f8 == 64^0x6f8); + assert(36^0xfffffffff @ 28^0xec2138c == 64^0xfffffffffec2138c); + assert(36^0xfffffffff @ 28^0xfff8a40 == 64^0xffffffffffff8a40); + assert(36^0xfffffffff @ 28^0xfffa3b8 == 64^0xffffffffffffa3b8); + assert(36^0xfffffffff @ 28^0xfffee18 == 64^0xffffffffffffee18); + assert(38^0x100 @ 14^0xb == 52^0x40000b); + assert(38^0x182 @ 14^0x38 == 52^0x608038); + assert(38^0x182 @ 14^0xe0 == 52^0x6080e0); + assert(38^0x1ce @ 14^0x21c == 52^0x73821c); + assert(38^0x1ce @ 14^0x3a0 == 52^0x7383a0); + assert(38^0x1ce @ 14^0x530 == 52^0x738530); + assert(38^0x1ce @ 14^0x6c4 == 52^0x7386c4); + assert(38^0x1ce @ 14^0x85c == 52^0x73885c); + assert(38^0x1d1 @ 14^0x454 == 52^0x744454); + assert(38^0x55a @ 14^0x11b0 == 52^0x15691b0); + assert(38^0x55a @ 14^0x14a0 == 52^0x15694a0); + assert(38^0x55a @ 14^0x1790 == 52^0x1569790); + assert(38^0x55a @ 14^0x350 == 52^0x1568350); + assert(38^0x59a @ 14^0x168 == 52^0x1668168); + assert(38^0x59a @ 14^0x458 == 52^0x1668458); + assert(38^0x59a @ 14^0x748 == 52^0x1668748); + assert(38^0x59a @ 14^0xa38 == 52^0x1668a38); + assert(38^0x59a @ 14^0xd28 == 52^0x1668d28); + assert(38^0x602 @ 14^0xe38 == 52^0x1808e38); + assert(38^0x803 @ 14^0x18f8 == 52^0x200d8f8); + assert(38^0x806 @ 14^0x2ee0 == 52^0x201aee0); + assert(38^0x84 @ 14^0xecc == 52^0x210ecc); + assert(38^0x85 @ 14^0x24dc == 52^0x2164dc); + assert(38^0x85 @ 14^0xdac == 52^0x214dac); + assert(38^0x86 @ 14^0x28f8 == 52^0x21a8f8); + assert(38^0x86 @ 14^0x2c7c == 52^0x21ac7c); + assert(38^0x86 @ 14^0x2e0c == 52^0x21ae0c); + assert(38^0x86 @ 14^0x301c == 52^0x21b01c); + assert(38^0x86 @ 14^0x31b8 == 52^0x21b1b8); + assert(38^0x86 @ 14^0x3768 == 52^0x21b768); + assert(38^0x86 @ 14^0x398c == 52^0x21b98c); + assert(38^0x86 @ 14^0x3df0 == 52^0x21bdf0); + assert(38^0x87 @ 14^0x100 == 52^0x21c100); + assert(38^0x87 @ 14^0x14d8 == 52^0x21d4d8); + assert(38^0x87 @ 14^0x20a4 == 52^0x21e0a4); + assert(38^0x87 @ 14^0x2142 == 52^0x21e142); + assert(38^0x87 @ 14^0x2660 == 52^0x21e660); + assert(38^0x87 @ 14^0x2c38 == 52^0x21ec38); + assert(38^0x87 @ 14^0x3f0 == 52^0x21c3f0); + assert(38^0x87 @ 14^0x570 == 52^0x21c570); + assert(38^0x87 @ 14^0x714 == 52^0x21c714); + assert(38^0x87 @ 14^0x8ec == 52^0x21c8ec); + assert(38^0x87 @ 14^0xa68 == 52^0x21ca68); + assert(38^0x87 @ 14^0xbe4 == 52^0x21cbe4); + assert(38^0x87 @ 14^0xdb0 == 52^0x21cdb0); + assert(38^0x87 @ 14^0xf58 == 52^0x21cf58); + assert(38^0x88 @ 14^0x1568 == 52^0x221568); + assert(38^0x88 @ 14^0x17ae == 52^0x2217ae); + assert(38^0x88 @ 14^0x1964 == 52^0x221964); + assert(38^0x88 @ 14^0x1a64 == 52^0x221a64); + assert(38^0x88 @ 14^0x1c90 == 52^0x221c90); + assert(38^0x88 @ 14^0x1d58 == 52^0x221d58); + assert(38^0x88 @ 14^0x208c == 52^0x22208c); + assert(38^0x88 @ 14^0x3100 == 52^0x223100); + assert(38^0x88 @ 14^0x3574 == 52^0x223574); + assert(38^0xb11 @ 14^0x2008 == 52^0x2c46008); + assert(38^0xb8d @ 14^0x70 == 52^0x2e34070); + assert(4^0x0 @ 48^0x10423c == 52^0x10423c); + assert(4^0x0 @ 48^0x608094 == 52^0x608094); + assert(4^0x0 @ 52^0x10111c == 56^0x10111c); + assert(4^0x0 @ 52^0x102098 == 56^0x102098); + assert(4^0x0 @ 52^0x10400c == 56^0x10400c); + assert(4^0x0 @ 52^0x1041ac == 56^0x1041ac); + assert(4^0x0 @ 52^0x104728 == 56^0x104728); + assert(4^0x0 @ 52^0x104edc == 56^0x104edc); + assert(4^0x0 @ 52^0x1050ac == 56^0x1050ac); + assert(4^0x0 @ 52^0x105270 == 56^0x105270); + assert(4^0x0 @ 52^0x10558c == 56^0x10558c); + assert(4^0x0 @ 52^0x1057e8 == 56^0x1057e8); + assert(4^0x0 @ 52^0x1568200 == 56^0x1568200); + assert(4^0x0 @ 52^0x1568520 == 56^0x1568520); + assert(4^0x0 @ 52^0x1569310 == 56^0x1569310); + assert(4^0x0 @ 52^0x1569630 == 56^0x1569630); + assert(4^0x0 @ 52^0x1668090 == 56^0x1668090); + assert(4^0x0 @ 52^0x16683b0 == 56^0x16683b0); + assert(4^0x0 @ 52^0x16686d0 == 56^0x16686d0); + assert(4^0x0 @ 52^0x16689f0 == 56^0x16689f0); + assert(4^0x0 @ 52^0x1668d10 == 56^0x1668d10); + assert(4^0x0 @ 52^0x1808e28 == 56^0x1808e28); + assert(4^0x0 @ 52^0x200d8e0 == 56^0x200d8e0); + assert(4^0x0 @ 52^0x201acb8 == 56^0x201acb8); + assert(4^0x0 @ 52^0x210f64 == 56^0x210f64); + assert(4^0x0 @ 52^0x214db0 == 56^0x214db0); + assert(4^0x0 @ 52^0x2165e4 == 56^0x2165e4); + assert(4^0x0 @ 52^0x21a8d4 == 56^0x21a8d4); + assert(4^0x0 @ 52^0x21aa84 == 56^0x21aa84); + assert(4^0x0 @ 52^0x21ade8 == 56^0x21ade8); + assert(4^0x0 @ 52^0x21aff8 == 56^0x21aff8); + assert(4^0x0 @ 52^0x21b194 == 56^0x21b194); + assert(4^0x0 @ 52^0x21b744 == 56^0x21b744); + assert(4^0x0 @ 52^0x21b968 == 56^0x21b968); + assert(4^0x0 @ 52^0x21bdcc == 56^0x21bdcc); + assert(4^0x0 @ 52^0x21bfe4 == 56^0x21bfe4); + assert(4^0x0 @ 52^0x21c18c == 56^0x21c18c); + assert(4^0x0 @ 52^0x21c524 == 56^0x21c524); + assert(4^0x0 @ 52^0x21c6d8 == 56^0x21c6d8); + assert(4^0x0 @ 52^0x21c8dc == 56^0x21c8dc); + assert(4^0x0 @ 52^0x21ca70 == 56^0x21ca70); + assert(4^0x0 @ 52^0x21cc04 == 56^0x21cc04); + assert(4^0x0 @ 52^0x21cdf0 == 56^0x21cdf0); + assert(4^0x0 @ 52^0x21cfb8 == 56^0x21cfb8); + assert(4^0x0 @ 52^0x21d4e4 == 56^0x21d4e4); + assert(4^0x0 @ 52^0x21e0c8 == 56^0x21e0c8); + assert(4^0x0 @ 52^0x21e16c == 56^0x21e16c); + assert(4^0x0 @ 52^0x21e704 == 56^0x21e704); + assert(4^0x0 @ 52^0x21f1a4 == 56^0x21f1a4); + assert(4^0x0 @ 52^0x221528 == 56^0x221528); + assert(4^0x0 @ 52^0x22176c == 56^0x22176c); + assert(4^0x0 @ 52^0x221940 == 56^0x221940); + assert(4^0x0 @ 52^0x221a40 == 56^0x221a40); + assert(4^0x0 @ 52^0x221c6c == 56^0x221c6c); + assert(4^0x0 @ 52^0x221d4d == 56^0x221d4d); + assert(4^0x0 @ 52^0x221fc4 == 56^0x221fc4); + assert(4^0x0 @ 52^0x2230d4 == 56^0x2230d4); + assert(4^0x0 @ 52^0x223548 == 56^0x223548); + assert(4^0x0 @ 52^0x22364f == 56^0x22364f); + assert(4^0x0 @ 52^0x2e34018 == 56^0x2e34018); + assert(4^0x0 @ 52^0x2e50078 == 56^0x2e50078); + assert(4^0x0 @ 52^0x31d0144 == 56^0x31d0144); + assert(4^0x0 @ 52^0x31d05f8 == 56^0x31d05f8); + assert(4^0x0 @ 52^0x31d0808 == 56^0x31d0808); + assert(4^0x0 @ 52^0x31d09c0 == 56^0x31d09c0); + assert(4^0x0 @ 52^0x31d0b7c == 56^0x31d0b7c); + assert(4^0x0 @ 52^0x31d0d38 == 56^0x31d0d38); + assert(4^0x0 @ 52^0x31d0fb0 == 56^0x31d0fb0); + assert(4^0x0 @ 52^0x31d1224 == 56^0x31d1224); + assert(4^0x0 @ 52^0x31d14b0 == 56^0x31d14b0); + assert(4^0x0 @ 52^0x31d1818 == 56^0x31d1818); + assert(4^0x0 @ 52^0x400003 == 56^0x400003); + assert(4^0x0 @ 52^0x608118 == 56^0x608118); + assert(4^0x0 @ 52^0x60849c == 56^0x60849c); + assert(4^0x0 @ 52^0x738018 == 56^0x738018); + assert(4^0x0 @ 52^0x7381cc == 56^0x7381cc); + assert(4^0x0 @ 52^0x738370 == 56^0x738370); + assert(4^0x0 @ 52^0x73851c == 56^0x73851c); + assert(4^0x0 @ 52^0x7386cc == 56^0x7386cc); + assert(4^0x0 @ 52^0x73887c == 56^0x73887c); + assert(4^0xc @ 5^0x1 == 9^0x181); + assert(43^0x0 @ 21^0x324 == 64^0x324); + assert(43^0x7ffffffffff @ 21^0x1fffe0 == 64^0xffffffffffffffe0); + assert(48^0x31d183 @ 4^0x0 == 52^0x31d1830); + assert(52^0x0 @ 12^0xa == 64^0xa); + assert(64^0x2 @ 5^0x0 == 69^0x40); + assert(64^0x381a7d8 @ 0^0x0 == 64^0x381a7d8); + assert(9^0x182 @ 1^0x0 == 10^0x304); +} |
