diff options
author | Bernd Schmidt <bernds@redhat.co.uk> | 2000-09-18 17:21:25 +0000 |
---|---|---|
committer | Bernd Schmidt <crux@gcc.gnu.org> | 2000-09-18 17:21:25 +0000 |
commit | 42d5d0f171ae6a0f933ed7d6cf3adeb653db19c5 (patch) | |
tree | 0f4b169405aa63acfc79c19f69df33c5eada6523 /gcc/config/sh | |
parent | 2e361e5924716e80f87daf85812a9d75ee6b8fa0 (diff) | |
download | gcc-42d5d0f171ae6a0f933ed7d6cf3adeb653db19c5.zip gcc-42d5d0f171ae6a0f933ed7d6cf3adeb653db19c5.tar.gz gcc-42d5d0f171ae6a0f933ed7d6cf3adeb653db19c5.tar.bz2 |
Fix for sh minipool generation
From-SVN: r36500
Diffstat (limited to 'gcc/config/sh')
-rw-r--r-- | gcc/config/sh/sh.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index bd2a382..afc0dca 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -2201,6 +2201,14 @@ find_barrier (num_mova, mova, from) if (num_mova) si_limit -= GET_MODE_SIZE (mode); } + + /* See the code in machine_dependent_reorg, which has a similar if + statement that generates new mova insn in many cases. */ + if (GET_CODE (dst) == REG + && ((REGNO (dst) >= FIRST_FP_REG + && REGNO (dst) <= LAST_XD_REG) + || REGNO (dst) == FPUL_REG)) + inc += 2; } if (mova_p (from)) |