[clang] [llvm] Fix Windows EH IP2State tables (remove +1 bias) (PR #144745)

Eli Friedman via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 11 10:53:46 PDT 2025


================
@@ -84,12 +84,12 @@ define void @pr66984(ptr %arg) personality ptr @__CxxFrameHandler3 {
 ; X86_64-NEXT:    movq %rcx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
 ; X86_64-NEXT:  .Ltmp0:
 ; X86_64-NEXT:    callq throw
+; X86_64-NEXT:    nop
----------------
efriedma-quic wrote:

I think this is optimized code.

I didn't really think that deeply when I suggested looking for a block with no successors.  In this case, you end up with two edges: an unwind edge, and a fallthrough edge to a an empty block with no successors.  Which is a pattern you could detect, I guess.

I don't want the initial patch here to get too complicated here, though, so it would be fine to just file an issue for this, and look into it later.

https://github.com/llvm/llvm-project/pull/144745


More information about the llvm-commits mailing list