diff options
author | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 1997-01-04 23:58:26 +0000 |
---|---|---|
committer | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 1997-01-04 23:58:26 +0000 |
commit | 9e4f5727332db824e6d76961c56784b820264f66 (patch) | |
tree | 580790b9421059924ab8bb02f309b35cfca566f8 /gcc/expmed.c | |
parent | 648c610ea1fe9d2d25e48f30081db1af04c19398 (diff) | |
download | gcc-9e4f5727332db824e6d76961c56784b820264f66.tar.gz |
(store_fixed_bit_field): If not SLOW_UNALIGNED_ACCESS, treat
everything as maximally aligned.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@13371 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expmed.c')
-rw-r--r-- | gcc/expmed.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/expmed.c b/gcc/expmed.c index c7744c7654a..a2adbd1ecb6 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -1,6 +1,6 @@ /* Medium-level subroutines: convert bit-field store and extract and shifts, multiplies and divides to rtl instructions. - Copyright (C) 1987, 88, 89, 92-5, 1996 Free Software Foundation, Inc. + Copyright (C) 1987, 88, 89, 92-6, 1997 Free Software Foundation, Inc. This file is part of GNU CC. @@ -557,6 +557,9 @@ store_fixed_bit_field (op0, offset, bitsize, bitpos, value, struct_align) int all_zero = 0; int all_one = 0; + if (! SLOW_UNALIGNED_ACCESS) + struct_align = BIGGEST_ALIGNMENT / BITS_PER_UNIT; + /* There is a case not handled here: a structure with a known alignment of just a halfword and a field split across two aligned halfwords within the structure. |