diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/function.c | 3 |
2 files changed, 6 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 30dea0f21fd..c8ddda0b721 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2008-06-27 Richard Sandiford <rdsandiford@googlemail.com> + * function.c (allocate_struct_function): Only allocate a unique + funcdef_no if the decl is nonzero. + +2008-06-27 Richard Sandiford <rdsandiford@googlemail.com> + * config/mips/mips-protos.h (mips_split_const_insns): Declare. * config/mips/mips.c (mips_split_const_insns): New function. * config/mips/mips.md (move_type): New attribute. diff --git a/gcc/function.c b/gcc/function.c index c8d5e77daaa..680b3604859 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -3843,8 +3843,6 @@ allocate_struct_function (tree fndecl, bool abstract_p) cfun = GGC_CNEW (struct function); - current_function_funcdef_no = get_next_funcdef_no (); - cfun->function_frequency = FUNCTION_FREQUENCY_NORMAL; init_eh_for_function (); @@ -3860,6 +3858,7 @@ allocate_struct_function (tree fndecl, bool abstract_p) { DECL_STRUCT_FUNCTION (fndecl) = cfun; cfun->decl = fndecl; + current_function_funcdef_no = get_next_funcdef_no (); result = DECL_RESULT (fndecl); if (!abstract_p && aggregate_value_p (result, fndecl)) |