diff mbox

tcg: Don't make exitreq flag a local temporary

Message ID 1362502481-22248-1-git-send-email-rth@twiddle.net
State New
Headers show

Commit Message

Richard Henderson March 5, 2013, 4:54 p.m. UTC
The value is not actually live across basic blocks, so there's no
need for the local property.  This eliminates storing the temporary
to its home location at the branch.

Cc: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <rth@twiddle.net>
---
 include/exec/gen-icount.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Peter Maydell March 6, 2013, 1:36 a.m. UTC | #1
On 6 March 2013 00:54, Richard Henderson <rth@twiddle.net> wrote:
> The value is not actually live across basic blocks, so there's no
> need for the local property.  This eliminates storing the temporary
> to its home location at the branch.
>
> Cc: Peter Maydell <peter.maydell@linaro.org>
> Signed-off-by: Richard Henderson <rth@twiddle.net>

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

I hadn't noticed we differed from the icount code in not
needing to access the temp after the branch.

-- PMM
Aurelien Jarno March 9, 2013, 6:01 p.m. UTC | #2
On Tue, Mar 05, 2013 at 08:54:41AM -0800, Richard Henderson wrote:
> The value is not actually live across basic blocks, so there's no
> need for the local property.  This eliminates storing the temporary
> to its home location at the branch.
> 
> Cc: Peter Maydell <peter.maydell@linaro.org>
> Signed-off-by: Richard Henderson <rth@twiddle.net>
> ---
>  include/exec/gen-icount.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/include/exec/gen-icount.h b/include/exec/gen-icount.h
> index 4e3b17b..4fc7b29 100644
> --- a/include/exec/gen-icount.h
> +++ b/include/exec/gen-icount.h
> @@ -15,7 +15,7 @@ static inline void gen_tb_start(void)
>      TCGv_i32 flag;
>  
>      exitreq_label = gen_new_label();
> -    flag = tcg_temp_local_new_i32();
> +    flag = tcg_temp_new_i32();
>      tcg_gen_ld_i32(flag, cpu_env,
>                     offsetof(CPUState, tcg_exit_req) - ENV_OFFSET);
>      tcg_gen_brcondi_i32(TCG_COND_NE, flag, 0, exitreq_label);

Thanks, applied.
diff mbox

Patch

diff --git a/include/exec/gen-icount.h b/include/exec/gen-icount.h
index 4e3b17b..4fc7b29 100644
--- a/include/exec/gen-icount.h
+++ b/include/exec/gen-icount.h
@@ -15,7 +15,7 @@  static inline void gen_tb_start(void)
     TCGv_i32 flag;
 
     exitreq_label = gen_new_label();
-    flag = tcg_temp_local_new_i32();
+    flag = tcg_temp_new_i32();
     tcg_gen_ld_i32(flag, cpu_env,
                    offsetof(CPUState, tcg_exit_req) - ENV_OFFSET);
     tcg_gen_brcondi_i32(TCG_COND_NE, flag, 0, exitreq_label);