Commit aa29ed6d by Richard Sandiford Committed by Richard Sandiford

Fix ALL_REGS thinko in initialisation of function_used_regs

My change to the -fipa-ra bookkeeping used ALL_REGS as the supposedly
safe default assumption, but ALL_REGS isn't literally all registers,
just a close approximation.

This caused a bootstrap failure on arm-linux-gnu, where the condition
code register isn't in ALL_REGS and so was being masked out of some
call-clobbered sets.

2019-10-02  Richard Sandiford  <richard.sandiford@arm.com>

gcc/
	* cgraph.c (cgraph_node::rtl_info): Use SET_HARD_REG_SET
	instead of reg_class_contents[ALL_REGS].

From-SVN: r276489
parent b7c41230
2019-10-02 Richard Sandiford <richard.sandiford@arm.com>
* cgraph.c (cgraph_node::rtl_info): Use SET_HARD_REG_SET
instead of reg_class_contents[ALL_REGS].
2019-09-30 Jason Merrill <jason@redhat.com>
Add some hash_map_safe_* functions like vec_safe_*.
......
......@@ -1866,7 +1866,7 @@ cgraph_node::rtl_info (const_tree decl)
if (node->rtl == NULL)
{
node->rtl = ggc_cleared_alloc<cgraph_rtl_info> ();
node->rtl->function_used_regs = reg_class_contents[ALL_REGS];
SET_HARD_REG_SET (node->rtl->function_used_regs);
}
return node->rtl;
}
......
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