Commit 24f372f9 authored by Julian Kranz's avatar Julian Kranz

X86 Pretty Printer

X86 RREIL Translator
parent 90acd5e9
...@@ -238,7 +238,7 @@ val show/instruction insn = ...@@ -238,7 +238,7 @@ val show/instruction insn =
| BTS x: "BTS" -++ show/arity2 x | BTS x: "BTS" -++ show/arity2 x
| CALL x: "CALL" -++ show/flow1 x | CALL x: "CALL" -++ show/flow1 x
| CBW: "CBW" | CBW: "CBW"
| CDQ | CDQ: "CDQ"
| CDQE: "CDQE" | CDQE: "CDQE"
| CLC: "CLC" | CLC: "CLC"
| CLD: "CLD" | CLD: "CLD"
...@@ -329,7 +329,7 @@ val show/instruction insn = ...@@ -329,7 +329,7 @@ val show/instruction insn =
| EMMS: "EMMS" | EMMS: "EMMS"
| ENTER x: "ENTER" -++ show/arity2 x | ENTER x: "ENTER" -++ show/arity2 x
| EXTRACTPS x: "EXTRACTPS" -++ show/arity3 x | EXTRACTPS x: "EXTRACTPS" -++ show/arity3 x
| F2XM1 | F2XM1: "F2XM1"
| FABS: "FABS" | FABS: "FABS"
| FADD x: "FADD" -++ show/arity2 x | FADD x: "FADD" -++ show/arity2 x
| FADDP x: "FADDP" -++ show/arity2 x | FADDP x: "FADDP" -++ show/arity2 x
...@@ -372,13 +372,13 @@ val show/instruction insn = ...@@ -372,13 +372,13 @@ val show/instruction insn =
| FISUB x: "FISUB" -++ show/arity1 x | FISUB x: "FISUB" -++ show/arity1 x
| FISUBR x: "FISUBR" -++ show/arity1 x | FISUBR x: "FISUBR" -++ show/arity1 x
| FLD x: "FLD" -++ show/arity1 x | FLD x: "FLD" -++ show/arity1 x
| FLD1 | FLD1: "FLD1"
| FLDCW x: "FLDCW" -++ show/arity1 x | FLDCW x: "FLDCW" -++ show/arity1 x
| FLDENV x: "FLDENV" -++ show/arity1 x | FLDENV x: "FLDENV" -++ show/arity1 x
| FLDL2E | FLDL2E: "FLDL2E"
| FLDL2T | FLDL2T: "FLDL2T"
| FLDLG2 | FLDLG2: "FLDLG2"
| FLDLN2 | FLDLN2: "FLDLN2"
| FLDPI: "FLDPI" | FLDPI: "FLDPI"
| FLDZ: "FLDZ" | FLDZ: "FLDZ"
| FMUL x: "FMUL" -++ show/arity2 x | FMUL x: "FMUL" -++ show/arity2 x
...@@ -392,7 +392,7 @@ val show/instruction insn = ...@@ -392,7 +392,7 @@ val show/instruction insn =
| FNSTSW x: "FNSTSW" -++ show/arity1 x | FNSTSW x: "FNSTSW" -++ show/arity1 x
| FPATAN: "FPATAN" | FPATAN: "FPATAN"
| FPREM: "FPREM" | FPREM: "FPREM"
| FPREM1 | FPREM1: "FPREM1"
| FPTAN: "FPTAN" | FPTAN: "FPTAN"
| FRNDINT: "FRNDINT" | FRNDINT: "FRNDINT"
| FRSTOR x: "FRSTOR" -++ show/arity1 x | FRSTOR x: "FRSTOR" -++ show/arity1 x
...@@ -423,8 +423,8 @@ val show/instruction insn = ...@@ -423,8 +423,8 @@ val show/instruction insn =
| FXSAVE64 x: "FXSAVE64" -++ show/arity1 x | FXSAVE64 x: "FXSAVE64" -++ show/arity1 x
| FXSAVE x: "FXSAVE" -++ show/arity1 x | FXSAVE x: "FXSAVE" -++ show/arity1 x
| FXTRACT: "FXTRACT" | FXTRACT: "FXTRACT"
| FYL2X | FYL2X: "FYL2X"
| FYL2XP1 | FYL2XP1: "FYL2XP1"
| HADDPD x: "HADDPD" -++ show/arity2 x | HADDPD x: "HADDPD" -++ show/arity2 x
| HADDPS x: "HADDPS" -++ show/arity2 x | HADDPS x: "HADDPS" -++ show/arity2 x
| HLT: "HLT" | HLT: "HLT"
...@@ -436,8 +436,8 @@ val show/instruction insn = ...@@ -436,8 +436,8 @@ val show/instruction insn =
| INC x: "INC" -++ show/arity1 x | INC x: "INC" -++ show/arity1 x
| INSERTPS x: "INSERTPS" -++ show/arity3 x | INSERTPS x: "INSERTPS" -++ show/arity3 x
| INT x: "INT" -++ show/arity1 x | INT x: "INT" -++ show/arity1 x
| INT0 | INT0: "INT0"
| INT3 | INT3: "INT3"
| INVD: "INVD" | INVD: "INVD"
| INVLPG x: "INVLPG" -++ show/arity1 x | INVLPG x: "INVLPG" -++ show/arity1 x
| INVPCID x: "INVPCID" -++ show/arity2 x | INVPCID x: "INVPCID" -++ show/arity2 x
...@@ -699,7 +699,7 @@ val show/instruction insn = ...@@ -699,7 +699,7 @@ val show/instruction insn =
| PSUBW x: "PSUBW" -++ show/arity2 x | PSUBW x: "PSUBW" -++ show/arity2 x
| PTEST x: "PTEST" -++ show/arity2 x | PTEST x: "PTEST" -++ show/arity2 x
| PUNPCKHBW x: "PUNPCKHBW" -++ show/arity2 x | PUNPCKHBW x: "PUNPCKHBW" -++ show/arity2 x
| PUNPCKHDQ x: "PUNPCKHDQ" -++ show/arity3 x | PUNPCKHDQ x: "PUNPCKHDQ" -++ show/arity2 x
| PUNPCKHQDQ x: "PUNPCKHQDQ" -++ show/arity2 x | PUNPCKHQDQ x: "PUNPCKHQDQ" -++ show/arity2 x
| PUNPCKHWD x: "PUNPCKHWD" -++ show/arity2 x | PUNPCKHWD x: "PUNPCKHWD" -++ show/arity2 x
| PUNPCKLBW x: "PUNPCKLBW" -++ show/arity2 x | PUNPCKLBW x: "PUNPCKLBW" -++ show/arity2 x
...@@ -810,11 +810,11 @@ val show/instruction insn = ...@@ -810,11 +810,11 @@ val show/instruction insn =
| TEST x: "TEST" -++ show/arity2 x | TEST x: "TEST" -++ show/arity2 x
| UCOMISD x: "UCOMISD" -++ show/arity2 x | UCOMISD x: "UCOMISD" -++ show/arity2 x
| UCOMISS x: "UCOMISS" -++ show/arity2 x | UCOMISS x: "UCOMISS" -++ show/arity2 x
| UD2 | UD2: "UD2"
| UNPCKHPD x: "UNPCKHPD" -++ show/arity2 x | UNPCKHPD x: "UNPCKHPD" -++ show/arity2 x
| UNPCKHPS x: "UNPCKHPS" -++ show/arity2 x | UNPCKHPS x: "UNPCKHPS" -++ show/arity2 x
| UNPCKLPD x: "UNPCKLPD" -++ show/arity2 x | UNPCKLPD x: "UNPCKLPD" -++ show/arity2 x
| UNPCKLPS x: "UNPCKLPS" -++ show/arity2 x | UNPCKLPS x: "UNPCKLPS" -++ show/arity2 x
| VADDPD x: "VADDPD" -++ show/varity x | VADDPD x: "VADDPD" -++ show/varity x
| VADDPS x: "VADDPS" -++ show/varity x | VADDPS x: "VADDPS" -++ show/varity x
| VADDSD x: "VADDSD" -++ show/varity x | VADDSD x: "VADDSD" -++ show/varity x
...@@ -1103,5 +1103,5 @@ val show/instruction insn = ...@@ -1103,5 +1103,5 @@ val show/instruction insn =
#| PSLRDQ x: "PSLRDQ" -++ show/arity2 x #| PSLRDQ x: "PSLRDQ" -++ show/arity2 x
#| VPSLRDQ x: "VPSLRDQ" -++ show/varity x #| VPSLRDQ x: "VPSLRDQ" -++ show/varity x
end end
#%s/^\(...\)\([^\s]*\)$/\1\2: "\2"/ #s/^\(...\)\(\S*\)\s*$/\1\2: "\2"/
#%s/^\(...\)\([^\s]*\) of \(.*\)/\1\2 x: "\2" -++ show\/\3 x/ #s/^\(...\)\(\S*\) of \(\S*\)\s*$/\1\2 x: "\2" -++ show\/\3 x/
This diff is collapsed.
...@@ -2954,8 +2954,6 @@ val / [0xdb /1-reg] = binop FCMOVNE st0 st/reg ...@@ -2954,8 +2954,6 @@ val / [0xdb /1-reg] = binop FCMOVNE st0 st/reg
val / [0xdb /2-reg] = binop FCMOVNBE st0 st/reg val / [0xdb /2-reg] = binop FCMOVNBE st0 st/reg
val / [0xdb /3-reg] = binop FCMOVNU st0 st/reg val / [0xdb /3-reg] = binop FCMOVNU st0 st/reg
### =><=
### FCOM/FCOMP/FCOMPP ### FCOM/FCOMP/FCOMPP
### - Compare Floating Point Values ### - Compare Floating Point Values
val / [0xd8 /2] = unop FCOM st/m32 val / [0xd8 /2] = unop FCOM st/m32
...@@ -3224,6 +3222,8 @@ val / [0xd9 0xf1] = arity0 FYL2X ...@@ -3224,6 +3222,8 @@ val / [0xd9 0xf1] = arity0 FYL2X
### - Compute y*log_2(x +1) ### - Compute y*log_2(x +1)
val / [0xd9 0xf9] = arity0 FYL2XP1 val / [0xd9 0xf9] = arity0 FYL2XP1
### =><=
### HADDPD ### HADDPD
### - Packed Double-FP Horizontal Add ### - Packed Double-FP Horizontal Add
val /66 [0x0f 0x7c /r] = binop HADDPD xmm128 xmm/m128 val /66 [0x0f 0x7c /r] = binop HADDPD xmm128 xmm/m128
......
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