xref: /llvm-project/llvm/test/MC/CSKY/bsr.s (revision 582836faafcb458161947a72df27752fe5f76171)
1# RUN: llvm-mc -filetype=obj -triple=csky  < %s \
2# RUN:     | llvm-objdump  --no-show-raw-insn -M no-aliases -d -r - | FileCheck %s
3
4.data
5sec:
6    .long 0x77
7.text
8tstart:
9    bsr lnk
10    bsr lnk - 4
11    bsr lnk + 4
12    .short 0x1C00
13    bsr sec
14    bsr sec - 4
15    bsr sec + 4
16
17.L1:
18    bsr .L1
19.L2:
20    bsr .L2 - 1024
21.L3:
22    bsr .L3 + 1022
23
24.L4:
25    bsr .L4 - 1026
26.L5:
27    bsr .L5 + 1024
28
29.L6:
30    bsr .L6 - 64*1024*1024
31.L7:
32    bsr .L7 + 64*1024*1024 - 2
33
34
35# CHECK:       0:      	bsr32	0x0
36# CHECK:       			        00000000:  R_CKCORE_PCREL_IMM26_2	lnk
37# CHECK:       4:      	bsr32	0x4
38# CHECK:       			        00000004:  R_CKCORE_PCREL_IMM26_2	lnk-0x4
39# CHECK:       8:      	bsr32	0x8
40# CHECK:       			        00000008:  R_CKCORE_PCREL_IMM26_2	lnk+0x4
41
42# CHECK:       e:      	bsr32	0xe
43# CHECK:       			        0000000e:  R_CKCORE_PCREL_IMM26_2	.data
44# CHECK:       12:      bsr32	0x12
45# CHECK:       			        00000012:  R_CKCORE_PCREL_IMM26_2	.data-0x4
46# CHECK:       16:      bsr32	0x16
47# CHECK:       			        00000016:  R_CKCORE_PCREL_IMM26_2	.data+0x4
48# CHECK:       1a:      bsr32	0x1a
49# CHECK:       1e:      bsr32	0xfffffc1e
50# CHECK:       22:      bsr32	0x420
51# CHECK:       26:      bsr32	0xfffffc24
52# CHECK:       2a:      bsr32	0x42a
53# CHECK:       2e:      bsr32	0xfc00002e
54# CHECK:       32:      bsr32	0x4000030