aboutsummaryrefslogtreecommitdiff
path: root/target/ppc/translate.c
diff options
context:
space:
mode:
authorGreg Kurz <groug@kaod.org>2019-03-22 19:03:40 +0100
committerDavid Gibson <david@gibson.dropbear.id.au>2019-03-29 10:22:22 +1100
commit9acc95cdd309f1bd4655219887676c332f945204 (patch)
treea5edfdd1f032a8b29746d72a990a2716edf5724f /target/ppc/translate.c
parenta04d91c701251a9b32b7364ddb48029ba024cb75 (diff)
target/ppc: Fix TCG temporary leaks in gen_bcond()
Signed-off-by: Greg Kurz <groug@kaod.org> Message-Id: <155327782047.1283071.10234727692461848972.stgit@bahia.lan> Tested-by: Suraj Jitindar Singh <sjitindarsingh@gmail.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'target/ppc/translate.c')
-rw-r--r--target/ppc/translate.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/target/ppc/translate.c b/target/ppc/translate.c
index 98b37cebc2..aaafa3a715 100644
--- a/target/ppc/translate.c
+++ b/target/ppc/translate.c
@@ -3749,6 +3749,8 @@ static void gen_bcond(DisasContext *ctx, int type)
TCGv temp = tcg_temp_new();
if (unlikely(type == BCOND_CTR)) {
gen_inval_exception(ctx, POWERPC_EXCP_INVAL_INVAL);
+ tcg_temp_free(temp);
+ tcg_temp_free(target);
return;
}
tcg_gen_subi_tl(cpu_ctr, cpu_ctr, 1);