From 38ca929b576c3122771f5832c49fd6022e6303ea Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Sat, 20 Oct 2001 15:16:55 +0200 Subject: [PATCH] * i386.c (split_di): Handle splitting of DFmode. From-SVN: r46380 --- gcc/ChangeLog | 4 ++++ gcc/config/i386/i386.c | 8 ++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7e6a049abf7..04f1414538d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +Sat Oct 20 15:16:10 CEST 2001 Jan Hubicka + + * i386.c (split_di): Handle splitting of DFmode. + Sat Oct 20 07:27:14 2001 Richard Kenner * 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 b9f1470d3e1..c08d1302a45 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); } } }