bytecodealliance / bytecodealliance/wasmtime

cranelift: `{u,s}div.i128` unimplemented on AArch64

Open
#4,864 0 comments 0 reactions 0 assignees View on GitHub
bug cranelift cranelift:area:aarch64
Dominant language
Rust
Stars
18.6k
Forks
1.8k
Avg merge
1d 18h
Merged PRs (30d)
126

Description

👋 Hey,

Fuzzgen identified some missing ops on AArch64

### `.clif` Test Case

```
test run
target aarch64

function %a(i128) -> i128 {
block0(v0: i128):
v1 = udiv v0, v0
return v1
}
; run: %a(10) == true
```

### Steps to Reproduce

* `clif-util ./the-above.clif`

### Expected Results

The test to compile

### Actual Results

```
thread 'worker #0' panicked at 'internal error: entered unreachable code: implemented in ISLE: inst = `v1 = udiv.i128 v0, v0`, type = `Some(types::I128)`', cranelift/codegen/src/isa/aarch64/lower_inst.rs:40:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
ERROR cranelift_filetests::concurrent > FAIL: panicked in worker #0: internal error: entered unreachable code: implemented in ISLE: inst = `v1 = udiv.i128 v0, v0`, type = `Some(types::I128)`
FAIL ./lmao.clif: panicked in worker #0: internal error: entered unreachable code: implemented in ISLE: inst = `v1 = udiv.i128 v0, v0`, type = `Some(types::I128)`
1 tests
Error: 1 failure
```

### Versions and Environment

Cranelift version or commit: main
Operating system: linux
Architecture: AArch64

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.