File: compressed-inst.s

package info (click to toggle)
llvm-toolchain-14 1%3A14.0.6-12
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 1,496,180 kB
  • sloc: cpp: 5,593,972; ansic: 986,872; asm: 585,869; python: 184,223; objc: 72,530; lisp: 31,119; f90: 27,793; javascript: 9,780; pascal: 9,762; sh: 9,482; perl: 7,468; ml: 5,432; awk: 3,523; makefile: 2,538; xml: 953; cs: 573; fortran: 567
file content (210 lines) | stat: -rw-r--r-- 4,408 bytes parent folder | download | duplicates (16)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
# RUN: llvm-mc %s -triple=csky -show-encoding -csky-no-aliases -enable-csky-asm-compressed-inst=true -mattr=+e1 \
# RUN: -mattr=+e2 -mattr=+2e3 -mattr=+btst16 | FileCheck -check-prefixes=CHECK-ASM %s

# CHECK-ASM: addu16 a0, a1
# CHECK-ASM: encoding: [0x04,0x60]
addu32 a0, a0, a1

# CHECK-ASM: addu16 a0, a1
# CHECK-ASM: encoding: [0x04,0x60]
addu32 a0, a1, a0

# CHECK-ASM: addu16 a0, a1, a2
# CHECK-ASM: encoding: [0x08,0x59]
addu32 a0, a1, a2

# CHECK-ASM: subu16 a0, a1
# CHECK-ASM: encoding: [0x06,0x60]
subu32 a0, a0, a1

# CHECK-ASM: subu16 a0, a1, a2
# CHECK-ASM: encoding: [0x09,0x59]
subu32 a0, a1, a2

# CHECK-ASM: addc16 a0, a1
# CHECK-ASM: encoding: [0x05,0x60]
addc32 a0, a0, a1

# CHECK-ASM: subc16 a0, a1
# CHECK-ASM: encoding: [0x07,0x60]
subc32 a0, a0, a1

# CHECK-ASM: addi16 a0, a1, 1
# CHECK-ASM: encoding: [0x02,0x59]
addi32 a0, a1, 1

# CHECK-ASM: subi16 a0, a1, 1
# CHECK-ASM: encoding: [0x03,0x59]
subi32 a0, a1, 1

# CHECK-ASM: addi16 a0, 10
# CHECK-ASM: encoding: [0x09,0x20]
addi32 a0, a0, 10

# CHECK-ASM: subi16 a0, 10
# CHECK-ASM: encoding: [0x09,0x28]
subi32 a0, a0, 10

# CHECK-ASM: addi16 sp, sp, 4
# CHECK-ASM: encoding: [0x01,0x14]
addi32 sp, sp, 4

# CHECK-ASM: subi16 sp, sp, 4
# CHECK-ASM: encoding: [0x21,0x14]
subi32 sp, sp, 4

# CHECK-ASM: addi16 a0, sp, 4
# CHECK-ASM: encoding: [0x01,0x18]
addi32 a0, sp, 4

# CHECK-ASM: mult16 a0, a1
# CHECK-ASM: encoding: [0x04,0x7c]
mult32 a0, a0, a1

# CHECK-ASM: mult16 a0, a1
# CHECK-ASM: encoding: [0x04,0x7c]
mult32 a0, a1, a0

# CHECK-ASM: and16 a0, a1
# CHECK-ASM: encoding: [0x04,0x68]
and32 a0, a0, a1

# CHECK-ASM: and16 a0, a1
# CHECK-ASM: encoding: [0x04,0x68]
and32 a0, a1, a0

# CHECK-ASM: or16 a0, a1
# CHECK-ASM: encoding: [0x04,0x6c]
or32 a0, a0, a1

# CHECK-ASM: or16 a0, a1
# CHECK-ASM: encoding: [0x04,0x6c]
or32 a0, a1, a0

# CHECK-ASM: xor16 a0, a1
# CHECK-ASM: encoding: [0x05,0x6c]
xor32 a0, a0, a1

# CHECK-ASM: xor16 a0, a1
# CHECK-ASM: encoding: [0x05,0x6c]
xor32 a0, a1, a0

# CHECK-ASM: andn16 a0, a1
# CHECK-ASM: encoding: [0x05,0x68]
andn32 a0, a0, a1

