Saleem Abdulrasool | 8d60fdc | 2014-05-21 01:25:24 +0000 | [diff] [blame] | 1 | ; RUN: llc -mtriple thumbv7-windows-itanium -filetype asm -o - %s | FileCheck %s |
| 2 | |
| 3 | @_begin = external global i8 |
| 4 | @_end = external global i8 |
| 5 | |
| 6 | declare arm_aapcs_vfpcc void @force_emission() |
| 7 | |
| 8 | define arm_aapcs_vfpcc void @bundle() { |
| 9 | entry: |
| 10 | br i1 icmp uge (i32 sub (i32 ptrtoint (i8* @_end to i32), i32 ptrtoint (i8* @_begin to i32)), i32 4), label %if.then, label %if.end |
| 11 | |
| 12 | if.then: |
| 13 | tail call arm_aapcs_vfpcc void @force_emission() |
| 14 | br label %if.end |
| 15 | |
| 16 | if.end: |
| 17 | ret void |
| 18 | } |
| 19 | |
| 20 | ; CHECK-LABEL: bundle |
| 21 | ; CHECK-NOT: subs r0, r1, r0 |
| 22 | ; CHECK: movw r0, :lower16:_begin |
| 23 | ; CHECK-NEXT: movt r0, :upper16:_begin |
| 24 | ; CHECK-NEXT: movw r1, :lower16:_end |
| 25 | ; CHECK-NEXT: movt r1, :upper16:_end |
| 26 | ; CHECK-NEXT: subs r0, r1, r0 |
| 27 | ; CHECK-NEXT: cmp r0, #4 |
| 28 | |