From cc8c96fd6d398dd6013198715b0880af2d8769d8 Mon Sep 17 00:00:00 2001 From: Roger Sayle Date: Wed, 16 Jul 2003 19:36:38 +0000 Subject: combine.c (subst): Also handle (subreg (const_double ...)) case if created by a substitution... * combine.c (subst): Also handle (subreg (const_double ...)) case if created by a substitution, by using the original inner mode. From-SVN: r69476 --- gcc/combine.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'gcc/combine.c') diff --git a/gcc/combine.c b/gcc/combine.c index 3c3172b..5a75201 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -3476,7 +3476,9 @@ subst (rtx x, rtx from, rtx to, int in_dest, int unique_copy) if (GET_CODE (new) == CLOBBER && XEXP (new, 0) == const0_rtx) return new; - if (GET_CODE (new) == CONST_INT && GET_CODE (x) == SUBREG) + if (GET_CODE (x) == SUBREG + && (GET_CODE (new) == CONST_INT + || GET_CODE (new) == CONST_DOUBLE)) { enum machine_mode mode = GET_MODE (x); -- cgit v1.1