diff options
author | Jan Hubicka <jh@suse.cz> | 2001-10-20 15:16:55 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2001-10-20 13:16:55 +0000 |
commit | 38ca929b576c3122771f5832c49fd6022e6303ea (patch) | |
tree | acda34ddd334660efde133987e72aaf2384a747f /gcc/config | |
parent | 56f1f5ae6a54302d589a602fc808909968c10569 (diff) | |
download | gcc-38ca929b576c3122771f5832c49fd6022e6303ea.zip gcc-38ca929b576c3122771f5832c49fd6022e6303ea.tar.gz gcc-38ca929b576c3122771f5832c49fd6022e6303ea.tar.bz2 |
* i386.c (split_di): Handle splitting of DFmode.
From-SVN: r46380
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/i386/i386.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index b9f1470..c08d1302 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -5937,8 +5937,12 @@ split_di (operands, num, lo_half, hi_half) } else { - lo_half[num] = simplify_gen_subreg (SImode, op, DImode, 0); - hi_half[num] = simplify_gen_subreg (SImode, op, DImode, 4); + lo_half[num] = simplify_gen_subreg (SImode, op, + GET_MODE (op) == VOIDmode + ? DImode : GET_MODE (op), 0); + hi_half[num] = simplify_gen_subreg (SImode, op, + GET_MODE (op) == VOIDmode + ? DImode : GET_MODE (op), 4); } } } |