Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
gdsl-toolkit
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Tanzeem Haque
gdsl-toolkit
Commits
d1c2faf4
Commit
d1c2faf4
authored
Feb 19, 2013
by
Julian Kranz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
*
- Added address to immediates
parent
5ad0c59d
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
38 additions
and
30 deletions
+38
-30
specifications/x86/c/asm-test.s
specifications/x86/c/asm-test.s
+9
-5
specifications/x86/x86-pretty.ml
specifications/x86/x86-pretty.ml
+4
-4
specifications/x86/x86-rreil-translator-m-z.ml
specifications/x86/x86-rreil-translator-m-z.ml
+3
-3
specifications/x86/x86-rreil-translator.ml
specifications/x86/x86-rreil-translator.ml
+8
-8
specifications/x86/x86.ml
specifications/x86/x86.ml
+14
-10
No files found.
specifications/x86/c/asm-test.s
View file @
d1c2faf4
...
...
@@ -39,8 +39,8 @@ main:
#
movbeq
(%
rax
),
%
rbx
maskmovq
%
mm3
,
%
mm1
vmaskmovdqu
%
xmm3
,
%
xmm1
#
maskmovq
%
mm3
,
%
mm1
#
vmaskmovdqu
%
xmm3
,
%
xmm1
#
loop
main
#
loope
main
...
...
@@ -555,9 +555,13 @@ main:
#
vzeroall
#
vzeroupper
movhlps
%
xmm1
,
%
xmm2
movlps
(%
rax
),
%
xmm1
#
movhlps
%
xmm1
,
%
xmm2
#
movlps
(%
rax
),
%
xmm1
add
$
0x42
,
%
rax
add
$
0x01bb
,
%
bx
add
$
0x7abbccdd
,
%
rax
#
add
$
0xaabbccdd12345678
,
%
rax
#
pushq
%
rbp
.
cfi_def_cfa_offset
16
...
...
specifications/x86/x86-pretty.ml
View file @
d1c2faf4
...
...
@@ -182,10 +182,10 @@ val show/scale s =
val
show
/
operand
op
=
case
op
of
IMM8
x
:
showbitvec
x
|
IMM16
x
:
showbitvec
x
|
IMM32
x
:
showbitvec
x
|
IMM64
x
:
showbitvec
x
IMM8
x
:
showbitvec
x
.
imm
+++
"@"
+++
showint
x
.
address
|
IMM16
x
:
showbitvec
x
.
imm
+++
"@"
+++
showint
x
.
address
|
IMM32
x
:
showbitvec
x
.
imm
+++
"@"
+++
showint
x
.
address
|
IMM64
x
:
showbitvec
x
.
imm
+++
"@"
+++
showint
x
.
address
|
REG
x
:
show
/
register
x
|
MEM
x
:
show
/
memsz
x
.
sz
-++
show
/
segment
x
.
segment
+++
"["
+++
show
/
operand
x
.
opnd
+++
"]"
|
SUM
x
:
show
/
operand
x
.
a
+++
"+"
+++
show
/
operand
x
.
b
...
...
specifications/x86/x86-rreil-translator-m-z.ml
View file @
d1c2faf4
...
...
@@ -884,7 +884,7 @@ val sem-vphsubsw x = sem-phbinop-vphbinop-opnd '1' 16 sub-signed-saturating x.op
val
sem
-
pinsr
-
vpinsr
-
opnd
avx
-
encoded
element
-
size
opnd1
opnd2
opnd3
opnd4
=
do
offset
<-
return
(
case
opnd4
of
IMM8
x
:
x
IMM8
x
:
x
.
imm
end
);
offset
-
mask
<-
return
(
...
...
@@ -1501,7 +1501,7 @@ val sem-pshuf-vdhwlw avx-encoded element-size low-size high-size x = do
indices
<-
return
(
case
x
.
opnd3
of
IMM8
x
:
x
IMM8
x
:
x
.
imm
end
);
...
...
@@ -1632,7 +1632,7 @@ val sem-psxldq-vpsxldq-opnd avx-encoded shifter opnd1 opnd2 opnd3 = do
amount
<-
return
(
zx
(
case
opnd3
of
IMM8
x
:
x
IMM8
x
:
x
.
imm
end
));
amount
<-
return
(
...
...
specifications/x86/x86-rreil-translator.ml
View file @
d1c2faf4
...
...
@@ -175,10 +175,10 @@ val conv-with conv sz x =
val
conv
-
mem
x
=
conv
-
with
Signed
x
.
psz
x
.
opnd
in
case
x
of
IMM8
x
:
conv
-
imm
conv
x
|
IMM16
x
:
conv
-
imm
conv
x
|
IMM32
x
:
conv
-
imm
conv
x
|
IMM64
x
:
conv
-
imm
conv
x
IMM8
x
:
conv
-
imm
conv
x
.
imm
|
IMM16
x
:
conv
-
imm
conv
x
.
imm
|
IMM32
x
:
conv
-
imm
conv
x
.
imm
|
IMM64
x
:
conv
-
imm
conv
x
.
imm
|
REG
x
:
conv
-
reg
conv
sz
x
|
SUM
x
:
conv
-
sum
conv
sz
x
|
SCALE
x
:
conv
-
scale
conv
sz
x
...
...
@@ -197,10 +197,10 @@ val reads conv sz x = conv-with conv sz x
val
extract
-
imm
-
unsigned
imm
=
case
imm
of
IMM8
x
:
zx
x
|
IMM16
x
:
zx
x
|
IMM32
x
:
zx
x
|
IMM64
x
:
zx
x
IMM8
x
:
zx
x
.
imm
|
IMM16
x
:
zx
x
.
imm
|
IMM32
x
:
zx
x
.
imm
|
IMM64
x
:
zx
x
.
imm
end
val
read
-
addr
-
reg
x
=
...
...
specifications/x86/x86.ml
View file @
d1c2faf4
...
...
@@ -600,10 +600,10 @@ type register =
|
RIP
type
opnd
=
IMM8
of
8
|
IMM16
of
16
|
IMM32
of
32
|
IMM64
of
64
IMM8
of
{
imm
:
8
,
address
:
int
}
|
IMM16
of
{
imm
:
16
,
address
:
int
}
|
IMM32
of
{
imm
:
32
,
address
:
int
}
|
IMM64
of
{
imm
:
64
,
address
:
int
}
|
REG
of
register
|
MEM
of
{
sz
:
int
,
psz
:
int
,
segment
:
seg_override
,
opnd
:
opnd
}
|
SUM
of
{
a
:
opnd
,
b
:
opnd
}
...
...
@@ -1611,11 +1611,15 @@ val ymm14 = return (REG YMM14)
val
ymm15
=
return
(
REG
YMM15
)
val
st0
=
return
(
REG
ST0
)
val
imm8
[
'
b
:
8
'
]
=
return
(
IMM8
b
)
val
imm16
[
'
b1
:
8
'
'
b2
:
8
'
]
=
return
(
IMM16
(
b2
^
b1
))
val
imm32
[
'
b1
:
8
'
'
b2
:
8
'
'
b3
:
8
'
'
b4
:
8
'
]
=
return
(
IMM32
(
b4
^
b3
^
b2
^
b1
))
val
imm64
[
'
b1
:
8
'
'
b2
:
8
'
'
b3
:
8
'
'
b4
:
8
'
'
b5
:
8
'
'
b6
:
8
'
'
b7
:
8
'
'
b8
:
8
'
]
=
return
(
IMM64
(
b8
^
b7
^
b6
^
b5
^
b4
^
b3
^
b2
^
b1
))
val
imm
-
build
cons
b
size
=
do
ip
<-
ipget
;
return
(
cons
{
imm
=
b
,
address
=
(
ip
-
size
)})
end
val
imm8
[
'
b
:
8
'
]
=
imm
-
build
IMM8
b
1
val
imm16
[
'
b1
:
8
'
'
b2
:
8
'
]
=
imm
-
build
IMM16
(
b2
^
b1
)
2
val
imm32
[
'
b1
:
8
'
'
b2
:
8
'
'
b3
:
8
'
'
b4
:
8
'
]
=
imm
-
build
IMM32
(
b4
^
b3
^
b2
^
b1
)
4
val
imm64
[
'
b1
:
8
'
'
b2
:
8
'
'
b3
:
8
'
'
b4
:
8
'
'
b5
:
8
'
'
b6
:
8
'
'
b7
:
8
'
'
b8
:
8
'
]
=
imm
-
build
IMM64
(
b8
^
b7
^
b6
^
b5
^
b4
^
b3
^
b2
^
b1
)
8
val
rel8
[
'
b
:
8
'
]
=
return
(
REL8
b
)
val
rel16
[
'
b1
:
8
'
'
b2
:
8
'
]
=
return
(
REL16
(
b2
^
b1
))
...
...
@@ -2539,7 +2543,7 @@ val far-ind cons giveOp = exception-rep-repne-lock (do
return
(
cons
{
opnd
-
sz
=
opnd
-
sz
,
addr
-
sz
=
addr
-
sz
,
rep
=
'
0
'
,
repne
=
'
0
'
,
lock
=
'
0
'
,
opnd1
=
FARABS
op
})
end
)
val
one
=
return
(
IMM8
'
00000001
'
)
val
one
=
return
(
IMM8
{
imm
=
'
00000001
'
,
address
=
0
}
)
val
//
a
=
do
b
<-
a
;
...
...
Write
Preview
Markdown
is supported
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