summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bgfx/3rdparty/spirv-tools/source/val/validate_debug.cpp
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-tools/source/val/validate_debug.cpp')
-rw-r--r--3rdparty/bgfx/3rdparty/spirv-tools/source/val/validate_debug.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-tools/source/val/validate_debug.cpp b/3rdparty/bgfx/3rdparty/spirv-tools/source/val/validate_debug.cpp
index d84ed3801fe..b49890f2680 100644
--- a/3rdparty/bgfx/3rdparty/spirv-tools/source/val/validate_debug.cpp
+++ b/3rdparty/bgfx/3rdparty/spirv-tools/source/val/validate_debug.cpp
@@ -14,6 +14,8 @@
#include "source/val/validate.h"
+#include "source/opcode.h"
+#include "source/spirv_target_env.h"
#include "source/val/instruction.h"
#include "source/val/validation_state.h"
@@ -54,6 +56,13 @@ spv_result_t ValidateLine(ValidationState_t& _, const Instruction* inst) {
} // namespace
spv_result_t DebugPass(ValidationState_t& _, const Instruction* inst) {
+ if (spvIsWebGPUEnv(_.context()->target_env) &&
+ spvOpcodeIsDebug(inst->opcode())) {
+ return _.diag(SPV_ERROR_INVALID_BINARY, inst)
+ << "Debugging instructions are not allowed in the WebGPU execution "
+ << "environment.";
+ }
+
switch (inst->opcode()) {
case SpvOpMemberName:
if (auto error = ValidateMemberName(_, inst)) return error;