From 7151fd0e46078735d19ba3c266e02bc66e5bcc84 Mon Sep 17 00:00:00 2001 From: zack Date: Tue, 3 Aug 2004 23:37:34 +0000 Subject: [PATCH] * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85512 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 9 +++++++++ gcc/defaults.h | 4 ++++ gcc/recog.c | 12 +----------- gcc/regclass.c | 10 ++-------- gcc/reload.c | 7 +------ gcc/reload1.c | 5 +---- 6 files changed, 18 insertions(+), 29 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fb925f8..be575fb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,14 @@ 2004-08-03 Zack Weinberg + * 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 + * gensupport.c (init_md_reader_args_cb): Renamed from init_md_reader_args. Add third option, callback function for parsing program-specific options. Add diagnosis of incorrect diff --git a/gcc/defaults.h b/gcc/defaults.h index 763601c..cd45f91 100644 --- a/gcc/defaults.h +++ b/gcc/defaults.h @@ -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 diff --git a/gcc/recog.c b/gcc/recog.c index 82fb12e..12b0fbf 100644 --- a/gcc/recog.c +++ b/gcc/recog.c @@ -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; diff --git a/gcc/regclass.c b/gcc/regclass.c index f341c39..1f51af6 100644 --- a/gcc/regclass.c +++ b/gcc/regclass.c @@ -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': diff --git a/gcc/reload.c b/gcc/reload.c index 4011f0f..0996511 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -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 diff --git a/gcc/reload1.c b/gcc/reload1.c index 1fc55c3..3eb20b0 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -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)); -- 2.7.4