From b9dc9cf1810b4581d2fda1021a8f439e9d6517e6 Mon Sep 17 00:00:00 2001
From: Josef Zlomek <zlomekj@suse.cz>
Date: Thu, 2 Oct 2003 17:17:34 +0200
Subject: [PATCH] combine.c (make_field_assignment): Check whether rtx's code
 is CONST_INT before using INTVAL.

	PR/12292
	* combine.c (make_field_assignment): Check whether rtx's code
	is CONST_INT before using INTVAL.

From-SVN: r72033
---
 gcc/ChangeLog | 6 ++++++
 gcc/combine.c | 1 +
 2 files changed, 7 insertions(+)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3cbf6713e4f7..de90646aef42 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2003-10-02  Josef Zlomek  <zlomekj@suse.cz>
+
+	PR/12292
+	* combine.c (make_field_assignment): Check whether rtx's code
+	is CONST_INT before using INTVAL.
+
 2003-10-02  Josef Zlomek  <zlomekj@suse.cz>
 
 	* cgraph.c (cgraph_node): Use INSERT instead of 1 in
diff --git a/gcc/combine.c b/gcc/combine.c
index 3a3d9223d9fd..5ad0a0fae6db 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -7666,6 +7666,7 @@ make_field_assignment (rtx x)
 	   && (GET_MODE_SIZE (GET_MODE (XEXP (src, 0)))
 	       < GET_MODE_SIZE (GET_MODE (SUBREG_REG (XEXP (src, 0)))))
 	   && GET_CODE (SUBREG_REG (XEXP (src, 0))) == ROTATE
+	   && GET_CODE (XEXP (SUBREG_REG (XEXP (src, 0)), 0)) == CONST_INT
 	   && INTVAL (XEXP (SUBREG_REG (XEXP (src, 0)), 0)) == -2
 	   && rtx_equal_for_field_assignment_p (dest, XEXP (src, 1)))
     {
-- 
GitLab