fix(cuda): replace uint64_t with unsigned long long for NVRTC compat
NVRTC does not include <stdint.h> so uint64_t is undefined. The TMA mbarrier shared variable was causing 5 compilation errors on the H100 (identifier "uint64_t" is undefined, asm operand must have scalar type). Using the native CUDA type unsigned long long (also 64-bit) resolves the issue without needing any NVRTC headers. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -240,7 +240,7 @@ __device__ __forceinline__ void cooperative_load_tile_tma(
|
||||
/* Shared mbarrier for TMA completion tracking.
|
||||
* Re-initialized per call; callers separate calls with __syncwarp().
|
||||
* Static __shared__ — one per block, all inline sites share it. */
|
||||
__shared__ __align__(8) uint64_t __tma_mbar;
|
||||
__shared__ __align__(8) unsigned long long __tma_mbar;
|
||||
|
||||
/* Compute mbar shared address for all threads (same address). */
|
||||
const unsigned int mbar_addr =
|
||||
|
||||
Reference in New Issue
Block a user