From 91c6330c96aaf14605f7d520af72c62c1284ae45 Mon Sep 17 00:00:00 2001 From: David Majnemer Date: Mon, 31 Jul 2017 17:47:07 +0000 Subject: [IPSCCP] Guard a user of getInitializer with hasDefinitiveInitializer We are not allowed to reason about an initializer value without first consulting hasDefinitiveInitializer. llvm-svn: 309594 --- llvm/test/Transforms/SCCP/definite-initializer.ll | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 llvm/test/Transforms/SCCP/definite-initializer.ll (limited to 'llvm/test/Transforms/SCCP') diff --git a/llvm/test/Transforms/SCCP/definite-initializer.ll b/llvm/test/Transforms/SCCP/definite-initializer.ll new file mode 100644 index 00000000000..a2c4521e07c --- /dev/null +++ b/llvm/test/Transforms/SCCP/definite-initializer.ll @@ -0,0 +1,11 @@ +; RUN: opt -S -ipsccp < %s | FileCheck %s +@d = internal externally_initialized global i32 0, section ".openbsd.randomdata", align 4 + +; CHECK-LABEL: @test1( +define i32 @test1() { +entry: + %load = load i32, i32* @d, align 4 + ret i32 %load +; CHECK: %[[load:.*]] = load i32, i32* @d, align 4 +; CHECK: ret i32 %[[load]] +} -- cgit v1.2.3