This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Removing space waste for g++ static inlined objects
- To: gcc-patches at gcc dot gnu dot org
- Subject: Re: Removing space waste for g++ static inlined objects
- From: "Ronald F. Guilmette" <rfg at monkeys dot com>
- Date: Thu, 08 Feb 2001 12:36:48 -0800
Hello? Is this thing on?
Does like nobody give a damn about the seriously space-wasteful bug
that these patches fix?
I asked for comments, and it's like I was never even here.
diff -rc2 2.95.2/gcc/cp/decl.c 2.95.2/gcc/cp/decl.c
*** 2.95.2/gcc/cp/decl.c Sun Aug 8 17:28:33 1999
--- 2.95.2/gcc/cp/decl.c Tue Feb 6 11:16:55 2001
***************
*** 8104,8107 ****
--- 8104,8108 ----
&& TREE_PUBLIC (current_function_decl))
{
+ #if 0
/* Rather than try to get this right with inlining, we suppress
inlining of such functions. */
***************
*** 8138,8141 ****
--- 8139,8145 ----
}
}
+ #else
+ comdat_linkage (decl);
+ #endif
}
***************
*** 9069,9072 ****
--- 9073,9082 ----
if (declarator && context && current_lang_name != lang_name_c)
DECL_ASSEMBLER_NAME (decl) = build_static_name (context, declarator);
+ else if (declarator
+ && current_function_decl
+ && ! RIDBIT_SETP (RID_EXTERN, specbits)
+ && current_lang_name != lang_name_c)
+ DECL_ASSEMBLER_NAME (decl) =
+ build_static_name (current_function_decl, declarator);
}
diff -rc2 2.95.2/gcc/varasm.c 2.95.2/gcc/varasm.c
*** 2.95.2/gcc/varasm.c Wed Jun 9 05:13:49 1999
--- 2.95.2/gcc/varasm.c Wed Jan 31 15:37:41 2001
***************
*** 4471,4475 ****
--- 4471,4477 ----
abort ();
+ #if 0
TREE_PUBLIC (decl) = 1;
+ #endif
if (TREE_CODE (decl) == VAR_DECL