summaryrefslogtreecommitdiff
path: root/prelude
diff options
context:
space:
mode:
Diffstat (limited to 'prelude')
-rw-r--r--prelude/slang-cuda-prelude.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/prelude/slang-cuda-prelude.h b/prelude/slang-cuda-prelude.h
index 8bbac9eff..feec1562a 100644
--- a/prelude/slang-cuda-prelude.h
+++ b/prelude/slang-cuda-prelude.h
@@ -472,6 +472,13 @@ struct RWByteAddressBuffer
*(T*)((char*)data + offset) = value;
}
+ /// Can be used in stdlib to gain access
+ SLANG_CUDA_CALL uint* _getPtrAt(size_t offset)
+ {
+ SLANG_PRELUDE_ASSERT(offset + sizeof(T) <= sizeInBytes && (offset & (alignof(T)-1)) == 0);
+ return (uint*)(((char*)data) + offset);
+ }
+
uint32_t* data;
size_t sizeInBytes; //< Must be multiple of 4
};