aboutsummaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorSriraman Tallam <tmsriram@google.com>2013-11-19 22:12:21 +0000
committerSriraman Tallam <tmsriram@gcc.gnu.org>2013-11-19 22:12:21 +0000
commit2ae367c1e7081c2ec9a47267551d197002e79b23 (patch)
treec5c102bd1f2db820f1d57fb913fc67020e0bbb34 /gcc/final.c
parent50875e80e1ed5ba34bf4342571530b7ad516af1b (diff)
downloadgcc-2ae367c1e7081c2ec9a47267551d197002e79b23.zip
gcc-2ae367c1e7081c2ec9a47267551d197002e79b23.tar.gz
gcc-2ae367c1e7081c2ec9a47267551d197002e79b23.tar.bz2
Emit a label for the split cold function part.
Emit a label for the split cold function part. Label name is formed by suffixing the original function name with "cold". Patch tested for bootstrap on all default languages on x86_64 and regression testsuite checked for parity with RUNTESTFLAGS -m32 and m64. From-SVN: r205057
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/final.c b/gcc/final.c
index f2adde9..2ab6a4d 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -2168,6 +2168,15 @@ final_scan_insn (rtx insn, FILE *file, int optimize_p ATTRIBUTE_UNUSED,
targetm.asm_out.function_switched_text_sections (asm_out_file,
current_function_decl,
in_cold_section_p);
+ /* Emit a label for the split cold section. Form label name by
+ suffixing "cold" to the original function's name. */
+ if (in_cold_section_p)
+ {
+ tree cold_function_name
+ = clone_function_name (current_function_decl, "cold");
+ ASM_OUTPUT_LABEL (asm_out_file,
+ IDENTIFIER_POINTER (cold_function_name));
+ }
break;
case NOTE_INSN_BASIC_BLOCK: