i386.c (ix86_expand_setcc): Annotate the floating point comparison sequence with a REG_EQUAL note that...
* config/i386/i386.c (ix86_expand_setcc): Annotate the floating point comparison sequence with a REG_EQUAL note that describes the comparison's semantics. From-SVN: r72173
This commit is contained in:
parent
c37b68d42a
commit
3a627503d6
@ -1,3 +1,9 @@
|
||||
2003-10-06 Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
* config/i386/i386.c (ix86_expand_setcc): Annotate the floating
|
||||
point comparison sequence with a REG_EQUAL note that describes
|
||||
the comparison's semantics.
|
||||
|
||||
2003-10-06 Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
* expr.c (expand_expr <COND_EXPR>): Handle the void type semantics
|
||||
|
@ -9334,7 +9334,7 @@ ix86_split_fp_branch (enum rtx_code code, rtx op1, rtx op2,
|
||||
int
|
||||
ix86_expand_setcc (enum rtx_code code, rtx dest)
|
||||
{
|
||||
rtx ret, tmp, tmpreg;
|
||||
rtx ret, tmp, tmpreg, equiv;
|
||||
rtx second_test, bypass_test;
|
||||
|
||||
if (GET_MODE (ix86_compare_op0) == DImode
|
||||
@ -9373,6 +9373,12 @@ ix86_expand_setcc (enum rtx_code code, rtx dest)
|
||||
emit_insn (gen_iorqi3 (tmp, tmpreg, tmp2));
|
||||
}
|
||||
|
||||
/* Attach a REG_EQUAL note describing the comparison result. */
|
||||
equiv = simplify_gen_relational (code, QImode,
|
||||
GET_MODE (ix86_compare_op0),
|
||||
ix86_compare_op0, ix86_compare_op1);
|
||||
set_unique_reg_note (get_last_insn (), REG_EQUAL, equiv);
|
||||
|
||||
return 1; /* DONE */
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user