varasm.c (function_section): Delete flag_function_sections support.

* varasm.c (function_section): Delete flag_function_sections support.
	(assemble_start_function): Put it here.  Use UNIQUE_SECTION if defined.

From-SVN: r11975
This commit is contained in:
Doug Evans 1996-05-16 22:28:47 +00:00
parent 4ac1474483
commit c30ac67641

View File

@ -352,29 +352,6 @@ void
function_section (decl) function_section (decl)
tree decl; tree decl;
{ {
#ifdef ASM_OUTPUT_SECTION_NAME
/* If we are placing functions into their own sections, and this
function doesn't already have a section specified, set it now. */
if (flag_function_sections
&& decl != NULL_TREE
&& DECL_SECTION_NAME (decl) == NULL_TREE)
{
int len;
char *string;
len = IDENTIFIER_LENGTH (DECL_ASSEMBLER_NAME (decl)) + 1;
string = alloca (len);
strcpy (string, IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)));
/* Strip off any encoding in fnname. */
STRIP_NAME_ENCODING (string, string);
/* Set DECL_SECTION_NAME. */
DECL_SECTION_NAME (decl) = build_string (len, string);
}
#endif
if (decl != NULL_TREE if (decl != NULL_TREE
&& DECL_SECTION_NAME (decl) != NULL_TREE) && DECL_SECTION_NAME (decl) != NULL_TREE)
named_section (decl, (char *) 0); named_section (decl, (char *) 0);
@ -916,6 +893,23 @@ assemble_start_function (decl, fnname)
output_constant_pool (fnname, decl); output_constant_pool (fnname, decl);
#ifdef ASM_OUTPUT_SECTION_NAME
/* If the function is to be put in its own section and it's not in a section
already, indicate so. */
if (flag_function_sections
&& DECL_SECTION_NAME (decl) == NULL_TREE)
{
#ifdef UNIQUE_SECTION
DECL_SECTION_NAME(decl) = UNIQUE_SECTION (decl);
#else
char *name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl));
/* Strip off any encoding in name. */
STRIP_NAME_ENCODING (name, name);
DECL_SECTION_NAME (decl) = build_string (strlen (name), name);
#endif
}
#endif
function_section (decl); function_section (decl);
/* Tell assembler to move to target machine's alignment for functions. */ /* Tell assembler to move to target machine's alignment for functions. */