Commit 0c86e0dd by Chung-Lin Tang Committed by Chung-Lin Tang

arm.h (ARM_EXPAND_ALIGNMENT): Rename from DATA_ALIGNMENT and add COND parameter.

2010-10-12  Chung-Lin Tang  <cltang@codesourcery.com>

	* config/arm/arm.h (ARM_EXPAND_ALIGNMENT): Rename from
	DATA_ALIGNMENT and add COND parameter. Update comments above.
	(DATA_ALIGNMENT): Use ARM_EXPAND_ALIGNMENT, with !optimize_size.
	(LOCAL_ALIGNMENT): Use ARM_EXPAND_ALIGNMENT, with
	!flag_conserve_stack.

From-SVN: r165390
parent 515fe073
2010-10-12 Chung-Lin Tang <cltang@codesourcery.com>
* config/arm/arm.h (ARM_EXPAND_ALIGNMENT): Rename from
DATA_ALIGNMENT and add COND parameter. Update comments above.
(DATA_ALIGNMENT): Use ARM_EXPAND_ALIGNMENT, with !optimize_size.
(LOCAL_ALIGNMENT): Use ARM_EXPAND_ALIGNMENT, with
!flag_conserve_stack.
2010-10-12 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/45958
......@@ -617,15 +617,21 @@ extern int arm_arch_hwdiv;
/* Align definitions of arrays, unions and structures so that
initializations and copies can be made more efficient. This is not
ABI-changing, so it only affects places where we can see the
definition. */
#define DATA_ALIGNMENT(EXP, ALIGN) \
((((ALIGN) < BITS_PER_WORD) \
definition. Increasing the alignment tends to introduce padding,
so don't do this when optimizing for size/conserving stack space. */
#define ARM_EXPAND_ALIGNMENT(COND, EXP, ALIGN) \
(((COND) && ((ALIGN) < BITS_PER_WORD) \
&& (TREE_CODE (EXP) == ARRAY_TYPE \
|| TREE_CODE (EXP) == UNION_TYPE \
|| TREE_CODE (EXP) == RECORD_TYPE)) ? BITS_PER_WORD : (ALIGN))
/* Align global data. */
#define DATA_ALIGNMENT(EXP, ALIGN) \
ARM_EXPAND_ALIGNMENT(!optimize_size, EXP, ALIGN)
/* Similarly, make sure that objects on the stack are sensibly aligned. */
#define LOCAL_ALIGNMENT(EXP, ALIGN) DATA_ALIGNMENT(EXP, ALIGN)
#define LOCAL_ALIGNMENT(EXP, ALIGN) \
ARM_EXPAND_ALIGNMENT(!flag_conserve_stack, EXP, ALIGN)
/* Setting STRUCTURE_SIZE_BOUNDARY to 32 produces more efficient code, but the
value set in previous versions of this toolchain was 8, which produces more
......
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