This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: RFA: reload infrastructure to fix PR target/21623
P.S.: there was another use of reload_in_optab hidden in reload1.c -
fix attached.
--- reload1.c-20050930-2225 2005-09-30 23:19:39.000000000 +0100
+++ reload1.c 2005-09-30 23:17:53.000000000 +0100
@@ -43,6 +43,7 @@ Software Foundation, 51 Franklin Street,
#include "toplev.h"
#include "except.h"
#include "tree.h"
+#include "target.h"
/* This file contains the reload pass of the compiler, which is
run after register allocation has been done. It checks that
@@ -6535,7 +6536,13 @@ emit_input_reload_insns (struct insn_cha
oldequiv = old, real_oldequiv = real_old;
else
{
- new_icode = reload_in_optab[(int) mode];
+ new_icode
+ = targetm.reload_icode (1, real_oldequiv, rl->class, mode);
+
+ /* backward compatibility */
+ if (icode >= CODE_FOR_nothing)
+ new_icode = reload_in_optab[(int) mode];
+
if (new_icode != CODE_FOR_nothing
&& ((insn_data[(int) new_icode].operand[0].predicate
&& ! ((*insn_data[(int) new_icode].operand[0].predicate)