summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/slang-gfx.h9
-rw-r--r--include/slang.h3
2 files changed, 12 insertions, 0 deletions
diff --git a/include/slang-gfx.h b/include/slang-gfx.h
index 6f46fed33..db9dcbacb 100644
--- a/include/slang-gfx.h
+++ b/include/slang-gfx.h
@@ -163,6 +163,12 @@ public:
SeparateEntryPointCompilation
};
+ enum class DownstreamLinkMode
+ {
+ None,
+ Deferred,
+ };
+
struct Desc
{
// TODO: Tess doesn't like this but doesn't know what to do about it
@@ -180,6 +186,9 @@ public:
// An array of Slang entry points. The size of the array must be `entryPointCount`.
// Each element must define only 1 Slang EntryPoint.
slang::IComponentType** slangEntryPoints = nullptr;
+
+ // Indicates whether the app is responsible for final downstream linking.
+ DownstreamLinkMode downstreamLinkMode = DownstreamLinkMode::None;
};
struct CreateDesc2
diff --git a/include/slang.h b/include/slang.h
index 66fd317c6..d000dab9f 100644
--- a/include/slang.h
+++ b/include/slang.h
@@ -653,6 +653,7 @@ typedef uint32_t SlangSizeT;
SLANG_PASS_THROUGH_SPIRV_OPT, ///< SPIRV-opt
SLANG_PASS_THROUGH_METAL, ///< Metal compiler
SLANG_PASS_THROUGH_TINT, ///< Tint WGSL compiler
+ SLANG_PASS_THROUGH_SPIRV_LINK, ///< SPIRV-link
SLANG_PASS_THROUGH_COUNT_OF,
};
@@ -1008,6 +1009,8 @@ typedef uint32_t SlangSizeT;
EmitReflectionJSON, // bool
SaveGLSLModuleBinSource,
+
+ SkipDownstreamLinking, // bool, experimental
CountOf,
};