diff options
author | Olivier Hainque <hainque@act-europe.fr> | 2003-04-05 00:44:02 +0200 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 2003-04-04 17:44:02 -0500 |
commit | bb056a77f345caff9802848ed9bc459055a3a9ea (patch) | |
tree | 9d8eeb3110a4fafa855c76608180345189b7b597 /gcc/emit-rtl.c | |
parent | da247cccbc27c6c1f78c15fe4922c8f806c5369a (diff) | |
download | gcc-bb056a77f345caff9802848ed9bc459055a3a9ea.zip gcc-bb056a77f345caff9802848ed9bc459055a3a9ea.tar.gz gcc-bb056a77f345caff9802848ed9bc459055a3a9ea.tar.bz2 |
emit-rtl.c (get_mem_attrs): Adjust alignment tests determining use of default attributes to agree MEM_ALIGN...
* emit-rtl.c (get_mem_attrs): Adjust alignment tests determining
use of default attributes to agree MEM_ALIGN macro.
From-SVN: r65254
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r-- | gcc/emit-rtl.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index 4aab674..96903a3 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -312,13 +312,14 @@ get_mem_attrs (alias, expr, offset, size, align, mode) mem_attrs attrs; void **slot; - /* If everything is the default, we can just return zero. */ + /* If everything is the default, we can just return zero. + This must match what the corresponding MEM_* macros return when the + field is not present. */ if (alias == 0 && expr == 0 && offset == 0 && (size == 0 || (mode != BLKmode && GET_MODE_SIZE (mode) == INTVAL (size))) - && (align == BITS_PER_UNIT - || (STRICT_ALIGNMENT - && mode != BLKmode && align == GET_MODE_ALIGNMENT (mode)))) + && (STRICT_ALIGNMENT && mode != BLKmode + ? align == GET_MODE_ALIGNMENT (mode) : align == BITS_PER_UNIT)) return 0; attrs.alias = alias; |