rs6000: Fix for and_operand oversight (PR68332, PR67677)
authorSegher Boessenkool <segher@kernel.crashing.org>
Tue, 24 Nov 2015 14:04:11 +0000 (15:04 +0100)
committerSegher Boessenkool <segher@gcc.gnu.org>
Tue, 24 Nov 2015 14:04:11 +0000 (15:04 +0100)
commit6b2f9bb6228bca4b610a6645a60e1557d65b14ef
tree4907a7710d2fae34943d6e1cb149c96f84c3a93f
parentf768642887a807e7d1cde9c9b9a7ff5d49efdcb1
rs6000: Fix for and_operand oversight (PR68332, PR67677)

Calling rs6000_is_valid_and_mask on a reg instead of on a const_int is
not a good idea, as PR68332 and PR67677 as well as testing with
--enable-checking=yes,rtl show.  Fix this.

PR target/66217
PR target/67677
PR target/68332
* config/rs6000/predicates.md (and_operand): Check that the operand
is a const_int before calling rs6000_is_valid_and_mask.

From-SVN: r230811
gcc/ChangeLog
gcc/config/rs6000/predicates.md