Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Tanzeem Haque
gdsl-toolkit
Commits
9403d0ea
Commit
9403d0ea
authored
Mar 24, 2013
by
Julian Kranz
Browse files
X86 Specification
- Bug fixes - Cleanup
parent
87bb27e9
Changes
3
Hide whitespace changes
Inline
Side-by-side
specifications/x86/x86-pretty.ml
View file @
9403d0ea
...
...
@@ -1077,6 +1077,7 @@ val show/instruction insn =
|
VUNPCKHPS
x
:
"VUNPCKHPS"
-++
show
/
varity
x
|
VUNPCKLPD
x
:
"VUNPCKLPD"
-++
show
/
varity
x
|
VUNPCKLPS
x
:
"VUNPCKLPS"
-++
show
/
varity
x
|
VXORPD
x
:
"VXORPD"
-++
show
/
varity
x
|
VXORPS
x
:
"VXORPS"
-++
show
/
varity
x
|
VZEROALL
x
:
"VZEROALL"
-++
show
/
varity
x
|
VZEROUPPER
x
:
"VZEROUPPER"
-++
show
/
varity
x
...
...
@@ -1088,7 +1089,6 @@ val show/instruction insn =
|
XADD
x
:
"XADD"
-++
show
/
arity2
x
|
XCHG
x
:
"XCHG"
-++
show
/
arity2
x
|
XGETBV
x
:
"XGETBV"
|
XLAT
x
:
"XLAT"
|
XLATB
x
:
"XLATB"
|
XOR
x
:
"XOR"
-++
show
/
arity2
x
|
XORPD
x
:
"XORPD"
-++
show
/
arity2
x
...
...
specifications/x86/x86-rreil-translator.ml
View file @
9403d0ea
...
...
@@ -2146,6 +2146,7 @@ val semantics insn =
|
VUNPCKHPS
x
:
sem
-
undef
-
varity
x
|
VUNPCKLPD
x
:
sem
-
undef
-
varity
x
|
VUNPCKLPS
x
:
sem
-
undef
-
varity
x
|
VXORPD
x
:
sem
-
undef
-
varity
x
|
VXORPS
x
:
sem
-
undef
-
varity
x
|
VZEROALL
v
:
sem
-
vzeroall
|
VZEROUPPER
v
:
sem
-
vzeroupper
...
...
@@ -2157,7 +2158,6 @@ val semantics insn =
|
XADD
x
:
sem
-
xadd
x
|
XCHG
x
:
sem
-
xchg
x
|
XGETBV
x
:
sem
-
undef
-
arity0
x
|
XLAT
x
:
sem
-
undef
-
arity0
x
|
XLATB
x
:
sem
-
undef
-
arity0
x
|
XOR
x
:
sem
-
xor
x
|
XORPD
x
:
sem
-
undef
-
arity2
x
...
...
specifications/x86/x86.ml
View file @
9403d0ea
...
...
@@ -1507,6 +1507,7 @@ type insn =
|
VUNPCKHPS
of
varity
|
VUNPCKLPD
of
varity
|
VUNPCKLPS
of
varity
|
VXORPD
of
varity
|
VXORPS
of
varity
|
VZEROALL
of
varity
|
VZEROUPPER
of
varity
...
...
@@ -1518,7 +1519,6 @@ type insn =
|
XADD
of
arity2
|
XCHG
of
arity2
|
XGETBV
of
arity0
|
XLAT
of
arity0
|
XLATB
of
arity0
|
XOR
of
arity2
|
XORPD
of
arity2
...
...
@@ -5654,8 +5654,6 @@ val / [0x85 /r]
|
rexw
?
=
binop
TEST
r
/
m64
r64
|
otherwise
=
binop
TEST
r
/
m32
r32
###
=><=
###
UCOMISD
###
-
Unordered
Compare
Scalar
Double
-
Precision
Floating
-
Point
Values
and
Set
EFLAGS
val
/
66
[
0x0f
0x2e
/
r
]
=
binop
UCOMISD
xmm128
xmm
/
m64
...
...
@@ -5701,7 +5699,7 @@ val /vex/0f/vexv [0x14 /r]
###
VBROADCAST
###
-
Load
with
Broadcast
val
/
vex
/
66
/
0
f
/
38
[
0x18
/
r
-
mem
]
|
vex128
?
&
vexw0
?
=
varity2
VBROADCASTSS
xmm128
m32
|
vex128
?
&
vexw0
?
&
mode32
?
=
varity2
VBROADCASTSS
xmm128
m32
|
vex256
?
&
vexw0
?
=
varity2
VBROADCASTSS
ymm256
m32
val
/
vex
/
66
/
0
f
/
38
[
0x19
/
r
-
mem
]
|
vex256
?
&
vexw0
?
=
varity2
VBROADCASTSD
ymm256
m64
val
/
vex
/
66
/
0
f
/
38
[
0x1a
/
r
-
mem
]
|
vex256
?
&
vexw0
?
=
varity2
VBROADCASTF128
ymm256
m128
...
...
@@ -5713,6 +5711,7 @@ val /vex/66/0f/38 [0x13 /r]
|
vex128
?
&
vexw0
?
=
varity2
VCVTPH2PS
xmm128
xmm
/
m64
###
VCVTPS2PH
###
-
Convert
Single
-
Precision
FP
value
to
16
-
bit
FP
value
val
/
vex
/
66
/
0
f
/
3
a
[
0x1d
/
r
]
|
vex256
?
&
vexw0
?
=
varity3
VCVTPS2PH
xmm
/
m128
ymm256
imm8
|
vex128
?
&
vexw0
?
=
varity3
VCVTPS2PH
xmm
/
m64
xmm128
imm8
...
...
@@ -5827,7 +5826,7 @@ val / ['10010 r:3']
update
@
{
reg
/
opcode
=
r
};
binop
XCHG
eax
r32
/
rexb
end
val
/
[
0x86
/
r
]
=
binop
XCHG
r8
r
/
m
8
val
/
[
0x86
/
r
]
=
binop
-
lock
XCHG
r
/
m
8
r8
val
/
[
0x87
/
r
]
|
opndsz
?
=
binop
-
lock
XCHG
r
/
m16
r16
|
rexw
?
=
binop
-
lock
XCHG
r
/
m64
r64
...
...
@@ -5840,7 +5839,7 @@ val / [0x0f 0x01 0xd0] = arity0 XGETBV
###
XLAT
/
XLATB
###
-
Table
Look
-
up
Translation
val
/
[
0xd7
]
|
opndsz
?
=
arity0
XLAT
|
opndsz
?
=
arity0
XLAT
B
|
rexw
?
=
arity0
XLATB
|
otherwise
=
arity0
XLATB
...
...
@@ -5874,13 +5873,16 @@ val / [0x33 /r]
###
XORPD
###
-
Bitwise
Logical
XOR
for
Double
-
Precision
Floating
-
Point
Values
val
/
66
[
0x0f
0x57
/
r
]
=
binop
XORPD
xmm128
xmm
/
m128
val
/
vex
/
66
/
0
f
/
vexv
[
0x57
/
r
]
|
vex128
?
=
varity3
VXORPD
xmm128
v
/
xmm
xmm
/
m128
|
vex256
?
=
varity3
VXORPD
ymm256
v
/
ymm
ymm
/
m256
###
XORPS
###
-
Bitwise
Logical
XOR
for
Single
-
Precision
Floating
-
Point
Values
val
/
[
0x0f
0x57
/
r
]
=
binop
XORPS
xmm128
xmm
/
m128
val
/
vex
/
66
/
0
f
/
vexv
[
0x57
/
r
]
val
/
vex
/
0
f
/
vexv
[
0x57
/
r
]
|
vex128
?
=
varity3
VXORPS
xmm128
v
/
xmm
xmm
/
m128
|
otherwise
=
varity3
VXORPS
ymm256
v
/
ymm
ymm
/
m256
|
vex256
?
=
varity3
VXORPS
ymm256
v
/
ymm
ymm
/
m256
###
XRSTOR
###
-
Restore
Processor
Extended
States
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment