Commit 3af3936d authored by Julian Kranz's avatar Julian Kranz

X86 RREIL Translator

- Continued to implement the use of sub scopes
parent b3470453
020dca84d06f508ce7c75112dbc5406a03c2dc49 big_dis.c 020dca84d06f508ce7c75112dbc5406a03c2dc49 big_dis.c
58542cde3ead8c38d85d2e5fb3946945eea7a12b inference_bug
...@@ -234,12 +234,14 @@ val sem-mul conv x = do ...@@ -234,12 +234,14 @@ val sem-mul conv x = do
sz <- sizeof1 x.opnd1; sz <- sizeof1 x.opnd1;
factor0-sem <- return (semantic-register-of (register-by-size low A sz)); factor0-sem <- return (semantic-register-of (register-by-size low A sz));
factor0 <- expand conv (var factor0-sem) sz (sz + sz);
factor0 <- mktemp;
expand factor0 conv (var factor0-sem) sz (sz + sz);
factor1 <- reads conv (sz + sz) x.opnd1; factor1 <- reads conv (sz + sz) x.opnd1;
product <- mktemp; product <- mktemp;
mul (sz + sz) product factor0 factor1; mul (sz + sz) product (var factor0) factor1;
emit-mul-flags sz product; emit-mul-flags sz product;
......
...@@ -186,10 +186,12 @@ val conv-with conv sz x = ...@@ -186,10 +186,12 @@ val conv-with conv sz x =
t <- mktemp; t <- mktemp;
address <- conv-mem x; address <- conv-mem x;
segmented-load x.sz t x.psz address x.segment; segmented-load x.sz t x.psz address x.segment;
expand expanded conv (var t) x.sz sz;
expand expanded conv (var t) x.sz sz return (var expanded)
end end
in do in do
#address <- conv-mem x;
expanded <- mktemp; expanded <- mktemp;
with-subscope (m expanded); with-subscope (m expanded);
return (var expanded) return (var expanded)
......
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