aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2001-10-20 15:16:55 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2001-10-20 13:16:55 +0000
commit38ca929b576c3122771f5832c49fd6022e6303ea (patch)
treeacda34ddd334660efde133987e72aaf2384a747f /gcc
parent56f1f5ae6a54302d589a602fc808909968c10569 (diff)
downloadgcc-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')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/i386/i386.c8
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7e6a049..04f1414 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Sat Oct 20 15:16:10 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (split_di): Handle splitting of DFmode.
+
Sat Oct 20 07:27:14 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* emit-rtl.c (set_mem_attributes): Alignment is in bits.
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);
}
}
}