[all-commits] [llvm/llvm-project] b2df00: [FastISel] Support unreachable with NoTrapAfterNoR...

Nikita Popov via All-commits all-commits at lists.llvm.org
Tue Dec 3 03:54:47 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b2df0074134add80ba3a483a479601b00a9f9fc7
      https://github.com/llvm/llvm-project/commit/b2df0074134add80ba3a483a479601b00a9f9fc7
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-12-03 (Tue, 03 Dec 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    A llvm/test/CodeGen/X86/no-trap-after-noreturn-fastisel.ll

  Log Message:
  -----------
  [FastISel] Support unreachable with NoTrapAfterNoReturn (#118296)

Currently FastISel triggers a fallback if there is an unreachable
terminator and the TrapUnreachable option is enabled (the ISD::TRAP
selection does not actually work).

Add handling for NoTrapAfterNoReturn, in which case we don't actually
need to emit a trap. The test is just there to make sure there is no
FastISel fallback (which is why I'm not testing the case without
noreturn). We have other tests that check the actual unreachable codegen
variations.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list