brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.0 KiB · 06e67e0 Raw
59 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 52; RUN: opt -S -passes=normalize < %s | FileCheck %s3 4define double @foo(double %a0, double %a1) {5; CHECK-LABEL: define double @foo(6; CHECK-SAME: double [[A0:%.*]], double [[A1:%.*]]) {7; CHECK-NEXT:  [[BB17254:.*:]]8; CHECK-NEXT:    %"vl93562([[A0]], 2.000000e+00)" = fmul double [[A0]], 2.000000e+009; CHECK-NEXT:    %"op95858(vl93562)" = fmul double 6.000000e+00, %"vl93562([[A0]], 2.000000e+00)"10; CHECK-NEXT:    [[A:%.*]] = fmul double [[A0]], [[A1]]11; CHECK-NEXT:    [[C:%.*]] = fmul double 6.000000e+00, [[A]]12; CHECK-NEXT:    ret double %"op95858(vl93562)"13;14entry:15  %a = fmul double %a0, %a116  %b = fmul double %a0, 2.000000e+0017  %c = fmul double %a, 6.000000e+0018  %d = fmul double %b, 6.000000e+0019  ret double %d20}21 22declare double @bir()23 24declare double @bar()25 26define double @baz(double %x) {27; CHECK-LABEL: define double @baz(28; CHECK-SAME: double [[A0:%.*]]) {29; CHECK-NEXT:  [[BB76951:.*:]]30; CHECK-NEXT:    [[IFCOND:%.*]] = fcmp one double [[A0]], 0.000000e+0031; CHECK-NEXT:    br i1 [[IFCOND]], label %[[BB47054:.*]], label %[[BB470541:.*]]32; CHECK:       [[BB47054]]:33; CHECK-NEXT:    %"vl16994bir()" = call double @bir()34; CHECK-NEXT:    br label %[[BB17254:.*]]35; CHECK:       [[BB470541]]:36; CHECK-NEXT:    %"vl88592bar()" = call double @bar()37; CHECK-NEXT:    br label %[[BB17254]]38; CHECK:       [[BB17254]]:39; CHECK-NEXT:    %"op16411(vl16994, vl88592)" = phi double [ %"vl16994bir()", %[[BB47054]] ], [ %"vl88592bar()", %[[BB470541]] ]40; CHECK-NEXT:    ret double %"op16411(vl16994, vl88592)"41;42entry:43  %ifcond = fcmp one double %x, 0.000000e+0044  br i1 %ifcond, label %then, label %else45 46then:       ; preds = %entry47  %calltmp = call double @bir()48  br label %ifcont49 50else:       ; preds = %entry51  %calltmp1 = call double @bar()52  br label %ifcont53 54ifcont:     ; preds = %else, %then55  %iftmp = phi double [ %calltmp, %then ], [ %calltmp1, %else ]56  ret double %iftmp57}58 59