diff options
Diffstat (limited to 'llvm/test/Transforms/CodeExtractor/SingleCondition.ll')
-rw-r--r-- | llvm/test/Transforms/CodeExtractor/SingleCondition.ll | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/llvm/test/Transforms/CodeExtractor/SingleCondition.ll b/llvm/test/Transforms/CodeExtractor/SingleCondition.ll new file mode 100644 index 00000000000..90cda889a21 --- /dev/null +++ b/llvm/test/Transforms/CodeExtractor/SingleCondition.ll @@ -0,0 +1,23 @@ +; RUN: opt < %s -partial-inliner -S | FileCheck %s +; RUN: opt < %s -passes=partial-inliner -S | FileCheck %s + +define internal i32 @inlinedFunc(i1 %cond, i32* align 4 %align.val) { +entry: + br i1 %cond, label %if.then, label %return +if.then: + ; Dummy store to have more than 0 uses + store i32 10, i32* %align.val, align 4 + br label %return +return: ; preds = %entry + ret i32 0 +} + +define internal i32 @dummyCaller(i1 %cond, i32* align 2 %align.val) { +entry: +; CHECK-LABEL: @dummyCaller +; CHECK: br +; CHECK: call void @inlinedFunc.1_ + %val = call i32 @inlinedFunc(i1 %cond, i32* %align.val) + ret i32 %val +} + |