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