projects
/
qemu.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
22d716c
)
target/alpha: Fix temp leak in gen_mtpr
author
Richard Henderson
<rth@twiddle.net>
Thu, 13 Jul 2017 23:32:09 +0000
(13:32 -1000)
committer
Richard Henderson
<rth@twiddle.net>
Wed, 19 Jul 2017 04:41:58 +0000
(18:41 -1000)
Tested-by: Emilio G. Cota <cota@braap.org>
Signed-off-by: Richard Henderson <rth@twiddle.net>
target/alpha/translate.c
patch
|
blob
|
history
diff --git
a/target/alpha/translate.c
b/target/alpha/translate.c
index d684a7b6130c8b7dc62b2eb8782ae630a5b6c2b4..5e37b1aca3ed17d283ab826e26672cfb71640021 100644
(file)
--- a/
target/alpha/translate.c
+++ b/
target/alpha/translate.c
@@
-1392,7
+1392,6
@@
static ExitStatus gen_mfpr(DisasContext *ctx, TCGv va, int regno)
static ExitStatus gen_mtpr(DisasContext *ctx, TCGv vb, int regno)
{
- TCGv tmp;
int data;
switch (regno) {
@@
-1408,9
+1407,12
@@
static ExitStatus gen_mtpr(DisasContext *ctx, TCGv vb, int regno)
case 253:
/* WAIT */
- tmp = tcg_const_i64(1);
- tcg_gen_st32_i64(tmp, cpu_env, -offsetof(AlphaCPU, env) +
- offsetof(CPUState, halted));
+ {
+ TCGv_i32 tmp = tcg_const_i32(1);
+ tcg_gen_st_i32(tmp, cpu_env, -offsetof(AlphaCPU, env) +
+ offsetof(CPUState, halted));
+ tcg_temp_free_i32(tmp);
+ }
return gen_excp(ctx, EXCP_HALTED, 0);
case 252: