[llvm-branch-commits] [mlir] 77a82ff - Merge branch 'main' into revert-157529-CorrectLineTable
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Fri Sep 12 12:00:35 PDT 2025
Author: David Blaikie
Date: 2025-09-12T12:00:19-07:00
New Revision: 77a82ffd5436da4367901ac74c206cc59d234678
URL: https://github.com/llvm/llvm-project/commit/77a82ffd5436da4367901ac74c206cc59d234678
DIFF: https://github.com/llvm/llvm-project/commit/77a82ffd5436da4367901ac74c206cc59d234678.diff
LOG: Merge branch 'main' into revert-157529-CorrectLineTable
Added:
Modified:
lldb/include/lldb/Utility/ArchSpec.h
lldb/source/Utility/ArchSpec.cpp
llvm/include/llvm/ObjectYAML/DXContainerYAML.h
llvm/include/llvm/Support/DXILABI.h
llvm/lib/IR/Intrinsics.cpp
llvm/lib/ObjectYAML/DXContainerEmitter.cpp
llvm/lib/ObjectYAML/DXContainerYAML.cpp
llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
llvm/test/CodeGen/AMDGPU/waitcnt-unscoped.ll
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/test/TableGen/intrinsic-attrs.td
llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp
llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
mlir/examples/standalone/CMakeLists.txt
mlir/examples/standalone/python/CMakeLists.txt
mlir/examples/standalone/test/CMakeLists.txt
mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
mlir/test/Examples/standalone/lit.local.cfg
mlir/test/Examples/standalone/test.toy
mlir/test/lit.site.cfg.py.in
Removed:
################################################################################
diff --git a/lldb/include/lldb/Utility/ArchSpec.h b/lldb/include/lldb/Utility/ArchSpec.h
index 96bd5e3597b68..361108fd8f0e7 100644
--- a/lldb/include/lldb/Utility/ArchSpec.h
+++ b/lldb/include/lldb/Utility/ArchSpec.h
@@ -327,6 +327,11 @@ class ArchSpec {
/// \return a boolean value.
bool IsMIPS() const;
+ /// If NVPTX architecture return true.
+ ///
+ /// \return a boolean value.
+ bool IsNVPTX() const;
+
/// Returns a string representing current architecture as a target CPU for
/// tools like compiler, disassembler etc.
///
diff --git a/lldb/source/Utility/ArchSpec.cpp b/lldb/source/Utility/ArchSpec.cpp
index 1b8dae39735df..2a87cc6bf7de9 100644
--- a/lldb/source/Utility/ArchSpec.cpp
+++ b/lldb/source/Utility/ArchSpec.cpp
@@ -545,6 +545,8 @@ const char *ArchSpec::GetArchitectureName() const {
bool ArchSpec::IsMIPS() const { return GetTriple().isMIPS(); }
+bool ArchSpec::IsNVPTX() const { return GetTriple().isNVPTX(); }
+
std::string ArchSpec::GetTargetABI() const {
std::string abi;
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/IR/Intrinsics.cpp b/llvm/lib/IR/Intrinsics.cpp
index 58a1f745a7122..4d2e8fadff4f7 100644
--- a/llvm/lib/IR/Intrinsics.cpp
+++ b/llvm/lib/IR/Intrinsics.cpp
@@ -740,14 +740,6 @@ Intrinsic::ID Intrinsic::lookupIntrinsicID(StringRef Name) {
#include "llvm/IR/IntrinsicImpl.inc"
#undef GET_INTRINSIC_ATTRIBUTES
-AttributeSet Intrinsic::getFnAttributes(LLVMContext &C, ID id) {
- if (id == 0)
- return AttributeSet();
- uint16_t PackedID = IntrinsicsToAttributesMap[id - 1];
- uint8_t FnAttrID = PackedID >> 8;
- return getIntrinsicFnAttributeSet(C, FnAttrID);
-}
-
Function *Intrinsic::getOrInsertDeclaration(Module *M, ID id,
ArrayRef<Type *> Tys) {
// There can never be multiple globals with the same name of
diff erent types,
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/lib/Target/AMDGPU/SIInsertWaitcnts.cpp b/llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
index b163a274396ff..ae75fb529dade 100644
--- a/llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
+++ b/llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
@@ -1941,13 +1941,7 @@ bool SIInsertWaitcnts::generateWaitcntInstBefore(MachineInstr &MI,
// LOAD_CNT is only relevant to vgpr or LDS.
unsigned RegNo = FIRST_LDS_VGPR;
- // Only objects with alias scope info were added to LDSDMAScopes array.
- // In the absense of the scope info we will not be able to disambiguate
- // aliasing here. There is no need to try searching for a corresponding
- // store slot. This is conservatively correct because in that case we
- // will produce a wait using the first (general) LDS DMA wait slot which
- // will wait on all of them anyway.
- if (Ptr && Memop->getAAInfo() && Memop->getAAInfo().Scope) {
+ if (Ptr && Memop->getAAInfo()) {
const auto &LDSDMAStores = ScoreBrackets.getLDSDMAStores();
for (unsigned I = 0, E = LDSDMAStores.size(); I != E; ++I) {
if (MI.mayAlias(AA, *LDSDMAStores[I], true))
diff --git a/llvm/test/CodeGen/AMDGPU/waitcnt-unscoped.ll b/llvm/test/CodeGen/AMDGPU/waitcnt-unscoped.ll
index 0bd8667d17e52..a00aca34252b1 100644
--- a/llvm/test/CodeGen/AMDGPU/waitcnt-unscoped.ll
+++ b/llvm/test/CodeGen/AMDGPU/waitcnt-unscoped.ll
@@ -26,7 +26,6 @@ define amdgpu_kernel void @test_waitcnt(ptr addrspace(1) %global_buffer, ptr add
; CHECK-NEXT: ds_write_b32 v1, v3
; CHECK-NEXT: ds_write_b32 v2, v3
; CHECK-NEXT: ; sched_barrier mask(0x00000000)
-; CHECK-NEXT: s_waitcnt vmcnt(0)
; CHECK-NEXT: ds_read_b32 v1, v1
; CHECK-NEXT: s_waitcnt lgkmcnt(0)
; CHECK-NEXT: global_store_dword v0, v1, s[0:1] offset:16
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/test/TableGen/intrinsic-attrs.td b/llvm/test/TableGen/intrinsic-attrs.td
index bcded0cd2e9f1..ab808445f40a2 100644
--- a/llvm/test/TableGen/intrinsic-attrs.td
+++ b/llvm/test/TableGen/intrinsic-attrs.td
@@ -25,8 +25,8 @@ def int_deref_ptr_ret : Intrinsic<[llvm_ptr_ty], [], [Dereferenceable<RetIndex,
// CHECK-NEXT: });
// CHECK: static constexpr uint16_t IntrinsicsToAttributesMap[] = {
-// CHECK: 0 << 8 | 0, // llvm.deref.ptr.ret
-// CHECK: 1 << 8 | 1, // llvm.random.gen
+// CHECK: 0 << 2 | 0, // llvm.deref.ptr.ret
+// CHECK: 1 << 2 | 1, // llvm.random.gen
// CHECK: }; // IntrinsicsToAttributesMap
// CHECK: static constexpr ArgNoAttrIDPair ArgAttrIdTable[] = {
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
)"));
diff --git a/llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp b/llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
index 09d29b8522f54..a702838afe463 100644
--- a/llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
+++ b/llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
@@ -629,21 +629,24 @@ static constexpr uint16_t IntrinsicsToAttributesMap[] = {)";
UniqAttributes.try_emplace(&Int, ID);
}
- constexpr uint16_t NoFunctionAttrsID = 255;
- if (UniqAttributes.size() > 256)
- PrintFatalError("Too many unique argument attributes for table!");
- // Note, ID 255 is used to indicate no function attributes.
- if (UniqFnAttributes.size() > 255)
- PrintFatalError("Too many unique function attributes for table!");
-
- // Assign a 16-bit packed ID for each intrinsic. The lower 8-bits will be its
- // "argument attribute ID" (index in UniqAttributes) and upper 8 bits will be
+ const uint8_t UniqAttributesBitSize = Log2_32_Ceil(UniqAttributes.size() + 1);
+ // Note, ID `-1` is used to indicate no function attributes.
+ const uint8_t UniqFnAttributesBitSize =
+ Log2_32_Ceil(UniqFnAttributes.size() + 2);
+ const uint16_t NoFunctionAttrsID =
+ maskTrailingOnes<uint16_t>(UniqFnAttributesBitSize);
+ if (UniqAttributesBitSize + UniqFnAttributesBitSize > 16)
+ PrintFatalError(
+ "More than 16 bits are used for IntrinsicsToAttributesMap's entry!");
+
+ // Assign a 16-bit packed ID for each intrinsic. The lower bits will be its
+ // "argument attribute ID" (index in UniqAttributes) and upper bits will be
// its "function attribute ID" (index in UniqFnAttributes).
for (const CodeGenIntrinsic &Int : Ints) {
uint16_t FnAttrIndex =
hasFnAttributes(Int) ? UniqFnAttributes[&Int] : NoFunctionAttrsID;
- OS << formatv("\n {} << 8 | {}, // {}", FnAttrIndex,
- UniqAttributes[&Int], Int.Name);
+ OS << formatv("\n {} << {} | {}, // {}", FnAttrIndex,
+ UniqAttributesBitSize, UniqAttributes[&Int], Int.Name);
}
OS << R"(
@@ -749,8 +752,8 @@ AttributeList Intrinsic::getAttributes(LLVMContext &C, ID id,
return AttributeList();
uint16_t PackedID = IntrinsicsToAttributesMap[id - 1];
- uint8_t FnAttrID = PackedID >> 8;
- uint8_t ArgAttrID = PackedID & 0xFF;
+ uint16_t FnAttrID = PackedID >> ({});
+ uint16_t ArgAttrID = PackedID & ({});
using PairTy = std::pair<unsigned, AttributeSet>;
alignas(PairTy) char ASStorage[sizeof(PairTy) * {}];
PairTy *AS = reinterpret_cast<PairTy *>(ASStorage);
@@ -772,10 +775,20 @@ AttributeList Intrinsic::getAttributes(LLVMContext &C, ID id,
}
return AttributeList::get(C, ArrayRef(AS, NumAttrs));
}
+
+AttributeSet Intrinsic::getFnAttributes(LLVMContext &C, ID id) {
+ if (id == 0)
+ return AttributeSet();
+ uint16_t PackedID = IntrinsicsToAttributesMap[id - 1];
+ uint16_t FnAttrID = PackedID >> ({});
+ return getIntrinsicFnAttributeSet(C, FnAttrID);
+}
#endif // GET_INTRINSIC_ATTRIBUTES
)",
- MaxNumAttrs, NoFunctionAttrsID);
+ UniqAttributesBitSize,
+ maskTrailingOnes<uint16_t>(UniqAttributesBitSize), MaxNumAttrs,
+ NoFunctionAttrsID, UniqAttributesBitSize);
}
void IntrinsicEmitter::EmitIntrinsicToBuiltinMap(
diff --git a/mlir/examples/standalone/CMakeLists.txt b/mlir/examples/standalone/CMakeLists.txt
index 88dfa3e5d57a3..03627c0c10496 100644
--- a/mlir/examples/standalone/CMakeLists.txt
+++ b/mlir/examples/standalone/CMakeLists.txt
@@ -60,5 +60,7 @@ if(MLIR_ENABLE_BINDINGS_PYTHON)
endif()
add_subdirectory(test)
add_subdirectory(standalone-opt)
-add_subdirectory(standalone-plugin)
+if(NOT WIN32)
+ add_subdirectory(standalone-plugin)
+endif()
add_subdirectory(standalone-translate)
diff --git a/mlir/examples/standalone/python/CMakeLists.txt b/mlir/examples/standalone/python/CMakeLists.txt
index a0eca9c095775..1ab27ce3b533a 100644
--- a/mlir/examples/standalone/python/CMakeLists.txt
+++ b/mlir/examples/standalone/python/CMakeLists.txt
@@ -26,6 +26,8 @@ declare_mlir_python_extension(StandalonePythonSources.Pybind11Extension
ADD_TO_PARENT StandalonePythonSources
SOURCES
StandaloneExtensionPybind11.cpp
+ PRIVATE_LINK_LIBS
+ LLVMSupport
EMBED_CAPI_LINK_LIBS
StandaloneCAPI
PYTHON_BINDINGS_LIBRARY pybind11
@@ -36,6 +38,8 @@ declare_mlir_python_extension(StandalonePythonSources.NanobindExtension
ADD_TO_PARENT StandalonePythonSources
SOURCES
StandaloneExtensionNanobind.cpp
+ PRIVATE_LINK_LIBS
+ LLVMSupport
EMBED_CAPI_LINK_LIBS
StandaloneCAPI
PYTHON_BINDINGS_LIBRARY nanobind
diff --git a/mlir/examples/standalone/test/CMakeLists.txt b/mlir/examples/standalone/test/CMakeLists.txt
index fdde159064287..8864563df8a33 100644
--- a/mlir/examples/standalone/test/CMakeLists.txt
+++ b/mlir/examples/standalone/test/CMakeLists.txt
@@ -14,8 +14,10 @@ set(STANDALONE_TEST_DEPENDS
standalone-capi-test
standalone-opt
standalone-translate
- StandalonePlugin
)
+if(NOT WIN32)
+ list(APPEND STANDALONE_TEST_DEPENDS StandalonePlugin)
+endif()
if(MLIR_ENABLE_BINDINGS_PYTHON)
list(APPEND STANDALONE_TEST_DEPENDS StandalonePythonModules)
endif()
diff --git a/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir b/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
index 1d652dc45830c..3020097dc1640 100644
--- a/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
+++ b/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
@@ -1,3 +1,4 @@
+// UNSUPPORTED: system-windows
// RUN: mlir-opt %s --load-pass-plugin=%standalone_libs/StandalonePlugin%shlibext --pass-pipeline="builtin.module(standalone-switch-bar-foo)" | FileCheck %s
module {
diff --git a/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir b/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
index 468932b81a529..900b524c1feb7 100644
--- a/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
+++ b/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
@@ -1,3 +1,4 @@
+// UNSUPPORTED: system-windows
// RUN: mlir-opt %s --load-dialect-plugin=%standalone_libs/StandalonePlugin%shlibext --pass-pipeline="builtin.module(standalone-switch-bar-foo)" | FileCheck %s
module {
diff --git a/mlir/test/Examples/standalone/lit.local.cfg b/mlir/test/Examples/standalone/lit.local.cfg
index fe8397c6b9a10..3b12dcbd99e83 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -10,3 +10,4 @@ config.substitutions.append(("%host_cc", config.host_cc))
config.substitutions.append(("%enable_libcxx", config.enable_libcxx))
config.substitutions.append(("%mlir_cmake_dir", config.mlir_cmake_dir))
config.substitutions.append(("%llvm_use_linker", config.llvm_use_linker))
+config.substitutions.append(("%cmake_build_type", config.cmake_build_type))
diff --git a/mlir/test/Examples/standalone/test.toy b/mlir/test/Examples/standalone/test.toy
index e99bab5f0affc..8b6d9dd62b76d 100644
--- a/mlir/test/Examples/standalone/test.toy
+++ b/mlir/test/Examples/standalone/test.toy
@@ -1,4 +1,5 @@
# RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" \
+# RUN: -DCMAKE_BUILD_TYPE=%cmake_build_type \
# RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx -DMLIR_DIR=%mlir_cmake_dir \
# RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
@@ -11,4 +12,4 @@
# if any fail.
# CHECK: Passed
# CHECK-NOT: Failed
-# UNSUPPORTED: target={{.*(windows|android).*}}
+# UNSUPPORTED: target={{.*(android).*}}
diff --git a/mlir/test/lit.site.cfg.py.in b/mlir/test/lit.site.cfg.py.in
index 8a742a227847b..2fc595dfabbf5 100644
--- a/mlir/test/lit.site.cfg.py.in
+++ b/mlir/test/lit.site.cfg.py.in
@@ -18,6 +18,7 @@ config.host_cxx = "@HOST_CXX@"
config.enable_libcxx = "@LLVM_ENABLE_LIBCXX@"
config.host_cmake = "@CMAKE_COMMAND@"
config.host_cmake_generator = "@CMAKE_GENERATOR@"
+config.cmake_build_type = "@CMAKE_BUILD_TYPE@"
config.llvm_use_linker = "@LLVM_USE_LINKER@"
config.llvm_use_sanitizer = "@LLVM_USE_SANITIZER@"
config.host_arch = "@HOST_ARCH@"
More information about the llvm-branch-commits
mailing list