* combine.c (simplify_comparison): If BITS_BIG_ENDIAN, always assume
that zero_extracts of const_ints are doing word-sized extractions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193026
138bc75d-0d04-0410-961f-
82ee72b054a4
+2012-10-31 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * combine.c (simplify_comparison): If BITS_BIG_ENDIAN, always assume
+ that zero_extracts of const_ints are doing word-sized extractions.
+
2012-10-31 Richard Sandiford <rdsandiford@googlemail.com>
* combine.c (make_extraction): Remove dead wanted_inner_mode-
&& (i = exact_log2 (UINTVAL (XEXP (op0, 0)))) >= 0)
{
if (BITS_BIG_ENDIAN)
- {
- enum machine_mode new_mode
- = mode_for_extraction (EP_extzv, 1);
- if (new_mode == MAX_MACHINE_MODE)
- i = BITS_PER_WORD - 1 - i;
- else
- {
- mode = new_mode;
- i = (GET_MODE_PRECISION (mode) - 1 - i);
- }
- }
+ i = BITS_PER_WORD - 1 - i;
op0 = XEXP (op0, 2);
op1 = GEN_INT (i);