sparc.c (output_return): Fix thinko in the output of an EH return when delayed branches are disabled.

* config/sparc/sparc.c (output_return): Fix thinko in the output of an
	EH return when delayed branches are disabled.

From-SVN: r174670
This commit is contained in:
Eric Botcazou 2011-06-05 23:19:58 +00:00 committed by Eric Botcazou
parent 4d3d7f155a
commit 679e70dfea
2 changed files with 17 additions and 10 deletions

View file

@ -1,3 +1,8 @@
2011-06-05 Eric Botcazou <ebotcazou@adacore.com>
* config/sparc/sparc.c (output_return): Fix thinko in the output of an
EH return when delayed branches are disabled.
2011-06-05 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (*movdf_internal_rex64) <case 8,9,10>:

View file

@ -4752,18 +4752,20 @@ output_return (rtx insn)
machinery occupies the delay slot. */
gcc_assert (! final_sequence);
if (! flag_delayed_branch)
fputs ("\tadd\t%fp, %g1, %fp\n", asm_out_file);
if (flag_delayed_branch)
{
if (TARGET_V9)
fputs ("\treturn\t%i7+8\n", asm_out_file);
else
fputs ("\trestore\n\tjmp\t%o7+8\n", asm_out_file);
if (TARGET_V9)
fputs ("\treturn\t%i7+8\n", asm_out_file);
fputs ("\t add\t%sp, %g1, %sp\n", asm_out_file);
}
else
fputs ("\trestore\n\tjmp\t%o7+8\n", asm_out_file);
if (flag_delayed_branch)
fputs ("\t add\t%sp, %g1, %sp\n", asm_out_file);
else
fputs ("\t nop\n", asm_out_file);
{
fputs ("\trestore\n\tadd\t%sp, %g1, %sp\n", asm_out_file);
fputs ("\tjmp\t%o7+8\n\t nop\n", asm_out_file);
}
}
else if (final_sequence)
{