aboutsummaryrefslogtreecommitdiff
path: root/src/cuda-sim/ptx.l
diff options
context:
space:
mode:
authorTor Aamodt <[email protected]>2010-07-16 23:13:34 -0800
committerTor Aamodt <[email protected]>2010-07-16 23:13:34 -0800
commitd67e0e6d7c50a5c6f567e387e17782f022553264 (patch)
tree814766699be6d3ede2b7d74f2bdfb060cbc196cd /src/cuda-sim/ptx.l
parent55506aed771c40e93f374cffb04c6e48b34e6003 (diff)
template compiled with "make noinline=1" now parses, runs, passes
[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6857]
Diffstat (limited to 'src/cuda-sim/ptx.l')
-rw-r--r--src/cuda-sim/ptx.l10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/cuda-sim/ptx.l b/src/cuda-sim/ptx.l
index 0ab7522..0d66bfd 100644
--- a/src/cuda-sim/ptx.l
+++ b/src/cuda-sim/ptx.l
@@ -174,8 +174,8 @@ xor TC; ptx_lval.int_value = XOR_OP; return OPCODE;
\.const TC; return CONST_DIRECTIVE;
\.entry TC; return ENTRY_DIRECTIVE;
\.extern TC; return EXTERN_DIRECTIVE;
-\.file TC; return FILE_DIRECTIVE;
-\.func TC; return FUNC_DIRECTIVE;
+\.file TC; BEGIN(INITIAL); return FILE_DIRECTIVE;
+\.func TC; BEGIN(NOT_OPCODE); return FUNC_DIRECTIVE;
\.global TC; return GLOBAL_DIRECTIVE;
\.local TC; return LOCAL_DIRECTIVE;
\.loc TC; return LOC_DIRECTIVE;
@@ -220,8 +220,8 @@ xor TC; ptx_lval.int_value = XOR_OP; return OPCODE;
"%warpid" TC; ptx_lval.int_value = WARPID_REG; return SPECIAL_REGISTER;
"WARP_SZ" TC; ptx_lval.int_value = WARPSZ_REG; return SPECIAL_REGISTER;
-[a-zA-Z][a-zA-Z0-9_$]* TC; ptx_lval.string_value = strdup(yytext); return IDENTIFIER;
-[_$%][a-zA-Z0-9_$]+ TC; ptx_lval.string_value = strdup(yytext); return IDENTIFIER;
+[a-zA-Z_][a-zA-Z0-9_$]* TC; ptx_lval.string_value = strdup(yytext); return IDENTIFIER;
+[$%][a-zA-Z0-9_$]+ TC; ptx_lval.string_value = strdup(yytext); return IDENTIFIER;
[0-9]+\.[0-9]+ TC; sscanf(yytext,"%lf", &ptx_lval.double_value); return DOUBLE_OPERAND;
@@ -340,7 +340,7 @@ xor TC; ptx_lval.int_value = XOR_OP; return OPCODE;
";" TC; BEGIN(INITIAL); return SEMI_COLON;
"!" TC; return EXCLAMATION;
"=" TC; return EQUALS;
-"{" TC; return LEFT_BRACE;
+"{" TC; BEGIN(INITIAL); return LEFT_BRACE;
"}" TC; return RIGHT_BRACE;
\. TC; return PERIOD;