mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-03-07 13:39:43 +08:00
bfin: drop _ASSIGN_BANG
A few testcases demonstrate that "=!" isn't supposed to be an individual token, since "= !" is used in a number of places. So far lexing that to a single token worked because of the scrubber being overly aggressive in removing whitespace. As that's going to change, replace uses by separate ASSIGN and BANG.
This commit is contained in:
parent
a1b7023447
commit
1cc4b7d755
@ -287,7 +287,6 @@ int yylex (void);
|
||||
"%" return PERCENT;
|
||||
"!" return BANG;
|
||||
";" return SEMICOLON;
|
||||
"=!" return _ASSIGN_BANG;
|
||||
"||" return DOUBLE_BAR;
|
||||
"@" return AT;
|
||||
<KEYWORD>[pP][rR][eE][fF][eE][tT][cC][hH] return PREFETCH;
|
||||
|
@ -529,7 +529,7 @@ dsp32shiftimm in slot1 and P-reg Store in slot2 Not Supported");
|
||||
%token _MINUS_ASSIGN _PLUS_ASSIGN
|
||||
|
||||
/* Assignments, comparisons. */
|
||||
%token _ASSIGN_BANG _LESS_THAN_ASSIGN _ASSIGN_ASSIGN
|
||||
%token _LESS_THAN_ASSIGN _ASSIGN_ASSIGN
|
||||
%token GE LT LE GT
|
||||
%token LESS_THAN
|
||||
|
||||
@ -1804,7 +1804,7 @@ asm_1:
|
||||
return yyerror ("Only 'Dreg = CC' supported");
|
||||
}
|
||||
|
||||
| CCREG _ASSIGN_BANG CCREG
|
||||
| CCREG ASSIGN BANG CCREG
|
||||
{
|
||||
notethat ("CC2dreg: CC =! CC\n");
|
||||
$$ = bfin_gen_cc2dreg (3, 0);
|
||||
@ -2471,12 +2471,12 @@ asm_1:
|
||||
return yyerror ("Register mismatch");
|
||||
}
|
||||
|
||||
| CCREG _ASSIGN_BANG BITTST LPAREN REG COMMA expr RPAREN
|
||||
| CCREG ASSIGN BANG BITTST LPAREN REG COMMA expr RPAREN
|
||||
{
|
||||
if (IS_DREG ($5) && IS_UIMM ($7, 5))
|
||||
if (IS_DREG ($6) && IS_UIMM ($8, 5))
|
||||
{
|
||||
notethat ("LOGI2op: CC =! BITTST (dregs , uimm5 )\n");
|
||||
$$ = LOGI2OP ($5, uimm5 ($7), 0);
|
||||
$$ = LOGI2OP ($6, uimm5 ($8), 0);
|
||||
}
|
||||
else
|
||||
return yyerror ("Register mismatch or value error");
|
||||
|
Loading…
Reference in New Issue
Block a user