brintos

brintos / llvm-project-archived public Read only

0
0
Text · 734 B · c6b69f2 Raw
35 lines · plain
1; RUN: opt -S -passes=instcombine < %s | FileCheck %s2 3declare void @readnone_but_may_throw() readnone4 5define void @f_0(ptr %ptr) {6; CHECK-LABEL: @f_0(7entry:8; CHECK:  store i32 10, ptr %ptr9; CHECK-NEXT:  call void @readnone_but_may_throw()10; CHECK-NEXT:  store i32 20, ptr %ptr, align 411; CHECK:  ret void12 13  store i32 10, ptr %ptr14  call void @readnone_but_may_throw()15  store i32 20, ptr %ptr16  ret void17}18 19define void @f_1(i1 %cond, ptr %ptr) {20; CHECK-LABEL: @f_1(21; CHECK:  store i32 10, ptr %ptr22; CHECK-NEXT:  call void @readnone_but_may_throw()23 24  store i32 10, ptr %ptr25  call void @readnone_but_may_throw()26  br i1 %cond, label %left, label %merge27 28left:29  store i32 20, ptr %ptr30  br label %merge31 32merge:33  ret void34}35