* PR target/19162
* arm.c (arm_apply_result_size): New function.
* arm.h (APPLY_RESULT_SIZE): Define.
* arm-protos.h (arm_apply_result_size): Add prototype.
* arm.md (RO_REGNUM, FPA_F0_REGNUM, FPA_F7_REGNUM): New constants.
(movxf): New expand.
(ldmsi_postinc4_thumb, stmsi_postinc4_thumb): New patterns for Thumb.
(call_value_symbol): Remove predicate for operand 0.
(call_value_insn, sibcall_value, sibcall_value_insn): Likewise.
(untyped_call): Rework to correclty return values for any type.
(untyped_return): New expand.
* fpa.md (movxf_fpa): Simplify and use sfm/lfm when appropriate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95119 138bc75d-0d04-0410-961f-82ee72b054a4