Commit 93b338c3 by Bernd Schmidt Committed by Bernd Schmidt

arm.h (MAX_LDM_STM_OPS): New macro.

	* config/arm/arm.h (MAX_LDM_STM_OPS): New macro.
	* config/arm/arm.c (multiple_operation_profitable_p,
	compute_offset_order): New static functions.
	(load_multiple_sequence, store_multiple_sequence): Use them.
	Replace constant 4 with MAX_LDM_STM_OPS.  Compute order[0] from
	memory offsets, not register numbers.
	(emit_ldm_seq, emit_stm_seq): Replace constant 4 with MAX_LDM_STM_OPS.

From-SVN: r159089
parent 5e7b92b9
2010-05-06 Bernd Schmidt <bernds@codesourcery.com>
* config/arm/arm.h (MAX_LDM_STM_OPS): New macro.
* config/arm/arm.c (multiple_operation_profitable_p,
compute_offset_order): New static functions.
(load_multiple_sequence, store_multiple_sequence): Use them.
Replace constant 4 with MAX_LDM_STM_OPS. Compute order[0] from
memory offsets, not register numbers.
(emit_ldm_seq, emit_stm_seq): Replace constant 4 with MAX_LDM_STM_OPS.
2010-05-05 Steven Bosscher <steven@gcc.gnu.org>
* stor-layout.c (pending_sizes): Change the type to
......
......@@ -2769,4 +2769,8 @@ enum arm_builtins
#define NEED_INDICATE_EXEC_STACK 0
#endif
/* The maximum number of parallel loads or stores we support in an ldm/stm
instruction. */
#define MAX_LDM_STM_OPS 4
#endif /* ! GCC_ARM_H */
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