You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

29 lines
725 B

; RUN: llc -mtriple thumbv7-windows-itanium -filetype asm -o - %s | FileCheck %s
@_begin = external global i8
@_end = external global i8
declare arm_aapcs_vfpcc void @force_emission()
define arm_aapcs_vfpcc void @bundle() {
entry:
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
if.then:
tail call arm_aapcs_vfpcc void @force_emission()
br label %if.end
if.end:
ret void
}
; CHECK-LABEL: bundle
; CHECK-NOT: subs r0, r1, r0
; CHECK: movw r0, :lower16:_begin
; CHECK-NEXT: movt r0, :upper16:_begin
; CHECK-NEXT: movw r1, :lower16:_end
; CHECK-NEXT: movt r1, :upper16:_end
; CHECK-NEXT: subs r0, r1, r0
; CHECK-NEXT: cmp r0, #4