From b9f92c0bb7fc0c319b0a2d54b6a74e8f49c469bd Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Wed, 13 Dec 2017 23:16:56 +0000 Subject: re PR middle-end/78468 (libgomp.c/reduction-10.c and many more FAIL) PR middle-end/78468 * emit-rtl.c (init_emit): Remove ??? comment. * explow.c (get_dynamic_stack_size): Take known alignment of stack pointer + STACK_DYNAMIC_OFFSET into account in lieu of STACK_BOUNDARY. * config/sparc/sparc.h (INIT_EXPANDERS): In 32-bit mode, lower the alignment of 3 virtual registers to BITS_PER_WORD. * config/sparc/sparc.c (sparc_compute_frame_size): Simplify. Co-Authored-By: Dominik Vogt From-SVN: r255616 --- gcc/config/sparc/sparc.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'gcc/config/sparc/sparc.c') diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c index a8d363c..890bde9 100644 --- a/gcc/config/sparc/sparc.c +++ b/gcc/config/sparc/sparc.c @@ -5483,10 +5483,8 @@ sparc_compute_frame_size (HOST_WIDE_INT size, int leaf_function) frame_size = apparent_frame_size = 0; else { - /* We subtract TARGET_STARTING_FRAME_OFFSET, remember it's negative. */ - apparent_frame_size - = ROUND_UP (size - targetm.starting_frame_offset (), 8); - apparent_frame_size += n_global_fp_regs * 4; + /* Start from the apparent frame size. */ + apparent_frame_size = ROUND_UP (size, 8) + n_global_fp_regs * 4; /* We need to add the size of the outgoing argument area. */ frame_size = apparent_frame_size + ROUND_UP (args_size, 8); -- cgit v1.1