afonso360 labeled issue #5529:
:wave: Hey,
.clif
Test Casetest run target x86_64 function %simd_icmp_uge_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp uge v0, v1 return v2 } ; run: %simd_icmp_uge_i64([0 1], [0 0]) == [-1 -1] ; run: %simd_icmp_uge_i64([-1 0], [-1 1]) == [-1 0] ; run: %simd_icmp_uge_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_uge_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ugt_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ugt v0, v1 return v2 } ; run: %simd_icmp_ugt_i64([0 1], [0 0]) == [0 -1] ; run: %simd_icmp_ugt_i64([-1 0], [-1 1]) == [0 0] ; run: %simd_icmp_ugt_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_ugt_i64([0 0], [0 0]) == [0 0] function %simd_icmp_ule_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ule v0, v1 return v2 } ; run: %simd_icmp_ule_i64([0 1], [0 0]) == [-1 0] ; run: %simd_icmp_ule_i64([-1 0], [-1 1]) == [-1 -1] ; run: %simd_icmp_ule_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ule_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ult_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ult v0, v1 return v2 } ; run: %simd_icmp_ult_i64([0 1], [0 0]) == [0 0] ; run: %simd_icmp_ult_i64([-1 0], [-1 1]) == [0 -1] ; run: %simd_icmp_ult_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ult_i64([0 0], [0 0]) == [0 0]
Steps to Reproduce
clif-util test ./the-above.clif
Expected Results
The tests to pass
Actual Results
thread 'worker #1' panicked at 'internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial?', /home/afonso/git/wasmtime/target/debug/build/cranelift-codegen-cafe59ca8460988e/out/isle_x64.rs:4755:12 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ERROR cranelift_filetests::concurrent > FAIL: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? FAIL ./lmao.clif: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? 1 tests Error: 1 failure
Versions and Environment
Cranelift version or commit: Main
Operating system: Linux
Architecture: x86_64Extra Info
These tests already exist in our test suite.
afonso360 opened issue #5529:
:wave: Hey,
.clif
Test Casetest run target x86_64 function %simd_icmp_uge_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp uge v0, v1 return v2 } ; run: %simd_icmp_uge_i64([0 1], [0 0]) == [-1 -1] ; run: %simd_icmp_uge_i64([-1 0], [-1 1]) == [-1 0] ; run: %simd_icmp_uge_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_uge_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ugt_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ugt v0, v1 return v2 } ; run: %simd_icmp_ugt_i64([0 1], [0 0]) == [0 -1] ; run: %simd_icmp_ugt_i64([-1 0], [-1 1]) == [0 0] ; run: %simd_icmp_ugt_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_ugt_i64([0 0], [0 0]) == [0 0] function %simd_icmp_ule_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ule v0, v1 return v2 } ; run: %simd_icmp_ule_i64([0 1], [0 0]) == [-1 0] ; run: %simd_icmp_ule_i64([-1 0], [-1 1]) == [-1 -1] ; run: %simd_icmp_ule_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ule_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ult_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ult v0, v1 return v2 } ; run: %simd_icmp_ult_i64([0 1], [0 0]) == [0 0] ; run: %simd_icmp_ult_i64([-1 0], [-1 1]) == [0 -1] ; run: %simd_icmp_ult_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ult_i64([0 0], [0 0]) == [0 0]
Steps to Reproduce
clif-util test ./the-above.clif
Expected Results
The tests to pass
Actual Results
thread 'worker #1' panicked at 'internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial?', /home/afonso/git/wasmtime/target/debug/build/cranelift-codegen-cafe59ca8460988e/out/isle_x64.rs:4755:12 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ERROR cranelift_filetests::concurrent > FAIL: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? FAIL ./lmao.clif: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? 1 tests Error: 1 failure
Versions and Environment
Cranelift version or commit: Main
Operating system: Linux
Architecture: x86_64Extra Info
These tests already exist in our test suite.
afonso360 labeled issue #5529:
:wave: Hey,
.clif
Test Casetest run target x86_64 function %simd_icmp_uge_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp uge v0, v1 return v2 } ; run: %simd_icmp_uge_i64([0 1], [0 0]) == [-1 -1] ; run: %simd_icmp_uge_i64([-1 0], [-1 1]) == [-1 0] ; run: %simd_icmp_uge_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_uge_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ugt_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ugt v0, v1 return v2 } ; run: %simd_icmp_ugt_i64([0 1], [0 0]) == [0 -1] ; run: %simd_icmp_ugt_i64([-1 0], [-1 1]) == [0 0] ; run: %simd_icmp_ugt_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_ugt_i64([0 0], [0 0]) == [0 0] function %simd_icmp_ule_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ule v0, v1 return v2 } ; run: %simd_icmp_ule_i64([0 1], [0 0]) == [-1 0] ; run: %simd_icmp_ule_i64([-1 0], [-1 1]) == [-1 -1] ; run: %simd_icmp_ule_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ule_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ult_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ult v0, v1 return v2 } ; run: %simd_icmp_ult_i64([0 1], [0 0]) == [0 0] ; run: %simd_icmp_ult_i64([-1 0], [-1 1]) == [0 -1] ; run: %simd_icmp_ult_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ult_i64([0 0], [0 0]) == [0 0]
Steps to Reproduce
clif-util test ./the-above.clif
Expected Results
The tests to pass
Actual Results
thread 'worker #1' panicked at 'internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial?', /home/afonso/git/wasmtime/target/debug/build/cranelift-codegen-cafe59ca8460988e/out/isle_x64.rs:4755:12 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ERROR cranelift_filetests::concurrent > FAIL: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? FAIL ./lmao.clif: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? 1 tests Error: 1 failure
Versions and Environment
Cranelift version or commit: Main
Operating system: Linux
Architecture: x86_64Extra Info
These tests already exist in our test suite.
afonso360 edited issue #5529:
:wave: Hey,
.clif
Test Casetest run target x86_64 function %simd_icmp_uge_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp uge v0, v1 return v2 } ; run: %simd_icmp_uge_i64([0 1], [0 0]) == [-1 -1] ; run: %simd_icmp_uge_i64([-1 0], [-1 1]) == [-1 0] ; run: %simd_icmp_uge_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_uge_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ugt_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ugt v0, v1 return v2 } ; run: %simd_icmp_ugt_i64([0 1], [0 0]) == [0 -1] ; run: %simd_icmp_ugt_i64([-1 0], [-1 1]) == [0 0] ; run: %simd_icmp_ugt_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_ugt_i64([0 0], [0 0]) == [0 0] function %simd_icmp_ule_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ule v0, v1 return v2 } ; run: %simd_icmp_ule_i64([0 1], [0 0]) == [-1 0] ; run: %simd_icmp_ule_i64([-1 0], [-1 1]) == [-1 -1] ; run: %simd_icmp_ule_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ule_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ult_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ult v0, v1 return v2 } ; run: %simd_icmp_ult_i64([0 1], [0 0]) == [0 0] ; run: %simd_icmp_ult_i64([-1 0], [-1 1]) == [0 -1] ; run: %simd_icmp_ult_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ult_i64([0 0], [0 0]) == [0 0]
Steps to Reproduce
clif-util test ./the-above.clif
Expected Results
The tests to pass
Actual Results
thread 'worker #1' panicked at 'internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial?', /home/afonso/git/wasmtime/target/debug/build/cranelift-codegen-cafe59ca8460988e/out/isle_x64.rs:4755:12 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ERROR cranelift_filetests::concurrent > FAIL: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? FAIL ./lmao.clif: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? 1 tests Error: 1 failure
Versions and Environment
Cranelift version or commit: Main
Operating system: Linux
Architecture: x86_64Extra Info
These tests already exist in our test suite.
afonso360 edited issue #5529:
:wave: Hey,
It looks like we have a hole in our lowerings where all unsigned operator are unimplemented only for
i64x2
types. (they work fori32x4
/i16x8
/i8x16
).
.clif
Test Casetest run target x86_64 function %simd_icmp_uge_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp uge v0, v1 return v2 } ; run: %simd_icmp_uge_i64([0 1], [0 0]) == [-1 -1] ; run: %simd_icmp_uge_i64([-1 0], [-1 1]) == [-1 0] ; run: %simd_icmp_uge_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_uge_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ugt_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ugt v0, v1 return v2 } ; run: %simd_icmp_ugt_i64([0 1], [0 0]) == [0 -1] ; run: %simd_icmp_ugt_i64([-1 0], [-1 1]) == [0 0] ; run: %simd_icmp_ugt_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_ugt_i64([0 0], [0 0]) == [0 0] function %simd_icmp_ule_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ule v0, v1 return v2 } ; run: %simd_icmp_ule_i64([0 1], [0 0]) == [-1 0] ; run: %simd_icmp_ule_i64([-1 0], [-1 1]) == [-1 -1] ; run: %simd_icmp_ule_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ule_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ult_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ult v0, v1 return v2 } ; run: %simd_icmp_ult_i64([0 1], [0 0]) == [0 0] ; run: %simd_icmp_ult_i64([-1 0], [-1 1]) == [0 -1] ; run: %simd_icmp_ult_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ult_i64([0 0], [0 0]) == [0 0]
Steps to Reproduce
clif-util test ./the-above.clif
Expected Results
The tests to pass
Actual Results
thread 'worker #1' panicked at 'internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial?', /home/afonso/git/wasmtime/target/debug/build/cranelift-codegen-cafe59ca8460988e/out/isle_x64.rs:4755:12 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ERROR cranelift_filetests::concurrent > FAIL: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? FAIL ./lmao.clif: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? 1 tests Error: 1 failure
Versions and Environment
Cranelift version or commit: Main
Operating system: Linux
Architecture: x86_64Extra Info
These tests already exist in our test suite.
alexcrichton labeled issue #5529:
:wave: Hey,
It looks like we have a hole in our lowerings where all unsigned operator are unimplemented only for
i64x2
types. (they work fori32x4
/i16x8
/i8x16
).
.clif
Test Casetest run target x86_64 function %simd_icmp_uge_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp uge v0, v1 return v2 } ; run: %simd_icmp_uge_i64([0 1], [0 0]) == [-1 -1] ; run: %simd_icmp_uge_i64([-1 0], [-1 1]) == [-1 0] ; run: %simd_icmp_uge_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_uge_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ugt_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ugt v0, v1 return v2 } ; run: %simd_icmp_ugt_i64([0 1], [0 0]) == [0 -1] ; run: %simd_icmp_ugt_i64([-1 0], [-1 1]) == [0 0] ; run: %simd_icmp_ugt_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_ugt_i64([0 0], [0 0]) == [0 0] function %simd_icmp_ule_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ule v0, v1 return v2 } ; run: %simd_icmp_ule_i64([0 1], [0 0]) == [-1 0] ; run: %simd_icmp_ule_i64([-1 0], [-1 1]) == [-1 -1] ; run: %simd_icmp_ule_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ule_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ult_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ult v0, v1 return v2 } ; run: %simd_icmp_ult_i64([0 1], [0 0]) == [0 0] ; run: %simd_icmp_ult_i64([-1 0], [-1 1]) == [0 -1] ; run: %simd_icmp_ult_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ult_i64([0 0], [0 0]) == [0 0]
Steps to Reproduce
clif-util test ./the-above.clif
Expected Results
The tests to pass
Actual Results
thread 'worker #1' panicked at 'internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial?', /home/afonso/git/wasmtime/target/debug/build/cranelift-codegen-cafe59ca8460988e/out/isle_x64.rs:4755:12 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ERROR cranelift_filetests::concurrent > FAIL: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? FAIL ./lmao.clif: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? 1 tests Error: 1 failure
Versions and Environment
Cranelift version or commit: Main
Operating system: Linux
Architecture: x86_64Extra Info
These tests already exist in our test suite.
alexcrichton commented on issue #5529:
These were implemented in https://github.com/bytecodealliance/wasmtime/pull/6291 and I enabled some tests there for this, so I'm going to close this.
alexcrichton closed issue #5529:
:wave: Hey,
It looks like we have a hole in our lowerings where all unsigned operator are unimplemented only for
i64x2
types. (they work fori32x4
/i16x8
/i8x16
).
.clif
Test Casetest run target x86_64 function %simd_icmp_uge_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp uge v0, v1 return v2 } ; run: %simd_icmp_uge_i64([0 1], [0 0]) == [-1 -1] ; run: %simd_icmp_uge_i64([-1 0], [-1 1]) == [-1 0] ; run: %simd_icmp_uge_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_uge_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ugt_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ugt v0, v1 return v2 } ; run: %simd_icmp_ugt_i64([0 1], [0 0]) == [0 -1] ; run: %simd_icmp_ugt_i64([-1 0], [-1 1]) == [0 0] ; run: %simd_icmp_ugt_i64([-5 1], [-1 -1]) == [0 0] ; run: %simd_icmp_ugt_i64([0 0], [0 0]) == [0 0] function %simd_icmp_ule_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ule v0, v1 return v2 } ; run: %simd_icmp_ule_i64([0 1], [0 0]) == [-1 0] ; run: %simd_icmp_ule_i64([-1 0], [-1 1]) == [-1 -1] ; run: %simd_icmp_ule_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ule_i64([0 0], [0 0]) == [-1 -1] function %simd_icmp_ult_i64(i64x2, i64x2) -> i64x2 { block0(v0: i64x2, v1: i64x2): v2 = icmp ult v0, v1 return v2 } ; run: %simd_icmp_ult_i64([0 1], [0 0]) == [0 0] ; run: %simd_icmp_ult_i64([-1 0], [-1 1]) == [0 -1] ; run: %simd_icmp_ult_i64([-5 1], [-1 -1]) == [-1 -1] ; run: %simd_icmp_ult_i64([0 0], [0 0]) == [0 0]
Steps to Reproduce
clif-util test ./the-above.clif
Expected Results
The tests to pass
Actual Results
thread 'worker #1' panicked at 'internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial?', /home/afonso/git/wasmtime/target/debug/build/cranelift-codegen-cafe59ca8460988e/out/isle_x64.rs:4755:12 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ERROR cranelift_filetests::concurrent > FAIL: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? FAIL ./lmao.clif: panicked in worker #1: internal error: entered unreachable code: no rule matched for term x64_pmaxu at src/isa/x64/inst.isle line 2495; should it be partial? 1 tests Error: 1 failure
Versions and Environment
Cranelift version or commit: Main
Operating system: Linux
Architecture: x86_64Extra Info
These tests already exist in our test suite.
Last updated: Dec 23 2024 at 12:05 UTC