From 010529e58b6b5a51988b7d913380c2c508e7aefc Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Fri, 27 Aug 1999 07:53:33 +0000 Subject: [PATCH] function.c (assign_stack_temp_for_type): Fix change of Mar 5 for the fact that ALIGN is measured in bits, not bytes. * function.c (assign_stack_temp_for_type): Fix change of Mar 5 for the fact that ALIGN is measured in bits, not bytes. From-SVN: r28926 --- gcc/ChangeLog | 5 +++++ gcc/function.c | 7 ++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 42838d8d509..69f03c10633 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Aug 27 09:36:17 1999 Andreas Schwab + + * function.c (assign_stack_temp_for_type): Fix change of Mar 5 for + the fact that ALIGN is measured in bits, not bytes. + 1999-08-27 00:27 -0700 Zack Weinberg * c-typeck.c (c_expand_start_case): Return immediately if exp diff --git a/gcc/function.c b/gcc/function.c index cae26e5cb80..074252c5b58 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -674,11 +674,12 @@ assign_stack_temp_for_type (mode, size, keep, type) So for requests which depended on the rounding of SIZE, we go ahead and round it now. We also make sure ALIGNMENT is at least BIGGEST_ALIGNMENT. */ - if (mode == BLKmode && align < (BIGGEST_ALIGNMENT / BITS_PER_UNIT)) + if (mode == BLKmode && align < BIGGEST_ALIGNMENT) abort(); p->slot = assign_stack_local (mode, - mode == BLKmode - ? CEIL_ROUND (size, align) : size, + (mode == BLKmode + ? CEIL_ROUND (size, align / BITS_PER_UNIT) + : size), align); p->align = align; -- 2.30.2