88
99#include " llvm/Object/DXContainer.h"
1010#include " llvm/BinaryFormat/DXContainer.h"
11- #include " llvm/BinaryFormat/RootSignatureValidation .h"
11+ #include " llvm/BinaryFormat/RootSignatureVerifier .h"
1212#include " llvm/Object/Error.h"
1313#include " llvm/Support/Alignment.h"
1414#include " llvm/Support/Endian.h"
@@ -27,18 +27,6 @@ static Error validationFailed(const Twine &Msg) {
2727 return make_error<StringError>(Msg.str (), inconvertibleErrorCode ());
2828}
2929
30- template <typename E> static Error safeConvertEnum (uint32_t Value, E &Result) {
31- static_assert (std::is_enum_v<E>, " Template must be an enum type" );
32-
33- if (Value >= 0 && Value < static_cast <int >(E::Empty)) {
34- Result = static_cast <E>(Value);
35- return Error::success ();
36- }
37-
38- // Throw an exception if the value is out of range
39- return parseFailed (" Value is not within range for enum" );
40- }
41-
4230template <typename T>
4331static Error readStruct (StringRef Buffer, const char *Src, T &Struct) {
4432 // Don't read before the beginning or past the end of the file
@@ -274,7 +262,7 @@ Error DirectX::RootSignature::parse(StringRef Data) {
274262 support::endian::read<uint32_t , llvm::endianness::little>(Current);
275263 Current += sizeof (uint32_t );
276264
277- if (!dxbc::RootSignatureValidations::isValidVersion (VValue))
265+ if (!dxbc::RootSignatureVerifier::verifyVersion (VValue))
278266 return validationFailed (" unsupported root signature version read: " +
279267 llvm::Twine (VValue));
280268 Version = VValue;
@@ -299,7 +287,7 @@ Error DirectX::RootSignature::parse(StringRef Data) {
299287 support::endian::read<uint32_t , llvm::endianness::little>(Current);
300288 Current += sizeof (uint32_t );
301289
302- if (!dxbc::RootSignatureValidations::isValidRootFlag (FValue))
290+ if (!dxbc::RootSignatureVerifier::verifyRootFlag (FValue))
303291 return validationFailed (" unsupported root signature flag value read: " +
304292 llvm::Twine (FValue));
305293 Flags = FValue;
@@ -314,12 +302,12 @@ Error DirectX::RootSignature::parse(StringRef Data) {
314302 if (!P)
315303 return P.takeError ();
316304
317- if (!dxbc::RootSignatureValidations::isValidParameterType (
305+ if (!dxbc::RootSignatureVerifier::verifyParameterType (
318306 P->Header .ParameterType ))
319307 return validationFailed (" unsupported parameter type value read: " +
320308 llvm::Twine ((uint32_t )P->Header .ParameterType ));
321309
322- if (!dxbc::RootSignatureValidations::isValidShaderVisibility (
310+ if (!dxbc::RootSignatureVerifier::verifyShaderVisibility (
323311 P->Header .ShaderVisibility ))
324312 return validationFailed (
325313 " unsupported shader visility flag value read: " +
0 commit comments