re PR target/7133 (PPC: unrecognizable insn)

2002-10-21  Dale Johannesen  <dalej@apple.com>

	PR target/7133
	* config/rs6000/rs6000.c (rs6000_reverse_condition): Handle
	unsafe math reversals correctly for RTL generation.
	(output_cbranch):  Replace rs6000_reverse_condition call
	by its former definition.

From-SVN: r58604
This commit is contained in:
Dale Johannesen 2002-10-28 20:39:53 +00:00 committed by Franz Sirl
parent 73e51da4d4
commit f33c40c93d
2 changed files with 17 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2002-10-21 Dale Johannesen <dalej@apple.com>
PR target/7133
* config/rs6000/rs6000.c (rs6000_reverse_condition): Handle
unsafe math reversals correctly for RTL generation.
(output_cbranch): Replace rs6000_reverse_condition call
by its former definition.
Sun Oct 27 10:12:27 CET 2002 Jan Hubicka <jh@suse.cz>
* linux64.h (DEFAULT_PCC_STRUCT_RETURN): Define.

View File

@ -6920,7 +6920,7 @@ rs6000_reverse_condition (mode, code)
{
/* Reversal of FP compares takes care -- an ordered compare
becomes an unordered compare and vice versa. */
if (mode == CCFPmode)
if (mode == CCFPmode && !flag_unsafe_math_optimizations)
return reverse_condition_maybe_unordered (code);
else
return reverse_condition (code);
@ -7073,7 +7073,14 @@ output_cbranch (op, label, reversed, insn)
reverse_condition_maybe_unordered here always but this
makes the resulting assembler clearer. */
if (really_reversed)
code = rs6000_reverse_condition (mode, code);
{
/* Reversal of FP compares takes care -- an ordered compare
becomes an unordered compare and vice versa. */
if (mode == CCFPmode)
code = reverse_condition_maybe_unordered (code);
else
code = reverse_condition (code);
}
switch (code)
{