diff options
| author | Wilson Fung <[email protected]> | 2012-08-16 20:11:16 -0800 |
|---|---|---|
| committer | Andrew Boktor <[email protected]> | 2014-08-14 13:48:54 -0700 |
| commit | 888dd6c18d927d93856c721a06c7155d5eac2d53 (patch) | |
| tree | 91627090401871d6093b51ee6afa8656c616ea4c /src/cuda-sim/ptx.l | |
| parent | 630ea0793949ef5845318e677d80c7b60a89d801 (diff) | |
Integration from TM-311 branch.
- Updated PTX parser to support CUDA 4.1 and 4.2.
- Revised fatbin workaround to a more robust version (with comments explaining it).
- Added print_simulation_time() in gpgpu_sim_thread_concurrent().
[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 13789]
Diffstat (limited to 'src/cuda-sim/ptx.l')
| -rw-r--r-- | src/cuda-sim/ptx.l | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/cuda-sim/ptx.l b/src/cuda-sim/ptx.l index 4747181..2d0e065 100644 --- a/src/cuda-sim/ptx.l +++ b/src/cuda-sim/ptx.l @@ -66,8 +66,8 @@ bfind TC; ptx_lval.int_value = BFIND_OP; return OPCODE; bra TC; ptx_lval.int_value = BRA_OP; return OPCODE; brev TC; ptx_lval.int_value = BREV_OP; return OPCODE; brkpt TC; ptx_lval.int_value = BRKPT_OP; return OPCODE; -call TC; ptx_lval.int_value = CALL_OP; return OPCODE; -callp TC; ptx_lval.int_value = CALLP_OP; return OPCODE; +call TC; BEGIN(NOT_OPCODE); ptx_lval.int_value = CALL_OP; return OPCODE; // blocking opcode token in case the callee has the same name as an opcode +callp TC; BEGIN(NOT_OPCODE); ptx_lval.int_value = CALLP_OP; return OPCODE; clz TC; ptx_lval.int_value = CLZ_OP; return OPCODE; cnot TC; ptx_lval.int_value = CNOT_OP; return OPCODE; cos TC; ptx_lval.int_value = COS_OP; return OPCODE; @@ -155,7 +155,7 @@ breakaddr TC; ptx_lval.int_value = BREAKADDR_OP; return OPCODE; \.entry TC; return ENTRY_DIRECTIVE; \.extern TC; return EXTERN_DIRECTIVE; \.file TC; BEGIN(INITIAL); return FILE_DIRECTIVE; -\.func TC; BEGIN(NOT_OPCODE); return FUNC_DIRECTIVE; +\.func TC; BEGIN(NOT_OPCODE); return FUNC_DIRECTIVE; // blocking opcode parsing in case the function has the same name as an opcode (e.g. sin(), cos()) \.global TC; return GLOBAL_DIRECTIVE; \.local TC; return LOCAL_DIRECTIVE; \.loc TC; return LOC_DIRECTIVE; @@ -352,7 +352,7 @@ breakaddr TC; ptx_lval.int_value = BREAKADDR_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; // starting a statement block (allow next token to be parsed as an opcode) "}" TC; return RIGHT_BRACE; \. TC; return PERIOD; "/" TC; return BACKSLASH; |
