1 ; RUN: opt -S -globalopt < %s | FileCheck %s 2 3 ; CHECK: @tmp = global i32 42 4 5 @llvm.global_ctors = appending global [1 x { i32, void ()* }] [{ i32, void ()* } { i32 65535, void ()* @_GLOBAL__I_a }] 6 @tmp = global i32 0 7 8 define i32 @TheAnswerToLifeTheUniverseAndEverything() { 9 ret i32 42 10 } 11 12 define void @_GLOBAL__I_a() { 13 enter: 14 %tmp1 = call i32 @TheAnswerToLifeTheUniverseAndEverything() 15 store i32 %tmp1, i32* @tmp 16 %cmp = icmp eq i32 %tmp1, 42 17 call void @llvm.assume(i1 %cmp) 18 ret void 19 } 20 21 declare void @llvm.assume(i1) 22