summaryrefslogtreecommitdiff
path: root/tools/d2c/args/tokens.l
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2016-05-22 15:43:43 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2016-05-22 15:43:43 (GMT)
commit7577eadd4e871d467f747c4927a1b1984d6a7606 (patch)
treee72a2fd5c1619e60402a678b0559079ed267eab0 /tools/d2c/args/tokens.l
parent33aa90b022e7d711a733ca7eb62c0b285f974317 (diff)
Extended the compiler to transform all the new ARMv7 encoding definitions.
Diffstat (limited to 'tools/d2c/args/tokens.l')
-rw-r--r--tools/d2c/args/tokens.l7
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/d2c/args/tokens.l b/tools/d2c/args/tokens.l
index 4b1a2a1..2a4ffb2 100644
--- a/tools/d2c/args/tokens.l
+++ b/tools/d2c/args/tokens.l
@@ -51,12 +51,19 @@
<binval>[01][01]* { yylvalp->string = strdup(yytext); return BINVAL; }
<binval>"'" { yy_pop_state(); }
+\"[^\"]*\" { yylvalp->string = strndup(yytext + 1, strlen(yytext) - 2); printf("str = '%s'\n", yylvalp->string); return STRING; }
+
"0x" { yy_push_state(hexval); }
<hexval>[0-9a-f][0-9a-f]* { yylvalp->string = strdup(yytext); yy_pop_state(); return HEXVAL; }
"," { return COMMA; }
":" { return COLON; }
"&" { return AND_LOG; }
+"==" { return EQ; }
+"!=" { return NE; }
+
+"&&" { return AND_BOOL; }
+"||" { return OR_BOOL; }
"(" { yy_push_state(INITIAL); return OP; }
")" { yy_pop_state(); return CP; }