diff options
Diffstat (limited to 'gcc/config/cris/cris.c')
-rw-r--r-- | gcc/config/cris/cris.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/gcc/config/cris/cris.c b/gcc/config/cris/cris.c index 62912f2e424..0fa6660dc97 100644 --- a/gcc/config/cris/cris.c +++ b/gcc/config/cris/cris.c @@ -63,7 +63,7 @@ Boston, MA 02111-1307, USA. */ } while (0) /* Per-function machine data. */ -struct machine_function +struct machine_function GTY(()) { int needs_return_address_on_stack; }; @@ -85,7 +85,7 @@ static void cris_print_base PARAMS ((rtx, FILE *)); static void cris_print_index PARAMS ((rtx, FILE *)); -static void cris_init_machine_status PARAMS ((struct function *)); +static struct machine_function * cris_init_machine_status PARAMS ((void)); static int cris_initial_frame_pointer_offset PARAMS ((void)); @@ -2697,11 +2697,10 @@ cris_init_expanders () /* Zero initialization is OK for all current fields. */ -static void -cris_init_machine_status (p) - struct function *p; +static struct machine_function * +cris_init_machine_status () { - p->machine = xcalloc (1, sizeof (struct machine_function)); + return ggc_alloc_cleared (sizeof (struct machine_function)); } /* Split a 2 word move (DI or presumably DF) into component parts. @@ -3129,6 +3128,8 @@ Prev_insn (insn) } #endif +#include "gt-cris.h" + /* * Local variables: * eval: (c-set-style "gnu") |