brintos

brintos / llvm-project-archived public Read only

0
0
Text · 733 B · 2f5a51a Raw
30 lines · plain
1; RUN: llc -mtriple thumbv7-windows-itanium -filetype asm -o - %s | FileCheck %s2 3@_begin = external global i84@_end = external global i85 6declare arm_aapcs_vfpcc void @force_emission()7 8define arm_aapcs_vfpcc void @bundle() {9entry:10  %cmp = icmp uge i32 sub (i32 ptrtoint (ptr @_end to i32), i32 ptrtoint (ptr @_begin to i32)), 411  br i1 %cmp, label %if.then, label %if.end12 13if.then:14  tail call arm_aapcs_vfpcc void @force_emission()15  br label %if.end16 17if.end:18  ret void19}20 21; CHECK-LABEL: bundle22; CHECK-NOT: subs r0, r1, r023; CHECK: movw r0, :lower16:_begin24; CHECK-NEXT: movt r0, :upper16:_begin25; CHECK-NEXT: movw r1, :lower16:_end26; CHECK-NEXT: movt r1, :upper16:_end27; CHECK-NEXT: subs r0, r1, r028; CHECK-NEXT: cmp r0, #429 30