* config/i386/i386.c (x86_emit_floatuns): Also handle SImode operand.

From-SVN: r71526
This commit is contained in:
Zdenek Dvorak 2003-09-18 17:37:51 +02:00 committed by Zdenek Dvorak
parent 96123432ff
commit 1d6ba901bb
2 changed files with 12 additions and 3 deletions

View File

@ -1,3 +1,7 @@
2003-09-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
* config/i386/i386.c (x86_emit_floatuns): Also handle SImode operand.
2003-09-18 Roger Sayle <roger@eyesopen.com>
* tree.def (FFS_EXPR, CLZ_EXPR, CTZ_EXPR, POPCOUNT_EXPR,

View File

@ -15621,17 +15621,22 @@ x86_extended_reg_mentioned_p (rtx insn)
return for_each_rtx (&PATTERN (insn), extended_reg_mentioned_1, NULL);
}
/* Generate an unsigned DImode to FP conversion. This is the same code
/* Generate an unsigned DImode/SImode to FP conversion. This is the same code
optabs would emit if we didn't have TFmode patterns. */
void
x86_emit_floatuns (rtx operands[2])
{
rtx neglab, donelab, i0, i1, f0, in, out;
enum machine_mode mode;
enum machine_mode mode, inmode;
inmode = GET_MODE (operands[1]);
if (inmode != SImode
&& inmode != DImode)
abort ();
out = operands[0];
in = force_reg (DImode, operands[1]);
in = force_reg (inmode, operands[1]);
mode = GET_MODE (out);
neglab = gen_label_rtx ();
donelab = gen_label_rtx ();