diff options
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/alpha/alpha.c | 1 | ||||
-rw-r--r-- | gcc/config/ia64/ia64.c | 1 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 1 | ||||
-rw-r--r-- | gcc/config/sh/sh.c | 5 | ||||
-rw-r--r-- | gcc/config/sparc/sparc.c | 1 |
5 files changed, 7 insertions, 2 deletions
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c index 68afb2e..144686b 100644 --- a/gcc/config/alpha/alpha.c +++ b/gcc/config/alpha/alpha.c @@ -8156,6 +8156,7 @@ alpha_output_mi_thunk_osf (file, thunk_fndecl, delta, vcall_offset, function) instruction scheduling worth while. Note that use_thunk calls assemble_start_function and assemble_end_function. */ insn = get_insns (); + insn_locators_initialize (); shorten_branches (insn); final_start_function (insn, file, 1); final (insn, file, 1, 0); diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index ab49ff6..6885429 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -8542,6 +8542,7 @@ ia64_output_mi_thunk (file, thunk, delta, vcall_offset, function) instruction scheduling worth while. Note that use_thunk calls assemble_start_function and assemble_end_function. */ + insn_locators_initialize (); emit_all_insn_group_barriers (NULL); insn = get_insns (); shorten_branches (insn); diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 7fd6828..d3d92fa 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -12306,6 +12306,7 @@ rs6000_output_mi_thunk (file, thunk_fndecl, delta, vcall_offset, function) instruction scheduling worth while. Note that use_thunk calls assemble_start_function and assemble_end_function. */ insn = get_insns (); + insn_locators_initialize (); shorten_branches (insn); final_start_function (insn, file, 1); final (insn, file, 1, 0); diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 0b82d79..f63b41d7 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -8322,7 +8322,6 @@ sh_output_mi_thunk (file, thunk_fndecl, delta, vcall_offset, function) int did_load = 0; rtx scratch0, scratch1, scratch2; - insn_locators_initialize (); reload_completed = 1; no_new_pseudos = 1; current_function_uses_only_leaf_regs = 1; @@ -8438,9 +8437,11 @@ sh_output_mi_thunk (file, thunk_fndecl, delta, vcall_offset, function) use_reg (&CALL_INSN_FUNCTION_USAGE (sibcall), this); emit_barrier (); - /* Run just enough of rest_of_compilation to do scheduling and get + /* Run just enough of rest_of_compilation to do scheduling and get the insns emitted. Note that use_thunk calls assemble_start_function and assemble_end_function. */ + + insn_locators_initialize (); insns = get_insns (); if (optimize > 0 && flag_schedule_insns_after_reload) diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c index 3be2f9d..5237393 100644 --- a/gcc/config/sparc/sparc.c +++ b/gcc/config/sparc/sparc.c @@ -8632,6 +8632,7 @@ sparc_output_mi_thunk (file, thunk_fndecl, delta, vcall_offset, function) instruction scheduling worth while. Note that use_thunk calls assemble_start_function and assemble_end_function. */ insn = get_insns (); + insn_locators_initialize (); shorten_branches (insn); final_start_function (insn, file, 1); final (insn, file, 1, 0); |