Patchwork tcg: Remove temp_buf

login
register
mail settings
Submitter Richard Henderson
Date April 19, 2013, 8:27 a.m.
Message ID <1366360066-3373-1-git-send-email-rth@twiddle.net>
Download mbox | patch
Permalink /patch/237871/
State New
Headers show

Comments

Richard Henderson - April 19, 2013, 8:27 a.m.
All targets have been converted to allocating space for temporaries
on the stack.  No need to allocate space within the CPU_COMMON block.

Signed-off-by: Richard Henderson <rth@twiddle.net>
---
This depends on my tcg-arm patch set that's still outstanding.


r~
---
 include/exec/cpu-defs.h | 2 --
 1 file changed, 2 deletions(-)
Andreas Färber - April 19, 2013, 12:11 p.m.
Hi,

Am 19.04.2013 10:27, schrieb Richard Henderson:
> All targets have been converted to allocating space for temporaries
> on the stack.  No need to allocate space within the CPU_COMMON block.
> 
> Signed-off-by: Richard Henderson <rth@twiddle.net>
> ---
> This depends on my tcg-arm patch set that's still outstanding.

My tree still has exactly one user in tcg/arm/, so once that disappears
feel free to add my Reviewed-by. Thanks for helping clean this up!

One question...

> 
> 
> r~
> ---
>  include/exec/cpu-defs.h | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/include/exec/cpu-defs.h b/include/exec/cpu-defs.h
> index d8c64e9..41f5b32 100644
> --- a/include/exec/cpu-defs.h
> +++ b/include/exec/cpu-defs.h
> @@ -152,8 +152,6 @@ typedef struct CPUWatchpoint {
>                                       memory was accessed */             \
>      CPU_COMMON_TLB                                                      \
>      struct TranslationBlock *tb_jmp_cache[TB_JMP_CACHE_SIZE];           \
> -    /* buffer for temporaries in the code generator */                  \
> -    long temp_buf[CPU_TEMP_BUF_NLONGS];                                 \

Could CPU_TEMP_BUF_NLONGS be removed, too?

Andreas

>                                                                          \
>      int64_t icount_extra; /* Instructions until next timer event.  */   \
>      /* Number of cycles left, with interrupt flag in high bit.          \
>
Andreas Färber - April 19, 2013, 12:18 p.m.
Am 19.04.2013 14:11, schrieb Andreas Färber:
> Hi,
> 
> Am 19.04.2013 10:27, schrieb Richard Henderson:
>> All targets have been converted to allocating space for temporaries
>> on the stack.  No need to allocate space within the CPU_COMMON block.
>>
>> Signed-off-by: Richard Henderson <rth@twiddle.net>
>> ---
>> This depends on my tcg-arm patch set that's still outstanding.
> 
> My tree still has exactly one user in tcg/arm/, so once that disappears
> feel free to add my Reviewed-by. Thanks for helping clean this up!
> 
> One question...
> 
>>
>>
>> r~
>> ---
>>  include/exec/cpu-defs.h | 2 --
>>  1 file changed, 2 deletions(-)
>>
>> diff --git a/include/exec/cpu-defs.h b/include/exec/cpu-defs.h
>> index d8c64e9..41f5b32 100644
>> --- a/include/exec/cpu-defs.h
>> +++ b/include/exec/cpu-defs.h
>> @@ -152,8 +152,6 @@ typedef struct CPUWatchpoint {
>>                                       memory was accessed */             \
>>      CPU_COMMON_TLB                                                      \
>>      struct TranslationBlock *tb_jmp_cache[TB_JMP_CACHE_SIZE];           \
>> -    /* buffer for temporaries in the code generator */                  \
>> -    long temp_buf[CPU_TEMP_BUF_NLONGS];                                 \
> 
> Could CPU_TEMP_BUF_NLONGS be removed, too?

More precisely, seeing that all targets actually still use it despite in
most cases not actually accessing temp_buf, can you rename it to
TCG_TEMP_STACK_NLONGS and move it to some TCG header as a follow-up please?

Andreas

>>                                                                          \
>>      int64_t icount_extra; /* Instructions until next timer event.  */   \
>>      /* Number of cycles left, with interrupt flag in high bit.          \
>>
Blue Swirl - April 20, 2013, 10:46 a.m.
On Fri, Apr 19, 2013 at 12:18 PM, Andreas Färber <afaerber@suse.de> wrote:
> Am 19.04.2013 14:11, schrieb Andreas Färber:
>> Hi,
>>
>> Am 19.04.2013 10:27, schrieb Richard Henderson:
>>> All targets have been converted to allocating space for temporaries
>>> on the stack.  No need to allocate space within the CPU_COMMON block.
>>>
>>> Signed-off-by: Richard Henderson <rth@twiddle.net>
>>> ---
>>> This depends on my tcg-arm patch set that's still outstanding.
>>
>> My tree still has exactly one user in tcg/arm/, so once that disappears
>> feel free to add my Reviewed-by. Thanks for helping clean this up!
>>
>> One question...
>>
>>>
>>>
>>> r~
>>> ---
>>>  include/exec/cpu-defs.h | 2 --
>>>  1 file changed, 2 deletions(-)
>>>
>>> diff --git a/include/exec/cpu-defs.h b/include/exec/cpu-defs.h
>>> index d8c64e9..41f5b32 100644
>>> --- a/include/exec/cpu-defs.h
>>> +++ b/include/exec/cpu-defs.h
>>> @@ -152,8 +152,6 @@ typedef struct CPUWatchpoint {
>>>                                       memory was accessed */             \
>>>      CPU_COMMON_TLB                                                      \
>>>      struct TranslationBlock *tb_jmp_cache[TB_JMP_CACHE_SIZE];           \
>>> -    /* buffer for temporaries in the code generator */                  \
>>> -    long temp_buf[CPU_TEMP_BUF_NLONGS];                                 \
>>
>> Could CPU_TEMP_BUF_NLONGS be removed, too?
>
> More precisely, seeing that all targets actually still use it despite in
> most cases not actually accessing temp_buf, can you rename it to
> TCG_TEMP_STACK_NLONGS and move it to some TCG header as a follow-up please?

Much like this patch?

http://lists.nongnu.org/archive/html/qemu-devel/2011-05/msg03086.html

>
> Andreas
>
>>>                                                                          \
>>>      int64_t icount_extra; /* Instructions until next timer event.  */   \
>>>      /* Number of cycles left, with interrupt flag in high bit.          \
>>>
>
> --
> SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
> GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
>
Richard Henderson - April 20, 2013, 5 p.m.
On 04/20/2013 03:46 AM, Blue Swirl wrote:
> On Fri, Apr 19, 2013 at 12:18 PM, Andreas Färber <afaerber@suse.de> wrote:
>> Am 19.04.2013 14:11, schrieb Andreas Färber:
>>> Hi,
>>>
>>> Am 19.04.2013 10:27, schrieb Richard Henderson:
>>>> All targets have been converted to allocating space for temporaries
>>>> on the stack.  No need to allocate space within the CPU_COMMON block.
>>>>
>>>> Signed-off-by: Richard Henderson <rth@twiddle.net>
>>>> ---
>>>> This depends on my tcg-arm patch set that's still outstanding.
>>> My tree still has exactly one user in tcg/arm/, so once that disappears
>>> feel free to add my Reviewed-by. Thanks for helping clean this up!
>>>
>>> One question...
>>>
>>>>
>>>> r~
>>>> ---
>>>>   include/exec/cpu-defs.h | 2 --
>>>>   1 file changed, 2 deletions(-)
>>>>
>>>> diff --git a/include/exec/cpu-defs.h b/include/exec/cpu-defs.h
>>>> index d8c64e9..41f5b32 100644
>>>> --- a/include/exec/cpu-defs.h
>>>> +++ b/include/exec/cpu-defs.h
>>>> @@ -152,8 +152,6 @@ typedef struct CPUWatchpoint {
>>>>                                        memory was accessed */             \
>>>>       CPU_COMMON_TLB                                                      \
>>>>       struct TranslationBlock *tb_jmp_cache[TB_JMP_CACHE_SIZE];           \
>>>> -    /* buffer for temporaries in the code generator */                  \
>>>> -    long temp_buf[CPU_TEMP_BUF_NLONGS];                                 \
>>> Could CPU_TEMP_BUF_NLONGS be removed, too?
>> More precisely, seeing that all targets actually still use it despite in
>> most cases not actually accessing temp_buf, can you rename it to
>> TCG_TEMP_STACK_NLONGS and move it to some TCG header as a follow-up please?
> Much like this patch?
>
> http://lists.nongnu.org/archive/html/qemu-devel/2011-05/msg03086.html
>
Yes, that would be the one...


r~

Patch

diff --git a/include/exec/cpu-defs.h b/include/exec/cpu-defs.h
index d8c64e9..41f5b32 100644
--- a/include/exec/cpu-defs.h
+++ b/include/exec/cpu-defs.h
@@ -152,8 +152,6 @@  typedef struct CPUWatchpoint {
                                      memory was accessed */             \
     CPU_COMMON_TLB                                                      \
     struct TranslationBlock *tb_jmp_cache[TB_JMP_CACHE_SIZE];           \
-    /* buffer for temporaries in the code generator */                  \
-    long temp_buf[CPU_TEMP_BUF_NLONGS];                                 \
                                                                         \
     int64_t icount_extra; /* Instructions until next timer event.  */   \
     /* Number of cycles left, with interrupt flag in high bit.          \