summaryrefslogtreecommitdiffstats
path: root/tools/render-test/shader-input-layout.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2020-10-09 11:29:11 -0700
committerGitHub <noreply@github.com>2020-10-09 11:29:11 -0700
commitfab1c9f4c745ba84983c2448646376799d461e96 (patch)
tree3176c03987417c01b7220aaf13c35b665813c876 /tools/render-test/shader-input-layout.cpp
parent11f331771a8d5d80bc1dd317dcad5eb815e9cb55 (diff)
Support CUDA bindless texture in dynamic dispatch code. (#1575)
Diffstat (limited to 'tools/render-test/shader-input-layout.cpp')
-rw-r--r--tools/render-test/shader-input-layout.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/render-test/shader-input-layout.cpp b/tools/render-test/shader-input-layout.cpp
index 40beffc05..6ded388e8 100644
--- a/tools/render-test/shader-input-layout.cpp
+++ b/tools/render-test/shader-input-layout.cpp
@@ -432,6 +432,20 @@ namespace renderer_test
entry.bufferData.add(0);
continue;
}
+ else if (parser.LookAhead("handle"))
+ {
+ BindlessHandleDataEntry handleEntry;
+ parser.ReadToken();
+ parser.Read("(");
+ handleEntry.name = parser.ReadWord();
+ handleEntry.offset = offset;
+ parser.Read(")");
+ offset += 8;
+ entry.bindlessHandleEntry.add(handleEntry);
+ entry.bufferData.add(0);
+ entry.bufferData.add(0);
+ continue;
+ }
bool negate = false;
if(parser.NextToken().Type == TokenType::OpSub)
@@ -572,6 +586,11 @@ namespace renderer_test
entry.name = builder;
}
+ else if (parser.LookAhead("bindless"))
+ {
+ parser.ReadToken();
+ entry.isBindlessObject = true;
+ }
else
{
fprintf(stderr, "Invalid TEST_INPUT syntax '%s'\n", parser.NextToken().Content.getBuffer());
@@ -601,6 +620,8 @@ namespace renderer_test
for (Index entryIndex = 0; entryIndex < entries.getCount(); ++entryIndex)
{
auto& entry = entries[entryIndex];
+ if (entry.isBindlessObject)
+ continue;
if (entry.name.getLength() == 0)
{