aboutsummaryrefslogtreecommitdiff
path: root/gcc/flow.c
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>2000-05-06 18:13:35 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2000-05-06 18:13:35 +0000
commit0616531fb5b99c6139eb0241067d000ab9b44960 (patch)
treed111ccb15b7572bbaf8d52dd2c4ab1c9a3146cf1 /gcc/flow.c
parent76fa6b3b73f655f8739d6704a1769ad98abaaecf (diff)
downloadgcc-0616531fb5b99c6139eb0241067d000ab9b44960.zip
gcc-0616531fb5b99c6139eb0241067d000ab9b44960.tar.gz
gcc-0616531fb5b99c6139eb0241067d000ab9b44960.tar.bz2
Use new tail-calling mechanism on ARM.
* arm.md (sibcall, sibcall_value): New expands. (sibcall_insn, sibcall_value_insn, sibcall_epilogue): New insns. (tailcalling peepholes): Delete. (push_multi): Simplify. * arm.c (lr_save_eliminated): Delete definition. (pattern_really_clobbers_lr, function_really_clobbers_lr): Delete. (output_return_instruction): Remove checks on lr_save_eliminated. (output_arm_prologue): Remove old tail-calling code. (arm_output_epilogue): New parameter, really_return. All callers changed. Handle tail-calling epilogues. * arm.h (lr_save_eliminated): Delete declaration. (frame_pointer_needed): Delete declaration. * arm-protos.h (arm_output_epilogue): Adjust prototype. * arm.md (is_thumb): Examine symbol thumb_code, not expression TARGET_ARM. * arm.c (thumb_code): Define it. (arm_override_options): Set it. * arm.h (thumb_code): Declare it. From-SVN: r33731
Diffstat (limited to 'gcc/flow.c')
0 files changed, 0 insertions, 0 deletions