From f000957aadaf1f273c97b1b9d4e4c6f26608c435 Mon Sep 17 00:00:00 2001 From: Eric Christopher Date: Mon, 15 Aug 2011 20:50:36 +0000 Subject: [PATCH] Add an ipsccp test. Migrated from test/FrontendC++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137646 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Transforms/IPConstantProp/global.ll | 26 ++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 test/Transforms/IPConstantProp/global.ll diff --git a/test/Transforms/IPConstantProp/global.ll b/test/Transforms/IPConstantProp/global.ll new file mode 100644 index 00000000000..67152937bee --- /dev/null +++ b/test/Transforms/IPConstantProp/global.ll @@ -0,0 +1,26 @@ +; RUN: opt < %s -S -ipsccp | FileCheck %s + +@_ZL6test1g = internal global i32 42, align 4 + +define void @_Z7test1f1v() nounwind { +entry: + %tmp = load i32* @_ZL6test1g, align 4 + %cmp = icmp eq i32 %tmp, 0 + br i1 %cmp, label %if.then, label %if.end + +if.then: ; preds = %entry + store i32 0, i32* @_ZL6test1g, align 4 + br label %if.end + +if.end: ; preds = %if.then, %entry + ret void +} + +; CHECK: @_Z7test1f2v() +; CHECK: entry: +; CHECK-NEXT: ret i32 42 +define i32 @_Z7test1f2v() nounwind { +entry: + %tmp = load i32* @_ZL6test1g, align 4 + ret i32 %tmp +}