From: H.J. Lu Date: Wed, 27 Jan 2016 19:54:03 +0000 (+0000) Subject: Don't change stack_alignment_needed for __tls_get_addr X-Git-Tag: basepoints/gcc-7~1270 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9525851d49b18b8b62c47fd2092dbb3937b887f7;p=thirdparty%2Fgcc.git Don't change stack_alignment_needed for __tls_get_addr __tls_get_addr must be called with 16-byte aligned stack, which is guaranted by setting preferred_stack_boundary to 128 bits. There is no need to change stack_alignment_needed for __tls_get_addr. PR target/68986 * config/i386/i386.c (ix86_update_stack_boundary): Don't change stack_alignment_needed for __tls_get_addr call. From-SVN: r232901 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fecbc49c2edd..cc8b21cf7b96 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-01-27 H.J. Lu + + PR target/68986 + * config/i386/i386.c (ix86_update_stack_boundary): Don't + change stack_alignment_needed for __tls_get_addr call. + 2016-01-27 Segher Boessenkool * config/rs6000/rs6000.c (print_operand): Rollback 's' removal. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index cfbdf0f17342..6dc1fa54e9bf 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -12035,11 +12035,7 @@ ix86_update_stack_boundary (void) /* __tls_get_addr needs to be called with 16-byte aligned stack. */ if (ix86_tls_descriptor_calls_expanded_in_cfun && crtl->preferred_stack_boundary < 128) - { - crtl->preferred_stack_boundary = 128; - if (crtl->stack_alignment_needed < 128) - crtl->stack_alignment_needed = 128; - } + crtl->preferred_stack_boundary = 128; } /* Handle the TARGET_GET_DRAP_RTX hook. Return NULL if no DRAP is