From e109985375712b449d365450b3d3e39416a171ce Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Tue, 18 Feb 2020 12:40:14 -0500 Subject: CUDA/CPU resource coverage (#1224) * Add cubemap support. * Add CUDA fence instrinsics. * Added Gather for CUDA. * Use the CUDA driver API as much as possible. * * Support 1D texture on CPU * WIP on 1D texture on CUDA * Added simplified texture test * Fix test. * Improve texture-simple tests. * * Add CPU support for 3d textures * Add support for mip maps to CUDA * Disable warnings in nvrtc * Update CUDA docs * WIP on 3d texture support. * Add support for 3d textures for CPU and CUDA. --- docs/cuda-target.md | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'docs') diff --git a/docs/cuda-target.md b/docs/cuda-target.md index 9c82b1dc9..79251251b 100644 --- a/docs/cuda-target.md +++ b/docs/cuda-target.md @@ -20,8 +20,7 @@ These limitations apply to Slang transpiling to CUDA. The following are a work in progress or not implmented but are planned to be so in the future -* Barriers/Atomics/Complex resource types -* Preliminary version does maps StructuredBuffers to a pointer - and without boudn checking +* Resource types including surfaces # How it works @@ -137,9 +136,8 @@ For a client application - as long as the requirements of the generated code are That for pass-through usage, prelude is not pre-pended, preludes are for code generation only. */ -virtual SLANG_NO_THROW void SLANG_MCALL setDownstreamCompilerPrelude( -SlangPassThrough passThrough, -const char* preludeText) = 0; + +void setDownstreamCompilerPrelude(SlangPassThrough passThrough, const char* preludeText); ``` The code that sets up the prelude for the test infrastucture and command line usage can be found in ```TestToolUtil::setSessionDefaultPrelude```. Essentially this determines what the absolute path is to `slang-cpp-prelude.h` is and then just makes the prelude `#include "the absolute path"`. @@ -152,5 +150,3 @@ Language aspects Slang follows the HLSL convention that arrays are passed by value. This is in contrast with CUDA where arrays follow C++ conventions and are passed by reference. To make generated CUDA follow this convention an array is turned into a 'FixedArray' struct type. To get something more similar to CUDA/C++ operation the array can be marked in out or inout to make it passed by reference. - - -- cgit v1.2.3