From e4638a72d8b900cc9557bdeaf719a3e3987cd4c6 Mon Sep 17 00:00:00 2001 From: Steven Bosscher Date: Mon, 7 Jun 2004 06:04:14 +0000 Subject: [PATCH] hooks.c (hook_int_void_1): New generic hook. * hooks.c (hook_int_void_1): New generic hook. * hooks.h (hook_int_void_1): Add prototype. * config/c4x/c4x.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define to hook_int_void_1. * config/c4x/c4x.md: Replace dummies for the old pipeline model with dummies for the new one. From-SVN: r82682 --- gcc/ChangeLog | 9 +++++++++ gcc/config/c4x/c4x.c | 3 +++ gcc/config/c4x/c4x.md | 5 ++--- gcc/hooks.c | 7 +++++++ gcc/hooks.h | 1 + 5 files changed, 22 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 36663e975e9..7198e8568f0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2004-06-06 Steven Bosscher + + * hooks.c (hook_int_void_1): New generic hook. + * hooks.h (hook_int_void_1): Add prototype. + * config/c4x/c4x.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): + Define to hook_int_void_1. + * config/c4x/c4x.md: Replace dummies for the old pipeline model + with dummies for the new one. + 2004-06-06 Roger Sayle * tree.h (lvalue_or_else): Delete function prototype. diff --git a/gcc/config/c4x/c4x.c b/gcc/config/c4x/c4x.c index 850bcef44b9..ceaa7dfcb98 100644 --- a/gcc/config/c4x/c4x.c +++ b/gcc/config/c4x/c4x.c @@ -235,6 +235,9 @@ static rtx c4x_struct_value_rtx (tree, int); #undef TARGET_SCHED_ADJUST_COST #define TARGET_SCHED_ADJUST_COST c4x_adjust_cost +#undef TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE +#define TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE hook_int_void_1 + #undef TARGET_ASM_GLOBALIZE_LABEL #define TARGET_ASM_GLOBALIZE_LABEL c4x_globalize_label diff --git a/gcc/config/c4x/c4x.md b/gcc/config/c4x/c4x.md index 1ea954abdd8..3c2d2f86e9a 100644 --- a/gcc/config/c4x/c4x.md +++ b/gcc/config/c4x/c4x.md @@ -502,9 +502,8 @@ ; Just some dummy definitions. The real work is done in c4x_adjust_cost. ; These are needed so the min/max READY_DELAY is known. -(define_function_unit "dummy" 1 0 (const_int 0) 1 1) -(define_function_unit "dummy" 1 0 (const_int 0) 2 1) -(define_function_unit "dummy" 1 0 (const_int 0) 3 1) +(define_insn_reservation "any_insn" 1 (const_int 1) "nothing") +(define_insn_reservation "slowest_insn" 3 (const_int 0) "nothing") ; The attribute setar0 is set to 1 for insns where ar0 is a dst operand. ; Note that the attributes unarycc and binarycc do not apply diff --git a/gcc/hooks.c b/gcc/hooks.c index e37d58e9723..1fafe1f12f8 100644 --- a/gcc/hooks.c +++ b/gcc/hooks.c @@ -48,6 +48,13 @@ hook_int_void_no_regs (void) return NO_REGS; } +/* Generic hook that returns 1. */ +int +hook_int_void_1 (void) +{ + return 1; +} + /* Generic hook that takes (bool) and returns false. */ bool hook_bool_bool_false (bool a ATTRIBUTE_UNUSED) diff --git a/gcc/hooks.h b/gcc/hooks.h index aab83a81620..fea78c79e87 100644 --- a/gcc/hooks.h +++ b/gcc/hooks.h @@ -46,6 +46,7 @@ extern int hook_int_tree_tree_1 (tree, tree); extern int hook_int_rtx_0 (rtx); extern int hook_int_size_t_constcharptr_int_0 (size_t, const char *, int); extern int hook_int_void_no_regs (void); +extern int hook_int_void_1 (void); extern unsigned hook_uint_uint_constcharptrptr_0 (unsigned, const char **); -- 2.30.2