Add missing files from last change in gas/testsuite. i386-dis.c: Catch a number of cases where an invalid modrm would result in bogus disassembly. const lots of places.
This commit is contained in:
parent
fa67f43732
commit
f4497960b0
|
@ -0,0 +1,176 @@
|
|||
#objdump: -dw
|
||||
#name: i386 katmai
|
||||
|
||||
.*: +file format .*
|
||||
|
||||
Disassembly of section .text:
|
||||
|
||||
0+000 <.text>:
|
||||
0: 0f 58 01 [ ]*addps \(%ecx\),%xmm0
|
||||
3: 0f 58 ca [ ]*addps %xmm2,%xmm1
|
||||
6: f3 0f 58 13 [ ]*addss \(%ebx\),%xmm2
|
||||
a: f3 0f 58 dc [ ]*addss %xmm4,%xmm3
|
||||
e: 0f 55 65 00 [ ]*andnps 0x0\(%ebp\),%xmm4
|
||||
12: 0f 55 ee [ ]*andnps %xmm6,%xmm5
|
||||
15: 0f 54 37 [ ]*andps \(%edi\),%xmm6
|
||||
18: 0f 54 f8 [ ]*andps %xmm0,%xmm7
|
||||
1b: 0f c2 c1 02 [ ]*cmpleps %xmm1,%xmm0
|
||||
1f: 0f c2 0a 03 [ ]*cmpunordps \(%edx\),%xmm1
|
||||
23: f3 0f c2 d2 04 [ ]*cmpneqss %xmm2,%xmm2
|
||||
28: f3 0f c2 1c 24 05 [ ]*cmpnltss \(%esp,1\),%xmm3
|
||||
2e: 0f c2 e5 06 [ ]*cmpnleps %xmm5,%xmm4
|
||||
32: 0f c2 2e 07 [ ]*cmpordps \(%esi\),%xmm5
|
||||
36: f3 0f c2 f7 00 [ ]*cmpeqss %xmm7,%xmm6
|
||||
3b: f3 0f c2 38 01 [ ]*cmpltss \(%eax\),%xmm7
|
||||
40: 0f c2 c1 00 [ ]*cmpeqps %xmm1,%xmm0
|
||||
44: 0f c2 0a 00 [ ]*cmpeqps \(%edx\),%xmm1
|
||||
48: f3 0f c2 d2 00 [ ]*cmpeqss %xmm2,%xmm2
|
||||
4d: f3 0f c2 1c 24 00 [ ]*cmpeqss \(%esp,1\),%xmm3
|
||||
53: 0f c2 e5 01 [ ]*cmpltps %xmm5,%xmm4
|
||||
57: 0f c2 2e 01 [ ]*cmpltps \(%esi\),%xmm5
|
||||
5b: f3 0f c2 f7 01 [ ]*cmpltss %xmm7,%xmm6
|
||||
60: f3 0f c2 38 01 [ ]*cmpltss \(%eax\),%xmm7
|
||||
65: 0f c2 01 02 [ ]*cmpleps \(%ecx\),%xmm0
|
||||
69: 0f c2 ca 02 [ ]*cmpleps %xmm2,%xmm1
|
||||
6d: f3 0f c2 13 02 [ ]*cmpless \(%ebx\),%xmm2
|
||||
72: f3 0f c2 dc 02 [ ]*cmpless %xmm4,%xmm3
|
||||
77: 0f c2 65 00 03 [ ]*cmpunordps 0x0\(%ebp\),%xmm4
|
||||
7c: 0f c2 ee 03 [ ]*cmpunordps %xmm6,%xmm5
|
||||
80: f3 0f c2 37 03 [ ]*cmpunordss \(%edi\),%xmm6
|
||||
85: f3 0f c2 f8 03 [ ]*cmpunordss %xmm0,%xmm7
|
||||
8a: 0f c2 c1 04 [ ]*cmpneqps %xmm1,%xmm0
|
||||
8e: 0f c2 0a 04 [ ]*cmpneqps \(%edx\),%xmm1
|
||||
92: f3 0f c2 d2 04 [ ]*cmpneqss %xmm2,%xmm2
|
||||
97: f3 0f c2 1c 24 04 [ ]*cmpneqss \(%esp,1\),%xmm3
|
||||
9d: 0f c2 e5 05 [ ]*cmpnltps %xmm5,%xmm4
|
||||
a1: 0f c2 2e 05 [ ]*cmpnltps \(%esi\),%xmm5
|
||||
a5: f3 0f c2 f7 05 [ ]*cmpnltss %xmm7,%xmm6
|
||||
aa: f3 0f c2 38 05 [ ]*cmpnltss \(%eax\),%xmm7
|
||||
af: 0f c2 01 06 [ ]*cmpnleps \(%ecx\),%xmm0
|
||||
b3: 0f c2 ca 06 [ ]*cmpnleps %xmm2,%xmm1
|
||||
b7: f3 0f c2 13 06 [ ]*cmpnless \(%ebx\),%xmm2
|
||||
bc: f3 0f c2 dc 06 [ ]*cmpnless %xmm4,%xmm3
|
||||
c1: 0f c2 65 00 07 [ ]*cmpordps 0x0\(%ebp\),%xmm4
|
||||
c6: 0f c2 ee 07 [ ]*cmpordps %xmm6,%xmm5
|
||||
ca: f3 0f c2 37 07 [ ]*cmpordss \(%edi\),%xmm6
|
||||
cf: f3 0f c2 f8 07 [ ]*cmpordss %xmm0,%xmm7
|
||||
d4: 0f 2f c1 [ ]*comiss %xmm1,%xmm0
|
||||
d7: 0f 2f 0a [ ]*comiss \(%edx\),%xmm1
|
||||
da: 0f 2a d3 [ ]*cvtpi2ps %mm3,%xmm2
|
||||
dd: 0f 2a 1c 24 [ ]*cvtpi2ps \(%esp,1\),%xmm3
|
||||
e1: f3 0f 2a e5 [ ]*cvtsi2ss %ebp,%xmm4
|
||||
e5: f3 0f 2a 2e [ ]*cvtsi2ss \(%esi\),%xmm5
|
||||
e9: 0f 2d f7 [ ]*cvtps2pi %xmm7,%mm6
|
||||
ec: 0f 2d 38 [ ]*cvtps2pi \(%eax\),%mm7
|
||||
ef: f3 0f 2d 01 [ ]*cvtss2si \(%ecx\),%eax
|
||||
f3: f3 0f 2d ca [ ]*cvtss2si %xmm2,%ecx
|
||||
f7: 0f 2c 13 [ ]*cvttps2pi \(%ebx\),%mm2
|
||||
fa: 0f 2c dc [ ]*cvttps2pi %xmm4,%mm3
|
||||
fd: f3 0f 2c 65 00 [ ]*cvttss2si 0x0\(%ebp\),%esp
|
||||
102: f3 0f 2c ee [ ]*cvttss2si %xmm6,%ebp
|
||||
106: 0f 5e c1 [ ]*divps %xmm1,%xmm0
|
||||
109: 0f 5e 0a [ ]*divps \(%edx\),%xmm1
|
||||
10c: f3 0f 5e d3 [ ]*divss %xmm3,%xmm2
|
||||
110: f3 0f 5e 1c 24 [ ]*divss \(%esp,1\),%xmm3
|
||||
115: 0f ae 55 00 [ ]*ldmxcsr 0x0\(%ebp\)
|
||||
119: 0f ae 1e [ ]*stmxcsr \(%esi\)
|
||||
11c: 0f ae f8 [ ]*sfence
|
||||
11f: 0f 5f c1 [ ]*maxps %xmm1,%xmm0
|
||||
122: 0f 5f 0a [ ]*maxps \(%edx\),%xmm1
|
||||
125: f3 0f 5f d3 [ ]*maxss %xmm3,%xmm2
|
||||
129: f3 0f 5f 1c 24 [ ]*maxss \(%esp,1\),%xmm3
|
||||
12e: 0f 5d e5 [ ]*minps %xmm5,%xmm4
|
||||
131: 0f 5d 2e [ ]*minps \(%esi\),%xmm5
|
||||
134: f3 0f 5d f7 [ ]*minss %xmm7,%xmm6
|
||||
138: f3 0f 5d 38 [ ]*minss \(%eax\),%xmm7
|
||||
13c: 0f 28 c1 [ ]*movaps %xmm1,%xmm0
|
||||
13f: 0f 29 11 [ ]*movaps %xmm2,\(%ecx\)
|
||||
142: 0f 28 12 [ ]*movaps \(%edx\),%xmm2
|
||||
145: 0f 16 dc [ ]*movlhps %xmm4,%xmm3
|
||||
148: 0f 17 2c 24 [ ]*movhps %xmm5,\(%esp,1\)
|
||||
14c: 0f 16 2e [ ]*movhps \(%esi\),%xmm5
|
||||
14f: 0f 12 f7 [ ]*movhlps %xmm7,%xmm6
|
||||
152: 0f 13 07 [ ]*movlps %xmm0,\(%edi\)
|
||||
155: 0f 12 00 [ ]*movlps \(%eax\),%xmm0
|
||||
158: 0f 50 ca [ ]*movmskps %xmm2,%ecx
|
||||
15b: 0f 10 d3 [ ]*movups %xmm3,%xmm2
|
||||
15e: 0f 11 22 [ ]*movups %xmm4,\(%edx\)
|
||||
161: 0f 10 65 00 [ ]*movups 0x0\(%ebp\),%xmm4
|
||||
165: f3 0f 10 ee [ ]*movss %xmm6,%xmm5
|
||||
169: f3 0f 11 3e [ ]*movss %xmm7,\(%esi\)
|
||||
16d: f3 0f 10 38 [ ]*movss \(%eax\),%xmm7
|
||||
171: 0f 59 c1 [ ]*mulps %xmm1,%xmm0
|
||||
174: 0f 59 0a [ ]*mulps \(%edx\),%xmm1
|
||||
177: f3 0f 59 d2 [ ]*mulss %xmm2,%xmm2
|
||||
17b: f3 0f 59 1c 24 [ ]*mulss \(%esp,1\),%xmm3
|
||||
180: 0f 56 e5 [ ]*orps %xmm5,%xmm4
|
||||
183: 0f 56 2e [ ]*orps \(%esi\),%xmm5
|
||||
186: 0f 53 f7 [ ]*rcpps %xmm7,%xmm6
|
||||
189: 0f 53 38 [ ]*rcpps \(%eax\),%xmm7
|
||||
18c: f3 0f 53 01 [ ]*rcpss \(%ecx\),%xmm0
|
||||
190: f3 0f 53 ca [ ]*rcpss %xmm2,%xmm1
|
||||
194: 0f 52 13 [ ]*rsqrtps \(%ebx\),%xmm2
|
||||
197: 0f 52 dc [ ]*rsqrtps %xmm4,%xmm3
|
||||
19a: f3 0f 52 65 00 [ ]*rsqrtss 0x0\(%ebp\),%xmm4
|
||||
19f: f3 0f 52 ee [ ]*rsqrtss %xmm6,%xmm5
|
||||
1a3: 0f c6 37 02 [ ]*shufps \$0x2,\(%edi\),%xmm6
|
||||
1a7: 0f c6 f8 03 [ ]*shufps \$0x3,%xmm0,%xmm7
|
||||
1ab: 0f 51 c1 [ ]*sqrtps %xmm1,%xmm0
|
||||
1ae: 0f 51 0a [ ]*sqrtps \(%edx\),%xmm1
|
||||
1b1: f3 0f 51 d2 [ ]*sqrtss %xmm2,%xmm2
|
||||
1b5: f3 0f 51 1c 24 [ ]*sqrtss \(%esp,1\),%xmm3
|
||||
1ba: 0f 5c e5 [ ]*subps %xmm5,%xmm4
|
||||
1bd: 0f 5c 2e [ ]*subps \(%esi\),%xmm5
|
||||
1c0: f3 0f 5c f7 [ ]*subss %xmm7,%xmm6
|
||||
1c4: f3 0f 5c 38 [ ]*subss \(%eax\),%xmm7
|
||||
1c8: 0f 2e 01 [ ]*ucomiss \(%ecx\),%xmm0
|
||||
1cb: 0f 2e ca [ ]*ucomiss %xmm2,%xmm1
|
||||
1ce: 0f 15 13 [ ]*unpckhps \(%ebx\),%xmm2
|
||||
1d1: 0f 15 dc [ ]*unpckhps %xmm4,%xmm3
|
||||
1d4: 0f 14 65 00 [ ]*unpcklps 0x0\(%ebp\),%xmm4
|
||||
1d8: 0f 14 ee [ ]*unpcklps %xmm6,%xmm5
|
||||
1db: 0f 57 37 [ ]*xorps \(%edi\),%xmm6
|
||||
1de: 0f 57 f8 [ ]*xorps %xmm0,%xmm7
|
||||
1e1: 0f e0 c1 [ ]*pavgb %mm1,%mm0
|
||||
1e4: 0f e0 0a [ ]*pavgb \(%edx\),%mm1
|
||||
1e7: 0f e3 d3 [ ]*pavgw %mm3,%mm2
|
||||
1ea: 0f e3 1c 24 [ ]*pavgw \(%esp,1\),%mm3
|
||||
1ee: 0f c5 c8 00 [ ]*pextrw \$0x0,%mm1,%eax
|
||||
1f2: 0f c4 09 01 [ ]*pinsrw \$0x1,\(%ecx\),%mm1
|
||||
1f6: 0f c4 d2 02 [ ]*pinsrw \$0x2,%edx,%mm2
|
||||
1fa: 0f ee c1 [ ]*pmaxsw %mm1,%mm0
|
||||
1fd: 0f ee 0a [ ]*pmaxsw \(%edx\),%mm1
|
||||
200: 0f de d2 [ ]*pmaxub %mm2,%mm2
|
||||
203: 0f de 1c 24 [ ]*pmaxub \(%esp,1\),%mm3
|
||||
207: 0f ea e5 [ ]*pminsw %mm5,%mm4
|
||||
20a: 0f ea 2e [ ]*pminsw \(%esi\),%mm5
|
||||
20d: 0f da f7 [ ]*pminub %mm7,%mm6
|
||||
210: 0f da 38 [ ]*pminub \(%eax\),%mm7
|
||||
213: 0f d7 e8 [ ]*pmovmskb %mm5,%eax
|
||||
216: 0f e4 e5 [ ]*pmulhuw %mm5,%mm4
|
||||
219: 0f e4 2e [ ]*pmulhuw \(%esi\),%mm5
|
||||
21c: 0f f6 f7 [ ]*psadbw %mm7,%mm6
|
||||
21f: 0f f6 38 [ ]*psadbw \(%eax\),%mm7
|
||||
222: 0f 70 da 01 [ ]*pshufw \$0x1,%mm2,%mm3
|
||||
226: 0f 70 75 00 04 [ ]*pshufw \$0x4,0x0\(%ebp\),%mm6
|
||||
22b: 0f f7 c7 [ ]*maskmovq %mm7,%mm0
|
||||
22e: 0f 2b 33 [ ]*movntps %xmm6,\(%ebx\)
|
||||
231: 0f e7 10 [ ]*movntq %mm2,\(%eax\)
|
||||
234: 0f 18 06 [ ]*prefetchnta \(%esi\)
|
||||
237: 0f 18 0c 98 [ ]*prefetcht0 \(%eax,%ebx,4\)
|
||||
23b: 0f 18 12 [ ]*prefetcht1 \(%edx\)
|
||||
23e: 0f 18 19 [ ]*prefetcht2 \(%ecx\)
|
||||
241: 2e 0f [ ]*\(bad\)
|
||||
243: c2 0a 08 [ ]*ret \$0x80a
|
||||
246: 90 [ ]*nop
|
||||
247: 90 [ ]*nop
|
||||
248: 65 0f [ ]*sfence.*\(bad\).*
|
||||
24a: ae [ ]*scas %es:\(%edi\),%al
|
||||
24b: ff 90 90 90 90 90 [ ]*call \*0x90909090\(%eax\)
|
||||
251: 90 [ ]*nop
|
||||
252: 90 [ ]*nop
|
||||
253: 90 [ ]*nop
|
||||
254: 90 [ ]*nop
|
||||
255: 90 [ ]*nop
|
||||
256: 90 [ ]*nop
|
||||
257: 90 [ ]*nop
|
|
@ -0,0 +1,166 @@
|
|||
#PIII SIMD instructions
|
||||
|
||||
.text
|
||||
addps (%ecx),%xmm0
|
||||
addps %xmm2,%xmm1
|
||||
addss (%ebx),%xmm2
|
||||
addss %xmm4,%xmm3
|
||||
andnps 0x0(%ebp),%xmm4
|
||||
andnps %xmm6,%xmm5
|
||||
andps (%edi),%xmm6
|
||||
andps %xmm0,%xmm7
|
||||
cmpps $0x2,%xmm1,%xmm0
|
||||
cmpps $0x3,(%edx),%xmm1
|
||||
cmpss $0x4,%xmm2,%xmm2
|
||||
cmpss $0x5,(%esp,1),%xmm3
|
||||
cmpps $0x6,%xmm5,%xmm4
|
||||
cmpps $0x7,(%esi),%xmm5
|
||||
cmpss $0x0,%xmm7,%xmm6
|
||||
cmpss $0x1,(%eax),%xmm7
|
||||
cmpeqps %xmm1,%xmm0
|
||||
cmpeqps (%edx),%xmm1
|
||||
cmpeqss %xmm2,%xmm2
|
||||
cmpeqss (%esp,1),%xmm3
|
||||
cmpltps %xmm5,%xmm4
|
||||
cmpltps (%esi),%xmm5
|
||||
cmpltss %xmm7,%xmm6
|
||||
cmpltss (%eax),%xmm7
|
||||
cmpleps (%ecx),%xmm0
|
||||
cmpleps %xmm2,%xmm1
|
||||
cmpless (%ebx),%xmm2
|
||||
cmpless %xmm4,%xmm3
|
||||
cmpunordps 0x0(%ebp),%xmm4
|
||||
cmpunordps %xmm6,%xmm5
|
||||
cmpunordss (%edi),%xmm6
|
||||
cmpunordss %xmm0,%xmm7
|
||||
cmpneqps %xmm1,%xmm0
|
||||
cmpneqps (%edx),%xmm1
|
||||
cmpneqss %xmm2,%xmm2
|
||||
cmpneqss (%esp,1),%xmm3
|
||||
cmpnltps %xmm5,%xmm4
|
||||
cmpnltps (%esi),%xmm5
|
||||
cmpnltss %xmm7,%xmm6
|
||||
cmpnltss (%eax),%xmm7
|
||||
cmpnleps (%ecx),%xmm0
|
||||
cmpnleps %xmm2,%xmm1
|
||||
cmpnless (%ebx),%xmm2
|
||||
cmpnless %xmm4,%xmm3
|
||||
cmpordps 0x0(%ebp),%xmm4
|
||||
cmpordps %xmm6,%xmm5
|
||||
cmpordss (%edi),%xmm6
|
||||
cmpordss %xmm0,%xmm7
|
||||
comiss %xmm1,%xmm0
|
||||
comiss (%edx),%xmm1
|
||||
cvtpi2ps %mm3,%xmm2
|
||||
cvtpi2ps (%esp,1),%xmm3
|
||||
cvtsi2ss %ebp,%xmm4
|
||||
cvtsi2ss (%esi),%xmm5
|
||||
cvtps2pi %xmm7,%mm6
|
||||
cvtps2pi (%eax),%mm7
|
||||
cvtss2si (%ecx),%eax
|
||||
cvtss2si %xmm2,%ecx
|
||||
cvttps2pi (%ebx),%mm2
|
||||
cvttps2pi %xmm4,%mm3
|
||||
cvttss2si 0x0(%ebp),%esp
|
||||
cvttss2si %xmm6,%ebp
|
||||
divps %xmm1,%xmm0
|
||||
divps (%edx),%xmm1
|
||||
divss %xmm3,%xmm2
|
||||
divss (%esp,1),%xmm3
|
||||
ldmxcsr 0x0(%ebp)
|
||||
stmxcsr (%esi)
|
||||
sfence
|
||||
maxps %xmm1,%xmm0
|
||||
maxps (%edx),%xmm1
|
||||
maxss %xmm3,%xmm2
|
||||
maxss (%esp,1),%xmm3
|
||||
minps %xmm5,%xmm4
|
||||
minps (%esi),%xmm5
|
||||
minss %xmm7,%xmm6
|
||||
minss (%eax),%xmm7
|
||||
movaps %xmm1,%xmm0
|
||||
movaps %xmm2,(%ecx)
|
||||
movaps (%edx),%xmm2
|
||||
movlhps %xmm4,%xmm3
|
||||
movhps %xmm5,(%esp,1)
|
||||
movhps (%esi),%xmm5
|
||||
movhlps %xmm7,%xmm6
|
||||
movlps %xmm0,(%edi)
|
||||
movlps (%eax),%xmm0
|
||||
movmskps %xmm2,%ecx
|
||||
movups %xmm3,%xmm2
|
||||
movups %xmm4,(%edx)
|
||||
movups 0x0(%ebp),%xmm4
|
||||
movss %xmm6,%xmm5
|
||||
movss %xmm7,(%esi)
|
||||
movss (%eax),%xmm7
|
||||
mulps %xmm1,%xmm0
|
||||
mulps (%edx),%xmm1
|
||||
mulss %xmm2,%xmm2
|
||||
mulss (%esp,1),%xmm3
|
||||
orps %xmm5,%xmm4
|
||||
orps (%esi),%xmm5
|
||||
rcpps %xmm7,%xmm6
|
||||
rcpps (%eax),%xmm7
|
||||
rcpss (%ecx),%xmm0
|
||||
rcpss %xmm2,%xmm1
|
||||
rsqrtps (%ebx),%xmm2
|
||||
rsqrtps %xmm4,%xmm3
|
||||
rsqrtss 0x0(%ebp),%xmm4
|
||||
rsqrtss %xmm6,%xmm5
|
||||
shufps $0x2,(%edi),%xmm6
|
||||
shufps $0x3,%xmm0,%xmm7
|
||||
sqrtps %xmm1,%xmm0
|
||||
sqrtps (%edx),%xmm1
|
||||
sqrtss %xmm2,%xmm2
|
||||
sqrtss (%esp,1),%xmm3
|
||||
subps %xmm5,%xmm4
|
||||
subps (%esi),%xmm5
|
||||
subss %xmm7,%xmm6
|
||||
subss (%eax),%xmm7
|
||||
ucomiss (%ecx),%xmm0
|
||||
ucomiss %xmm2,%xmm1
|
||||
unpckhps (%ebx),%xmm2
|
||||
unpckhps %xmm4,%xmm3
|
||||
unpcklps 0x0(%ebp),%xmm4
|
||||
unpcklps %xmm6,%xmm5
|
||||
xorps (%edi),%xmm6
|
||||
xorps %xmm0,%xmm7
|
||||
pavgb %mm1,%mm0
|
||||
pavgb (%edx),%mm1
|
||||
pavgw %mm3,%mm2
|
||||
pavgw (%esp,1),%mm3
|
||||
pextrw $0x0,%mm1,%eax
|
||||
pinsrw $0x1,(%ecx),%mm1
|
||||
pinsrw $0x2,%edx,%mm2
|
||||
pmaxsw %mm1,%mm0
|
||||
pmaxsw (%edx),%mm1
|
||||
pmaxub %mm2,%mm2
|
||||
pmaxub (%esp,1),%mm3
|
||||
pminsw %mm5,%mm4
|
||||
pminsw (%esi),%mm5
|
||||
pminub %mm7,%mm6
|
||||
pminub (%eax),%mm7
|
||||
pmovmskb %mm5,%eax
|
||||
pmulhuw %mm5,%mm4
|
||||
pmulhuw (%esi),%mm5
|
||||
psadbw %mm7,%mm6
|
||||
psadbw (%eax),%mm7
|
||||
pshufw $0x1,%mm2,%mm3
|
||||
pshufw $0x4,0x0(%ebp),%mm6
|
||||
maskmovq %mm7,%mm0
|
||||
movntps %xmm6,(%ebx)
|
||||
movntq %mm2,(%eax)
|
||||
prefetchnta (%esi)
|
||||
prefetcht0 (%eax,%ebx,4)
|
||||
prefetcht1 (%edx)
|
||||
prefetcht2 (%ecx)
|
||||
|
||||
# A SIMD instruction with a bad extension byte
|
||||
.byte 0x2E,0x0F,0xC2,0x0A,0x08
|
||||
nop
|
||||
nop
|
||||
# A bad sfence modrm byte
|
||||
.byte 0x65,0x0F,0xAE,0xff
|
||||
# Pad out to goo alignment
|
||||
.byte 0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x90
|
Loading…
Reference in New Issue