aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2000-03-30 14:12:28 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2000-03-30 09:12:28 -0500
commit2b968770d72864d5ef57eb36b66973cafb5f4f9b (patch)
tree8028ef3013973e0179e82b2f910dd08c0e0fcb74 /gcc
parentbdb429a5a1c6a4d93565277c658ddca7893905d0 (diff)
downloadgcc-2b968770d72864d5ef57eb36b66973cafb5f4f9b.zip
gcc-2b968770d72864d5ef57eb36b66973cafb5f4f9b.tar.gz
gcc-2b968770d72864d5ef57eb36b66973cafb5f4f9b.tar.bz2
* expmed.c (store_fixed_bit_field): STRUCT_ALIGN is in bits.
From-SVN: r32830
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog2
-rw-r--r--gcc/expmed.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fcd042b..df3176e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,7 @@
Thu Mar 30 06:32:51 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ * expmed.c (store_fixed_bit_field): STRUCT_ALIGN is in bits.
+
* calls.c (expand_call): Pass bit alignment to mark_reg_pointer.
* explow.c (memory_address, allocate_dynamic_stack_space): Likewise.
* function.c (assign_parms): Likewise.
diff --git a/gcc/expmed.c b/gcc/expmed.c
index 07e9e82..79ea3c9 100644
--- a/gcc/expmed.c
+++ b/gcc/expmed.c
@@ -646,7 +646,7 @@ store_fixed_bit_field (op0, offset, bitsize, bitpos, value, struct_align)
int all_one = 0;
if (! SLOW_UNALIGNED_ACCESS (word_mode, struct_align))
- struct_align = BIGGEST_ALIGNMENT / BITS_PER_UNIT;
+ struct_align = BIGGEST_ALIGNMENT;
/* There is a case not handled here:
a structure with a known alignment of just a halfword
@@ -674,7 +674,7 @@ store_fixed_bit_field (op0, offset, bitsize, bitpos, value, struct_align)
a word, we won't be doing the extraction the normal way. */
mode = get_best_mode (bitsize, bitpos + offset * BITS_PER_UNIT,
- struct_align * BITS_PER_UNIT, word_mode,
+ struct_align, word_mode,
GET_CODE (op0) == MEM && MEM_VOLATILE_P (op0));
if (mode == VOIDmode)