rs6000.c (rs6000_emit_minmax): Treat unsigned max/mins as unsigned GE compares.
2002-06-11 Aldy Hernandez <aldyh@redhat.com> * config/rs6000/rs6000.c (rs6000_emit_minmax): Treat unsigned max/mins as unsigned GE compares. From-SVN: r54539
This commit is contained in:
parent
169274cd2e
commit
5dc8d53616
2 changed files with 14 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
|||
2002-06-11 Aldy Hernandez <aldyh@redhat.com>
|
||||
|
||||
* config/rs6000/rs6000.c (rs6000_emit_minmax): Treat unsigned
|
||||
max/mins as unsigned GE compares.
|
||||
|
||||
2002-06-11 Jason Thorpe <thorpej@wasabisystems.com>
|
||||
|
||||
* config.gcc (vax-*-bsd*): Add vax/bsd.h to ${tm_file}.
|
||||
|
|
|
@ -7534,12 +7534,19 @@ rs6000_emit_minmax (dest, code, op0, op1)
|
|||
rtx op1;
|
||||
{
|
||||
enum machine_mode mode = GET_MODE (op0);
|
||||
enum rtx_code c;
|
||||
rtx target;
|
||||
|
||||
if (code == SMAX || code == SMIN)
|
||||
c = GE;
|
||||
else
|
||||
c = GEU;
|
||||
|
||||
if (code == SMAX || code == UMAX)
|
||||
target = emit_conditional_move (dest, GE, op0, op1, mode,
|
||||
target = emit_conditional_move (dest, c, op0, op1, mode,
|
||||
op0, op1, mode, 0);
|
||||
else
|
||||
target = emit_conditional_move (dest, GE, op0, op1, mode,
|
||||
target = emit_conditional_move (dest, c, op0, op1, mode,
|
||||
op1, op0, mode, 0);
|
||||
if (target == NULL_RTX)
|
||||
abort ();
|
||||
|
|
Loading…
Add table
Reference in a new issue