PR middle-end/16038
Backport from mainline:
Fri Apr 4 17:43:52 2003 Olivier Hainque <hainque@act-europe.fr>
* emit-rtl.c (get_mem_attrs): Adjust alignment tests determining
use of default attributes to agree MEM_ALIGN macro.
From-SVN: r83356
+2004-06-17 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR middle-end/16038
+ Backport from mainline:
+ Fri Apr 4 17:43:52 2003 Olivier Hainque <hainque@act-europe.fr>
+
+ * emit-rtl.c (get_mem_attrs): Adjust alignment tests determining
+ use of default attributes to agree MEM_ALIGN macro.
+
2004-05-31 Release Manager
* GCC 3.3.4 Released.
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;