target-insns.def (reload_load_address): New targetm instruction pattern.

gcc/
	* target-insns.def (reload_load_address): New targetm instruction
	pattern.
	* reload1.c (gen_reload): Use it instead of HAVE_*/gen_* interface.

From-SVN: r226326
This commit is contained in:
Richard Sandiford 2015-07-28 20:06:57 +00:00 committed by Richard Sandiford
parent 3d00045080
commit 726858e309
3 changed files with 9 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2015-07-28 Richard Sandiford <richard.sandiford@arm.com>
* target-insns.def (reload_load_address): New targetm instruction
pattern.
* reload1.c (gen_reload): Use it instead of HAVE_*/gen_* interface.
2015-07-28 Richard Sandiford <richard.sandiford@arm.com>
* target-insns.def (atomic_test_and_set): New targetm instruction

View File

@ -8803,10 +8803,8 @@ gen_reload (rtx out, rtx in, int opnum, enum reload_type type)
mark_jump_label (in, tem, 0);
}
#ifdef HAVE_reload_load_address
else if (HAVE_reload_load_address)
emit_insn (gen_reload_load_address (out, in));
#endif
else if (targetm.have_reload_load_address ())
emit_insn (targetm.gen_reload_load_address (out, in));
/* Otherwise, just write (set OUT IN) and hope for the best. */
else

View File

@ -61,6 +61,7 @@ DEF_TARGET_INSN (probe_stack, (rtx x0))
DEF_TARGET_INSN (probe_stack_address, (rtx x0))
DEF_TARGET_INSN (prologue, (void))
DEF_TARGET_INSN (ptr_extend, (rtx x0, rtx x1))
DEF_TARGET_INSN (reload_load_address, (rtx x0, rtx x1))
DEF_TARGET_INSN (restore_stack_block, (rtx x0, rtx x1))
DEF_TARGET_INSN (restore_stack_function, (rtx x0, rtx x1))
DEF_TARGET_INSN (restore_stack_nonlocal, (rtx x0, rtx x1))