Commit eb2fc1da authored by Julian Kranz's avatar Julian Kranz

X86 RREIL Translator

- Added semantics of: LDS/LES/LFS/LGS/LSS
parent 793f77bd
......@@ -667,9 +667,18 @@ end
val sem-lddqu x = sem-lddqu-vlddqu 128 x;
val sem-vlddqu x = sem-lddqu-vlddqu 256 x;
val sem-lds x = do
val sem-lds-les-lfs-lgs-lss x segment = do
src-size <- sizeof1 x.opnd1;
src <- read src-size x.opnd1;
return void
src-temp <- mktemp;
mov src-size src-temp src;
ds <- return (semantic-register-of segment);
mov ds.size ds (var (at-offset src-temp 0));
dst <- write x.opnd-sz x.opnd2;
commit x.opnd-sz dst (var (at-offset src-temp ds.size))
end
val sem-lea x = do
......
......@@ -978,14 +978,14 @@ val semantics insn =
| LAR x: sem-undef-arity2 x
| LDDQU x: sem-lddqu x
| LDMXCSR x: sem-undef-arity1 x
| LDS x: sem-lds x
| LDS x: sem-lds-les-lfs-lgs-lss x DS
| LEA x: sem-lea x
| LEAVE x: sem-undef-arity0 x
| LES x: sem-undef-arity2 x
| LES x: sem-lds-les-lfs-lgs-lss x ES
| LFENCE x: sem-undef-arity0 x
| LFS x: sem-undef-arity2 x
| LFS x: sem-lds-les-lfs-lgs-lss x FS
| LGDT x: sem-undef-arity1 x
| LGS x: sem-undef-arity2 x
| LGS x: sem-lds-les-lfs-lgs-lss x GS
| LIDT x: sem-undef-arity1 x
| LLDT x: sem-undef-arity1 x
| LMSW x: sem-undef-arity1 x
......@@ -994,7 +994,7 @@ val semantics insn =
| LOOPE x: sem-loope x
| LOOPNE x: sem-loopne x
| LSL x: sem-undef-arity2 x
| LSS x: sem-undef-arity2 x
| LSS x: sem-lds-les-lfs-lgs-lss x SS
| LTR x: sem-undef-arity1 x
| MASKMOVDQU x: sem-undef-arity2 x
| MASKMOVQ x: sem-undef-arity2 x
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment