aboutsummaryrefslogtreecommitdiff
path: root/gcc/dwarf2out.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard@codesourcery.com>2005-12-15 12:40:33 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2005-12-15 12:40:33 +0000
commitc543ca49c257b3e7fcb123014395cfc7d298d28c (patch)
treef594f73f80f290828e87bb828d14e3f19d1ad80e /gcc/dwarf2out.c
parent8d46ce6095853cebc4ea306fe0d00a4aa9758610 (diff)
downloadgcc-c543ca49c257b3e7fcb123014395cfc7d298d28c.zip
gcc-c543ca49c257b3e7fcb123014395cfc7d298d28c.tar.gz
gcc-c543ca49c257b3e7fcb123014395cfc7d298d28c.tar.bz2
final.c (final_scan_insn): Flip in_cold_section_p when changing between the hot and cold sections.
* final.c (final_scan_insn): Flip in_cold_section_p when changing between the hot and cold sections. Use current_function_section to get the new section. * dwarf2out.c (output_line_info): Use in_cold_section_p to determine whether we are assembling hot or cold code. (secname_for_decl, dwarf2out_var_location): Likewise. (dwarf2out_init, dwarf2out_finish): Use switch_to_section. * varasm.c (last_text_section): Delete. (in_cold_section_p): New variable. (hot_function_section): New function. (current_function_section): Pass in_cold_section_p as the reloc argument to select_section. Use it to decide between unlikely_function_section and hot_function_section. (assemble_start_function): Use switch_to_section. Set in_cold_section_p instead of last_text_section. (assemble_end_function): Use switch_to_section. (switch_to_section): Don't set last_text_section. * config/darwin/darwin.c (machopic_select_section): Trust the reloc argument to make the right choice between hot and cold sections. From-SVN: r108572
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r--gcc/dwarf2out.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 0f52184c..f5860f2 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -7837,7 +7837,7 @@ output_line_info (void)
current_file = 1;
current_line = 1;
- if (cfun && unlikely_text_section_p (last_text_section))
+ if (cfun && in_cold_section_p)
strcpy (prev_line_label, cfun->cold_section_label);
else
strcpy (prev_line_label, text_section_label);
@@ -10182,7 +10182,7 @@ secname_for_decl (tree decl)
tree sectree = DECL_SECTION_NAME (current_function_decl);
secname = TREE_STRING_POINTER (sectree);
}
- else if (cfun && unlikely_text_section_p (last_text_section))
+ else if (cfun && in_cold_section_p)
secname = cfun->cold_section_label;
else
secname = text_section_label;
@@ -13552,7 +13552,7 @@ dwarf2out_var_location (rtx loc_note)
newloc->var_loc_note = loc_note;
newloc->next = NULL;
- if (cfun && unlikely_text_section_p (last_text_section))
+ if (cfun && in_cold_section_p)
newloc->section_label = cfun->cold_section_label;
else
newloc->section_label = text_section_label;
@@ -13841,7 +13841,7 @@ dwarf2out_init (const char *filename ATTRIBUTE_UNUSED)
ASM_OUTPUT_LABEL (asm_out_file, text_section_label);
if (flag_reorder_blocks_and_partition)
{
- unlikely_text_section ();
+ switch_to_section (unlikely_text_section ());
ASM_OUTPUT_LABEL (asm_out_file, cold_text_section_label);
}
}
@@ -14177,7 +14177,7 @@ dwarf2out_finish (const char *filename)
targetm.asm_out.internal_label (asm_out_file, TEXT_END_LABEL, 0);
if (flag_reorder_blocks_and_partition)
{
- unlikely_text_section ();
+ switch_to_section (unlikely_text_section ());
targetm.asm_out.internal_label (asm_out_file, COLD_END_LABEL, 0);
}