Krzysztof Parzyszek | 9062b75 | 2016-04-22 16:47:01 +0000 | [diff] [blame] | 1 | ; RUN: llc -march=hexagon < %s |
| 2 | ; REQUIRES: asserts |
| 3 | |
| 4 | target triple = "hexagon" |
| 5 | |
| 6 | %struct.0 = type { i64, i16 } |
| 7 | |
| 8 | declare void @foo(%struct.0* noalias nocapture sret, i8 zeroext, i32, i64) #0 |
| 9 | |
| 10 | define hidden fastcc void @fred(%struct.0* noalias nocapture %p, i8 zeroext %t, i32 %r) unnamed_addr #0 { |
| 11 | entry: |
| 12 | %. = select i1 undef, i64 549755813888, i64 1024 |
| 13 | %cmp104 = icmp ult i64 undef, %. |
| 14 | %inc = zext i1 %cmp104 to i32 |
| 15 | %inc.r = add nsw i32 %inc, %r |
| 16 | %.inc.r = select i1 undef, i32 0, i32 %inc.r |
| 17 | tail call void @foo(%struct.0* sret %p, i8 zeroext %t, i32 %.inc.r, i64 undef) |
| 18 | ret void |
| 19 | } |
| 20 | |
| 21 | attributes #0 = { noinline nounwind } |
| 22 | |