Add rules for more registers, and use some for destinations.

This commit is contained in:
Eric Anholt
2006-08-25 13:38:03 -07:00
committed by Damien Lespiau
parent 2cca382cd2
commit 883408eab8
2 changed files with 230 additions and 25 deletions
+52
View File
@@ -119,6 +119,22 @@ int saved_state = INITIAL;
yylval.integer = atoi(yytext + 1);
return MSGREG;
}
"mask"[0-9]+ {
yylval.integer = atoi(yytext + 1);
return MASKREG;
}
"ms"[0-9]+ {
yylval.integer = atoi(yytext + 1);
return MASKSTACKREG;
}
"msd"[0-9]+ {
yylval.integer = atoi(yytext + 1);
return MASKSTACKDEPTHREG;
}
"n"[0-9]+ {
yylval.integer = atoi(yytext + 1);
return NOTIFYREG;
}
"f"[0-9]+ {
yylval.integer = atoi(yytext + 1);
return FLAGREG;
@@ -131,9 +147,45 @@ int saved_state = INITIAL;
yylval.integer = atoi(yytext + 1);
return CONTROLREG;
}
"sr"[0-9]+ {
yylval.integer = atoi(yytext + 1);
return STATEREG;
}
"ip" {
return IPREG;
}
"amask" {
yylval.integer = BRW_AMASK;
return AMASK;
}
"imask" {
yylval.integer = BRW_IMASK;
return IMASK;
}
"lmask" {
yylval.integer = BRW_LMASK;
return LMASK;
}
"cmask" {
yylval.integer = BRW_CMASK;
return CMASK;
}
"imsd" {
yylval.integer = 0;
return IMSD;
}
"lmsd" {
yylval.integer = 1;
return LMSD;
}
"ims" {
yylval.integer = 0;
return IMS;
}
"lms" {
yylval.integer = 16;
return LMS;
}
/*
* Lexing of register types should probably require the ":" symbol specified