This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/19689] [4.0 Regression] ICE in store_bit_field, at expmed.c
- From: "steven at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 29 Jan 2005 12:54:45 -0000
- Subject: [Bug middle-end/19689] [4.0 Regression] ICE in store_bit_field, at expmed.c
- References: <20050129083810.19689.aj@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From steven at gcc dot gnu dot org 2005-01-29 12:54 -------
Something like this??
Index: expr.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/expr.c,v
retrieving revision 1.776
diff -u -3 -p -r1.776 expr.c
--- expr.c 27 Jan 2005 00:07:41 -0000 1.776
+++ expr.c 29 Jan 2005 12:54:25 -0000
@@ -5224,6 +5224,8 @@ store_field (rtx target, HOST_WIDE_INT b
C front end. */
if (TREE_CODE (exp) == NOP_EXPR
&& INTEGRAL_TYPE_P (TREE_TYPE (exp))
+ && (TYPE_MODE (TREE_TYPE (exp))
+ == TYPE_MODE (TREE_TYPE (TREE_OPERAND (exp, 0))))
&& (TYPE_PRECISION (TREE_TYPE (exp))
< GET_MODE_BITSIZE (TYPE_MODE (TREE_TYPE (exp))))
&& bitsize == TYPE_PRECISION (TREE_TYPE (exp)))
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19689