On Wed, Mar 12, 2014 at 2:58 PM, Wei Mi <w...@google.com> wrote:
> This is the updated testcase.

Does my patch fix the original problem?

> Thanks,
> Wei.
>
> ===================================================================
> --- testsuite/gcc.dg/pr58066.c (revision 0)
> +++ testsuite/gcc.dg/pr58066.c (revision 0)
> @@ -0,0 +1,18 @@
> +/* { dg-do compile { target {{ i?86-*-* x86_64-*-* } && { ! ia32 } } } } */

Since it is a C testcase and we should test it under ia32, it
should be moved to gcc.target/i386 and remove target.

> +/* { dg-options "-fPIC -O2" } */
> +
> +/* Check whether the stack frame starting addresses of tls expanded calls
> +   in foo and goo are 16bytes aligned.  */
> +static __thread char ccc1;
> +void* foo()
> +{
> + return &ccc1;
> +}
> +
> +__thread char ccc2;
> +void* goo()
> +{
> + return &ccc2;
> +}
> +
> +/* { dg-final { scan-assembler-times ".cfi_def_cfa_offset 16" 2 } } */
>
> On Wed, Mar 12, 2014 at 2:51 PM, Wei Mi <w...@google.com> wrote:
>> Oh, I see. Thanks!
>>
>> Wei.
>>
>> On Wed, Mar 12, 2014 at 2:42 PM, H.J. Lu <hjl.to...@gmail.com> wrote:
>>> On Wed, Mar 12, 2014 at 2:36 PM, Wei Mi <w...@google.com> wrote:
>>>> Hi H.J.,
>>>>
>>>> Could you show me why you postpone the setting
>>>> ix86_tls_descriptor_calls_expanded_in_cfun until reload_complete and
>>>> use ix86_tls_descriptor_calls_expanded_in_cfun instead of
>>>> ix86_current_function_calls_tls_descriptor? Isn't
>>>> ix86_current_function_calls_tls_descriptor useful to consider the case
>>>> that tls call is optimized away?
>>>>
>>>
>>> When a tls call is optimized away, it won't survive reload.
>>> If it does survive reload, it isn't optimized away.  Also
>>> checking df_regs_ever_live_p (SP_REG) isn't reliable
>>> when called from ix86_compute_frame_layout.
>>>
>>> --
>>> H.J.



-- 
H.J.

Reply via email to