xref: /llvm-project/llvm/test/MC/CSKY/lrs.s (revision 582836faafcb458161947a72df27752fe5f76171)
1# RUN: llvm-mc -filetype=obj -triple=csky -mattr=+2e3  < %s \
2# RUN:     | llvm-objdump --mattr=+2e3 --no-show-raw-insn -M no-aliases -d -r - | FileCheck %s
3
4
5.data
6sec:
7    .long 0x77
8.text
9tstart:
10    lrs32.b r0,[lnk]
11    lrs32.b r0,[lnk - 4]
12    lrs32.b r0,[lnk + 4]
13    .short 0x1C00
14    lrs32.h r0,[sec]
15    lrs32.h r0,[sec - 4]
16    lrs32.h r0,[sec + 4]
17    lrs32.b r0,[0]
18    lrs32.b r0,[0xFFFF]
19    lrs32.b r31,[0]
20.L1:
21    lrs32.w r31,[.L1]
22.L2:
23    lrs32.w r0, [.L2]
24.L3:
25    lrs32.w r0, [.L3 - 64*1024]
26.L4:
27    lrs32.w r0, [.L4 + 64*1024 - 2]
28
29# CHECK:        0:      	lrs32.b	r0, [0]
30# CHECK-NEXT:   			        00000000:  R_CKCORE_DOFFSET_IMM18	lnk
31# CHECK-NEXT:   4:      	lrs32.b	r0, [0]
32# CHECK-NEXT:   			        00000004:  R_CKCORE_DOFFSET_IMM18	lnk-0x4
33# CHECK-NEXT:   8:      	lrs32.b	r0, [0]
34# CHECK-NEXT:   			        00000008:  R_CKCORE_DOFFSET_IMM18	lnk+0x4
35
36# CHECK:        c:	        00 1c		.short	0x1c00
37
38# CHECK:        e:       lrs32.h	r0, [0]
39# CHECK-NEXT:   			        0000000e:  R_CKCORE_DOFFSET_IMM18_2	.data
40# CHECK-NEXT:   12:      lrs32.h	r0, [0]
41# CHECK-NEXT:   			        00000012:  R_CKCORE_DOFFSET_IMM18_2	.data-0x4
42# CHECK-NEXT:   16:      lrs32.h	r0, [0]
43# CHECK-NEXT:   			        00000016:  R_CKCORE_DOFFSET_IMM18_2	.data+0x4
44# CHECK-NEXT:   1a:      lrs32.b	r0, [0]
45# CHECK-NEXT:   			        0000001a:  R_CKCORE_DOFFSET_IMM18	*ABS*
46# CHECK-NEXT:   1e:      lrs32.b	r0, [0]
47# CHECK-NEXT:   			        0000001e:  R_CKCORE_DOFFSET_IMM18	*ABS*+0xffff
48# CHECK-NEXT:   22:      lrs32.b	r31, [0]
49# CHECK-NEXT:   			        00000022:  R_CKCORE_DOFFSET_IMM18	*ABS*
50# CHECK-NEXT:   26:      lrs32.w	r31, [0]
51# CHECK-NEXT:   			        00000026:  R_CKCORE_DOFFSET_IMM18_4	.text+0x26
52# CHECK-NEXT:   2a:      lrs32.w	r0, [0]
53# CHECK-NEXT:   			        0000002a:  R_CKCORE_DOFFSET_IMM18_4	.text+0x2a
54# CHECK-NEXT:   2e:      lrs32.w	r0, [0]
55# CHECK-NEXT:   			        0000002e:  R_CKCORE_DOFFSET_IMM18_4	.text-0xffd2
56# CHECK-NEXT:   32:      lrs32.w	r0, [0]
57# CHECK-NEXT:   			        00000032:  R_CKCORE_DOFFSET_IMM18_4	.text+0x10030
58