Commit c841050e by Richard Stallman

(emit_push_insn): Handle failure of gen_movstr...

From-SVN: r3721
parent dac29d65
...@@ -1911,10 +1911,14 @@ emit_push_insn (x, mode, type, size, align, partial, reg, extra, ...@@ -1911,10 +1911,14 @@ emit_push_insn (x, mode, type, size, align, partial, reg, extra,
&& ((unsigned) INTVAL (size) && ((unsigned) INTVAL (size)
< (1 << (GET_MODE_BITSIZE (QImode) - 1)))) < (1 << (GET_MODE_BITSIZE (QImode) - 1))))
{ {
emit_insn (gen_movstrqi (gen_rtx (MEM, BLKmode, temp), rtx pat = gen_movstrqi (gen_rtx (MEM, BLKmode, temp),
xinner, size, GEN_INT (align))); xinner, size, GEN_INT (align));
if (pat != 0)
{
emit_insn (pat);
goto ret; goto ret;
} }
}
#endif #endif
#ifdef HAVE_movstrhi #ifdef HAVE_movstrhi
if (HAVE_movstrhi if (HAVE_movstrhi
...@@ -1922,26 +1926,38 @@ emit_push_insn (x, mode, type, size, align, partial, reg, extra, ...@@ -1922,26 +1926,38 @@ emit_push_insn (x, mode, type, size, align, partial, reg, extra,
&& ((unsigned) INTVAL (size) && ((unsigned) INTVAL (size)
< (1 << (GET_MODE_BITSIZE (HImode) - 1)))) < (1 << (GET_MODE_BITSIZE (HImode) - 1))))
{ {
emit_insn (gen_movstrhi (gen_rtx (MEM, BLKmode, temp), rtx pat = gen_movstrhi (gen_rtx (MEM, BLKmode, temp),
xinner, size, GEN_INT (align))); xinner, size, GEN_INT (align));
if (pat != 0)
{
emit_insn (pat);
goto ret; goto ret;
} }
}
#endif #endif
#ifdef HAVE_movstrsi #ifdef HAVE_movstrsi
if (HAVE_movstrsi) if (HAVE_movstrsi)
{ {
emit_insn (gen_movstrsi (gen_rtx (MEM, BLKmode, temp), rtx pat = gen_movstrsi (gen_rtx (MEM, BLKmode, temp),
xinner, size, GEN_INT (align))); xinner, size, GEN_INT (align));
if (pat != 0)
{
emit_insn (pat);
goto ret; goto ret;
} }
}
#endif #endif
#ifdef HAVE_movstrdi #ifdef HAVE_movstrdi
if (HAVE_movstrdi) if (HAVE_movstrdi)
{ {
emit_insn (gen_movstrdi (gen_rtx (MEM, BLKmode, temp), rtx pat = gen_movstrdi (gen_rtx (MEM, BLKmode, temp),
xinner, size, GEN_INT (align))); xinner, size, GEN_INT (align));
if (pat != 0)
{
emit_insn (pat);
goto ret; goto ret;
} }
}
#endif #endif
#ifndef ACCUMULATE_OUTGOING_ARGS #ifndef ACCUMULATE_OUTGOING_ARGS
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment