projects
/
sdk
/
emulator
/
qemu.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
d05ef16
)
tcg-s390: Fix movi
author
Richard Henderson
<rth@twiddle.net>
Mon, 25 Mar 2013 20:45:32 +0000
(13:45 -0700)
committer
Richard Henderson
<rth@twiddle.net>
Fri, 5 Apr 2013 18:35:39 +0000
(13:35 -0500)
The code to load the high 64 bits assumed that the insn used to
load the low 64 bits zero-extended. Enforce that.
tcg/s390/tcg-target.c
patch
|
blob
|
history
diff --git
a/tcg/s390/tcg-target.c
b/tcg/s390/tcg-target.c
index
e12a152
..
0132010
100644
(file)
--- a/
tcg/s390/tcg-target.c
+++ b/
tcg/s390/tcg-target.c
@@
-770,7
+770,7
@@
static void tcg_out_movi(TCGContext *s, TCGType type,
/* If we get here, both the high and low parts have non-zero bits. */
/* Recurse to load the lower 32-bits. */
- tcg_out_movi(s, TCG_TYPE_I
32, ret, sval
);
+ tcg_out_movi(s, TCG_TYPE_I
64, ret, uval & 0xffffffff
);
/* Insert data into the high 32-bits. */
uval = uval >> 31 >> 1;