akirilov-arm labeled issue #2735:
Feature
JIT for arm64
Benefit
x86 works and it would be nice to be able to use it on M1 mac as well
Implementation
it currently panics here: https://github.com/bytecodealliance/wasmtime/blob/5fecdfa49150e3304c1b949aab73bd4a0a02dbac/cranelift/jit/src/backend.rs#L183-L195 I'm unsure what needs to change/ whats blocking it
Alternatives
only make JIT available on x86
akirilov-arm labeled issue #2735:
Feature
JIT for arm64
Benefit
x86 works and it would be nice to be able to use it on M1 mac as well
Implementation
it currently panics here: https://github.com/bytecodealliance/wasmtime/blob/5fecdfa49150e3304c1b949aab73bd4a0a02dbac/cranelift/jit/src/backend.rs#L183-L195 I'm unsure what needs to change/ whats blocking it
Alternatives
only make JIT available on x86
akirilov-arm commented on issue #2735:
Issue #2907 is related to this.
Somfic commented on issue #2735:
hi, are there any updates on this? i’m running into
PLT is currently only supported on x86_64
with
use_colocated_libcalls
andis_pic
flags in my isa set tofalse
cfallin commented on issue #2735:
@Somfic no, this issue hasn't been worked on. PRs welcome if you're interested in tackling it!
Somfic commented on issue #2735:
@Somfic no, this issue hasn't been worked on. PRs welcome if you're interested in tackling it!
@cfallin I wish I had the technical knowledge to contribute.
As mentioned earlier in this issue thread, setting
is_pic
tofalse
should disable PLT entries for aarch64, but it doesn't? Is this a bug or intented behaviour?
cfallin commented on issue #2735:
cc @bjorn3 -- I don't know the PLT functionality well enough to say, sorry.
bjorn3 commented on issue #2735:
It is used for the hot code swapping functionality of cranelift-jit that I introduced for cg_clif. I've removed hot code swapping support in https://github.com/rust-lang/rustc_codegen_cranelift/commit/5d03df9431833ad992c1507fedc7daee3e232443. I might reintroduce it at some point, but will likely do so by replacing cranelift-jit usage entirely. Because of this and the fact that it reduces portability of cranelift-jit I did propose removing the hot code swapping support from cranelift-jit.
bjorn3 commented on issue #2735:
With https://github.com/bytecodealliance/wasmtime/pull/10345 cranelift-jit should work if you set
is_pic=false
in yourTargetIsa
. In a future PR I plan to enforceis_pic=false
and remove all the PIC handling code that doesn't work on non-x86_64 targets.
bjorn3 edited a comment on issue #2735:
With https://github.com/bytecodealliance/wasmtime/pull/10345 cranelift-jit should work if you set
is_pic=false
in yourTargetIsa
. In a future PR I plan to enforceis_pic=false
and remove all the PIC handling code that doesn't work on non-x86_64 targets. I've already created a branch remove_cranelift_jit_pic_handling for that.
abrown closed issue #2735:
Feature
JIT for arm64
Benefit
x86 works and it would be nice to be able to use it on M1 mac as well
Implementation
it currently panics here: https://github.com/bytecodealliance/wasmtime/blob/5fecdfa49150e3304c1b949aab73bd4a0a02dbac/cranelift/jit/src/backend.rs#L183-L195 I'm unsure what needs to change/ whats blocking it
Alternatives
only make JIT available on x86
Last updated: Apr 18 2025 at 18:04 UTC