diff options
| author | speverel <[email protected]> | 2017-08-10 15:00:36 -0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-08-10 15:00:36 -0700 |
| commit | 21ad40b4918f08bf8508487b9aab700948fe8c84 (patch) | |
| tree | c271e1e71da35305356e998699249f266ff1c08e /src/cuda-sim/ptx_ir.h | |
| parent | 0afe825c212560c3b473366d005a50c2568cad1a (diff) | |
| parent | 1be6f76f5d57bd5dda6f0ca4dae3824f0e55eff9 (diff) | |
Merge pull request #1 from gpgpu-sim/dev
Dev
Diffstat (limited to 'src/cuda-sim/ptx_ir.h')
| -rw-r--r-- | src/cuda-sim/ptx_ir.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/cuda-sim/ptx_ir.h b/src/cuda-sim/ptx_ir.h index 0abbc83..9ad1571 100644 --- a/src/cuda-sim/ptx_ir.h +++ b/src/cuda-sim/ptx_ir.h @@ -291,6 +291,7 @@ private: std::list<operand_info> m_initializer; static unsigned sm_next_uid; + }; class symbol_table { @@ -330,6 +331,11 @@ public: iterator const_iterator_end() { return m_consts.end();} void dump(); + + //Jin: handle instruction group for cdp + symbol_table* start_inst_group(); + symbol_table* end_inst_group(); + private: unsigned m_reg_allocator; unsigned m_shared_next; @@ -347,6 +353,10 @@ private: std::list<symbol*> m_consts; std::map<std::string,function_info*> m_function_info_lookup; std::map<std::string,symbol_table*> m_function_symtab_lookup; + + //Jin: handle instruction group for cdp + unsigned m_inst_group_id; + std::map<std::string,symbol_table*> m_inst_group_symtab; }; class operand_info { @@ -690,7 +700,7 @@ public: } bool is_immediate_address() const { - return m_immediate_address; + return m_immediate_address; } bool is_literal() const { return m_type == int_t || @@ -1202,6 +1212,8 @@ public: { return m_args.size(); } + unsigned get_args_aligned_size(); + const symbol* get_arg( unsigned n ) const { assert( n < m_args.size() ); @@ -1290,6 +1302,9 @@ private: static std::vector<ptx_instruction*> s_g_pc_to_insn; // a direct mapping from PC to instruction static unsigned sm_next_uid; + + //parameter size for device kernels + int m_args_aligned_size; }; class arg_buffer_t { |
