Commit 4eaf52aa by Jakub Jelinek Committed by Jakub Jelinek

re PR ipa/64776 (FAIL: gcc.dg/ipa/pr64307.c (internal compiler error) on x86_64-apple-darwin14)

	PR ipa/64776
	* cgraphunit.c (cgraph_node::expand_thunk): If not this_adjusting,
	handle the first argument in the same loop as all the other arguments.

From-SVN: r220156
parent 6d71672d
2015-01-27 Jakub Jelinek <jakub@redhat.com> 2015-01-27 Jakub Jelinek <jakub@redhat.com>
PR ipa/64776
* cgraphunit.c (cgraph_node::expand_thunk): If not this_adjusting,
handle the first argument in the same loop as all the other arguments.
PR rtl-optimization/61058 PR rtl-optimization/61058
* jump.c (cleanup_barriers): Update basic block boundaries * jump.c (cleanup_barriers): Update basic block boundaries
if BLOCK_FOR_INSN is non-NULL on PREV. if BLOCK_FOR_INSN is non-NULL on PREV.
......
...@@ -1610,14 +1610,18 @@ cgraph_node::expand_thunk (bool output_asm_thunks, bool force_gimple_thunk) ...@@ -1610,14 +1610,18 @@ cgraph_node::expand_thunk (bool output_asm_thunks, bool force_gimple_thunk)
for (arg = a; arg; arg = DECL_CHAIN (arg)) for (arg = a; arg; arg = DECL_CHAIN (arg))
nargs++; nargs++;
auto_vec<tree> vargs (nargs); auto_vec<tree> vargs (nargs);
i = 0;
arg = a;
if (this_adjusting) if (this_adjusting)
vargs.quick_push (thunk_adjust (&bsi, a, 1, fixed_offset, {
virtual_offset)); vargs.quick_push (thunk_adjust (&bsi, a, 1, fixed_offset,
else if (nargs) virtual_offset));
vargs.quick_push (a); arg = DECL_CHAIN (a);
i = 1;
}
if (nargs) if (nargs)
for (i = 1, arg = DECL_CHAIN (a); i < nargs; i++, arg = DECL_CHAIN (arg)) for (; i < nargs; i++, arg = DECL_CHAIN (arg))
{ {
tree tmp = arg; tree tmp = arg;
if (!is_gimple_val (arg)) if (!is_gimple_val (arg))
......
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