Skip to content

With LLVM 20 the SIMD intrinsic wasm32::u8x16_sub_sat is compiled to a function call #137419

Description

@hkratz

The WASM SIMD intrinsic std::arch::wasm32::u8x16_sub_sat used to be compiled to the WASM instruction i8x16.sub_sat_u. Since the switch LLVM 20 (bisected) it is compiled to call llvm.wasm.sub.sat.unsigned.v16i8

Other intrinsics (e.g. saturated integer addition) do not seem to be affected.

Godbolt

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.A-SIMDArea: SIMD (Single Instruction Multiple Data)C-bugCategory: This is a bug.O-wasmTarget: WASM (WebAssembly), http://webassembly.org/

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions