rs6000: Don't use REGNO in the add<mode>3 expander

The argument could be a subreg of reg instead, which means we have to
use reg_or_subregno instead of REGNO.


	* config/rs6000/rs6000.md (add<mode>3): Use reg_or_subregno instead
	of REGNO.

From-SVN: r249213
This commit is contained in:
Segher Boessenkool 2017-06-15 08:49:17 +02:00 committed by Segher Boessenkool
parent 0f25124435
commit dfc107627c
2 changed files with 6 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2017-06-15 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/rs6000.md (add<mode>3): Use reg_or_subregno instead
of REGNO.
2017-06-14 Maciej W. Rozycki <macro@imgtec.com> 2017-06-14 Maciej W. Rozycki <macro@imgtec.com>
* config/mips/mips.md (MIPS16_T_REGNUM): Remove constant. * config/mips/mips.md (MIPS16_T_REGNUM): Remove constant.

View File

@ -1631,7 +1631,7 @@
/* Adding a constant to r0 is not a valid insn, so use a different /* Adding a constant to r0 is not a valid insn, so use a different
strategy in that case. */ strategy in that case. */
if (REGNO (operands[1]) == 0 || REGNO (tmp) == 0) if (reg_or_subregno (operands[1]) == 0 || reg_or_subregno (tmp) == 0)
{ {
if (operands[0] == operands[1]) if (operands[0] == operands[1])
FAIL; FAIL;