]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/MC/ARM/complex-operands.s
Vendor import of llvm RELEASE_350/final tag r216957 (effectively, 3.5.0 release):
[FreeBSD/FreeBSD.git] / test / MC / ARM / complex-operands.s
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