Skip to content

Commit 315c2ad

Browse files
Updated Vulkan third-party dependencies to 1.4.304
1 parent 02f6d99 commit 315c2ad

File tree

9 files changed

+16
-10
lines changed

9 files changed

+16
-10
lines changed

Graphics/ShaderTools/src/SPIRVTools.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2019-2022 Diligent Graphics LLC
2+
* Copyright 2019-2025 Diligent Graphics LLC
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -117,11 +117,17 @@ std::vector<uint32_t> OptimizeSPIRV(const std::vector<uint32_t>& SrcSPIRV, spv_t
117117
spvtools::Optimizer SpirvOptimizer(TargetEnv);
118118
SpirvOptimizer.SetMessageConsumer(SpvOptimizerMessageConsumer);
119119

120+
spvtools::OptimizerOptions Options;
121+
120122
// SPIR-V bytecode generated from HLSL must be legalized to
121123
// turn it into a valid vulkan SPIR-V shader.
122124
if (Passes & SPIRV_OPTIMIZATION_FLAG_LEGALIZATION)
123125
{
124126
SpirvOptimizer.RegisterLegalizationPasses();
127+
128+
spvtools::ValidatorOptions ValidatorOptions;
129+
ValidatorOptions.SetBeforeHlslLegalization(true);
130+
Options.set_validator_options(ValidatorOptions);
125131
}
126132

127133
if (Passes & SPIRV_OPTIMIZATION_FLAG_PERFORMANCE)
@@ -137,7 +143,7 @@ std::vector<uint32_t> OptimizeSPIRV(const std::vector<uint32_t>& SrcSPIRV, spv_t
137143
}
138144

139145
std::vector<uint32_t> OptimizedSPIRV;
140-
if (!SpirvOptimizer.Run(SrcSPIRV.data(), SrcSPIRV.size(), &OptimizedSPIRV))
146+
if (!SpirvOptimizer.Run(SrcSPIRV.data(), SrcSPIRV.size(), &OptimizedSPIRV, Options))
141147
OptimizedSPIRV.clear();
142148

143149
return OptimizedSPIRV;

ThirdParty/SPIRV-Cross

Submodule SPIRV-Cross updated 70 files

ThirdParty/SPIRV-Tools

Submodule SPIRV-Tools updated 119 files

ThirdParty/glslang

Submodule glslang updated 104 files

0 commit comments

Comments
 (0)