Skip to content

Commit 73d6f3b

Browse files
clazissartemiy-volkov
authored andcommitted
[STACK] Align everything
1 parent 065e1cd commit 73d6f3b

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

gcc/config/arc64/arc64.c

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -229,19 +229,22 @@ arc64_compute_frame_info (void)
229229

230230
/* 1. At the bottom of the stack are any outgoing stack
231231
arguments. */
232-
frame->saved_outargs_size = crtl->outgoing_args_size;
232+
frame->saved_outargs_size = ROUND_UP (crtl->outgoing_args_size,
233+
STACK_BOUNDARY / BITS_PER_UNIT);
233234

234235
/* 2. Size of locals and temporaries. */
235236
frame->saved_locals_size = ROUND_UP (get_frame_size (),
236237
STACK_BOUNDARY / BITS_PER_UNIT);
237238

238239
/* 3. Size of the saved registers (including FP/BLINK).
239240
FIXME! FPR registers. */
240-
frame->saved_regs_size = offset;
241+
frame->saved_regs_size = ROUND_UP (offset,
242+
STACK_BOUNDARY / BITS_PER_UNIT);
241243

242244
/* 4. Size of the callee-allocated area for pretend stack
243245
arguments. */
244-
frame->saved_varargs_size = crtl->args.pretend_args_size;
246+
frame->saved_varargs_size = ROUND_UP (crtl->args.pretend_args_size,
247+
STACK_BOUNDARY / BITS_PER_UNIT);
245248

246249
/* Total size. */
247250
frame->frame_size = frame->saved_outargs_size + frame->saved_locals_size
@@ -1624,6 +1627,9 @@ arc64_limm_addr_p (rtx op)
16241627
#undef TARGET_INIT_LIBFUNCS
16251628
#define TARGET_INIT_LIBFUNCS arc64_init_libfuncs
16261629

1630+
#undef TARGET_ASM_FILE_END
1631+
#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
1632+
16271633
struct gcc_target targetm = TARGET_INITIALIZER;
16281634

16291635
#include "gt-arc64.h"

0 commit comments

Comments
 (0)