Re: [PATCH] target/xtensa: add missing tcg_temp_free to gen_window_check

2022-04-21 Thread Richard Henderson

On 4/21/22 13:21, Max Filippov wrote:

pc and w are allocated with tcg_const_i32 but not freed in
gen_window_check. Add missing tcg_temp_free for pc, use tcg_constant_i32
for w.

Fixes: 2db59a76c421 ("target-xtensa: record available window in TB flags")
Signed-off-by: Max Filippov 
---
  target/xtensa/translate.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/target/xtensa/translate.c b/target/xtensa/translate.c
index b1491ed625e5..f4dac27507fd 100644
--- a/target/xtensa/translate.c
+++ b/target/xtensa/translate.c
@@ -572,9 +572,10 @@ static bool gen_window_check(DisasContext *dc, uint32_t 
mask)
  
  if (r / 4 > dc->window) {

  TCGv_i32 pc = tcg_const_i32(dc->pc);
-TCGv_i32 w = tcg_const_i32(r / 4);
+TCGv_i32 w = tcg_constant_i32(r / 4);
  
  gen_helper_window_check(cpu_env, pc, w);

+tcg_temp_free(pc);


Should use tcg_constant_i32 for both of them, and not add the free for pc.


r~



[PATCH] target/xtensa: add missing tcg_temp_free to gen_window_check

2022-04-21 Thread Max Filippov
pc and w are allocated with tcg_const_i32 but not freed in
gen_window_check. Add missing tcg_temp_free for pc, use tcg_constant_i32
for w.

Fixes: 2db59a76c421 ("target-xtensa: record available window in TB flags")
Signed-off-by: Max Filippov 
---
 target/xtensa/translate.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/target/xtensa/translate.c b/target/xtensa/translate.c
index b1491ed625e5..f4dac27507fd 100644
--- a/target/xtensa/translate.c
+++ b/target/xtensa/translate.c
@@ -572,9 +572,10 @@ static bool gen_window_check(DisasContext *dc, uint32_t 
mask)
 
 if (r / 4 > dc->window) {
 TCGv_i32 pc = tcg_const_i32(dc->pc);
-TCGv_i32 w = tcg_const_i32(r / 4);
+TCGv_i32 w = tcg_constant_i32(r / 4);
 
 gen_helper_window_check(cpu_env, pc, w);
+tcg_temp_free(pc);
 dc->base.is_jmp = DISAS_NORETURN;
 return false;
 }
-- 
2.30.2