Backport following mainline revs to ARM/embedded-4_6-branch: 171449, 172777, 174894, 175588, 176867, 177759
Committed. 2011-09-19 Jiangning Liu <jiangning....@arm.com> Backport r177759 from mainline 2011-08-15 Ramana Radhakrishnan <ramana.radhakrish...@linaro.org> PR target/50022 * config/arm/arm.c (output_move_double): Add 2 parameters to count the number of insns emitted and whether to emit or not. Use the flag to decide when to emit and count number of instructions that will be emitted. Handle case where output_move_double might be called for calculating lengths with an invalid constant. (arm_count_output_move_double_insns): Define. * config/arm/arm-protos.h (arm_count_output_move_double_insns): Declare. (output_move_double): Adjust prototype. * config/arm/vfp.md ("*movdi_vfp"): Adjust call to output_move_double. ("*movdi_vfp_cortexa8"): Likewise and add attribute for ce_count. * config/arm/arm.md ("*arm_movdi"): Adjust call to output_move_double. ("*movdf_soft_insn"): Likewise. * config/arm/cirrus.md ("*cirrus_arm_movdi"): Likewise. ("*cirrus_thumb2_movdi"): Likewise. ("*thumb2_cirrus_movdf_hard_insn"): Likewise. ("*cirrus_movdf_hard_insn"): Likewise. * config/arm/neon.md (*neon_mov<mode> VD): Likewise. * config/arm/iwmmxt.md ("*iwmmxt_arm_movdi"): Likewise. ("mov<mode>_internal VMMX"): Likewise. * config/arm/fpa.md (*movdf_fpa, *thumb2_movdf_fpa): Likewise. 2011-09-19 Jiangning Liu <jiangning....@arm.com> Backport r176867 from mainline 2011-07-28 Ramana Radhakrishnan <ramana.radhakrish...@linaro.org> * config/arm/vfp.md ("*movdf_vfp"): Handle the VFP constraints before the core constraints. Adjust attributes. (*thumb2_movdf_vfp"): Likewise. 2011-09-19 Jiangning Liu <jiangning....@arm.com> Backport r175588 from mainline 2011-06-28 Ramana Radhakrishnan <ramana.radhakrish...@linaro.org> * config/arm/vfp.md ("*divsf3_vfp"): Replace '+' constraint modifier with '=' constraint modifier. (*divdf3_vfp): Likewise. ("*mulsf3_vfp"): Likewise. ("*muldf3_vfp"): Likewise. ("*mulsf3negsf_vfp"): Likewise. ("*muldf3negdf_vfp"): Likewise. 2011-09-19 Jiangning Liu <jiangning....@arm.com> Backport r174894 from mainline 2011-06-10 Ramana Radhakrishnan <ramana.radhakrish...@linaro.org> Richard Earnshaw <rearn...@arm.com> * config/arm/arm.c (const_ok_for_op): Check to see if mvn can be used. * config/arm/vfp.md (*arm_movdi_vfp): Delete. (*thumb2_movdi_vfp): Delete. (*arm_movdi_vfp_cortexa8): Delete. (*movdi_vfp): Consolidate from *arm_movdi_vfp and *thumb2_movdi_vfp. (*movdi_vfp_cortexa8): Likewise. 2011-09-19 Jiangning Liu <jiangning....@arm.com> Backport r172777 from mainline 2011-04-20 Andrew Stubbs <a...@codesourcery.com> * config/arm/arm.c (arm_gen_constant): Move movw support .... (const_ok_for_op): ... to here. 2011-09-19 Jiangning Liu <jiangning....@arm.com> Partially backport r171449 from mainline 2011-03-25 Bernd Schmidt <ber...@codesourcery.com> Andrew Stubbs <a...@codesourcery.com> * config/arm/vfp.md (arm_movdi_vfp): Enable only when not tuning for Cortex-A8. (arm_movdi_vfp_cortexa8): New pattern. * config/arm/arm.md: Move include arm-tune.md up a bit. (define_attr "arch"): Add "onlya8" and "nota8" values. (define_attr "arch_enabled"): Handle "onlya8" and "nota8".