re PR target/58066 (__tls_get_addr is called with misaligned stack on x86-64)

2014-05-18  Wei Mi  <wmi@google.com>

        PR target/58066
        * gcc.target/i386/pr58066.c: Replace pattern matching of .cfi
        directive with rtl insns. Add effective-target of fpic and
        tls_native.

From-SVN: r210601
This commit is contained in:
Wei Mi 2014-05-19 05:25:45 +00:00 committed by Wei Mi
parent 2695eb1851
commit eba7629307
2 changed files with 13 additions and 2 deletions

View File

@ -1,3 +1,10 @@
2014-05-18 Wei Mi <wmi@google.com>
PR target/58066
* gcc.target/i386/pr58066.c: Replace pattern matching of .cfi
directive with rtl insns. Add effective-target of fpic and
tls_native.
2014-05-17 Xinliang David Li <davidxl@google.com>
* g++.dg/ipa/devirt-33.C: New testcase.

View File

@ -1,5 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-fPIC -O2" } */
/* { dg-require-effective-target tls_native } */
/* { dg-require-effective-target fpic } */
/* { dg-options "-fPIC -fomit-frame-pointer -O2 -fdump-rtl-final" } */
/* Check whether the stack frame starting addresses of tls expanded calls
in foo and goo are 16bytes aligned. */
@ -15,4 +17,6 @@ void* goo()
return &ccc2;
}
/* { dg-final { scan-assembler-times ".cfi_def_cfa_offset 16" 2 } } */
/* { dg-final { scan-rtl-dump "Function foo.*set\[^\r\n\]*sp\\)\[\r\n\]\[^\r\n\]*plus\[^\r\n\]*sp\\)\[\r\n\]\[^\r\n\]*const_int -8.*UNSPEC_TLS.*Function goo" "final" } } */
/* { dg-final { scan-rtl-dump "Function goo.*set\[^\r\n\]*sp\\)\[\r\n\]\[^\r\n\]*plus\[^\r\n\]*sp\\)\[\r\n\]\[^\r\n\]*const_int -8.*UNSPEC_TLS" "final" } } */
/* { dg-final { cleanup-rtl-dump "final" } } */