PRINT_OPERAND_PUNCT_VALID_P): Remove macros.
* config/ia64/ia64-protos.h (ia64_print_operand,
ia64_print_operand_address): Remove.
* config/ia64/ia64.c (TARGET_PRINT_OPERAND,
TARGET_PRINT_OPERAND_ADDRESS, TARGET_PRINT_OPERAND_PUNCT_VALID_P):
Define.
(ia64_print_operand_punct_valid_p): New function.
(ia64_print_operand, ia64_print_operand_address): Make static.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181932
138bc75d-0d04-0410-961f-
82ee72b054a4
+2011-12-02 Anatoly Sokolov <aesok@post.ru>
+
+ * config/ia64/ia64.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS,
+ PRINT_OPERAND_PUNCT_VALID_P): Remove macros.
+ * config/ia64/ia64-protos.h (ia64_print_operand,
+ ia64_print_operand_address): Remove.
+ * config/ia64/ia64.c (TARGET_PRINT_OPERAND,
+ TARGET_PRINT_OPERAND_ADDRESS, TARGET_PRINT_OPERAND_PUNCT_VALID_P):
+ Define.
+ (ia64_print_operand_punct_valid_p): New function.
+ (ia64_print_operand, ia64_print_operand_address): Make static.
+
2011-12-02 Michael Meissner <meissner@the-meissners.org>
PR target/51390
extern bool ia64_expand_load_address (rtx, rtx);
extern int ia64_hard_regno_rename_ok (int, int);
-extern void ia64_print_operand_address (FILE *, rtx);
-extern void ia64_print_operand (FILE *, rtx, int);
extern enum reg_class ia64_secondary_reload_class (enum reg_class,
enum machine_mode, rtx);
extern const char *get_bundle_name (int);
static void ia64_output_function_epilogue (FILE *, HOST_WIDE_INT);
static void ia64_output_function_end_prologue (FILE *);
+static void ia64_print_operand (FILE *, rtx, int);
+static void ia64_print_operand_address (FILE *, rtx);
+static bool ia64_print_operand_punct_valid_p (unsigned char code);
+
static int ia64_issue_rate (void);
static int ia64_adjust_cost_2 (rtx, int, rtx, int, dw_t);
static void ia64_sched_init (FILE *, int, int);
#undef TARGET_ASM_FUNCTION_EPILOGUE
#define TARGET_ASM_FUNCTION_EPILOGUE ia64_output_function_epilogue
+#undef TARGET_PRINT_OPERAND
+#define TARGET_PRINT_OPERAND ia64_print_operand
+#undef TARGET_PRINT_OPERAND_ADDRESS
+#define TARGET_PRINT_OPERAND_ADDRESS ia64_print_operand_address
+#undef TARGET_PRINT_OPERAND_PUNCT_VALID_P
+#define TARGET_PRINT_OPERAND_PUNCT_VALID_P ia64_print_operand_punct_valid_p
+
#undef TARGET_IN_SMALL_DATA_P
#define TARGET_IN_SMALL_DATA_P ia64_in_small_data_p
/* ??? Do we need this? It gets used only for 'a' operands. We could perhaps
also call this from ia64_print_operand for memory addresses. */
-void
+static void
ia64_print_operand_address (FILE * stream ATTRIBUTE_UNUSED,
rtx address ATTRIBUTE_UNUSED)
{
Linux kernel.
v Print vector constant value as an 8-byte integer value. */
-void
+static void
ia64_print_operand (FILE * file, rtx x, int code)
{
const char *str;
return;
}
+
+/* Worker function for TARGET_PRINT_OPERAND_PUNCT_VALID_P. */
+
+static bool
+ia64_print_operand_punct_valid_p (unsigned char code)
+{
+ return (code == '+' || code == ',');
+}
\f
/* Compute a (partial) cost for rtx X. Return true if the complete
cost has been computed, and false if subexpressions should be
{ "loc79", LOC_REG (79) }, \
}
-/* A C compound statement to output to stdio stream STREAM the assembler syntax
- for an instruction operand X. X is an RTL expression. */
-
-#define PRINT_OPERAND(STREAM, X, CODE) \
- ia64_print_operand (STREAM, X, CODE)
-
-/* A C expression which evaluates to true if CODE is a valid punctuation
- character for use in the `PRINT_OPERAND' macro. */
-
-/* ??? Keep this around for now, as we might need it later. */
-
-#define PRINT_OPERAND_PUNCT_VALID_P(CODE) \
- ((CODE) == '+' || (CODE) == ',')
-
-/* A C compound statement to output to stdio stream STREAM the assembler syntax
- for an instruction operand that is a memory reference whose address is X. X
- is an RTL expression. */
-
-#define PRINT_OPERAND_ADDRESS(STREAM, X) \
- ia64_print_operand_address (STREAM, X)
-
/* If defined, C string expressions to be used for the `%R', `%L', `%U', and
`%I' options of `asm_fprintf' (see `final.c'). */