diff options
| author | Peter Maydell | 2015-07-27 20:37:09 +0200 |
|---|---|---|
| committer | Peter Maydell | 2015-07-27 20:37:09 +0200 |
| commit | f8787f8723eaca1be99e3b1873e54de163fffa93 (patch) | |
| tree | 88ca67e85245317476d34ce55260232a22b7009c | |
| parent | main-loop: fix qemu_notify_event for aio_notify optimization (diff) | |
| parent | tcg: mark temps as mem_coherent = 0 for mov with a constant (diff) | |
| download | qemu-f8787f8723eaca1be99e3b1873e54de163fffa93.tar.gz qemu-f8787f8723eaca1be99e3b1873e54de163fffa93.tar.xz qemu-f8787f8723eaca1be99e3b1873e54de163fffa93.zip | |
Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20150727' into staging
Fix buglets for 2.4
# gpg: Signature made Mon Jul 27 15:26:48 2015 BST using RSA key ID 4DD0279B
# gpg: Good signature from "Richard Henderson <rth7680@gmail.com>"
# gpg: aka "Richard Henderson <rth@redhat.com>"
# gpg: aka "Richard Henderson <rth@twiddle.net>"
* remotes/rth/tags/pull-tcg-20150727:
tcg: mark temps as mem_coherent = 0 for mov with a constant
tcg: correctly mark dead inputs for mov with a constant
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| -rw-r--r-- | tcg/tcg.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -1894,6 +1894,7 @@ static void tcg_reg_alloc_mov(TCGContext *s, const TCGOpDef *def, ts->mem_coherent = 1; } else if (ts->val_type == TEMP_VAL_CONST) { tcg_out_movi(s, itype, ts->reg, ts->val); + ts->mem_coherent = 0; } s->reg_to_temp[ts->reg] = args[1]; ts->val_type = TEMP_VAL_REG; @@ -1920,6 +1921,9 @@ static void tcg_reg_alloc_mov(TCGContext *s, const TCGOpDef *def, } ots->val_type = TEMP_VAL_CONST; ots->val = ts->val; + if (IS_DEAD_ARG(1)) { + temp_dead(s, args[1]); + } } else { /* The code in the first if block should have moved the temp to a register. */ |
