3c93d02...
by
hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Update preferred stack boundary in ix86_update_stack_boundary
__tls_get_addr must be called with 16-byte aligned stack, which is
guaranted by setting preferred_stack_boundary to 128 bits. Preferred
stack boundary adjustment for __tls_get_addr should be done in
ix86_update_stack_boundary, not ix86_compute_frame_layout Also
there is no need to over-align stack for __tls_get_addr and function
with __tls_get_addr call isn't a leaf function.
gcc/
Backport from mainline
PR target/68986
* config/i386/i386.c (ix86_compute_frame_layout): Move stack
alignment adjustment to ...
(ix86_update_stack_boundary): Here. Don't over-align stack nor
change stack_alignment_needed for __tls_get_addr.
(ix86_finalize_stack_realign_flags): Use stack_alignment_needed
if __tls_get_addr is called.
gcc/testsuite/
Backport from mainline
PR target/68986
* gcc.target/i386/pr68986-1.c: New test.
* gcc.target/i386/pr68986-2.c: Likewise.
* gcc.target/i386/pr68986-3.c: Likewise.
7197f3f...
by
jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
PR c++/68949
* optimize.c (maybe_clone_body): Clear DECL_SAVED_TREE of the alias.
* semantics.c (expand_or_defer_fn_1): Keep DECL_SAVED_TREE of
maybe-in-charge *tor.
c879363...
by
vehre <vehre@138bc75d-0d04-0410-961f-82ee72b054a4>
gcc/testsuite/ChangeLog:
2016-01-27 Andre Vehreschild <email address hidden>
PR fortran/69268
* gfortran.dg/allocatable_scalar_13.f90: Fixing counts of malloc/
free to fit the actual number of calls.
* gfortran.dg/allocate_with_source_16.f90: New test.
gcc/fortran/ChangeLog:
2016-01-27 Andre Vehreschild <email address hidden>
PR fortran/69268
* trans-stmt.c (gfc_trans_allocate): Make sure the source=
expression is evaluated once only. Use gfc_trans_assignment ()
instead of explicitly calling gfc_trans_string_copy () to
reduce the code complexity in trans_allocate.