aboutsummaryrefslogtreecommitdiff
path: root/gcc/combine.c
diff options
context:
space:
mode:
authorJosef Zlomek <zlomekj@suse.cz>2003-10-02 17:17:34 +0200
committerJosef Zlomek <zlomek@gcc.gnu.org>2003-10-02 15:17:34 +0000
commitb9dc9cf1810b4581d2fda1021a8f439e9d6517e6 (patch)
tree5f178f1b4d34b35aa5c3e547743409f1919dea8f /gcc/combine.c
parent484fe3bff87b2285ae4ae70047fa9cb76d64ee7e (diff)
downloadgcc-b9dc9cf1810b4581d2fda1021a8f439e9d6517e6.zip
gcc-b9dc9cf1810b4581d2fda1021a8f439e9d6517e6.tar.gz
gcc-b9dc9cf1810b4581d2fda1021a8f439e9d6517e6.tar.bz2
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
Diffstat (limited to 'gcc/combine.c')
-rw-r--r--gcc/combine.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index 3a3d922..5ad0a0f 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)))
{