This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/58066] __tls_get_addr is called with misaligned stack on x86-64


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066

--- Comment #20 from uros at gcc dot gnu.org ---
Author: uros
Date: Thu Jul 30 08:53:48 2015
New Revision: 226389

URL: https://gcc.gnu.org/viewcvs?rev=226389&root=gcc&view=rev
Log:
        Backport from mainline:
        2015-07-17  Uros Bizjak  <ubizjak@gmail.com>

        PR rtl-optimization/66891
        * calls.c (expand_call): Wrap precompute_register_parameters with
        NO_DEFER_POP/OK_DEFER_POP to prevent deferred pops.

        2015-07-15  Uros Bizjak  <ubizjak@gmail.com>

        PR target/58066
        * config/i386/i386.md (*tls_global_dynamic_64_<mode>): Depend on
SP_REG.
        (*tls_local_dynamic_base_64_<mode>): Ditto.
        (*tls_local_dynamic_base_64_largepic): Ditto.
        (tls_global_dynamic_64_<mode>): Update expander pattern.
        (tls_local_dynamic_base_64_<mode>): Ditto.

        2015-07-15  Uros Bizjak  <ubizjak@gmail.com>

        PR rtl-optimization/58066
        * calls.c (expand_call): Precompute register parameters before stack
        alignment is performed.

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

        PR target/58066
        * config/i386/i386.c (ix86_compute_frame_layout): Update
        preferred_stack_boundary for call, expanded from tls descriptor.
        * config/i386/i386.md (*tls_global_dynamic_32_gnu): Update RTX
        to depend on SP register.
        (*tls_local_dynamic_base_32_gnu): Ditto.
        (*tls_local_dynamic_32_once): Ditto.
        (tls_global_dynamic_64_<mode>): Set
        ix86_tls_descriptor_calls_expanded_in_cfun.
        (tls_local_dynamic_base_64_<mode>): Ditto.
        (tls_global_dynamic_32): Set
        ix86_tls_descriptor_calls_expanded_in_cfun. Update RTX
        to depend on SP register.
        (tls_local_dynamic_base_32): Ditto.

testsuite/ChangeLog:

        Backport from mainline:
        2015-07-17  Uros Bizjak  <ubizjak@gmail.com>

        PR target/66891
        * gcc.target/i386/pr66891.c: New test.

        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 fpic and
        tls_native.

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

        PR target/58066
        * gcc.target/i386/pr58066.c: New test.


Added:
    branches/gcc-4_9-branch/gcc/testsuite/gcc.target/i386/pr58066.c
    branches/gcc-4_9-branch/gcc/testsuite/gcc.target/i386/pr66891.c
Modified:
    branches/gcc-4_9-branch/gcc/ChangeLog
    branches/gcc-4_9-branch/gcc/config/i386/i386.c
    branches/gcc-4_9-branch/gcc/config/i386/i386.md
    branches/gcc-4_9-branch/gcc/testsuite/ChangeLog


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]