[llvm] 5fd3aad - [DirectX] Updating Root Signature YAML representation to use Enums instead of uint (#154827)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 12 11:31:32 PDT 2025
Author: joaosaffran
Date: 2025-09-12T14:31:27-04:00
New Revision: 5fd3aad54c1be20c96fe407348604b4657ce53ab
URL: https://github.com/llvm/llvm-project/commit/5fd3aad54c1be20c96fe407348604b4657ce53ab
DIFF: https://github.com/llvm/llvm-project/commit/5fd3aad54c1be20c96fe407348604b4657ce53ab.diff
LOG: [DirectX] Updating Root Signature YAML representation to use Enums instead of uint (#154827)
This PR is updating Root Signature YAML to use enums, this is a required
change to remove the use of to_underlying from DirectXContainer binary
file.
Closes: [#150676](https://github.com/llvm/llvm-project/issues/150676)
Added:
Modified:
llvm/include/llvm/ObjectYAML/DXContainerYAML.h
llvm/include/llvm/Support/DXILABI.h
llvm/lib/ObjectYAML/DXContainerEmitter.cpp
llvm/lib/ObjectYAML/DXContainerYAML.cpp
llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinations.ll
llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinationsV1.ll
llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable.ll
llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor.ll
llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor_V1.ll
llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers.ll
llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.0.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.1.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.0.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.1.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-Invalid-StaticSamplersOffset.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-MultipleParameters.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-OptionalOffsets.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.0.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.1.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers-Defaults.yaml
llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers.yaml
llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp
Removed:
################################################################################
diff --git a/llvm/include/llvm/ObjectYAML/DXContainerYAML.h b/llvm/include/llvm/ObjectYAML/DXContainerYAML.h
index 359b27761cea3..62bfee7693db1 100644
--- a/llvm/include/llvm/ObjectYAML/DXContainerYAML.h
+++ b/llvm/include/llvm/ObjectYAML/DXContainerYAML.h
@@ -92,7 +92,7 @@ struct RootDescriptorYaml {
};
struct DescriptorRangeYaml {
- uint32_t RangeType;
+ dxil::ResourceClass RangeType;
uint32_t NumDescriptors;
uint32_t BaseShaderRegister;
uint32_t RegisterSpace;
@@ -111,12 +111,12 @@ struct DescriptorTableYaml {
};
struct RootParameterHeaderYaml {
- uint32_t Type;
- uint32_t Visibility;
+ dxbc::RootParameterType Type;
+ dxbc::ShaderVisibility Visibility;
uint32_t Offset;
RootParameterHeaderYaml(){};
- RootParameterHeaderYaml(uint32_t T) : Type(T) {}
+ RootParameterHeaderYaml(dxbc::RootParameterType T) : Type(T) {}
};
struct RootParameterLocationYaml {
@@ -165,21 +165,19 @@ struct RootParameterYamlDesc {
};
struct StaticSamplerYamlDesc {
- uint32_t Filter = llvm::to_underlying(dxbc::SamplerFilter::Anisotropic);
- uint32_t AddressU = llvm::to_underlying(dxbc::TextureAddressMode::Wrap);
- uint32_t AddressV = llvm::to_underlying(dxbc::TextureAddressMode::Wrap);
- uint32_t AddressW = llvm::to_underlying(dxbc::TextureAddressMode::Wrap);
+ dxbc::SamplerFilter Filter = dxbc::SamplerFilter::Anisotropic;
+ dxbc::TextureAddressMode AddressU = dxbc::TextureAddressMode::Wrap;
+ dxbc::TextureAddressMode AddressV = dxbc::TextureAddressMode::Wrap;
+ dxbc::TextureAddressMode AddressW = dxbc::TextureAddressMode::Wrap;
float MipLODBias = 0.f;
uint32_t MaxAnisotropy = 16u;
- uint32_t ComparisonFunc =
- llvm::to_underlying(dxbc::ComparisonFunc::LessEqual);
- uint32_t BorderColor =
- llvm::to_underlying(dxbc::StaticBorderColor::OpaqueWhite);
+ dxbc::ComparisonFunc ComparisonFunc = dxbc::ComparisonFunc::LessEqual;
+ dxbc::StaticBorderColor BorderColor = dxbc::StaticBorderColor::OpaqueWhite;
float MinLOD = 0.f;
float MaxLOD = std::numeric_limits<float>::max();
uint32_t ShaderRegister;
uint32_t RegisterSpace;
- uint32_t ShaderVisibility;
+ dxbc::ShaderVisibility ShaderVisibility;
};
struct RootSignatureYamlDesc {
@@ -321,6 +319,13 @@ LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::PSV::ResourceKind)
LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::D3DSystemValue)
LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::SigComponentType)
LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::SigMinPrecision)
+LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::RootParameterType)
+LLVM_YAML_DECLARE_ENUM_TRAITS(dxil::ResourceClass)
+LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::SamplerFilter)
+LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::StaticBorderColor)
+LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::TextureAddressMode)
+LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::ShaderVisibility)
+LLVM_YAML_DECLARE_ENUM_TRAITS(llvm::dxbc::ComparisonFunc)
namespace llvm {
diff --git a/llvm/include/llvm/Support/DXILABI.h b/llvm/include/llvm/Support/DXILABI.h
index 307a1d1d43f5c..e6600c3406df5 100644
--- a/llvm/include/llvm/Support/DXILABI.h
+++ b/llvm/include/llvm/Support/DXILABI.h
@@ -102,7 +102,6 @@ const unsigned MinWaveSize = 4;
const unsigned MaxWaveSize = 128;
LLVM_ABI StringRef getResourceClassName(ResourceClass RC);
-
} // namespace dxil
} // namespace llvm
diff --git a/llvm/lib/ObjectYAML/DXContainerEmitter.cpp b/llvm/lib/ObjectYAML/DXContainerEmitter.cpp
index 73dfa9899d613..910383816f43b 100644
--- a/llvm/lib/ObjectYAML/DXContainerEmitter.cpp
+++ b/llvm/lib/ObjectYAML/DXContainerEmitter.cpp
@@ -274,13 +274,8 @@ Error DXContainerWriter::writeParts(raw_ostream &OS) {
for (DXContainerYAML::RootParameterLocationYaml &L :
P.RootSignature->Parameters.Locations) {
- assert(dxbc::isValidParameterType(L.Header.Type) &&
- "invalid DXContainer YAML");
- assert(dxbc::isValidShaderVisibility(L.Header.Visibility) &&
- "invalid DXContainer YAML");
- dxbc::RootParameterType Type = dxbc::RootParameterType(L.Header.Type);
- dxbc::ShaderVisibility Visibility =
- dxbc::ShaderVisibility(L.Header.Visibility);
+ const dxbc::RootParameterType Type = L.Header.Type;
+ const dxbc::ShaderVisibility Visibility = L.Header.Visibility;
switch (Type) {
case dxbc::RootParameterType::Constants32Bit: {
@@ -313,10 +308,8 @@ Error DXContainerWriter::writeParts(raw_ostream &OS) {
P.RootSignature->Parameters.getOrInsertTable(L);
mcdxbc::DescriptorTable Table;
for (const auto &R : TableYaml.Ranges) {
- assert(dxbc::isValidRangeType(R.RangeType) &&
- "Invalid Descriptor Range Type");
mcdxbc::DescriptorRange Range;
- Range.RangeType = dxil::ResourceClass(R.RangeType);
+ Range.RangeType = R.RangeType;
Range.NumDescriptors = R.NumDescriptors;
Range.BaseShaderRegister = R.BaseShaderRegister;
Range.RegisterSpace = R.RegisterSpace;
@@ -335,30 +328,20 @@ Error DXContainerWriter::writeParts(raw_ostream &OS) {
}
for (const auto &Param : P.RootSignature->samplers()) {
- assert(dxbc::isValidSamplerFilter(Param.Filter) &&
- dxbc::isValidAddress(Param.AddressU) &&
- dxbc::isValidAddress(Param.AddressV) &&
- dxbc::isValidAddress(Param.AddressW) &&
- dxbc::isValidComparisonFunc(Param.ComparisonFunc) &&
- dxbc::isValidBorderColor(Param.BorderColor) &&
- dxbc::isValidShaderVisibility(Param.ShaderVisibility) &&
- "Invalid enum value in static sampler");
-
mcdxbc::StaticSampler NewSampler;
- NewSampler.Filter = dxbc::SamplerFilter(Param.Filter);
- NewSampler.AddressU = dxbc::TextureAddressMode(Param.AddressU);
- NewSampler.AddressV = dxbc::TextureAddressMode(Param.AddressV);
- NewSampler.AddressW = dxbc::TextureAddressMode(Param.AddressW);
+ NewSampler.Filter = Param.Filter;
+ NewSampler.AddressU = Param.AddressU;
+ NewSampler.AddressV = Param.AddressV;
+ NewSampler.AddressW = Param.AddressW;
NewSampler.MipLODBias = Param.MipLODBias;
NewSampler.MaxAnisotropy = Param.MaxAnisotropy;
- NewSampler.ComparisonFunc = dxbc::ComparisonFunc(Param.ComparisonFunc);
- NewSampler.BorderColor = dxbc::StaticBorderColor(Param.BorderColor);
+ NewSampler.ComparisonFunc = Param.ComparisonFunc;
+ NewSampler.BorderColor = Param.BorderColor;
NewSampler.MinLOD = Param.MinLOD;
NewSampler.MaxLOD = Param.MaxLOD;
NewSampler.ShaderRegister = Param.ShaderRegister;
NewSampler.RegisterSpace = Param.RegisterSpace;
- NewSampler.ShaderVisibility =
- dxbc::ShaderVisibility(Param.ShaderVisibility);
+ NewSampler.ShaderVisibility = Param.ShaderVisibility;
RS.StaticSamplers.push_back(NewSampler);
}
diff --git a/llvm/lib/ObjectYAML/DXContainerYAML.cpp b/llvm/lib/ObjectYAML/DXContainerYAML.cpp
index 32b502ed4e21f..22674b1ceb734 100644
--- a/llvm/lib/ObjectYAML/DXContainerYAML.cpp
+++ b/llvm/lib/ObjectYAML/DXContainerYAML.cpp
@@ -60,7 +60,10 @@ readDescriptorRanges(DXContainerYAML::RootParameterHeaderYaml &Header,
NewR.NumDescriptors = R.NumDescriptors;
NewR.BaseShaderRegister = R.BaseShaderRegister;
NewR.RegisterSpace = R.RegisterSpace;
- NewR.RangeType = R.RangeType;
+ if (!dxbc::isValidRangeType(R.RangeType))
+ return createStringError(std::errc::invalid_argument,
+ "Invalid value for descriptor range type");
+ NewR.RangeType = dxil::ResourceClass(R.RangeType);
if constexpr (std::is_same_v<T, dxbc::RTS0::v2::DescriptorRange>) {
// Set all flag fields for v2
#define DESCRIPTOR_RANGE_FLAG(Num, Enum, Flag) \
@@ -94,15 +97,14 @@ DXContainerYAML::RootSignatureYamlDesc::create(
return createStringError(std::errc::invalid_argument,
"Invalid value for parameter type");
- RootParameterHeaderYaml Header(PH.ParameterType);
+ RootParameterHeaderYaml Header(dxbc::RootParameterType(PH.ParameterType));
Header.Offset = PH.ParameterOffset;
- Header.Type = PH.ParameterType;
if (!dxbc::isValidShaderVisibility(PH.ShaderVisibility))
return createStringError(std::errc::invalid_argument,
"Invalid value for shader visibility");
- Header.Visibility = PH.ShaderVisibility;
+ Header.Visibility = dxbc::ShaderVisibility(PH.ShaderVisibility);
llvm::Expected<object::DirectX::RootParameterView> ParamViewOrErr =
Data.getParameter(PH);
@@ -162,20 +164,50 @@ DXContainerYAML::RootSignatureYamlDesc::create(
}
for (const auto &S : Data.samplers()) {
+ if (!dxbc::isValidSamplerFilter(S.Filter))
+ return createStringError(std::errc::invalid_argument,
+ "Invalid value for static sampler filter");
+
+ if (!dxbc::isValidAddress(S.AddressU))
+ return createStringError(std::errc::invalid_argument,
+ "Invalid value for static sampler AddressU");
+
+ if (!dxbc::isValidAddress(S.AddressV))
+ return createStringError(std::errc::invalid_argument,
+ "Invalid value for static sampler AddressV");
+
+ if (!dxbc::isValidAddress(S.AddressW))
+ return createStringError(std::errc::invalid_argument,
+ "Invalid value for static sampler AddressW");
+
+ if (!dxbc::isValidComparisonFunc(S.ComparisonFunc))
+ return createStringError(
+ std::errc::invalid_argument,
+ "Invalid value for static sampler ComparisonFunc");
+
+ if (!dxbc::isValidBorderColor(S.BorderColor))
+ return createStringError(std::errc::invalid_argument,
+ "Invalid value for static sampler BorderColor");
+
+ if (!dxbc::isValidShaderVisibility(S.ShaderVisibility))
+ return createStringError(
+ std::errc::invalid_argument,
+ "Invalid value for static sampler ShaderVisibility");
+
StaticSamplerYamlDesc NewS;
- NewS.Filter = S.Filter;
- NewS.AddressU = S.AddressU;
- NewS.AddressV = S.AddressV;
- NewS.AddressW = S.AddressW;
+ NewS.Filter = dxbc::SamplerFilter(S.Filter);
+ NewS.AddressU = dxbc::TextureAddressMode(S.AddressU);
+ NewS.AddressV = dxbc::TextureAddressMode(S.AddressV);
+ NewS.AddressW = dxbc::TextureAddressMode(S.AddressW);
NewS.MipLODBias = S.MipLODBias;
NewS.MaxAnisotropy = S.MaxAnisotropy;
- NewS.ComparisonFunc = S.ComparisonFunc;
- NewS.BorderColor = S.BorderColor;
+ NewS.ComparisonFunc = dxbc::ComparisonFunc(S.ComparisonFunc);
+ NewS.BorderColor = dxbc::StaticBorderColor(S.BorderColor);
NewS.MinLOD = S.MinLOD;
NewS.MaxLOD = S.MaxLOD;
NewS.ShaderRegister = S.ShaderRegister;
NewS.RegisterSpace = S.RegisterSpace;
- NewS.ShaderVisibility = S.ShaderVisibility;
+ NewS.ShaderVisibility = dxbc::ShaderVisibility(S.ShaderVisibility);
RootSigDesc.StaticSamplers.push_back(NewS);
}
@@ -425,21 +457,21 @@ void MappingContextTraits<DXContainerYAML::RootParameterLocationYaml,
IO.mapRequired("ShaderVisibility", L.Header.Visibility);
switch (L.Header.Type) {
- case llvm::to_underlying(dxbc::RootParameterType::Constants32Bit): {
+ case dxbc::RootParameterType::Constants32Bit: {
DXContainerYAML::RootConstantsYaml &Constants =
S.Parameters.getOrInsertConstants(L);
IO.mapRequired("Constants", Constants);
break;
}
- case llvm::to_underlying(dxbc::RootParameterType::CBV):
- case llvm::to_underlying(dxbc::RootParameterType::SRV):
- case llvm::to_underlying(dxbc::RootParameterType::UAV): {
+ case dxbc::RootParameterType::CBV:
+ case dxbc::RootParameterType::SRV:
+ case dxbc::RootParameterType::UAV: {
DXContainerYAML::RootDescriptorYaml &Descriptor =
S.Parameters.getOrInsertDescriptor(L);
IO.mapRequired("Descriptor", Descriptor);
break;
}
- case llvm::to_underlying(dxbc::RootParameterType::DescriptorTable): {
+ case dxbc::RootParameterType::DescriptorTable: {
DXContainerYAML::DescriptorTableYaml &Table =
S.Parameters.getOrInsertTable(L);
IO.mapRequired("Table", Table);
@@ -585,6 +617,55 @@ void ScalarEnumerationTraits<dxbc::SigComponentType>::enumeration(
IO.enumCase(Value, E.Name.str().c_str(), E.Value);
}
+void ScalarEnumerationTraits<dxbc::RootParameterType>::enumeration(
+ IO &IO, dxbc::RootParameterType &Value) {
+ for (const auto &E : dxbc::getRootParameterTypes())
+ IO.enumCase(Value, E.Name.str().c_str(), E.Value);
+}
+
+void ScalarEnumerationTraits<dxil::ResourceClass>::enumeration(
+ IO &IO, dxil::ResourceClass &Value) {
+ const EnumEntry<dxil::ResourceClass> ResourceClasses[] = {
+ {"CBuffer", dxil::ResourceClass::CBuffer},
+ {"SRV", dxil::ResourceClass::SRV},
+ {"UAV", dxil::ResourceClass::UAV},
+ {"Sampler", dxil::ResourceClass::Sampler},
+ };
+
+ for (const auto &E : ResourceClasses)
+ IO.enumCase(Value, E.Name.str().c_str(), E.Value);
+}
+
+void ScalarEnumerationTraits<dxbc::SamplerFilter>::enumeration(
+ IO &IO, dxbc::SamplerFilter &Value) {
+ for (const auto &E : dxbc::getSamplerFilters())
+ IO.enumCase(Value, E.Name.str().c_str(), E.Value);
+}
+
+void ScalarEnumerationTraits<dxbc::StaticBorderColor>::enumeration(
+ IO &IO, dxbc::StaticBorderColor &Value) {
+ for (const auto &E : dxbc::getStaticBorderColors())
+ IO.enumCase(Value, E.Name.str().c_str(), E.Value);
+}
+
+void ScalarEnumerationTraits<dxbc::TextureAddressMode>::enumeration(
+ IO &IO, dxbc::TextureAddressMode &Value) {
+ for (const auto &E : dxbc::getTextureAddressModes())
+ IO.enumCase(Value, E.Name.str().c_str(), E.Value);
+}
+
+void ScalarEnumerationTraits<dxbc::ShaderVisibility>::enumeration(
+ IO &IO, dxbc::ShaderVisibility &Value) {
+ for (const auto &E : dxbc::getShaderVisibility())
+ IO.enumCase(Value, E.Name.str().c_str(), E.Value);
+}
+
+void ScalarEnumerationTraits<dxbc::ComparisonFunc>::enumeration(
+ IO &IO, dxbc::ComparisonFunc &Value) {
+ for (const auto &E : dxbc::getComparisonFuncs())
+ IO.enumCase(Value, E.Name.str().c_str(), E.Value);
+}
+
} // namespace yaml
void DXContainerYAML::PSVInfo::mapInfoForVersion(yaml::IO &IO) {
diff --git a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinations.ll b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinations.ll
index 1bc9b85935819..d6cb05b5d0dd9 100644
--- a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinations.ll
+++ b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinations.ll
@@ -61,94 +61,94 @@ attributes #0 = { "hlsl.numthreads"="1,1,1" "hlsl.shader"="compute" }
;DXC-NEXT: NumStaticSamplers: 0
;DXC-NEXT: StaticSamplersOffset: 380
;DXC-NEXT: Parameters:
-;DXC-NEXT: - ParameterType: 0
-;DXC-NEXT: ShaderVisibility: 0
+;DXC-NEXT: - ParameterType: DescriptorTable
+;DXC-NEXT: ShaderVisibility: All
;DXC-NEXT: Table:
;DXC-NEXT: NumRanges: 14
;DXC-NEXT: RangesOffset: 44
;DXC-NEXT: Ranges:
-;DXC-NEXT: - RangeType: 3
+;DXC-NEXT: - RangeType: Sampler
;DXC-NEXT: NumDescriptors: 1
;DXC-NEXT: BaseShaderRegister: 0
;DXC-NEXT: RegisterSpace: 1
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 4294967295
-;DXC-NEXT: - RangeType: 3
+;DXC-NEXT: - RangeType: Sampler
;DXC-NEXT: NumDescriptors: 1
;DXC-NEXT: BaseShaderRegister: 0
;DXC-NEXT: RegisterSpace: 3
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 4294967295
;DXC-NEXT: DESCRIPTORS_VOLATILE: true
-;DXC-NEXT: - RangeType: 3
+;DXC-NEXT: - RangeType: Sampler
;DXC-NEXT: NumDescriptors: 1
;DXC-NEXT: BaseShaderRegister: 0
;DXC-NEXT: RegisterSpace: 4
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 4294967295
;DXC-NEXT: DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS: true
-;DXC-NEXT: - RangeType: 0
+;DXC-NEXT: - RangeType: SRV
;DXC-NEXT: NumDescriptors: 1
;DXC-NEXT: BaseShaderRegister: 0
;DXC-NEXT: RegisterSpace: 5
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 4294967295
;DXC-NEXT: DESCRIPTORS_VOLATILE: true
-;DXC-NEXT: - RangeType: 1
+;DXC-NEXT: - RangeType: UAV
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 6
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 5
;DXC-NEXT: DESCRIPTORS_VOLATILE: true
-;DXC-NEXT: - RangeType: 2
+;DXC-NEXT: - RangeType: CBuffer
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 7
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 5
;DXC-NEXT: DATA_VOLATILE: true
-;DXC-NEXT: - RangeType: 0
+;DXC-NEXT: - RangeType: SRV
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 8
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 5
;DXC-NEXT: DATA_STATIC: true
-;DXC-NEXT: - RangeType: 1
+;DXC-NEXT: - RangeType: UAV
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 9
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 5
;DXC-NEXT: DATA_STATIC_WHILE_SET_AT_EXECUTE: true
-;DXC-NEXT: - RangeType: 2
+;DXC-NEXT: - RangeType: CBuffer
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 10
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 5
;DXC-NEXT: DESCRIPTORS_VOLATILE: true
;DXC-NEXT: DATA_VOLATILE: true
-;DXC-NEXT: - RangeType: 0
+;DXC-NEXT: - RangeType: SRV
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 11
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 5
;DXC-NEXT: DESCRIPTORS_VOLATILE: true
;DXC-NEXT: DATA_STATIC_WHILE_SET_AT_EXECUTE: true
-;DXC-NEXT: - RangeType: 1
+;DXC-NEXT: - RangeType: UAV
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 12
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 5
;DXC-NEXT: DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS: true
-;DXC-NEXT: - RangeType: 2
+;DXC-NEXT: - RangeType: CBuffer
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 13
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 5
;DXC-NEXT: DATA_VOLATILE: true
;DXC-NEXT: DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS: true
-;DXC-NEXT: - RangeType: 0
+;DXC-NEXT: - RangeType: SRV
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 14
;DXC-NEXT: OffsetInDescriptorsFromTableStart: 5
;DXC-NEXT: DATA_STATIC: true
;DXC-NEXT: DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS: true
-;DXC-NEXT: - RangeType: 1
+;DXC-NEXT: - RangeType: UAV
;DXC-NEXT: NumDescriptors: 5
;DXC-NEXT: BaseShaderRegister: 1
;DXC-NEXT: RegisterSpace: 15
diff --git a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinationsV1.ll b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinationsV1.ll
index fec6c4c959642..c65eab5f4aa5f 100644
--- a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinationsV1.ll
+++ b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinationsV1.ll
@@ -26,18 +26,18 @@ attributes #0 = { "hlsl.numthreads"="1,1,1" "hlsl.shader"="compute" }
; DXC-NEXT: NumStaticSamplers: 0
; DXC-NEXT: StaticSamplersOffset: 84
; DXC-NEXT: Parameters:
-; DXC-NEXT: - ParameterType: 0
-; DXC-NEXT: ShaderVisibility: 0
+; DXC-NEXT: - ParameterType: DescriptorTable
+; DXC-NEXT: ShaderVisibility: All
; DXC-NEXT: Table:
; DXC-NEXT: NumRanges: 2
; DXC-NEXT: RangesOffset: 44
; DXC-NEXT: Ranges:
-; DXC-NEXT: - RangeType: 3
+; DXC-NEXT: - RangeType: Sampler
; DXC-NEXT: NumDescriptors: 1
; DXC-NEXT: BaseShaderRegister: 1
; DXC-NEXT: RegisterSpace: 0
; DXC-NEXT: OffsetInDescriptorsFromTableStart: 4294967295
-; DXC-NEXT: - RangeType: 1
+; DXC-NEXT: - RangeType: UAV
; DXC-NEXT: NumDescriptors: 5
; DXC-NEXT: BaseShaderRegister: 1
; DXC-NEXT: RegisterSpace: 10
diff --git a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable.ll b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable.ll
index 4f6f0d0bd6a14..c3985503e3788 100644
--- a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable.ll
+++ b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable.ll
@@ -23,24 +23,24 @@ attributes #0 = { "hlsl.numthreads"="1,1,1" "hlsl.shader"="compute" }
; DXC-NEXT: Size: 92
; DXC-NEXT: RootSignature:
; DXC-NEXT: Version: 2
-; DXC-NEXT: NumRootParameters: 1
-; DXC-NEXT: RootParametersOffset: 24
+; DXC-NEXT: NumRootParameters: 1
+; DXC-NEXT: RootParametersOffset: 24
; DXC-NEXT: NumStaticSamplers: 0
; DXC-NEXT: StaticSamplersOffset: 92
; DXC-NEXT: Parameters:
-; DXC-NEXT: - ParameterType: 0
-; DXC-NEXT: ShaderVisibility: 0
+; DXC-NEXT: - ParameterType: DescriptorTable
+; DXC-NEXT: ShaderVisibility: All
; DXC-NEXT: Table:
; DXC-NEXT: NumRanges: 2
; DXC-NEXT: RangesOffset: 44
; DXC-NEXT: Ranges:
-; DXC-NEXT: - RangeType: 0
+; DXC-NEXT: - RangeType: SRV
; DXC-NEXT: NumDescriptors: 1
; DXC-NEXT: BaseShaderRegister: 1
; DXC-NEXT: RegisterSpace: 0
; DXC-NEXT: OffsetInDescriptorsFromTableStart: 4294967295
; DXC-NEXT: DATA_STATIC_WHILE_SET_AT_EXECUTE: true
-; DXC-NEXT: - RangeType: 1
+; DXC-NEXT: - RangeType: UAV
; DXC-NEXT: NumDescriptors: 5
; DXC-NEXT: BaseShaderRegister: 1
; DXC-NEXT: RegisterSpace: 10
diff --git a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
index d217f396722bc..4dec4e51abcd8 100644
--- a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
+++ b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
@@ -21,13 +21,13 @@ attributes #0 = { "hlsl.numthreads"="1,1,1" "hlsl.shader"="compute" }
; DXC-NEXT: Size: 48
; DXC-NEXT: RootSignature:
; DXC-NEXT: Version: 2
-; DXC-NEXT: NumRootParameters: 1
-; DXC-NEXT: RootParametersOffset: 24
+; DXC-NEXT: NumRootParameters: 1
+; DXC-NEXT: RootParametersOffset: 24
; DXC-NEXT: NumStaticSamplers: 0
; DXC-NEXT: StaticSamplersOffset: 48
; DXC-NEXT: Parameters:
-; DXC-NEXT: - ParameterType: 1
-; DXC-NEXT: ShaderVisibility: 0
+; DXC-NEXT: - ParameterType: Constants32Bit
+; DXC-NEXT: ShaderVisibility: All
; DXC-NEXT: Constants:
; DXC-NEXT: Num32BitValues: 3
; DXC-NEXT: RegisterSpace: 2
diff --git a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor.ll b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor.ll
index 54292bb651532..6f3acdae2b81f 100644
--- a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor.ll
+++ b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor.ll
@@ -21,13 +21,13 @@ attributes #0 = { "hlsl.numthreads"="1,1,1" "hlsl.shader"="compute" }
; DXC-NEXT: Size: 48
; DXC-NEXT: RootSignature:
; DXC-NEXT: Version: 2
-; DXC-NEXT: NumRootParameters: 1
-; DXC-NEXT: RootParametersOffset: 24
+; DXC-NEXT: NumRootParameters: 1
+; DXC-NEXT: RootParametersOffset: 24
; DXC-NEXT: NumStaticSamplers: 0
; DXC-NEXT: StaticSamplersOffset: 48
; DXC-NEXT: Parameters:
-; DXC-NEXT: - ParameterType: 2
-; DXC-NEXT: ShaderVisibility: 0
+; DXC-NEXT: - ParameterType: CBV
+; DXC-NEXT: ShaderVisibility: All
; DXC-NEXT: Descriptor:
; DXC-NEXT: RegisterSpace: 2
; DXC-NEXT: ShaderRegister: 1
diff --git a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor_V1.ll b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor_V1.ll
index 891a03b688a82..3509360e313e3 100644
--- a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor_V1.ll
+++ b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor_V1.ll
@@ -21,13 +21,13 @@ attributes #0 = { "hlsl.numthreads"="1,1,1" "hlsl.shader"="compute" }
; DXC-NEXT: Size: 44
; DXC-NEXT: RootSignature:
; DXC-NEXT: Version: 1
-; DXC-NEXT: NumRootParameters: 1
-; DXC-NEXT: RootParametersOffset: 24
+; DXC-NEXT: NumRootParameters: 1
+; DXC-NEXT: RootParametersOffset: 24
; DXC-NEXT: NumStaticSamplers: 0
; DXC-NEXT: StaticSamplersOffset: 44
; DXC-NEXT: Parameters:
-; DXC-NEXT: - ParameterType: 2
-; DXC-NEXT: ShaderVisibility: 0
+; DXC-NEXT: - ParameterType: CBV
+; DXC-NEXT: ShaderVisibility: All
; DXC-NEXT: Descriptor:
; DXC-NEXT: RegisterSpace: 2
; DXC-NEXT: ShaderRegister: 1
diff --git a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers.ll b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers.ll
index d9ee39dbb7287..1dd470d7fb822 100644
--- a/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers.ll
+++ b/llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers.ll
@@ -27,16 +27,16 @@ attributes #0 = { "hlsl.numthreads"="1,1,1" "hlsl.shader"="compute" }
; DXC-NEXT: StaticSamplersOffset: 24
; DXC-NEXT: Parameters: []
; DXC-NEXT: Samplers:
-; DXC-NEXT: - Filter: 4
-; DXC-NEXT: AddressU: 2
-; DXC-NEXT: AddressV: 3
-; DXC-NEXT: AddressW: 5
+; DXC-NEXT: - Filter: MinPointMagLinearMipPoint
+; DXC-NEXT: AddressU: Mirror
+; DXC-NEXT: AddressV: Clamp
+; DXC-NEXT: AddressW: MirrorOnce
; DXC-NEXT: MipLODBias: 1.425
; DXC-NEXT: MaxAnisotropy: 9
-; DXC-NEXT: ComparisonFunc: 3
-; DXC-NEXT: BorderColor: 2
+; DXC-NEXT: ComparisonFunc: Equal
+; DXC-NEXT: BorderColor: OpaqueWhite
; DXC-NEXT: MinLOD: -128
; DXC-NEXT: MaxLOD: 128
; DXC-NEXT: ShaderRegister: 42
; DXC-NEXT: RegisterSpace: 0
-; DXC-NEXT: ShaderVisibility: 0
+; DXC-NEXT: ShaderVisibility: All
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.0.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.0.yaml
index 70dc35287ba91..530ed79a95ebb 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.0.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.0.yaml
@@ -19,8 +19,8 @@ Parts:
NumStaticSamplers: 0
StaticSamplersOffset: 44
Parameters:
- - ParameterType: 2 # SRV
- ShaderVisibility: 3 # Domain
+ - ParameterType: CBV
+ ShaderVisibility: Domain
Descriptor:
ShaderRegister: 31
RegisterSpace: 32
@@ -36,8 +36,8 @@ Parts:
# CHECK-NEXT: NumStaticSamplers: 0
# CHECK-NEXT: StaticSamplersOffset: 44
# CHECK-NEXT: Parameters:
-# CHECK-NEXT: - ParameterType: 2
-# CHECK-NEXT: ShaderVisibility: 3
+# CHECK-NEXT: - ParameterType: CBV
+# CHECK-NEXT: ShaderVisibility: Domain
# CHECK-NEXT: Descriptor:
# CHECK-NEXT: RegisterSpace: 32
# CHECK-NEXT: ShaderRegister: 31
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.1.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.1.yaml
index 33a74dbf6a3f4..2e8df2eaed7a8 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.1.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.1.yaml
@@ -19,8 +19,8 @@ Parts:
NumStaticSamplers: 0
StaticSamplersOffset: 48
Parameters:
- - ParameterType: 2 # SRV
- ShaderVisibility: 3 # Domain
+ - ParameterType: CBV
+ ShaderVisibility: Domain
Descriptor:
ShaderRegister: 31
RegisterSpace: 32
@@ -37,8 +37,8 @@ Parts:
# CHECK-NEXT: NumStaticSamplers: 0
# CHECK-NEXT: StaticSamplersOffset: 48
# CHECK-NEXT: Parameters:
-# CHECK-NEXT: - ParameterType: 2
-# CHECK-NEXT: ShaderVisibility: 3
+# CHECK-NEXT: - ParameterType: CBV
+# CHECK-NEXT: ShaderVisibility: Domain
# CHECK-NEXT: Descriptor:
# CHECK-NEXT: RegisterSpace: 32
# CHECK-NEXT: ShaderRegister: 31
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.0.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.0.yaml
index b04549fde88f7..88d941f75682b 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.0.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.0.yaml
@@ -20,12 +20,12 @@ Parts:
NumStaticSamplers: 0
StaticSamplersOffset: 64
Parameters:
- - ParameterType: 0 # SRV
- ShaderVisibility: 3 # Domain
+ - ParameterType: DescriptorTable
+ ShaderVisibility: Domain
Table:
NumRanges: 1
Ranges:
- - RangeType: 0
+ - RangeType: SRV
NumDescriptors: -1
BaseShaderRegister: 42
RegisterSpace: 43
@@ -42,13 +42,13 @@ Parts:
# CHECK-NEXT: NumStaticSamplers: 0
# CHECK-NEXT: StaticSamplersOffset: 64
# CHECK-NEXT: Parameters:
-# CHECK-NEXT: - ParameterType: 0
-# CHECK-NEXT: ShaderVisibility: 3
+# CHECK-NEXT: - ParameterType: DescriptorTable
+# CHECK-NEXT: ShaderVisibility: Domain
# CHECK-NEXT: Table:
# CHECK-NEXT: NumRanges: 1
# CHECK-NEXT: RangesOffset: 44
# CHECK-NEXT: Ranges:
-# CHECK-NEXT: - RangeType: 0
+# CHECK-NEXT: - RangeType: SRV
# CHECK-NEXT: NumDescriptors: -1
# CHECK-NEXT: BaseShaderRegister: 42
# CHECK-NEXT: RegisterSpace: 43
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.1.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.1.yaml
index d8f399010053e..c09726defe4a5 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.1.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.1.yaml
@@ -20,12 +20,12 @@ Parts:
NumStaticSamplers: 0
StaticSamplersOffset: 68
Parameters:
- - ParameterType: 0 # SRV
- ShaderVisibility: 3 # Domain
+ - ParameterType: DescriptorTable
+ ShaderVisibility: Domain
Table:
NumRanges: 1
Ranges:
- - RangeType: 0
+ - RangeType: SRV
NumDescriptors: -1
BaseShaderRegister: 42
RegisterSpace: 43
@@ -43,13 +43,13 @@ Parts:
# CHECK-NEXT: NumStaticSamplers: 0
# CHECK-NEXT: StaticSamplersOffset: 68
# CHECK-NEXT: Parameters:
-# CHECK-NEXT: - ParameterType: 0
-# CHECK-NEXT: ShaderVisibility: 3
+# CHECK-NEXT: - ParameterType: DescriptorTable
+# CHECK-NEXT: ShaderVisibility: Domain
# CHECK-NEXT: Table:
# CHECK-NEXT: NumRanges: 1
# CHECK-NEXT: RangesOffset: 44
# CHECK-NEXT: Ranges:
-# CHECK-NEXT: - RangeType: 0
+# CHECK-NEXT: - RangeType: SRV
# CHECK-NEXT: NumDescriptors: -1
# CHECK-NEXT: BaseShaderRegister: 42
# CHECK-NEXT: RegisterSpace: 43
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-Invalid-StaticSamplersOffset.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-Invalid-StaticSamplersOffset.yaml
index e805526ea7c51..1322a4ef365ad 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-Invalid-StaticSamplersOffset.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-Invalid-StaticSamplersOffset.yaml
@@ -21,8 +21,8 @@ Parts:
NumStaticSamplers: 0
StaticSamplersOffset: 0
Parameters:
- - ParameterType: 2
- ShaderVisibility: 3
+ - ParameterType: SRV
+ ShaderVisibility: Domain
Descriptor:
ShaderRegister: 31
RegisterSpace: 32
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-MultipleParameters.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-MultipleParameters.yaml
index 26d56536b9e44..684ada465d8fc 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-MultipleParameters.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-MultipleParameters.yaml
@@ -19,30 +19,30 @@ Parts:
NumStaticSamplers: 0
StaticSamplersOffset: 140
Parameters:
- - ParameterType: 1 # Constants32Bit
- ShaderVisibility: 2 # Hull
+ - ParameterType: Constants32Bit
+ ShaderVisibility: Hull
Constants:
Num32BitValues: 16
ShaderRegister: 15
RegisterSpace: 14
- - ParameterType: 1 # Constants32Bit
- ShaderVisibility: 4 # Geometry
+ - ParameterType: Constants32Bit
+ ShaderVisibility: Geometry
Constants:
Num32BitValues: 21
ShaderRegister: 22
RegisterSpace: 23
- - ParameterType: 2 # SRV
- ShaderVisibility: 3 # Domain
+ - ParameterType: SRV
+ ShaderVisibility: Domain
Descriptor:
ShaderRegister: 31
RegisterSpace: 32
DATA_STATIC_WHILE_SET_AT_EXECUTE: true
- - ParameterType: 0 # SRV
- ShaderVisibility: 3 # Domain
+ - ParameterType: DescriptorTable
+ ShaderVisibility: Domain
Table:
NumRanges: 1
Ranges:
- - RangeType: 0
+ - RangeType: SRV
NumDescriptors: -1
BaseShaderRegister: 42
RegisterSpace: 43
@@ -60,31 +60,31 @@ Parts:
# CHECK-NEXT: NumStaticSamplers: 0
# CHECK-NEXT: StaticSamplersOffset: 140
# CHECK-NEXT: Parameters:
-# CHECK-NEXT: - ParameterType: 1
-# CHECK-NEXT: ShaderVisibility: 2
+# CHECK-NEXT: - ParameterType: Constants32Bit
+# CHECK-NEXT: ShaderVisibility: Hull
# CHECK-NEXT: Constants:
# CHECK-NEXT: Num32BitValues: 16
# CHECK-NEXT: RegisterSpace: 14
# CHECK-NEXT: ShaderRegister: 15
-# CHECK-NEXT: - ParameterType: 1
-# CHECK-NEXT: ShaderVisibility: 4
+# CHECK-NEXT: - ParameterType: Constants32Bit
+# CHECK-NEXT: ShaderVisibility: Geometry
# CHECK-NEXT: Constants:
# CHECK-NEXT: Num32BitValues: 21
# CHECK-NEXT: RegisterSpace: 23
# CHECK-NEXT: ShaderRegister: 22
-# CHECK-NEXT: - ParameterType: 2
-# CHECK-NEXT: ShaderVisibility: 3
+# CHECK-NEXT: - ParameterType: SRV
+# CHECK-NEXT: ShaderVisibility: Domain
# CHECK-NEXT: Descriptor:
# CHECK-NEXT: RegisterSpace: 32
# CHECK-NEXT: ShaderRegister: 31
# CHECK-NEXT: DATA_STATIC_WHILE_SET_AT_EXECUTE: true
-# CHECK-NEXT: - ParameterType: 0
-# CHECK-NEXT: ShaderVisibility: 3
+# CHECK-NEXT: - ParameterType: DescriptorTable
+# CHECK-NEXT: ShaderVisibility: Domain
# CHECK-NEXT: Table:
# CHECK-NEXT: NumRanges: 1
# CHECK-NEXT: RangesOffset: 116
# CHECK-NEXT: Ranges:
-# CHECK-NEXT: - RangeType: 0
+# CHECK-NEXT: - RangeType: SRV
# CHECK-NEXT: NumDescriptors: -1
# CHECK-NEXT: BaseShaderRegister: 42
# CHECK-NEXT: RegisterSpace: 43
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-OptionalOffsets.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-OptionalOffsets.yaml
index 88d7c632968be..00bc190c0903d 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-OptionalOffsets.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-OptionalOffsets.yaml
@@ -31,24 +31,24 @@ Parts:
NumRootParameters: 3
NumStaticSamplers: 0
Parameters:
- - ParameterType: 1 # RootConstants
- ShaderVisibility: 0
+ - ParameterType: Constants32Bit
+ ShaderVisibility: All
Constants:
Num32BitValues: 16
ShaderRegister: 15
RegisterSpace: 14
- - ParameterType: 2 # SRV
- ShaderVisibility: 0
+ - ParameterType: SRV
+ ShaderVisibility: All
Descriptor:
ShaderRegister: 31
RegisterSpace: 32
DATA_STATIC_WHILE_SET_AT_EXECUTE: true
- - ParameterType: 0 # Descriptor Table
- ShaderVisibility: 0
+ - ParameterType: DescriptorTable
+ ShaderVisibility: All
Table:
NumRanges: 1
Ranges:
- - RangeType: 0 # CBV
+ - RangeType: CBuffer
NumDescriptors: -1
BaseShaderRegister: 42
RegisterSpace: 43
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.0.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.0.yaml
index 347d8f3be1710..eb940865e7c66 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.0.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.0.yaml
@@ -33,24 +33,24 @@ Parts:
NumStaticSamplers: 0
StaticSamplersOffset: 108
Parameters:
- - ParameterType: 1 # RootConstants
- ShaderVisibility: 0
+ - ParameterType: Constants32Bit
+ ShaderVisibility: All
Constants:
Num32BitValues: 16
ShaderRegister: 15
RegisterSpace: 14
- - ParameterType: 2 # SRV
- ShaderVisibility: 0
+ - ParameterType: CBV
+ ShaderVisibility: All
Descriptor:
ShaderRegister: 31
RegisterSpace: 32
DATA_STATIC_WHILE_SET_AT_EXECUTE: true
- - ParameterType: 0 # Descriptor Table
- ShaderVisibility: 0
+ - ParameterType: DescriptorTable
+ ShaderVisibility: All
Table:
NumRanges: 1
Ranges:
- - RangeType: 0 # CBV
+ - RangeType: CBuffer
NumDescriptors: -1
BaseShaderRegister: 42
RegisterSpace: 43
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.1.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.1.yaml
index 8e03e1a8b29be..73e89c2dbe336 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.1.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.1.yaml
@@ -33,24 +33,24 @@ Parts:
NumStaticSamplers: 0
StaticSamplersOffset: 116
Parameters:
- - ParameterType: 1 # RootConstants
- ShaderVisibility: 0
+ - ParameterType: Constants32Bit
+ ShaderVisibility: All
Constants:
Num32BitValues: 16
ShaderRegister: 15
RegisterSpace: 14
- - ParameterType: 2 # SRV
- ShaderVisibility: 0
+ - ParameterType: SRV
+ ShaderVisibility: All
Descriptor:
ShaderRegister: 31
RegisterSpace: 32
DATA_STATIC_WHILE_SET_AT_EXECUTE: true
- - ParameterType: 0 # Descriptor Table
- ShaderVisibility: 0
+ - ParameterType: DescriptorTable
+ ShaderVisibility: All
Table:
NumRanges: 1
Ranges:
- - RangeType: 0 # CBV
+ - RangeType: CBuffer
NumDescriptors: -1
BaseShaderRegister: 42
RegisterSpace: 43
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers-Defaults.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers-Defaults.yaml
index 5df7da87aafd2..a45e3b025a5c0 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers-Defaults.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers-Defaults.yaml
@@ -22,7 +22,7 @@ Parts:
Samplers:
- ShaderRegister: 31
RegisterSpace: 32
- ShaderVisibility: 7
+ ShaderVisibility: Mesh
AllowInputAssemblerInputLayout: true
DenyGeometryShaderRootAccess: true
@@ -36,18 +36,18 @@ Parts:
#CHECK-NEXT: StaticSamplersOffset: 24
#CHECK-NEXT: Parameters: []
#CHECK-NEXT: Samplers:
-#CHECK-NEXT: - Filter: 85
-#CHECK-NEXT: AddressU: 1
-#CHECK-NEXT: AddressV: 1
-#CHECK-NEXT: AddressW: 1
+#CHECK-NEXT: - Filter: Anisotropic
+#CHECK-NEXT: AddressU: Wrap
+#CHECK-NEXT: AddressV: Wrap
+#CHECK-NEXT: AddressW: Wrap
#CHECK-NEXT: MipLODBias: 0
#CHECK-NEXT: MaxAnisotropy: 16
-#CHECK-NEXT: ComparisonFunc: 4
-#CHECK-NEXT: BorderColor: 2
+#CHECK-NEXT: ComparisonFunc: LessEqual
+#CHECK-NEXT: BorderColor: OpaqueWhite
#CHECK-NEXT: MinLOD: 0
#CHECK-NEXT: MaxLOD: 3.40282e+38
#CHECK-NEXT: ShaderRegister: 31
#CHECK-NEXT: RegisterSpace: 32
-#CHECK-NEXT: ShaderVisibility: 7
+#CHECK-NEXT: ShaderVisibility: Mesh
#CHECK-NEXT: AllowInputAssemblerInputLayout: true
#CHECK-NEXT: DenyGeometryShaderRootAccess: true
diff --git a/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers.yaml b/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers.yaml
index 888a32b351690..745473117c937 100644
--- a/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers.yaml
+++ b/llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers.yaml
@@ -20,19 +20,19 @@ Parts:
StaticSamplersOffset: 24
Parameters: []
Samplers:
- - Filter: 16
- AddressU: 1
- AddressV: 2
- AddressW: 5
+ - Filter: MinLinearMagMipPoint
+ AddressU: Wrap
+ AddressV: Mirror
+ AddressW: MirrorOnce
MipLODBias: 1.23
MaxAnisotropy: 20
- ComparisonFunc: 4
- BorderColor: 0
+ ComparisonFunc: LessEqual
+ BorderColor: TransparentBlack
MinLOD: 4.56
MaxLOD: 8.90
ShaderRegister: 31
RegisterSpace: 32
- ShaderVisibility: 7
+ ShaderVisibility: Mesh
AllowInputAssemblerInputLayout: true
DenyGeometryShaderRootAccess: true
@@ -46,18 +46,18 @@ Parts:
#CHECK-NEXT: StaticSamplersOffset: 24
#CHECK-NEXT: Parameters: []
#CHECK-NEXT: Samplers:
-#CHECK-NEXT: - Filter: 16
-#CHECK-NEXT: AddressU: 1
-#CHECK-NEXT: AddressV: 2
-#CHECK-NEXT: AddressW: 5
+#CHECK-NEXT: - Filter: MinLinearMagMipPoint
+#CHECK-NEXT: AddressU: Wrap
+#CHECK-NEXT: AddressV: Mirror
+#CHECK-NEXT: AddressW: MirrorOnce
#CHECK-NEXT: MipLODBias: 1.23
#CHECK-NEXT: MaxAnisotropy: 20
-#CHECK-NEXT: ComparisonFunc: 4
-#CHECK-NEXT: BorderColor: 0
+#CHECK-NEXT: ComparisonFunc: LessEqual
+#CHECK-NEXT: BorderColor: TransparentBlack
#CHECK-NEXT: MinLOD: 4.56
#CHECK-NEXT: MaxLOD: 8.9
#CHECK-NEXT: ShaderRegister: 31
#CHECK-NEXT: RegisterSpace: 32
-#CHECK-NEXT: ShaderVisibility: 7
+#CHECK-NEXT: ShaderVisibility: Mesh
#CHECK-NEXT: AllowInputAssemblerInputLayout: true
#CHECK-NEXT: DenyGeometryShaderRootAccess: true
diff --git a/llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp b/llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp
index a264ca7c3c3f6..b0ad208625436 100644
--- a/llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp
+++ b/llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp
@@ -172,8 +172,8 @@ TEST(RootSignature, HeaderData) {
NumStaticSamplers: 0
StaticSamplersOffset: 48
Parameters:
- - ParameterType: 1
- ShaderVisibility: 2
+ - ParameterType: Constants32Bit
+ ShaderVisibility: Hull
Constants:
Num32BitValues: 16
ShaderRegister: 15
@@ -224,8 +224,8 @@ TEST(RootSignature, ParseRootConstants) {
NumStaticSamplers: 0
StaticSamplersOffset: 48
Parameters:
- - ParameterType: 1
- ShaderVisibility: 2
+ - ParameterType: Constants32Bit
+ ShaderVisibility: Hull
Constants:
Num32BitValues: 16
ShaderRegister: 15
@@ -276,8 +276,8 @@ TEST(RootSignature, ParseRootDescriptorsV10) {
NumStaticSamplers: 0
StaticSamplersOffset: 44
Parameters:
- - ParameterType: 2 # SRV
- ShaderVisibility: 3 # Domain
+ - ParameterType: CBV
+ ShaderVisibility: Domain
Descriptor:
ShaderRegister: 31
RegisterSpace: 32
@@ -327,8 +327,8 @@ TEST(RootSignature, ParseRootDescriptorsV11) {
NumStaticSamplers: 0
StaticSamplersOffset: 48
Parameters:
- - ParameterType: 2 # SRV
- ShaderVisibility: 3 # Domain
+ - ParameterType: CBV
+ ShaderVisibility: Domain
Descriptor:
ShaderRegister: 31
RegisterSpace: 32
@@ -379,12 +379,12 @@ TEST(RootSignature, ParseDescriptorTableV10) {
NumStaticSamplers: 0
StaticSamplersOffset: 64
Parameters:
- - ParameterType: 0 # SRV
- ShaderVisibility: 3 # Domain
+ - ParameterType: DescriptorTable
+ ShaderVisibility: Domain
Table:
NumRanges: 1
Ranges:
- - RangeType: 0
+ - RangeType: SRV
NumDescriptors: 41
BaseShaderRegister: 42
RegisterSpace: 43
@@ -435,12 +435,12 @@ TEST(RootSignature, ParseDescriptorTableV11) {
NumStaticSamplers: 0
StaticSamplersOffset: 68
Parameters:
- - ParameterType: 0 # Descriptor Table
- ShaderVisibility: 3 # Domain
+ - ParameterType: DescriptorTable
+ ShaderVisibility: Domain
Table:
NumRanges: 1
Ranges:
- - RangeType: 0
+ - RangeType: SRV
NumDescriptors: -1
BaseShaderRegister: 42
RegisterSpace: 43
@@ -492,19 +492,19 @@ TEST(RootSignature, ParseStaticSamplers) {
StaticSamplersOffset: 24
Parameters: []
Samplers:
- - Filter: 16
- AddressU: 1
- AddressV: 2
- AddressW: 5
+ - Filter: MinLinearMagMipPoint
+ AddressU: Wrap
+ AddressV: Mirror
+ AddressW: MirrorOnce
MipLODBias: 1.23
MaxAnisotropy: 20
- ComparisonFunc: 4
- BorderColor: 0
+ ComparisonFunc: LessEqual
+ BorderColor: TransparentBlack
MinLOD: 4.56
MaxLOD: 8.90
ShaderRegister: 31
RegisterSpace: 32
- ShaderVisibility: 7
+ ShaderVisibility: Mesh
AllowInputAssemblerInputLayout: true
DenyGeometryShaderRootAccess: true
)"));
More information about the llvm-commits
mailing list