defaults.h (LEGITIMATE_PIC_OPERAND_P): Provide default definition.

* defaults.h (LEGITIMATE_PIC_OPERAND_P): Provide default definition.
	* recog.c (general_operand, immediate_operand, nonmemory_operand)
	(asm_operand_ok): Remove #ifdefs on LEGITIMATE_PICOPERAND_P.
	* regclass.c (record_reg_classes): Likewise.
	* reload.c (find_reloads): Likewise.
	* reload1.c (reload): Likewise.

From-SVN: r85512
This commit is contained in:
Zack Weinberg 2004-08-03 23:37:34 +00:00 committed by Zack Weinberg
parent f9942f4e14
commit 2e4e72b1c0
6 changed files with 18 additions and 29 deletions

View File

@ -1,3 +1,12 @@
2004-08-03 Zack Weinberg <zack@codesourcery.com>
* defaults.h (LEGITIMATE_PIC_OPERAND_P): Provide default definition.
* recog.c (general_operand, immediate_operand, nonmemory_operand)
(asm_operand_ok): Remove #ifdefs on LEGITIMATE_PICOPERAND_P.
* regclass.c (record_reg_classes): Likewise.
* reload.c (find_reloads): Likewise.
* reload1.c (reload): Likewise.
2004-08-03 Zack Weinberg <zack@codesourcery.com>
* gensupport.c (init_md_reader_args_cb): Renamed from

View File

@ -768,6 +768,10 @@ You Lose! You must define PREFERRED_DEBUGGING_TYPE!
#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
#endif
#ifndef LEGITIMATE_PIC_OPERAND_P
#define LEGITIMATE_PIC_OPERAND_P(X) 1
#endif
#ifndef REVERSIBLE_CC_MODE
#define REVERSIBLE_CC_MODE(MODE) 0
#endif

View File

@ -922,9 +922,7 @@ general_operand (rtx op, enum machine_mode mode)
if (CONSTANT_P (op))
return ((GET_MODE (op) == VOIDmode || GET_MODE (op) == mode
|| mode == VOIDmode)
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
#endif
&& LEGITIMATE_CONSTANT_P (op));
/* Except for certain constants with VOIDmode, already checked for,
@ -1102,9 +1100,7 @@ immediate_operand (rtx op, enum machine_mode mode)
return (CONSTANT_P (op)
&& (GET_MODE (op) == mode || mode == VOIDmode
|| GET_MODE (op) == VOIDmode)
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
#endif
&& LEGITIMATE_CONSTANT_P (op));
}
@ -1170,9 +1166,7 @@ nonmemory_operand (rtx op, enum machine_mode mode)
return ((GET_MODE (op) == VOIDmode || GET_MODE (op) == mode
|| mode == VOIDmode)
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
#endif
&& LEGITIMATE_CONSTANT_P (op));
}
@ -1677,11 +1671,7 @@ asm_operand_ok (rtx op, const char *constraint)
/* Fall through. */
case 'i':
if (CONSTANT_P (op)
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
#endif
)
if (CONSTANT_P (op) && (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op)))
result = 1;
break;

View File

@ -1614,10 +1614,7 @@ record_reg_classes (int n_alts, int n_ops, rtx *ops,
break;
case 'i':
if (CONSTANT_P (op)
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
#endif
)
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op)))
win = 1;
break;
@ -1648,10 +1645,7 @@ record_reg_classes (int n_alts, int n_ops, rtx *ops,
case 'g':
if (MEM_P (op)
|| (CONSTANT_P (op)
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
#endif
))
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))))
win = 1;
allows_mem[i] = 1;
case 'r':

View File

@ -3228,10 +3228,7 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known,
break;
case 'i':
if (CONSTANT_P (operand)
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (operand))
#endif
)
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (operand)))
win = 1;
break;
@ -3266,11 +3263,9 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known,
&& GET_CODE (operand) != PLUS
/* A SCRATCH is not a valid operand. */
&& GET_CODE (operand) != SCRATCH
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! CONSTANT_P (operand)
|| ! flag_pic
|| LEGITIMATE_PIC_OPERAND_P (operand))
#endif
&& (GENERAL_REGS == ALL_REGS
|| !REG_P (operand)
|| (REGNO (operand) >= FIRST_PSEUDO_REGISTER

View File

@ -734,16 +734,13 @@ reload (rtx first, int global)
{
rtx note = find_reg_note (insn, REG_EQUIV, NULL_RTX);
if (note
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! function_invariant_p (XEXP (note, 0))
|| ! flag_pic
/* A function invariant is often CONSTANT_P but may
include a register. We promise to only pass
CONSTANT_P objects to LEGITIMATE_PIC_OPERAND_P. */
|| (CONSTANT_P (XEXP (note, 0))
&& LEGITIMATE_PIC_OPERAND_P (XEXP (note, 0))))
#endif
)
&& LEGITIMATE_PIC_OPERAND_P (XEXP (note, 0)))))
{
rtx x = XEXP (note, 0);
i = REGNO (SET_DEST (set));