xref: /llvm-project/llvm/test/Transforms/Inline/comdat-ipo.ll (revision e5369823bc0655806469724335d0ca5a4c17d8c7)
1; RUN: opt -passes=inline -S < %s | FileCheck %s
2; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s
3; RUN: opt -passes='module-inline' -S < %s | FileCheck %s
4
5define i32 @caller() {
6; CHECK-LABEL: @caller(
7; CHECK-NEXT:  %val2 = call i32 @linkonce_callee(i32 42)
8; CHECK-NEXT:  ret i32 %val2
9
10  %val = call i32 @odr_callee()
11  %val2 = call i32 @linkonce_callee(i32 %val);
12  ret i32 %val2
13}
14
15define linkonce_odr i32 @odr_callee() {
16  ret i32 42
17}
18
19define linkonce i32 @linkonce_callee(i32 %val) {
20  ret i32 %val
21}
22