This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, PR58066] preferred_stack_boundary update for tls expanded call
- From: Wei Mi <wmi at google dot com>
- To: Rainer Orth <ro at cebitec dot uni-bielefeld dot de>
- Cc: Dominique Dhumieres <dominiq at lps dot ens dot fr>, GCC Patches <gcc-patches at gcc dot gnu dot org>, iains at gcc dot gnu dot org, Uros Bizjak <ubizjak at gmail dot com>
- Date: Sat, 10 May 2014 17:55:59 -0700
- Subject: Re: [PATCH, PR58066] preferred_stack_boundary update for tls expanded call
- Authentication-results: sourceware.org; auth=none
- References: <20140510101615 dot 78EB7103 at mailhost dot lps dot ens dot fr> <yddzjip21b0 dot fsf at CeBiTec dot Uni-Bielefeld dot DE>
Here is a patch for the test. It contains two changes:
1. For emutls, there will be an explicit call generated at expand
pass, and no stack adjustment is needed. So add /* {
dg-require-effective-target tls_native } */ in the test.
2. Replace cfi_def_cfa_offset with insn sequence check.
Is it ok?
Thanks,
Wei.
Index: testsuite/gcc.target/i386/pr58066.c
===================================================================
--- testsuite/gcc.target/i386/pr58066.c (revision 210301)
+++ testsuite/gcc.target/i386/pr58066.c (working copy)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
-/* { dg-options "-fPIC -O2" } */
+/* { dg-require-effective-target tls_native } */
+/* { dg-options "-fPIC -fomit-frame-pointer -O2" } */
/* Check whether the stack frame starting addresses of tls expanded calls
in foo and goo are 16bytes aligned. */
@@ -15,4 +16,4 @@ void* goo()
return &ccc2;
}
-/* { dg-final { scan-assembler-times ".cfi_def_cfa_offset 16" 2 } } */
+/* { dg-final { scan-assembler
"sub\[^\r\n\]*8\[^\r\n\]*sp.*call\[^\r\n\]*__tls_get_addr.*sub\[^\r\n\]*8\[^\r\n\]*sp.*call\[^\r\n\]*__tls_get_addr"
} } */
On Sat, May 10, 2014 at 6:47 AM, Rainer Orth
<ro@cebitec.uni-bielefeld.de> wrote:
> dominiq@lps.ens.fr (Dominique Dhumieres) writes:
>
>>> This is the updated patch of pr58066-3.patch. ...
>>
>> On x86_64-apple-darwin13 I get
>>
>> FAIL: gcc.target/i386/pr58066.c scan-assembler-times .cfi_def_cfa_offset 16 2
>
> Same on i386-pc-solaris2.* with Sun as (which doesn't support cfi
> directives).
>
> Rainer
>
> --
> -----------------------------------------------------------------------------
> Rainer Orth, Center for Biotechnology, Bielefeld University