# CHECK-ASM: nor16 a0, a1
# CHECK-ASM: encoding: [0x06,0x6c]
nor32 a0, a0, a1

# CHECK-ASM: lsl16 a0, a1
# CHECK-ASM: encoding: [0x04,0x70]
lsl32 a0, a0, a1

# CHECK-ASM: lsr16 a0, a1
# CHECK-ASM: encoding: [0x05,0x70]
lsr32 a0, a0, a1

# CHECK-ASM: asr16 a0, a1
# CHECK-ASM: encoding: [0x06,0x70]
asr32 a0, a0, a1

# CHECK-ASM: rotl16 a0, a1
# CHECK-ASM: encoding: [0x07,0x70]
rotl32 a0, a0, a1

# CHECK-ASM: revb16 a0, a1
# CHECK-ASM: encoding: [0x06,0x78]
revb32 a0, a1

# CHECK-ASM: lsli16 a0, a1, 2
# CHECK-ASM: encoding: [0x02,0x41]
lsli32 a0, a1, 2

# CHECK-ASM: lsri16 a0, a1, 2
# CHECK-ASM: encoding: [0x02,0x49]
lsri32 a0, a1, 2

# CHECK-ASM: asri16 a0, a1, 2
# CHECK-ASM: encoding: [0x02,0x51]
asri32 a0, a1, 2

# CHECK-ASM: cmphs16 a0, a1
# CHECK-ASM: encoding: [0x40,0x64]
cmphs32 a0, a1

# CHECK-ASM: cmplt16 a0, a1
# CHECK-ASM: encoding: [0x41,0x64]
cmplt32 a0, a1

# CHECK-ASM: cmpne16 a0, a1
# CHECK-ASM: encoding: [0x42,0x64]
cmpne32 a0, a1

# CHECK-ASM: cmphsi16 a0, 1
# CHECK-ASM: encoding: [0x00,0x38]
cmphsi32 a0, 1

# CHECK-ASM: cmplti16 a0, 1
# CHECK-ASM: encoding: [0x20,0x38]
cmplti32 a0, 1

# CHECK-ASM: cmpnei16 a0, 1
# CHECK-ASM: encoding: [0x41,0x38]
cmpnei32 a0, 1

# CHECK-ASM: jsr16 a0
# CHECK-ASM: encoding: [0xc1,0x7b]
jsr32 a0

# CHECK-ASM: mvcv16 a0
# CHECK-ASM: encoding: [0x03,0x64]
mvcv32 a0

# CHECK-ASM: movi16 a0, 1
# CHECK-ASM: encoding: [0x01,0x30]
movi32 a0, 1

# CHECK-ASM: ld16.b a0, (a1, 1)
# CHECK-ASM: encoding: [0x01,0x81]
ld32.b a0, (a1, 1)

# CHECK-ASM: ld16.h a0, (a1, 2)
# CHECK-ASM: encoding: [0x01,0x89]
ld32.h a0, (a1, 2)

# CHECK-ASM: ld16.w a0, (a1, 4)
# CHECK-ASM: encoding: [0x01,0x91]
ld32.w a0, (a1, 4)

# CHECK-ASM: ld16.w a0, (sp, 4)
# CHECK-ASM: encoding: [0x01,0x98]
ld32.w a0, (sp, 4)

# CHECK-ASM: st16.b a0, (a1, 1)
# CHECK-ASM: encoding: [0x01,0xa1]
st32.b a0, (a1, 1)

# CHECK-ASM: st16.h a0, (a1, 2)
# CHECK-ASM: encoding: [0x01,0xa9]
st32.h a0, (a1, 2)

# CHECK-ASM: st16.w a0, (a1, 4)
# CHECK-ASM: encoding: [0x01,0xb1]
st32.w a0, (a1, 4)

# CHECK-ASM: st16.w a0, (sp, 4)
# CHECK-ASM: encoding: [0x01,0xb8]
st32.w a0, (sp, 4)

# CHECK-ASM: btsti16 a0, 1
# CHECK-ASM: encoding: [0xc1,0x38]
btsti32 a0, 1

# CHECK-ASM: bclri16 a0, 1
# CHECK-ASM: encoding: [0x81,0x38]
bclri32 a0, a0, 1

# CHECK-ASM: bseti16 a0, 1
# CHECK-ASM: encoding: [0xa1,0x38]
bseti32 a0, a0, 1