mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-14 10:30:56 +08:00
S/390: Make shift_count_or_setmem_operand predicate to check for mode.
gcc/ * config/s390/predicates.md (shift_count_or_setmem_operand): Add mode check to make sure that only scalar integer values are accepted. From-SVN: r223392
This commit is contained in:
parent
872d5034ba
commit
9e8ea2fc16
@ -1,3 +1,9 @@
|
||||
2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
|
||||
|
||||
* config/s390/predicates.md (shift_count_or_setmem_operand): Add
|
||||
mode check to make sure that only scalar integer values are
|
||||
accepted.
|
||||
|
||||
2015-05-19 Jan Hubicka <hubicka@ucw.cz>
|
||||
|
||||
* tree.c (verify_type_variant): Fix #undef.
|
||||
|
@ -75,7 +75,7 @@
|
||||
(and (match_test "mode == Pmode")
|
||||
(match_test "!legitimate_la_operand_p (op)"))))
|
||||
|
||||
;; Return true if OP is a valid operand as shift count or setmem.
|
||||
;; Return true if OP is a valid operand as scalar shift count or setmem.
|
||||
|
||||
(define_predicate "shift_count_or_setmem_operand"
|
||||
(match_code "reg, subreg, plus, const_int")
|
||||
@ -83,6 +83,10 @@
|
||||
HOST_WIDE_INT offset;
|
||||
rtx base;
|
||||
|
||||
if (GET_MODE (op) != VOIDmode
|
||||
&& GET_MODE_CLASS (GET_MODE (op)) != MODE_INT)
|
||||
return false;
|
||||
|
||||
/* Extract base register and offset. */
|
||||
if (!s390_decompose_shift_count (op, &base, &offset))
|
||||
return false;
|
||||
|
Loading…
x
Reference in New Issue
Block a user