1 @ RUN: llvm-mc -triple armv7-eabi -filetype asm -o - %s | FileCheck %s 2 3 .syntax unified 4 5 .data 6 7 .type .L_table_begin,%object 8 .L_table_begin: 9 .rep 2 10 .long 0xd15ab1ed 11 .long 0x0ff1c1a1 12 .endr 13 .L_table_end: 14 15 .text 16 17 .type return,%function 18 return: 19 bx lr 20 21 .global arm_function 22 .type arm_function,%function 23 arm_function: 24 mov r0, #:lower16:((.L_table_end - .L_table_begin) >> 2) 25 blx return 26 27 @ CHECK-LABEL: arm_function 28 @ CHECK: movw r0, :lower16:((.L_table_end-.L_table_begin)>>2) 29 @ CHECK: blx return 30 31 .global thumb_function 32 .type thumb_function,%function 33 thumb_function: 34 mov r0, #:lower16:((.L_table_end - .L_table_begin) >> 2) 35 blx return 36 37 @ CHECK-LABEL: thumb_function 38 @ CHECK: movw r0, :lower16:((.L_table_end-.L_table_begin)>>2) 39 @ CHECK: blx return 40 41