ira.c (commutative_operand): Adjust for change to recog_data.

gcc/
	* ira.c (commutative_operand): Adjust for change to recog_data.
	[Missing from previous commit.]

From-SVN: r210965
This commit is contained in:
Richard Sandiford 2014-05-27 10:23:20 +00:00 committed by Richard Sandiford
parent 4cc8d9d2df
commit f571b63f52
2 changed files with 12 additions and 10 deletions

View File

@ -1,3 +1,8 @@
2014-05-27 Richard Sandiford <rdsandiford@googlemail.com>
* ira.c (commutative_operand): Adjust for change to recog_data.
[Missing from previous commit.]
2014-05-27 Richard Sandiford <rdsandiford@googlemail.com>
* system.h (TEST_BIT): New macro.

View File

@ -1774,23 +1774,20 @@ setup_prohibited_mode_move_regs (void)
static bool
commutative_constraint_p (const char *str)
{
int curr_alt, c;
bool ignore_p;
int c;
for (ignore_p = false, curr_alt = 0;;)
alternative_mask enabled = recog_data.enabled_alternatives;
for (;;)
{
c = *str;
if (c == '\0')
break;
str += CONSTRAINT_LEN (c, str);
if (c == '#' || !recog_data.alternative_enabled_p[curr_alt])
ignore_p = true;
if (c == '#')
enabled &= ~ALTERNATIVE_BIT (0);
else if (c == ',')
{
curr_alt++;
ignore_p = false;
}
else if (! ignore_p)
enabled >>= 1;
else if (enabled & 1)
{
/* Usually `%' is the first constraint character but the
documentation does not require this. */