brintos

brintos / llvm-project-archived public Read only

0
0
Text · 766 B · bff1a79 Raw
33 lines · plain
1; RUN: opt -passes=globalopt -S < %s | FileCheck %s2 3%sometype = type { ptr }4 5@map = internal unnamed_addr global ptr null, align 86 7define void @Init() {8; CHECK-LABEL: @Init(9; CHECK-NEXT:  entry:10; CHECK-NEXT:    store i1 true, ptr @map.init, align 111; CHECK-NEXT:    ret void12;13entry:14  %call = tail call noalias nonnull dereferenceable(48) ptr @_Znwm(i64 48)15  store ptr %call, ptr @map, align 816  ret void17}18 19define void @Usage() {20; CHECK-LABEL: @Usage(21; CHECK-NEXT:  entry:22; CHECK-NEXT:    [[MAP_INIT_VAL:%.*]] = load i1, ptr @map.init, align 123; CHECK-NEXT:    [[NOTINIT:%.*]] = xor i1 [[MAP_INIT_VAL]], true24; CHECK-NEXT:    unreachable25;26entry:27  %0 = load ptr, ptr @map, align 828  %.not = icmp eq ptr %0, null29  unreachable30}31 32declare ptr @_Znwm(i64)33