[all-commits] [llvm/llvm-project] bd7ca9: Ensure NoTrapAfterNoreturn is false for the wasm b...

Matt Harding via All-commits all-commits at lists.llvm.org
Thu Oct 5 09:17:59 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bd7ca98b66700925625ae84aa1083e94a3b875aa
      https://github.com/llvm/llvm-project/commit/bd7ca98b66700925625ae84aa1083e94a3b875aa
  Author: Matt Harding <majaharding at gmail.com>
  Date:   2023-10-05 (Thu, 05 Oct 2023)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/test/CodeGen/WebAssembly/unreachable.ll

  Log Message:
  -----------
  Ensure NoTrapAfterNoreturn is false for the wasm backend (#65876)

In the WebAssembly back end, the TrapUnreachable option is currently
load-bearing for correctness, inserting wasm `unreachable` instructions
where needed to create valid wasm. There is another option,
NoTrapAfterNoreturn, that removes some of those traps and causes
incorrect wasm to be emitted.

This turns off `NoTrapAfterNoreturn` for the Wasm backend and adds new   
tests.




More information about the All-commits mailing list