diff options
author | Richard Stallman <rms@gnu.org> | 1993-03-02 07:18:06 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1993-03-02 07:18:06 +0000 |
commit | aa0cd7a228206eeee74db0f0744621ed1504065a (patch) | |
tree | 2ad2a998ff5aa1de7afc62d001e4e8d055f988d5 /gcc/optabs.c | |
parent | dae1d3040823d0ffb8f0d9bb8678abfe5051354d (diff) | |
download | gcc-aa0cd7a228206eeee74db0f0744621ed1504065a.tar.gz |
(gen_move_insn): Big `if' applies only for MODE_CC class.
From-SVN: r3592
Diffstat (limited to 'gcc/optabs.c')
-rw-r--r-- | gcc/optabs.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/optabs.c b/gcc/optabs.c index 6387f19c5ad..cc192be2e39 100644 --- a/gcc/optabs.c +++ b/gcc/optabs.c @@ -2577,15 +2577,15 @@ gen_move_insn (x, y) find a mode to do it in. If we have a movcc, use it. Otherwise, find the MODE_INT mode of the same width. */ - if (insn_code == CODE_FOR_nothing) + if (GET_MODE_CLASS (mode) == MODE_CC && insn_code == CODE_FOR_nothing) { enum machine_mode tmode = VOIDmode; rtx x1 = x, y1 = y; - if (GET_MODE_CLASS (mode) == MODE_CC && mode != CCmode + if (mode != CCmode && mov_optab->handlers[(int) CCmode].insn_code != CODE_FOR_nothing) tmode = CCmode; - else if (GET_MODE_CLASS (mode) == MODE_CC) + else for (tmode = QImode; tmode != VOIDmode; tmode = GET_MODE_WIDER_MODE (tmode)) if (GET_MODE_SIZE (tmode) == GET_MODE_SIZE (mode)) |