iq2000-protos.h (print_operand): Delete.

* config/iq2000/iq2000-protos.h (print_operand): Delete.
	(print_operand_address): Delete.
	* config/iq2000/iq2000.h (PRINT_OPERAND): Delete.
	(PRINT_OPERAND_PUNCT_VALID_P): Delete.
	(PRINT_OPERAND_ADDRESS): Delete.
	(iq2000_print_operand_punct): Delete.
	* config/iq2000/iq2000.c (iq2000_print_operand_punct): Make static.
	(iq2000_print_operand_address): Make static.
	(iq2000_print_operand): Make static.
	(iq2000_print_operand_punct_valid_p): New function.
	(TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
	(TARGET_PRINT_OPERAND_ADDRESS): Define.

From-SVN: r160938
This commit is contained in:
Nathan Froyd 2010-06-17 18:13:03 +00:00 committed by Nathan Froyd
parent 0fb30cb73d
commit bf7c1408ff
4 changed files with 39 additions and 21 deletions

View File

@ -1,3 +1,18 @@
2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
* config/iq2000/iq2000-protos.h (print_operand): Delete.
(print_operand_address): Delete.
* config/iq2000/iq2000.h (PRINT_OPERAND): Delete.
(PRINT_OPERAND_PUNCT_VALID_P): Delete.
(PRINT_OPERAND_ADDRESS): Delete.
(iq2000_print_operand_punct): Delete.
* config/iq2000/iq2000.c (iq2000_print_operand_punct): Make static.
(iq2000_print_operand_address): Make static.
(iq2000_print_operand): Make static.
(iq2000_print_operand_punct_valid_p): New function.
(TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
(TARGET_PRINT_OPERAND_ADDRESS): Define.
2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
* config/frv/frv-protos.h (frv_print_operand): Delete.

View File

@ -35,8 +35,6 @@ extern void iq2000_expand_eh_return (rtx);
extern int iq2000_can_use_return_insn (void);
extern int iq2000_adjust_insn_length (rtx, int);
extern char * iq2000_output_conditional_branch (rtx, rtx *, int, int, int, int);
extern void print_operand_address (FILE *, rtx);
extern void print_operand (FILE *, rtx, int);
#ifdef RTX_CODE
extern rtx gen_int_relational (enum rtx_code, rtx, rtx, rtx, int *);

View File

@ -108,8 +108,8 @@ struct GTY(()) machine_function
/* Global variables for machine-dependent things. */
/* List of all IQ2000 punctuation characters used by print_operand. */
char iq2000_print_operand_punct[256];
/* List of all IQ2000 punctuation characters used by iq2000_print_operand. */
static char iq2000_print_operand_punct[256];
/* The target cpu for optimization and scheduling. */
enum processor_type iq2000_tune;
@ -169,6 +169,9 @@ static void iq2000_asm_trampoline_template (FILE *);
static void iq2000_trampoline_init (rtx, tree, rtx);
static rtx iq2000_function_value (const_tree, const_tree, bool);
static rtx iq2000_libcall_value (enum machine_mode, const_rtx);
static void iq2000_print_operand (FILE *, rtx, int);
static void iq2000_print_operand_address (FILE *, rtx);
static bool iq2000_print_operand_punct_valid_p (unsigned char code);
#undef TARGET_INIT_BUILTINS
#define TARGET_INIT_BUILTINS iq2000_init_builtins
@ -193,6 +196,13 @@ static rtx iq2000_libcall_value (enum machine_mode, const_rtx);
#undef TARGET_HAVE_SWITCHABLE_BSS_SECTIONS
#define TARGET_HAVE_SWITCHABLE_BSS_SECTIONS false
#undef TARGET_PRINT_OPERAND
#define TARGET_PRINT_OPERAND iq2000_print_operand
#undef TARGET_PRINT_OPERAND_ADDRESS
#define TARGET_PRINT_OPERAND_ADDRESS iq2000_print_operand_address
#undef TARGET_PRINT_OPERAND_PUNCT_VALID_P
#define TARGET_PRINT_OPERAND_PUNCT_VALID_P iq2000_print_operand_punct_valid_p
#undef TARGET_PROMOTE_FUNCTION_MODE
#define TARGET_PROMOTE_FUNCTION_MODE default_promote_function_mode_always_promote
#undef TARGET_PROMOTE_PROTOTYPES
@ -2920,8 +2930,8 @@ iq2000_setup_incoming_varargs (CUMULATIVE_ARGS *cum,
assembler syntax for an instruction operand that is a memory
reference whose address is ADDR. ADDR is an RTL expression. */
void
print_operand_address (FILE * file, rtx addr)
static void
iq2000_print_operand_address (FILE * file, rtx addr)
{
if (!addr)
error ("PRINT_OPERAND_ADDRESS, null pointer");
@ -2946,7 +2956,7 @@ print_operand_address (FILE * file, rtx addr)
"PRINT_OPERAND_ADDRESS, LO_SUM with #1 not REG.");
fprintf (file, "%%lo(");
print_operand_address (file, arg1);
iq2000_print_operand_address (file, arg1);
fprintf (file, ")(%s)", reg_names [REGNO (arg0)]);
}
break;
@ -3048,12 +3058,12 @@ print_operand_address (FILE * file, rtx addr)
'$' Print the name of the stack pointer register (sp or $29).
'+' Print the name of the gp register (gp or $28). */
void
print_operand (FILE *file, rtx op, int letter)
static void
iq2000_print_operand (FILE *file, rtx op, int letter)
{
enum rtx_code code;
if (PRINT_OPERAND_PUNCT_VALID_P (letter))
if (iq2000_print_operand_punct_valid_p (letter))
{
switch (letter)
{
@ -3234,13 +3244,18 @@ print_operand (FILE *file, rtx op, int letter)
else if (code == CONST && GET_CODE (XEXP (op, 0)) == REG)
{
print_operand (file, XEXP (op, 0), letter);
iq2000_print_operand (file, XEXP (op, 0), letter);
}
else
output_addr_const (file, op);
}
static bool
iq2000_print_operand_punct_valid_p (unsigned char code)
{
return iq2000_print_operand_punct[code];
}
/* For the IQ2000, transform:

View File

@ -571,13 +571,6 @@ typedef struct iq2000_args
#define FINAL_PRESCAN_INSN(INSN, OPVEC, NOPERANDS) \
final_prescan_insn (INSN, OPVEC, NOPERANDS)
/* See iq2000.c for the IQ2000 specific codes. */
#define PRINT_OPERAND(FILE, X, CODE) print_operand (FILE, X, CODE)
#define PRINT_OPERAND_PUNCT_VALID_P(CODE) iq2000_print_operand_punct[CODE]
#define PRINT_OPERAND_ADDRESS(FILE, ADDR) print_operand_address (FILE, ADDR)
#define DBR_OUTPUT_SEQEND(STREAM) \
do \
{ \
@ -920,9 +913,6 @@ enum processor_type
#define SDATA_SECTION_ASM_OP "\t.sdata" /* Small data. */
/* List of all IQ2000 punctuation characters used by print_operand. */
extern char iq2000_print_operand_punct[256];
/* The target cpu for optimization and scheduling. */
extern enum processor_type iq2000_tune;