Krzysztof Parzyszek | c05dff1 | 2015-03-31 13:35:12 +0000 | [diff] [blame] | 1 | ; RUN: llc -O2 < %s |
| 2 | ; REQUIRES: asserts |
| 3 | |
| 4 | target datalayout = "e-m:e-p:32:32-i64:64-a:0-v32:32-n16:32" |
| 5 | target triple = "hexagon" |
| 6 | |
| 7 | ; Function Attrs: nounwind optsize ssp |
| 8 | define internal fastcc void @foo() nounwind { |
| 9 | if.else473: |
| 10 | %0 = load i64, i64* undef, align 8 |
| 11 | %sub = sub nsw i64 undef, %0 |
| 12 | %conv476 = sitofp i64 %sub to double |
| 13 | %mul477 = fmul double %conv476, 0x3F50624DE0000000 |
| 14 | br i1 undef, label %cond.true540, label %cond.end548 |
| 15 | |
| 16 | cond.true540: |
| 17 | %1 = fptrunc double %mul477 to float |
| 18 | %2 = fptosi float %1 to i32 |
| 19 | br label %cond.end548 |
| 20 | |
| 21 | cond.end548: |
| 22 | %cond549 = phi i32 [ %2, %cond.true540 ], [ undef, %if.else473 ] |
| 23 | call void @bar(i32 %cond549) nounwind |
| 24 | unreachable |
| 25 | } |
| 26 | |
| 27 | declare void @bar(i32) nounwind |
| 28 | |