Commit 97b7f138 by Nathan Sidwell Committed by Nathan Sidwell

cgraph.h (decl_in_symtab_p): Revert check DECL_IN_CONSTANT_POOL.

	gcc/
	* cgraph.h (decl_in_symtab_p): Revert check DECL_IN_CONSTANT_POOL.

	gcc/testsuite/
	* gcc.dg/alias-15.c: Revert.

From-SVN: r231931
parent bd602b7f
2015-12-23 Nathan Sidwell <nathan@acm.org> 2015-12-23 Nathan Sidwell <nathan@acm.org>
* cgraph.h (decl_in_symtab_p): Revert check DECL_IN_CONSTANT_POOL.
2015-12-23 Nathan Sidwell <nathan@acm.org>
* config/nvptx/nvptx-protos.h * config/nvptx/nvptx-protos.h
(nvptx_maybe_convert_symbolic_operand): Delete prototype. (nvptx_maybe_convert_symbolic_operand): Delete prototype.
* config/nvptx/nvptx.c (nvptx_maybe_convert_symbolic_operand): Delete. * config/nvptx/nvptx.c (nvptx_maybe_convert_symbolic_operand): Delete.
...@@ -2294,19 +2294,13 @@ symtab_node::real_symbol_p (void) ...@@ -2294,19 +2294,13 @@ symtab_node::real_symbol_p (void)
} }
/* Return true if DECL should have entry in symbol table if used. /* Return true if DECL should have entry in symbol table if used.
Those are functions and static & external non-constpool variables. Those are functions and static & external veriables*/
We do not expect constant pool variables in the varpool, as they're
not related to other variables, and simply lazily inserting them
using the regular interface results in varpool thinking they are
externally provided -- which results in erroneous assembly emission
as an undefined decl. */
static inline bool static inline bool
decl_in_symtab_p (const_tree decl) decl_in_symtab_p (const_tree decl)
{ {
return (TREE_CODE (decl) == FUNCTION_DECL return (TREE_CODE (decl) == FUNCTION_DECL
|| (TREE_CODE (decl) == VAR_DECL || (TREE_CODE (decl) == VAR_DECL
&& !DECL_IN_CONSTANT_POOL (decl)
&& (TREE_STATIC (decl) || DECL_EXTERNAL (decl)))); && (TREE_STATIC (decl) || DECL_EXTERNAL (decl))));
} }
......
2015-12-23 Nathan Sidwell <nathan@acm.org>
* gcc.dg/alias-15.c: Revert.
2015-12-23 James Greenhalgh <james.greenhalgh@arm.com> 2015-12-23 James Greenhalgh <james.greenhalgh@arm.com>
PR testsuite/68232 PR testsuite/68232
......
/* { dg-do compile } */
/* { dg-additional-options "-O2 -fdump-ipa-cgraph" } */
/* RTL-level CSE shouldn't introduce LCO (for the string) into varpool */
char *p;
void foo ()
{
p = "abc\n";
while (*p != '\n')
p++;
}
/* { dg-final { scan-ipa-dump-not "LC0" "cgraph" } } */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment