aboutsummaryrefslogtreecommitdiff
path: root/gcc/combine.c
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2005-09-26 17:42:16 +0000
committerFariborz Jahanian <fjahanian@gcc.gnu.org>2005-09-26 17:42:16 +0000
commitb166bfd2241797cb20f6c830b7350ab42b850ad6 (patch)
tree26e7739449595d7a46c04b8fcbcd2f9bc8455ef0 /gcc/combine.c
parentbd0ffa878a0c0e5dc727795f5580d9a2e01b5671 (diff)
downloadgcc-b166bfd2241797cb20f6c830b7350ab42b850ad6.zip
gcc-b166bfd2241797cb20f6c830b7350ab42b850ad6.tar.gz
gcc-b166bfd2241797cb20f6c830b7350ab42b850ad6.tar.bz2
Check for valid use of subreg.
Oked by Richard Henderson. From-SVN: r104649
Diffstat (limited to 'gcc/combine.c')
-rw-r--r--gcc/combine.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index 57f490d..4ab0f18 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -6314,7 +6314,7 @@ make_extraction (enum machine_mode mode, rtx inner, HOST_WIDE_INT pos,
/* Avoid creating invalid subregs, for example when
simplifying (x>>32)&255. */
- if (final_word >= GET_MODE_SIZE (inner_mode))
+ if (!validate_subreg (tmode, inner_mode, inner, final_word))
return NULL_RTX;
new = gen_rtx_SUBREG (tmode, inner, final_word);