1 @ RUN
: llvm-mc
-triple armv6m-unknown-unknown
%s
--show-encoding
-o
- | \
4 movs
r3, :upper8_15
:_foo
5 adds
r3, :upper0_7
:_foo
6 adds
r3, :lower8_15
:_foo
7 adds
r3, :lower0_7
:_foo
9 @ CHECK
: movs
r3, :upper8_15
:_foo @ encoding
: [A,0x23]
10 @ CHECK-NEXT
: @ fixup
A - offset
: 0, value
: _foo
, kind
: fixup_arm_thumb_upper_8_15
11 @ CHECK-NEXT
: adds
r3, :upper0_7
:_foo @ encoding
: [A,0x33]
12 @ CHECK-NEXT
: @ fixup
A - offset
: 0, value
: _foo
, kind
: fixup_arm_thumb_upper_0_7
13 @ CHECK-NEXT
: adds
r3, :lower8_15
:_foo @ encoding
: [A,0x33]
14 @ CHECK-NEXT
: @ fixup
A - offset
: 0, value
: _foo
, kind
: fixup_arm_thumb_lower_8_15
15 @ CHECK-NEXT
: adds
r3, :lower0_7
:_foo @ encoding
: [A,0x33]
16 @ CHECK-NEXT
: @ fixup
A - offset
: 0, value
: _foo
, kind
: fixup_arm_thumb_lower_0_7
18 @ GNU syntax variants
:
19 movs
r3, #:upper8_15:#_foo
20 movs
r3, #:upper8_15:_foo
22 @ CHECK
: movs
r3, :upper8_15
:_foo @ encoding
: [A,0x23]
23 @ CHECK-NEXT
: @ fixup
A - offset
: 0, value
: _foo
, kind
: fixup_arm_thumb_upper_8_15
24 @ CHECK-NEXT
: movs
r3, :upper8_15
:_foo @ encoding
: [A,0x23]
25 @ CHECK-NEXT
: @ fixup
A - offset
: 0, value
: _foo
, kind
: fixup_arm_thumb_upper_8_15