Commit a8f3bf52 by Richard Kenner Committed by Richard Kenner

expr.c (expand_expr, [...]): When seeing if should use bitfield operations...

	* expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
	bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
	if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.

From-SVN: r68968
parent 0641776c
2003-07-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
2003-07-05 Andreas Jaeger <aj@suse.de> 2003-07-05 Andreas Jaeger <aj@suse.de>
* genattrtab.c (write_attr_get): Revert part of last patch to * genattrtab.c (write_attr_get): Revert part of last patch to
......
...@@ -7541,7 +7541,10 @@ expand_expr (tree exp, rtx target, enum machine_mode tmode, enum expand_modifier ...@@ -7541,7 +7541,10 @@ expand_expr (tree exp, rtx target, enum machine_mode tmode, enum expand_modifier
|| (mode1 != BLKmode || (mode1 != BLKmode
&& (((TYPE_ALIGN (TREE_TYPE (tem)) < GET_MODE_ALIGNMENT (mode) && (((TYPE_ALIGN (TREE_TYPE (tem)) < GET_MODE_ALIGNMENT (mode)
|| (bitpos % GET_MODE_ALIGNMENT (mode) != 0)) || (bitpos % GET_MODE_ALIGNMENT (mode) != 0))
&& SLOW_UNALIGNED_ACCESS (mode1, MEM_ALIGN (op0))) && ((modifier == EXPAND_CONST_ADDRESS
|| modifier == EXPAND_INITIALIZER)
? STRICT_ALIGNMENT
: SLOW_UNALIGNED_ACCESS (mode1, MEM_ALIGN (op0))))
|| (bitpos % BITS_PER_UNIT != 0))) || (bitpos % BITS_PER_UNIT != 0)))
/* If the type and the field are a constant size and the /* If the type and the field are a constant size and the
size of the type isn't the same size as the bitfield, size of the type isn't the same size as the bitfield,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment