aboutsummaryrefslogtreecommitdiff
path: root/gcc/varasm.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@libertysurf.fr>2005-10-26 07:03:30 +0000
committerEric Botcazou <ebotcazou@libertysurf.fr>2005-10-26 07:03:30 +0000
commitaecdd6b3c8ab3172e1b82a121b1b4b3f7f73dd0a (patch)
tree962005b9e688c09f1fafa66ca1b61ef6c984860e /gcc/varasm.c
parent63733a9c2958efe8a483ce8da780f69f50e33b90 (diff)
PR rtl-optimization/24460
* dwarf2out.c (have_switched_text_sections): New boolean variable. (dwarf2out_switch_text_section): Set it to true instead of incrementing separate_line_info_table_in_use. (output_loc_list): Additionally test have_switched_text_sections. (output_ranges): Likewise. (dwarf2out_finish): Likewise. * varasm.c (assemble_start_function): Do not call insert_section_boundary_note. (assemble_end_function): If flag_reorder_blocks_and_partition, switch to the function's section before emitting the .size directive. * bb-reorder.c (insert_section_boundary_note): Staticify. (rest_of_handle_reorder_blocks): Call insert_section_boundary_note. * output.h (insert_section_boundary_note): Delete. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@105916 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/varasm.c')
-rw-r--r--gcc/varasm.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c
index 2aa5e6904da..83f47ac486e 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -1369,11 +1369,6 @@ assemble_start_function (tree decl, const char *fnname)
/* Standard thing is just output label for the function. */
ASM_OUTPUT_LABEL (asm_out_file, fnname);
#endif /* ASM_DECLARE_FUNCTION_NAME */
-
- /* Add NOTE_INSN_SWITCH_TEXT_SECTIONS notes. Don't do this if the current
- function is a thunk, because we don't have a CFG in that case. */
- if (!current_function_is_thunk)
- insert_section_boundary_note ();
}
/* Output assembler code associated with defining the size of the
@@ -1383,6 +1378,9 @@ void
assemble_end_function (tree decl, const char *fnname)
{
#ifdef ASM_DECLARE_FUNCTION_SIZE
+ /* We could have switched section in the middle of the function. */
+ if (flag_reorder_blocks_and_partition)
+ function_section (decl);
ASM_DECLARE_FUNCTION_SIZE (asm_out_file, fnname, decl);
#endif
if (! CONSTANT_POOL_BEFORE_FUNCTION)