rs6000: Fix PR67344
authorSegher Boessenkool <segher@kernel.crashing.org>
Tue, 25 Aug 2015 19:32:28 +0000 (21:32 +0200)
committerSegher Boessenkool <segher@gcc.gnu.org>
Tue, 25 Aug 2015 19:32:28 +0000 (21:32 +0200)
commitb733687e967cc21ae3610c3bca9250a82d66c193
treebc7d0e3041bce9660c62aeee3533d125ebc0bab7
parent693ac2ab353682796bff85e1d521eeae31a3938e
rs6000: Fix PR67344

The "*and<mode>3_imm_dot_shifted" pattern is a define_insn_and_split,
like most "dot" patterns: if its output is not assigned cr0 but some
other cr reg, it splits to a non-dot insn and a compare.

Unfortunately that non-dot insn will clobber cr0 as well.  We could
add another clobber (with "=X,x"), but then that second alternative
is never useful; instead, just remove that second alternative.

2015-08-25  Segher Boessenkool  <segher@kernel.crashing.org>

PR target/67344
* config/rs6000/rs6000.md (*and<mode>3_imm_dot_shifted): Change to
a define_insn, remove second alternative.

From-SVN: r227182
gcc/ChangeLog
gcc/config/rs6000/rs6000.md