;; Testing i64 lowering. (module (func $dummy) (func (export "eq_i64") (param $0 i64) (param $1 i64) (result i32) (i64.eq (local.get $0) (local.get $1))) (func (export "ne_i64") (param $0 i64) (param $1 i64) (result i32) (i64.ne (local.get $0) (local.get $1))) (func (export "ge_s_i64") (param $0 i64) (param $1 i64) (result i32) (i64.ge_s (local.get $0) (local.get $1))) (func (export "gt_s_i64") (param $0 i64) (param $1 i64) (result i32) (i64.gt_s (local.get $0) (local.get $1))) (func (export "le_s_i64") (param $0 i64) (param $1 i64) (result i32) (i64.le_s (local.get $0) (local.get $1))) (func (export "lt_s_i64") (param $0 i64) (param $1 i64) (result i32) (i64.lt_s (local.get $0) (local.get $1))) (func (export "ge_u_i64") (param $0 i64) (param $1 i64) (result i32) (i64.ge_u (local.get $0) (local.get $1))) (func (export "gt_u_i64") (param $0 i64) (param $1 i64) (result i32) (i64.gt_u (local.get $0) (local.get $1))) (func (export "le_u_i64") (param $0 i64) (param $1 i64) (result i32) (i64.le_u (local.get $0) (local.get $1))) (func (export "lt_u_i64") (param $0 i64) (param $1 i64) (result i32) (i64.lt_u (local.get $0) (local.get $1))) ) ;; TODO: change things so we can invoke with i64 args and automatically lower ;; the arguments, rather than doing it manually. (assert_return (invoke "eq_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "eq_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 0)) (assert_return (invoke "eq_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 0)) (assert_return (invoke "ne_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "ne_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 1)) (assert_return (invoke "ne_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 1)) (assert_return (invoke "lt_u_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "lt_u_i64" (i32.const 0) (i32.const 0) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "lt_u_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "lt_u_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 1)) (assert_return (invoke "lt_u_i64" (i32.const 0) (i32.const 1) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "lt_u_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "gt_u_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "gt_u_i64" (i32.const 0) (i32.const 0) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "gt_u_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "gt_u_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 0)) (assert_return (invoke "gt_u_i64" (i32.const 0) (i32.const 1) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "gt_u_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "le_u_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "le_u_i64" (i32.const 0) (i32.const 0) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "le_u_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "le_u_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 1)) (assert_return (invoke "le_u_i64" (i32.const 0) (i32.const 1) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "le_u_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "ge_u_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "ge_u_i64" (i32.const 0) (i32.const 0) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "ge_u_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "ge_u_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 0)) (assert_return (invoke "ge_u_i64" (i32.const 0) (i32.const 1) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "ge_u_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "lt_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "lt_s_i64" (i32.const 0) (i32.const 0) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "lt_s_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "lt_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 1)) (assert_return (invoke "lt_s_i64" (i32.const 0) (i32.const 1) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "lt_s_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "lt_s_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0xffffffff)) (i32.const 0)) (assert_return (invoke "lt_s_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0xffffffff)) (i32.const 1)) (assert_return (invoke "lt_s_i64" (i32.const 1) (i32.const 0xffffffff) (i32.const 0) (i32.const 0xffffffff)) (i32.const 0)) (assert_return (invoke "lt_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) (assert_return (invoke "lt_s_i64" (i32.const 0) (i32.const 0x80000000) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "gt_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "gt_s_i64" (i32.const 0) (i32.const 0) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "gt_s_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "gt_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 0)) (assert_return (invoke "gt_s_i64" (i32.const 0) (i32.const 1) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "gt_s_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "gt_s_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0xffffffff)) (i32.const 1)) (assert_return (invoke "gt_s_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0xffffffff)) (i32.const 0)) (assert_return (invoke "gt_s_i64" (i32.const 1) (i32.const 0xffffffff) (i32.const 0) (i32.const 0xffffffff)) (i32.const 1)) (assert_return (invoke "gt_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) (assert_return (invoke "gt_s_i64" (i32.const 0) (i32.const 0x80000000) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "le_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "le_s_i64" (i32.const 0) (i32.const 0) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "le_s_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 0)) (assert_return (invoke "le_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 1)) (assert_return (invoke "le_s_i64" (i32.const 0) (i32.const 1) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "le_s_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "le_s_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0xffffffff)) (i32.const 0)) (assert_return (invoke "le_s_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0xffffffff)) (i32.const 1)) (assert_return (invoke "le_s_i64" (i32.const 1) (i32.const 0xffffffff) (i32.const 0) (i32.const 0xffffffff)) (i32.const 0)) (assert_return (invoke "le_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) (assert_return (invoke "le_s_i64" (i32.const 0) (i32.const 0x80000000) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "ge_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "ge_s_i64" (i32.const 0) (i32.const 0) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "ge_s_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0)) (i32.const 1)) (assert_return (invoke "ge_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 1)) (i32.const 0)) (assert_return (invoke "ge_s_i64" (i32.const 0) (i32.const 1) (i32.const 1) (i32.const 0)) (i32.const 1)) (assert_return (invoke "ge_s_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0)) (i32.const 0)) (assert_return (invoke "ge_s_i64" (i32.const 1) (i32.const 0) (i32.const 0) (i32.const 0xffffffff)) (i32.const 1)) (assert_return (invoke "ge_s_i64" (i32.const 0) (i32.const 0xffffffff) (i32.const 1) (i32.const 0xffffffff)) (i32.const 0)) (assert_return (invoke "ge_s_i64" (i32.const 1) (i32.const 0xffffffff) (i32.const 0) (i32.const 0xffffffff)) (i32.const 1)) (assert_return (invoke "ge_s_i64" (i32.const 0) (i32.const 0) (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) (assert_return (invoke "ge_s_i64" (i32.const 0) (i32.const 0x80000000) (i32.const 0) (i32.const 0)) (i32.const 0))