Commit 74330dc0 authored by Julian Kranz's avatar Julian Kranz
Browse files

X86 RREIL Translator

- Started to add semantics of: (V)PSHUFB
parent 63d97a22
...@@ -1467,19 +1467,20 @@ val sem-psadbw x = sem-psadbw-vpsadbw-opnd '0' x.opnd1 x.opnd1 x.opnd2 ...@@ -1467,19 +1467,20 @@ val sem-psadbw x = sem-psadbw-vpsadbw-opnd '0' x.opnd1 x.opnd1 x.opnd2
val sem-vpsadbw x = sem-psadbw-vpsadbw-opnd '1' x.opnd1 x.opnd2 x.opnd3 val sem-vpsadbw x = sem-psadbw-vpsadbw-opnd '1' x.opnd1 x.opnd2 x.opnd3
val sem-pshufb-vpshufb-opnd avx-encoded opnd1 opnd2 opnd3 = do val sem-pshufb-vpshufb-opnd avx-encoded opnd1 opnd2 opnd3 = do
size <- sizeof1 opnd1; #size <- sizeof1 opnd1;
src <- read size opnd2; #src <- read size opnd2;
shuffle-control-mask <- read size opnd3; #shuffle-control-mask <- read size opnd3;
dst <- lval size opnd1; #dst <- lval size opnd1;
temp-scm <- mktemp; #temp-scm <- mktemp;
#=> For each index: mov (logb (divb size 8)) temp-scm shuffle-control-mask; #=> For each index: mov (logb (divb size 8)) temp-scm shuffle-control-mask;
#movzx temp-scm to some size?! #movzx temp-scm to some size?!
#temp-src2 <- mktemp; #temp-src2 <- mktemp;
#mov size temp-src2 src2; #mov size temp-src2 src2;
temp-dst <- mktemp; #temp-dst <- mktemp
return void
end end
val ps-push opnd-sz opnd = do val ps-push opnd-sz opnd = do
......
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