diff options
Diffstat (limited to 'src/cuda-sim/ptx_ir.h')
| -rw-r--r-- | src/cuda-sim/ptx_ir.h | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/cuda-sim/ptx_ir.h b/src/cuda-sim/ptx_ir.h index 839cceb..4600be5 100644 --- a/src/cuda-sim/ptx_ir.h +++ b/src/cuda-sim/ptx_ir.h @@ -1257,12 +1257,31 @@ struct textureInfo { extern function_info *g_func_info; extern int g_error_detected; -extern bool g_debug_ir_generation; -extern std::list<ptx_instruction*> g_instructions; extern symbol_table *g_entrypoint_symbol_table; extern function_info *g_entrypoint_func_info; extern symbol_table *g_global_symbol_table; +extern std::map<std::string,symbol_table*> g_sym_name_to_symbol_table; void init_parser(); +#define GLOBAL_HEAP_START 0x10000000 + // start allocating from this address (lower values used for allocating globals in .ptx file) + +#define SHARED_MEM_SIZE_MAX (64*1024) +#define LOCAL_MEM_SIZE_MAX 1024 +#define MAX_STREAMING_MULTIPROCESSORS 64 +#define MAX_THREAD_PER_SM 1024 +#define TOTAL_LOCAL_MEM_PER_SM (MAX_THREAD_PER_SM*LOCAL_MEM_SIZE_MAX) +#define TOTAL_SHARED_MEM (MAX_STREAMING_MULTIPROCESSORS*SHARED_MEM_SIZE_MAX) +#define TOTAL_LOCAL_MEM (MAX_STREAMING_MULTIPROCESSORS*MAX_THREAD_PER_SM*LOCAL_MEM_SIZE_MAX) +#define SHARED_GENERIC_START (GLOBAL_HEAP_START-TOTAL_SHARED_MEM) +#define LOCAL_GENERIC_START (SHARED_GENERIC_START-TOTAL_LOCAL_MEM) + +#define STATIC_ALLOC_LIMIT (GLOBAL_HEAP_START - (TOTAL_LOCAL_MEM+TOTAL_SHARED_MEM)) + +void gpgpu_ptx_sim_load_ptx_from_string( const char *p, unsigned source_num ); +void gpgpu_ptx_assemble( std::string kname, void *kinfo ); +#include "../option_parser.h" +void ptx_reg_options(option_parser_t opp); + extern "C" { #endif |
