arm.c (arm_arch4t): New variable.
* arm.c (arm_arch4t): New variable. (arm_override_options): Initialize it. If compiling for armv5 or higher clear TARGET_INTERWORK. (output_call): Abort if called for armv5. Use BX if it's available. (output_call_mem): Use BLX if available and ensure that all armv5 code is interworking safe. (output_return_instruction): Always use BX in preference to MOV if it's available. (arm_output_epilogue): Likewise. (arm_final_prescan_insn): Never conditionally call a subroutine on armv5. * arm.h (arm_arch4t): Declare. * arm.md (call_reg_armv5, call_value_reg_armv5): New. (call_reg_arm, call_value_reg_arm): Renamed from call_reg and call_value_reg respectively. (call_reg_thumb_v5, call_value_reg_thumb_v5): New. (call_reg_thumb, call_value_reg_thumb): Renamed from call_indirect and call_value_indirect respectively. From-SVN: r83647
Showing
Please
register
or
sign in
to comment