[rtsan] Add fork/execve interceptors (#117198)
[llvm-project.git] / llvm / test / Transforms / MergeFunc / merge-unnamed-addr-bitcast.ll
blobdab9e452fda4408245e36cdcb33d786d98d10394
1 ; RUN: opt -S -passes=mergefunc < %s | FileCheck %s
3 %A = type { i32 }
4 %B = type { i32 }
6 ; CHECK-NOT: @b
8 @x = constant { ptr, ptr }
9   { ptr @a,
10     ptr @b }
11 ; CHECK: { ptr @a, ptr @a }
13 define internal i32 @a(%A) unnamed_addr {
14   extractvalue %A %0, 0
15   xor i32 %2, 0
16   ret i32 %3
19 define internal i32 @b(%B) unnamed_addr {
20   extractvalue %B %0, 0
21   xor i32 %2, 0
22   ret i32 %3
25 define i32 @c(i32) {
26   insertvalue %B undef, i32 %0, 0
27   call i32 @b(%B %2)
28 ; CHECK: call i32 @a(%B %2)
29   ret i32 %3