PR ipa/65588
* symtab.c (symtab_node::get_partitioning_class): Register vars
are duplicated.
* varpool.c (symbol_table::output_variables) Do not assemble unefined
decls for non-symbols.
From-SVN: r221745
+2015-03-27 Jan Hubicka <hubicka@ucw.cz>
+
+ PR ipa/65588
+ * symtab.c (symtab_node::get_partitioning_class): Register vars
+ are duplicated.
+ * varpool.c (symbol_table::output_variables) Do not assemble unefined
+ decls for non-symbols.
+
2015-03-27 H.J. Lu <hongjiu.lu@intel.com>
PR target/65248
objects that can not be duplicated across partitions. */
if (DECL_IN_CONSTANT_POOL (decl))
return SYMBOL_DUPLICATE;
+ if (DECL_HARD_REGISTER (decl))
+ return SYMBOL_DUPLICATE;
gcc_checking_assert (vnode->definition);
}
/* Functions that are cloned may stay in callgraph even if they are unused.
timevar_push (TV_VAROUT);
FOR_EACH_VARIABLE (node)
- if (!node->definition)
+ if (!node->definition
+ && !DECL_HAS_VALUE_EXPR_P (node->decl)
+ && !DECL_HARD_REGISTER (node->decl))
assemble_undefined_decl (node->decl);
FOR_EACH_DEFINED_VARIABLE (node)
{