xref: /llvm-project/llvm/test/Transforms/GVN/mssa-update-dead-def.ll (revision 23abf931386002fb9d2c11d026846475c224c641)
1; RUN: opt -passes='require<memoryssa>,gvn' -verify-memoryssa -S %s | FileCheck %s
2
3; This is a regression test for a bug in MemorySSA updater.
4; Make sure that we don't crash and end up with a valid MemorySSA.
5
6; CHECK: @test()
7define void @test() personality ptr null {
8  invoke void @bar()
9          to label %bar.normal unwind label %exceptional
10
11bar.normal:
12  ret void
13
14dead.block:
15  br label %baz.invoke
16
17baz.invoke:
18  invoke void @baz()
19          to label %baz.normal unwind label %exceptional
20
21baz.normal:
22  ret void
23
24exceptional:
25  %tmp9 = landingpad { ptr, i32 }
26          cleanup
27  call void @foo()
28  ret void
29}
30
31declare void @foo()
32declare void @bar()
33declare void @baz()
34