blob: 68320539693d129ba7a67140e8a98980556983a4 [file] [log] [blame]
Evan Chengd7f08102009-11-24 08:06:15 +00001; RUN: llc < %s -march=thumb -mcpu=cortex-a8 | FileCheck %s
2; rdar://7368193
3
4@a = common global float 0.000000e+00 ; <float*> [#uses=2]
5@b = common global float 0.000000e+00 ; <float*> [#uses=1]
6
Rafael Espindola1e819662010-06-17 15:18:27 +00007define float @t(i32 %c) nounwind {
Evan Chengd7f08102009-11-24 08:06:15 +00008entry:
9 %0 = icmp sgt i32 %c, 1 ; <i1> [#uses=1]
10 %1 = load float* @a, align 4 ; <float> [#uses=2]
11 %2 = load float* @b, align 4 ; <float> [#uses=2]
12 br i1 %0, label %bb, label %bb1
13
14bb: ; preds = %entry
15; CHECK: ite lt
16; CHECK: vsublt.f32
17; CHECK-NEXT: vaddge.f32
18 %3 = fadd float %1, %2 ; <float> [#uses=1]
19 br label %bb2
20
21bb1: ; preds = %entry
22 %4 = fsub float %1, %2 ; <float> [#uses=1]
23 br label %bb2
24
25bb2: ; preds = %bb1, %bb
26 %storemerge = phi float [ %4, %bb1 ], [ %3, %bb ] ; <float> [#uses=2]
27 store float %storemerge, float* @a
28 ret float %storemerge
29}