diff options
| author | Tim Rogers <[email protected]> | 2025-02-18 10:29:07 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-02-18 15:29:07 +0000 |
| commit | 287fe0aa17ec1ac5bdd595ca6e89aa97464bcac7 (patch) | |
| tree | cf52817b95b99f61cf494af5536e32bf6d2889e3 /src/cuda-sim/ptxinfo.y | |
| parent | 7934dfea8a6f44f592866414189970ef9ff994d6 (diff) | |
A bunch of maintenance fixes, the largest of which is getting the PTX simulation to work with CUDA 12. (#95)
* Fixing the formatter to always use a consistent format and running it on the codebase
* Update linux-so-version.txt
* Update Makefile
* A couple of unnecessary files that are lingering around
* Support CUDA 12
* Getting the PTX simulations to work with CUDA 12. The issue is that ptxas added more information (number of barriers and compile time). We have to parse these or lexx/yacc fail.
* Update ptxinfo.l
debug MACRO was ineffective
* Update gpgpusim_check.cmake
Update to make the CUDA version print a warning, not an error and updating the print to be more reflective of what the actual problem is.
Diffstat (limited to 'src/cuda-sim/ptxinfo.y')
| -rw-r--r-- | src/cuda-sim/ptxinfo.y | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/cuda-sim/ptxinfo.y b/src/cuda-sim/ptxinfo.y index b303958..7225207 100644 --- a/src/cuda-sim/ptxinfo.y +++ b/src/cuda-sim/ptxinfo.y @@ -49,6 +49,8 @@ typedef void * yyscan_t; %token FUNC %token USED %token REGS +%token BARRIERS +%token COMPILETIME %token BYTES %token LMEM %token SMEM @@ -70,6 +72,8 @@ typedef void * yyscan_t; %token <string_value> FUNCTION %token <string_value> VARIABLE %token FATAL +%token PERIOD +%token MS %{ #include <stdlib.h> @@ -81,6 +85,7 @@ typedef void * yyscan_t; void yyerror(yyscan_t yyscanner, ptxinfo_data* ptxinfo, const char* msg); void ptxinfo_function(const char *fname ); void ptxinfo_regs( unsigned nregs ); + void ptxinfo_barriers( unsigned barriers ); void ptxinfo_lmem( unsigned declared, unsigned system ); void ptxinfo_gmem( unsigned declared, unsigned system ); void ptxinfo_smem( unsigned declared, unsigned system ); @@ -126,8 +131,10 @@ info: USED INT_OPERAND REGS { ptxinfo_regs($2); } | INT_OPERAND BYTES LMEM { ptxinfo_lmem($1,0); } | INT_OPERAND BYTES SMEM { ptxinfo_smem($1,0); } | INT_OPERAND BYTES CMEM { ptxinfo_cmem($1,0); } + | USED INT_OPERAND BARRIERS { ptxinfo_barriers($2); } | INT_OPERAND REGS { ptxinfo_regs($1); } | INT_OPERAND TEXTURES {} + | COMPILETIME INT_OPERAND PERIOD INT_OPERAND MS {} ; tuple: INT_OPERAND PLUS INT_OPERAND BYTES { g_declared=$1; g_system=$3; } |
