Skip to content

Instantly share code, notes, and snippets.

@bjacob
Created December 7, 2025 14:20
Show Gist options
  • Select an option

  • Save bjacob/f4fe45961d1b70dd713260e08f31b4ae to your computer and use it in GitHub Desktop.

Select an option

Save bjacob/f4fe45961d1b70dd713260e08f31b4ae to your computer and use it in GitHub Desktop.
➜ iree-build ninja iree-opt && tools/iree-opt '--pass-pipeline=builtin.module(func.func(iree-codegen-materialize-device-encoding))' /tmp/xx/iree/compiler/plugins/target/ROCM/test/materialize_encoding_ukernel_gfx942.mlir
[0/2] Re-checking globbed directories...
[4/4] Linking CXX executable tools/iree-opt
=================================================================
==118841==ERROR: AddressSanitizer: heap-use-after-free on address 0x7cd8cc303aec at pc 0x7ff8e297eb6d bp 0x7bf8c725b8f0 sp 0x7bf8c725b8e8
READ of size 4 at 0x7cd8cc303aec thread T5
#0 0x7ff8e297eb6c in mlir::Operation::getPropertiesStorageSize() const /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/Operation.h:897:18
#1 0x7ff8e297eb6c in mlir::Operation::getAttr(llvm::StringRef) /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/Operation.h:542:9
#2 0x7ff8e297eb6c in mlir::iree_compiler::IREE::ROCM::TensorUKernelProviderAttr::getDataLayoutForUKernel(mlir::Attribute, mlir::DictionaryAttr) const /tmp/xx/iree/compiler/plugins/target/ROCM/Dialect/ROCM/IR/ROCMAttrs.cpp:147:54
#3 0x7ff8e2984069 in mlir::iree_compiler::IREE::Codegen::detail::UKernelProviderInterfaceInterfaceTraits::Model<mlir::iree_compiler::IREE::ROCM::TensorUKernelProviderAttr>::getDataLayoutForUKernel(mlir::iree_compiler::IREE::Codegen::detail::UKernelProviderInterfaceInterfaceTraits::Concept const*, mlir::Attribute, mlir::Attribute, mlir::DictionaryAttr) /tmp/xx/iree-build/compiler/src/iree/compiler/Codegen/Dialect/Codegen/IR/IREECodegenInterfaces.h.inc:1468:60
#4 0x7ff8e30bcf52 in mlir::iree_compiler::IREE::GPU::(anonymous namespace)::chooseDataTiledMMAAttr(mlir::TypeRange, mlir::iree_compiler::IREE::GPU::TargetAttr, mlir::iree_compiler::IREE::Encoding::EncodingAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr) /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/GPUEncodingExternalModels.cpp:119:18
#5 0x7ff8e30bc2ba in mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingPackedLayoutMaterializerAttr::getEncodingInfoImpl(mlir::Attribute, mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/GPUEncodingExternalModels.cpp:529:37
#6 0x7ff8e30bc2ba in mlir::iree_compiler::IREE::PackedLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingPackedLayoutMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::getEncodingInfo(mlir::Attribute, mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h:50:18
#7 0x7ff8e30bc2ba in mlir::iree_compiler::IREE::Codegen::detail::PackedLayoutMaterializerAttrInterfaceTraits::FallbackModel<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingPackedLayoutMaterializerAttr>::getEncodingInfo(mlir::iree_compiler::IREE::Codegen::detail::PackedLayoutMaterializerAttrInterfaceTraits::Concept const*, mlir::Attribute, mlir::RankedTensorType) /tmp/xx/iree-build/compiler/src/iree/compiler/Codegen/Dialect/Codegen/IR/IREECodegenInterfaces.h.inc:1419:51
#8 0x7ff8de68d24d in mlir::iree_compiler::IREE::Codegen::PackedLayoutMaterializerAttr::getEncodingInfo(mlir::RankedTensorType) const /tmp/xx/iree-build/compiler/src/iree/compiler/Codegen/Dialect/Codegen/IR/IREECodegenInterfaces.cpp.inc:229:14
#9 0x7ff8e30b78de in mlir::iree_compiler::getEncodingInfoFromLayout(mlir::RankedTensorType, mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr) /tmp/xx/iree/compiler/src/iree/compiler/Codegen/Utils/EncodingUtils.cpp:47:29
#10 0x7ff8e30c0a6a in mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::getEncodingInfo(mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr, mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h:61:12
#11 0x7ff8e30c0a6a in mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)::operator()(mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h:73:15
#12 0x7ff8e30c0a6a in llvm::TypeSwitch<mlir::Type, mlir::Type>& llvm::TypeSwitch<mlir::Type, mlir::Type>::Case<mlir::RankedTensorType, mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)>(mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)&&) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/TypeSwitch.h:103:22
#13 0x7ff8e30c0a6a in llvm::TypeSwitch<mlir::Type, mlir::Type>& llvm::detail::TypeSwitchBase<llvm::TypeSwitch<mlir::Type, mlir::Type>, mlir::Type>::Case<mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)>(mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)&&) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/TypeSwitch.h:61:29
#14 0x7ff8e30c0a6a in mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h:68:10
#15 0x7ff8e617448d in mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4::operator()(mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/Common/EncodingUtils.cpp:28:51
#16 0x7ff8e617448d in std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)::operator()(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&) const /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/Transforms/DialectConversion.h:401:43
#17 0x7ff8e617448d in std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&> && std::is_base_of_v<mlir::Type, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&) const::'lambda'(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)::operator()(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&) const /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/Transforms/DialectConversion.h:430:14
#18 0x7ff8e617448d in mlir::RankedTensorType std::__invoke_impl<std::optional<llvm::LogicalResult>, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&> && std::is_base_of_v<mlir::Type, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&) const::'lambda'(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)&, llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&>(std::__invoke_other, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&, llvm::PointerUnion<mlir::Type, mlir::Value>&&, llvm::SmallVectorImpl<mlir::Type>&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:61:14
#19 0x7ff8e617448d in std::enable_if<is_invocable_r_v<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&>, mlir::RankedTensorType>::type std::__invoke_r<std::optional<llvm::LogicalResult>, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&> && std::is_base_of_v<mlir::Type, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&) const::'lambda'(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)&, llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&, llvm::PointerUnion<mlir::Type, mlir::Value>&&, llvm::SmallVectorImpl<mlir::Type>&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:114:9
#20 0x7ff8e617448d in std::_Function_handler<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&), std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&> && std::is_base_of_v<mlir::Type, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&) const::'lambda'(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>::_M_invoke(std::_Any_data const&, llvm::PointerUnion<mlir::Type, mlir::Value>&&, llvm::SmallVectorImpl<mlir::Type>&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_function.h:290:9
#21 0x7ff8eb4b09b6 in std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>::operator()(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&) const /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_function.h:591:9
#22 0x7ff8eb4b09b6 in mlir::TypeConverter::convertTypeImpl(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&) const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:3523:43
#23 0x7ff8eb490ac4 in mlir::TypeConverter::convertType(mlir::Value, llvm::SmallVectorImpl<mlir::Type>&) const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:3556:10
#24 0x7ff8eb490ac4 in mlir::detail::ConversionPatternRewriterImpl::remapValues(llvm::StringRef, std::optional<mlir::Location>, mlir::ValueRange, llvm::SmallVector<llvm::SmallVector<mlir::Value, 1u>, 2u>&) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:1496:38
#25 0x7ff8eb4a74a5 in mlir::ConversionPattern::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&) const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:2400:27
#26 0x7ff8eb56481c in mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>)::$_0::operator()() const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Rewrite/PatternApplicator.cpp:223:31
#27 0x7ff8eb56481c in void llvm::function_ref<void ()>::callback_fn<mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>)::$_0>(long) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:12
#28 0x7ff8eb55c643 in llvm::function_ref<void ()>::operator()() const /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:69:12
#29 0x7ff8eb55c643 in void mlir::MLIRContext::executeAction<mlir::ApplyPatternAction, mlir::Pattern const&>(llvm::function_ref<void ()>, llvm::ArrayRef<mlir::IRUnit>, mlir::Pattern const&) /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/MLIRContext.h:290:7
#30 0x7ff8eb55c643 in mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Rewrite/PatternApplicator.cpp:197:23
#31 0x7ff8eb4aa86e in (anonymous namespace)::OperationLegalizer::legalizeWithPattern(mlir::Operation*) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:2826:21
#32 0x7ff8eb4aa86e in (anonymous namespace)::OperationLegalizer::legalize(mlir::Operation*) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:2605:17
#33 0x7ff8eb4a99c7 in mlir::OperationConverter::convert(mlir::Operation*, bool) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:3293:26
#34 0x7ff8eb4ac0fc in mlir::OperationConverter::convertOperations(llvm::ArrayRef<mlir::Operation*>) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:3395:16
#35 0x7ff8eb4cbb03 in applyConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig, (anonymous namespace)::OpConversionMode)::$_0::operator()() const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:4118:30
#36 0x7ff8eb4cbb03 in void llvm::function_ref<void ()>::callback_fn<applyConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig, (anonymous namespace)::OpConversionMode)::$_0>(long) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:12
#37 0x7ff8eb4b871c in llvm::function_ref<void ()>::operator()() const /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:69:12
#38 0x7ff8eb4b871c in void mlir::MLIRContext::executeAction<ApplyConversionAction>(llvm::function_ref<void ()>, llvm::ArrayRef<mlir::IRUnit>) /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/MLIRContext.h:290:7
#39 0x7ff8eb4b871c in applyConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig, (anonymous namespace)::OpConversionMode) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:4114:8
#40 0x7ff8eb4b895e in mlir::applyPartialConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:4131:10
#41 0x7ff8eb4b895e in mlir::applyPartialConversion(mlir::Operation*, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:4138:10
#42 0x7ff8e6169dd9 in mlir::iree_compiler::(anonymous namespace)::materializeFuncOpEncodings(mlir::FunctionOpInterface, mlir::iree_compiler::IREE::HAL::ExecutableTargetAttr, mlir::iree_compiler::detail::TestingResolverKind) /tmp/xx/iree/compiler/src/iree/compiler/Codegen/Common/MaterializeEncoding.cpp:176:16
#43 0x7ff8e616d89a in mlir::iree_compiler::(anonymous namespace)::MaterializeDeviceEncodingPass::runOnOperation() /tmp/xx/iree/compiler/src/iree/compiler/Codegen/Common/MaterializeEncoding.cpp:327:16
#44 0x7ff8deae9210 in mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int)::$_3::operator()() const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Pass/Pass.cpp:609:17
#45 0x7ff8deae9210 in void llvm::function_ref<void ()>::callback_fn<mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int)::$_3>(long) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:12
#46 0x7ff8deae9210 in llvm::function_ref<void ()>::operator()() const /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:69:12
#47 0x7ff8deae9210 in void mlir::MLIRContext::executeAction<mlir::PassExecutionAction, mlir::Pass&>(llvm::function_ref<void ()>, llvm::ArrayRef<mlir::IRUnit>, mlir::Pass&) /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/MLIRContext.h:290:7
#48 0x7ff8deae9210 in mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Pass/Pass.cpp:603:21
#49 0x7ff8deaeb0b4 in mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Pass/Pass.cpp:682:16
#50 0x7ff8deb04d47 in mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_12::operator()(mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&) const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Pass/Pass.cpp:995:36
#51 0x7ff8deb04d47 in auto void mlir::parallelForEach<__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_12>(mlir::MLIRContext*, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_12&&)::'lambda'(__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>&&)::operator()<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&>(__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>&&) const /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/Threading.h:120:12
#52 0x7ff8deb05143 in llvm::LogicalResult mlir::failableParallelForEach<__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, void mlir::parallelForEach<__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_12>(mlir::MLIRContext*, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_12&&)::'lambda'(__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>&&)>(mlir::MLIRContext*, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_12&&)::'lambda'()::operator()() const /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/Threading.h:62:18
#53 0x7ff8deb05143 in void llvm::detail::UniqueFunctionBase<void>::CallImpl<llvm::LogicalResult mlir::failableParallelForEach<__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, void mlir::parallelForEach<__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_12>(mlir::MLIRContext*, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_12&&)::'lambda'(__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>&&)>(mlir::MLIRContext*, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_12&&)::'lambda'()>(void*) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/FunctionExtras.h:212:12
#54 0x7ff8ddb87b13 in llvm::unique_function<void ()>::operator()() /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/FunctionExtras.h:364:12
#55 0x7ff8ddb87b13 in void std::__invoke_impl<void, llvm::unique_function<void ()>>(std::__invoke_other, llvm::unique_function<void ()>&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:61:14
#56 0x7ff8ddb87b13 in std::__invoke_result<llvm::unique_function<void ()>>::type std::__invoke<llvm::unique_function<void ()>>(llvm::unique_function<void ()>&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:96:14
#57 0x7ff8ddb87b13 in void std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_thread.h:292:13
#58 0x7ff8ddb87b13 in std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>::operator()() /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_thread.h:299:11
#59 0x7ff8ddb87b13 in std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>, void>::operator()() const /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/future:1432:6
#60 0x7ff8ddb87b13 in std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter> std::__invoke_impl<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>, void>&>(std::__invoke_other, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>, void>&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:61:14
#61 0x7ff8ddb87b13 in std::enable_if<is_invocable_r_v<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>, void>&>, std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>>::type std::__invoke_r<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>, void>&>(std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>, void>&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:114:9
#62 0x7ff8ddb87b13 in std::_Function_handler<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> (), std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>, void>>::_M_invoke(std::_Any_data const&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_function.h:290:9
#63 0x7ff8ddb8781c in std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>::operator()() const /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_function.h:591:9
#64 0x7ff8ddb8781c in std::__future_base::_State_baseV2::_M_do_set(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/future:589:27
#65 0x7ff8cd094ed2 in __pthread_once_slow nptl/pthread_once.c:116:7
#66 0x7ff8ddb88989 in __gthread_once(int*, void (*)()) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/x86_64-linux-gnu/c++/13/bits/gthr-default.h:700:12
#67 0x7ff8ddb88989 in void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/mutex:907:21
#68 0x7ff8ddb88989 in std::__future_base::_State_baseV2::_M_set_result(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>, bool) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/future:428:2
#69 0x7ff8ddb88989 in std::__future_base::_Deferred_state<std::thread::_Invoker<std::tuple<llvm::unique_function<void ()>>>, void>::_M_complete_async() /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/future:1705:9
#70 0x7ff8ddb88b77 in std::__future_base::_State_baseV2::wait() /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/future:350:2
#71 0x7ff8ddb88b77 in std::__basic_future<void>::wait() const /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/future:716:19
#72 0x7ff8ddb88b77 in std::shared_future<void> llvm::ThreadPoolInterface::asyncImpl<void>(llvm::unique_function<void ()>, llvm::ThreadPoolTaskGroup*)::'lambda'()::operator()() const /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/Support/ThreadPool.h:116:38
#73 0x7ff8ddb88b77 in void llvm::detail::UniqueFunctionBase<void>::CallImpl<std::shared_future<void> llvm::ThreadPoolInterface::asyncImpl<void>(llvm::unique_function<void ()>, llvm::ThreadPoolTaskGroup*)::'lambda'()>(void*) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/FunctionExtras.h:212:12
#74 0x7ff8dd7a0e8c in llvm::unique_function<void ()>::operator()() /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/FunctionExtras.h:364:12
#75 0x7ff8dd7a0e8c in llvm::StdThreadPool::processTasks(llvm::ThreadPoolTaskGroup*) /tmp/xx/iree/third_party/llvm-project/llvm/lib/Support/ThreadPool.cpp:119:5
#76 0x7ff8dd7a5e96 in llvm::StdThreadPool::grow(int)::$_0::operator()() const /tmp/xx/iree/third_party/llvm-project/llvm/lib/Support/ThreadPool.cpp:62:9
#77 0x7ff8dd7a5e96 in auto void llvm::thread::GenericThreadProxy<std::tuple<llvm::StdThreadPool::grow(int)::$_0>>(void*)::'lambda'(auto&&, auto&&...)::operator()<llvm::StdThreadPool::grow(int)::$_0&>(auto&&, auto&&...) const /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/Support/thread.h:46:11
#78 0x7ff8dd7a5e96 in auto std::__invoke_impl<void, void llvm::thread::GenericThreadProxy<std::tuple<llvm::StdThreadPool::grow(int)::$_0>>(void*)::'lambda'(auto&&, auto&&...), llvm::StdThreadPool::grow(int)::$_0&>(std::__invoke_other, void llvm::thread::GenericThreadProxy<std::tuple<llvm::StdThreadPool::grow(int)::$_0>>(void*)::'lambda'(auto&&, auto&&...)&&, llvm::StdThreadPool::grow(int)::$_0&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:61:14
#79 0x7ff8dd7a5e96 in std::__invoke_result<auto, auto...>::type std::__invoke<void llvm::thread::GenericThreadProxy<std::tuple<llvm::StdThreadPool::grow(int)::$_0>>(void*)::'lambda'(auto&&, auto&&...), llvm::StdThreadPool::grow(int)::$_0&>(auto&&, auto&&...) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:96:14
#80 0x7ff8dd7a5e96 in decltype(auto) std::__apply_impl<void llvm::thread::GenericThreadProxy<std::tuple<llvm::StdThreadPool::grow(int)::$_0>>(void*)::'lambda'(auto&&, auto&&...), std::tuple<llvm::StdThreadPool::grow(int)::$_0>&, 0ul>(auto&&, std::tuple<llvm::StdThreadPool::grow(int)::$_0>&, std::integer_sequence<unsigned long, 0ul>) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/tuple:2302:14
#81 0x7ff8dd7a5e96 in decltype(auto) std::apply<void llvm::thread::GenericThreadProxy<std::tuple<llvm::StdThreadPool::grow(int)::$_0>>(void*)::'lambda'(auto&&, auto&&...), std::tuple<llvm::StdThreadPool::grow(int)::$_0>&>(auto&&, std::tuple<llvm::StdThreadPool::grow(int)::$_0>&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/tuple:2313:14
#82 0x7ff8dd7a5e96 in void llvm::thread::GenericThreadProxy<std::tuple<llvm::StdThreadPool::grow(int)::$_0>>(void*) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/Support/thread.h:44:5
#83 0x7ff8dd7a5e96 in void* llvm::thread::ThreadProxy<std::tuple<llvm::StdThreadPool::grow(int)::$_0>>(void*) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/Support/thread.h:58:5
#84 0x555c43b77c56 in asan_thread_start(void*) /home/runner/work/llvm-project/llvm-project/compiler-rt/lib/asan/asan_interceptors.cpp:239:28
#85 0x7ff8cd08faa3 in start_thread nptl/pthread_create.c:447:8
#86 0x7ff8cd11cc6b in clone3 misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
0x7cd8cc303aec is located 44 bytes inside of 152-byte region [0x7cd8cc303ac0,0x7cd8cc303b58)
freed by thread T4 here:
#0 0x555c43b7a0d6 in free /home/runner/work/llvm-project/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:51:3
#1 0x7ff8dd979db8 in llvm::iplist_impl<llvm::simple_ilist<mlir::Operation>, llvm::ilist_traits<mlir::Operation>>::erase(llvm::ilist_iterator<llvm::ilist_detail::node_options<mlir::Operation, false, false, void, false, void>, false, false>) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/ilist.h:205:5
#2 0x7ff8dd979db8 in llvm::iplist_impl<llvm::simple_ilist<mlir::Operation>, llvm::ilist_traits<mlir::Operation>>::pop_back() /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/ilist.h:257:25
#3 0x7ff8dd979db8 in mlir::Block::clear() /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/Block.h:45:18
previously allocated by thread T5 here:
#0 0x555c43b7a374 in malloc /home/runner/work/llvm-project/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:67:3
#1 0x7ff8ddb07ad4 in mlir::Operation::create(mlir::Location, mlir::OperationName, mlir::TypeRange, mlir::ValueRange, mlir::DictionaryAttr, mlir::OpaqueProperties, mlir::BlockRange, unsigned int) /tmp/xx/iree/third_party/llvm-project/mlir/lib/IR/Operation.cpp:114:46
#2 0x7ff8ddb07169 in mlir::Operation::create(mlir::Location, mlir::OperationName, mlir::TypeRange, mlir::ValueRange, mlir::NamedAttrList&&, mlir::OpaqueProperties, mlir::BlockRange, unsigned int) /tmp/xx/iree/third_party/llvm-project/mlir/lib/IR/Operation.cpp:75:10
#3 0x7ff8ddb07169 in mlir::Operation::create(mlir::Location, mlir::OperationName, mlir::TypeRange, mlir::ValueRange, mlir::NamedAttrList&&, mlir::OpaqueProperties, mlir::BlockRange, mlir::RegionRange) /tmp/xx/iree/third_party/llvm-project/mlir/lib/IR/Operation.cpp:58:7
#4 0x7ff8ddb06db9 in mlir::Operation::create(mlir::OperationState const&) /tmp/xx/iree/third_party/llvm-project/mlir/lib/IR/Operation.cpp:36:7
#5 0x7ff8dd984f1f in mlir::OpBuilder::create(mlir::OperationState const&) /tmp/xx/iree/third_party/llvm-project/mlir/lib/IR/Builders.cpp:458:17
#6 0x7ff8f51a94e8 in (anonymous namespace)::TopLevelOperationParser::parse(mlir::Block*, mlir::Location) /tmp/xx/iree/third_party/llvm-project/mlir/lib/AsmParser/Parser.cpp:2870:20
#7 0x7ff8f51a94e8 in mlir::parseAsmSourceFile(llvm::SourceMgr const&, mlir::Block*, mlir::ParserConfig const&, mlir::AsmParserState*, mlir::AsmParserCodeCompleteContext*) /tmp/xx/iree/third_party/llvm-project/mlir/lib/AsmParser/Parser.cpp:2930:41
#8 0x7ff8ddbfdbf5 in mlir::parseSourceFile(llvm::SourceMgr const&, mlir::Block*, mlir::ParserConfig const&, mlir::LocationAttr*) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Parser/Parser.cpp:49:10
#9 0x7ff8ddbfee33 in mlir::parseSourceString(llvm::StringRef, mlir::Block*, mlir::ParserConfig const&, llvm::StringRef, mlir::LocationAttr*) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Parser/Parser.cpp:120:10
#10 0x7ff8e2986562 in mlir::OwningOpRef<mlir::ModuleOp> mlir::parseSourceString<mlir::ModuleOp>(llvm::StringRef, mlir::ParserConfig const&, llvm::StringRef) /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/Parser/Parser.h:249:14
#11 0x7ff8e2986562 in mlir::iree_compiler::IREE::ROCM::ROCMDialect::getOrLoadBuiltinModule(llvm::StringRef) /tmp/xx/iree/compiler/plugins/target/ROCM/Dialect/ROCM/IR/ROCMBuiltinManager.cpp:44:7
#12 0x7ff8e2988204 in mlir::iree_compiler::IREE::ROCM::ROCMDialect::getMlirUKernels() /tmp/xx/iree/compiler/plugins/target/ROCM/Dialect/ROCM/IR/ROCMDialect.cpp:94:27
#13 0x7ff8e297df5f in mlir::iree_compiler::IREE::ROCM::TensorUKernelProviderAttr::getDataLayoutForUKernel(mlir::Attribute, mlir::DictionaryAttr) const /tmp/xx/iree/compiler/plugins/target/ROCM/Dialect/ROCM/IR/ROCMAttrs.cpp:143:42
#14 0x7ff8e2984069 in mlir::iree_compiler::IREE::Codegen::detail::UKernelProviderInterfaceInterfaceTraits::Model<mlir::iree_compiler::IREE::ROCM::TensorUKernelProviderAttr>::getDataLayoutForUKernel(mlir::iree_compiler::IREE::Codegen::detail::UKernelProviderInterfaceInterfaceTraits::Concept const*, mlir::Attribute, mlir::Attribute, mlir::DictionaryAttr) /tmp/xx/iree-build/compiler/src/iree/compiler/Codegen/Dialect/Codegen/IR/IREECodegenInterfaces.h.inc:1468:60
#15 0x7ff8e30bcf52 in mlir::iree_compiler::IREE::GPU::(anonymous namespace)::chooseDataTiledMMAAttr(mlir::TypeRange, mlir::iree_compiler::IREE::GPU::TargetAttr, mlir::iree_compiler::IREE::Encoding::EncodingAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr) /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/GPUEncodingExternalModels.cpp:119:18
#16 0x7ff8e30bc2ba in mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingPackedLayoutMaterializerAttr::getEncodingInfoImpl(mlir::Attribute, mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/GPUEncodingExternalModels.cpp:529:37
#17 0x7ff8e30bc2ba in mlir::iree_compiler::IREE::PackedLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingPackedLayoutMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::getEncodingInfo(mlir::Attribute, mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h:50:18
#18 0x7ff8e30bc2ba in mlir::iree_compiler::IREE::Codegen::detail::PackedLayoutMaterializerAttrInterfaceTraits::FallbackModel<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingPackedLayoutMaterializerAttr>::getEncodingInfo(mlir::iree_compiler::IREE::Codegen::detail::PackedLayoutMaterializerAttrInterfaceTraits::Concept const*, mlir::Attribute, mlir::RankedTensorType) /tmp/xx/iree-build/compiler/src/iree/compiler/Codegen/Dialect/Codegen/IR/IREECodegenInterfaces.h.inc:1419:51
#19 0x7ff8de68d24d in mlir::iree_compiler::IREE::Codegen::PackedLayoutMaterializerAttr::getEncodingInfo(mlir::RankedTensorType) const /tmp/xx/iree-build/compiler/src/iree/compiler/Codegen/Dialect/Codegen/IR/IREECodegenInterfaces.cpp.inc:229:14
#20 0x7ff8e30b78de in mlir::iree_compiler::getEncodingInfoFromLayout(mlir::RankedTensorType, mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr) /tmp/xx/iree/compiler/src/iree/compiler/Codegen/Utils/EncodingUtils.cpp:47:29
#21 0x7ff8e30c0a6a in mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::getEncodingInfo(mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr, mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h:61:12
#22 0x7ff8e30c0a6a in mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)::operator()(mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h:73:15
#23 0x7ff8e30c0a6a in llvm::TypeSwitch<mlir::Type, mlir::Type>& llvm::TypeSwitch<mlir::Type, mlir::Type>::Case<mlir::RankedTensorType, mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)>(mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)&&) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/TypeSwitch.h:103:22
#24 0x7ff8e30c0a6a in llvm::TypeSwitch<mlir::Type, mlir::Type>& llvm::detail::TypeSwitchBase<llvm::TypeSwitch<mlir::Type, mlir::Type>, mlir::Type>::Case<mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)>(mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const::'lambda'(mlir::RankedTensorType)&&) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/TypeSwitch.h:61:29
#25 0x7ff8e30c0a6a in mlir::iree_compiler::IREE::EncodingLayoutMaterializerAttrExternalModelBase<mlir::iree_compiler::IREE::GPU::(anonymous namespace)::GPUEncodingResolverMaterializerAttr, mlir::iree_compiler::IREE::GPU::GPUEncodingResolverAttr>::convertType(mlir::Attribute, mlir::Type) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h:68:10
#26 0x7ff8e617448d in mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4::operator()(mlir::RankedTensorType) const /tmp/xx/iree/compiler/src/iree/compiler/Codegen/Common/EncodingUtils.cpp:28:51
#27 0x7ff8e617448d in std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)::operator()(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&) const /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/Transforms/DialectConversion.h:401:43
#28 0x7ff8e617448d in std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&> && std::is_base_of_v<mlir::Type, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&) const::'lambda'(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)::operator()(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&) const /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/Transforms/DialectConversion.h:430:14
#29 0x7ff8e617448d in mlir::RankedTensorType std::__invoke_impl<std::optional<llvm::LogicalResult>, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&> && std::is_base_of_v<mlir::Type, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&) const::'lambda'(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)&, llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&>(std::__invoke_other, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&, llvm::PointerUnion<mlir::Type, mlir::Value>&&, llvm::SmallVectorImpl<mlir::Type>&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:61:14
#30 0x7ff8e617448d in std::enable_if<is_invocable_r_v<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&>, mlir::RankedTensorType>::type std::__invoke_r<std::optional<llvm::LogicalResult>, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&> && std::is_base_of_v<mlir::Type, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&) const::'lambda'(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)&, llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&, llvm::PointerUnion<mlir::Type, mlir::Value>&&, llvm::SmallVectorImpl<mlir::Type>&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:114:9
#31 0x7ff8e617448d in std::_Function_handler<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&), std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&> && std::is_base_of_v<mlir::Type, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, std::enable_if<std::is_invocable_v<mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4, mlir::RankedTensorType>, std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>>::type mlir::TypeConverter::wrapCallback<mlir::RankedTensorType, mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&)::'lambda'(mlir::RankedTensorType, llvm::SmallVectorImpl<mlir::Type>&)>(mlir::iree_compiler::MaterializeEncodingTypeConverter::MaterializeEncodingTypeConverter(mlir::iree_compiler::IREE::Encoding::LayoutMaterializerAttr)::$_4&&) const::'lambda'(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>::_M_invoke(std::_Any_data const&, llvm::PointerUnion<mlir::Type, mlir::Value>&&, llvm::SmallVectorImpl<mlir::Type>&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_function.h:290:9
#32 0x7ff8eb4b09b6 in std::function<std::optional<llvm::LogicalResult> (llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&)>::operator()(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&) const /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_function.h:591:9
#33 0x7ff8eb4b09b6 in mlir::TypeConverter::convertTypeImpl(llvm::PointerUnion<mlir::Type, mlir::Value>, llvm::SmallVectorImpl<mlir::Type>&) const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:3523:43
#34 0x7ff8eb490ac4 in mlir::TypeConverter::convertType(mlir::Value, llvm::SmallVectorImpl<mlir::Type>&) const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:3556:10
#35 0x7ff8eb490ac4 in mlir::detail::ConversionPatternRewriterImpl::remapValues(llvm::StringRef, std::optional<mlir::Location>, mlir::ValueRange, llvm::SmallVector<llvm::SmallVector<mlir::Value, 1u>, 2u>&) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:1496:38
#36 0x7ff8eb4a74a5 in mlir::ConversionPattern::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&) const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:2400:27
#37 0x7ff8eb56481c in mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>)::$_0::operator()() const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Rewrite/PatternApplicator.cpp:223:31
#38 0x7ff8eb56481c in void llvm::function_ref<void ()>::callback_fn<mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>)::$_0>(long) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:12
#39 0x7ff8eb55c643 in llvm::function_ref<void ()>::operator()() const /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:69:12
#40 0x7ff8eb55c643 in void mlir::MLIRContext::executeAction<mlir::ApplyPatternAction, mlir::Pattern const&>(llvm::function_ref<void ()>, llvm::ArrayRef<mlir::IRUnit>, mlir::Pattern const&) /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/MLIRContext.h:290:7
#41 0x7ff8eb55c643 in mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Rewrite/PatternApplicator.cpp:197:23
#42 0x7ff8eb4aa86e in (anonymous namespace)::OperationLegalizer::legalizeWithPattern(mlir::Operation*) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:2826:21
#43 0x7ff8eb4aa86e in (anonymous namespace)::OperationLegalizer::legalize(mlir::Operation*) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:2605:17
#44 0x7ff8eb4a99c7 in mlir::OperationConverter::convert(mlir::Operation*, bool) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:3293:26
#45 0x7ff8eb4ac0fc in mlir::OperationConverter::convertOperations(llvm::ArrayRef<mlir::Operation*>) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:3395:16
#46 0x7ff8eb4cbb03 in applyConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig, (anonymous namespace)::OpConversionMode)::$_0::operator()() const /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:4118:30
#47 0x7ff8eb4cbb03 in void llvm::function_ref<void ()>::callback_fn<applyConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig, (anonymous namespace)::OpConversionMode)::$_0>(long) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:12
#48 0x7ff8eb4b871c in llvm::function_ref<void ()>::operator()() const /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:69:12
#49 0x7ff8eb4b871c in void mlir::MLIRContext::executeAction<ApplyConversionAction>(llvm::function_ref<void ()>, llvm::ArrayRef<mlir::IRUnit>) /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/MLIRContext.h:290:7
#50 0x7ff8eb4b871c in applyConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig, (anonymous namespace)::OpConversionMode) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:4114:8
#51 0x7ff8eb4b895e in mlir::applyPartialConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:4131:10
#52 0x7ff8eb4b895e in mlir::applyPartialConversion(mlir::Operation*, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) /tmp/xx/iree/third_party/llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:4138:10
#53 0x7ff8e6169dd9 in mlir::iree_compiler::(anonymous namespace)::materializeFuncOpEncodings(mlir::FunctionOpInterface, mlir::iree_compiler::IREE::HAL::ExecutableTargetAttr, mlir::iree_compiler::detail::TestingResolverKind) /tmp/xx/iree/compiler/src/iree/compiler/Codegen/Common/MaterializeEncoding.cpp:176:16
Thread T5 created by T0 here:
#0 0x555c43b5e401 in pthread_create /home/runner/work/llvm-project/llvm-project/compiler-rt/lib/asan/asan_interceptors.cpp:250:3
#1 0x7ff8dd889344 in llvm::llvm_execute_on_thread_impl(void* (*)(void*), void*, std::optional<unsigned int>) /tmp/xx/iree/third_party/llvm-project/llvm/lib/Support/Unix/Threading.inc:100:17
#2 0x7ff8dd7a0261 in llvm::thread::thread<llvm::StdThreadPool::grow(int)::$_0&>(std::optional<unsigned int>, llvm::StdThreadPool::grow(int)::$_0&) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/Support/thread.h:134:12
#3 0x7ff8dd7a0261 in llvm::thread::thread<llvm::StdThreadPool::grow(int)::$_0>(llvm::StdThreadPool::grow(int)::$_0&&) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/Support/thread.h:81:9
#4 0x7ff8dd7a0261 in void std::__new_allocator<llvm::thread>::construct<llvm::thread, llvm::StdThreadPool::grow(int)::$_0>(llvm::thread*, llvm::StdThreadPool::grow(int)::$_0&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/new_allocator.h:191:23
#5 0x7ff8dd7a0261 in void std::allocator_traits<std::allocator<llvm::thread>>::construct<llvm::thread, llvm::StdThreadPool::grow(int)::$_0>(std::allocator<llvm::thread>&, llvm::thread*, llvm::StdThreadPool::grow(int)::$_0&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/alloc_traits.h:538:8
#6 0x7ff8dd7a0261 in void std::vector<llvm::thread, std::allocator<llvm::thread>>::_M_realloc_insert<llvm::StdThreadPool::grow(int)::$_0>(__gnu_cxx::__normal_iterator<llvm::thread*, std::vector<llvm::thread, std::allocator<llvm::thread>>>, llvm::StdThreadPool::grow(int)::$_0&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/vector.tcc:468:4
#7 0x7ff8dd7a0261 in llvm::thread& std::vector<llvm::thread, std::allocator<llvm::thread>>::emplace_back<llvm::StdThreadPool::grow(int)::$_0>(llvm::StdThreadPool::grow(int)::$_0&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/vector.tcc:123:4
#8 0x7ff8dd7a0261 in llvm::StdThreadPool::grow(int) /tmp/xx/iree/third_party/llvm-project/llvm/lib/Support/ThreadPool.cpp:51:13
Thread T4 created by T0 here:
#0 0x555c43b5e401 in pthread_create /home/runner/work/llvm-project/llvm-project/compiler-rt/lib/asan/asan_interceptors.cpp:250:3
#1 0x7ff8dd889344 in llvm::llvm_execute_on_thread_impl(void* (*)(void*), void*, std::optional<unsigned int>) /tmp/xx/iree/third_party/llvm-project/llvm/lib/Support/Unix/Threading.inc:100:17
#2 0x7ff8dd7a0125 in llvm::thread::thread<llvm::StdThreadPool::grow(int)::$_0&>(std::optional<unsigned int>, llvm::StdThreadPool::grow(int)::$_0&) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/Support/thread.h:134:12
#3 0x7ff8dd7a0125 in llvm::thread::thread<llvm::StdThreadPool::grow(int)::$_0>(llvm::StdThreadPool::grow(int)::$_0&&) /tmp/xx/iree/third_party/llvm-project/llvm/include/llvm/Support/thread.h:81:9
#4 0x7ff8dd7a0125 in void std::__new_allocator<llvm::thread>::construct<llvm::thread, llvm::StdThreadPool::grow(int)::$_0>(llvm::thread*, llvm::StdThreadPool::grow(int)::$_0&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/new_allocator.h:191:23
#5 0x7ff8dd7a0125 in void std::allocator_traits<std::allocator<llvm::thread>>::construct<llvm::thread, llvm::StdThreadPool::grow(int)::$_0>(std::allocator<llvm::thread>&, llvm::thread*, llvm::StdThreadPool::grow(int)::$_0&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/alloc_traits.h:538:8
#6 0x7ff8dd7a0125 in llvm::thread& std::vector<llvm::thread, std::allocator<llvm::thread>>::emplace_back<llvm::StdThreadPool::grow(int)::$_0>(llvm::StdThreadPool::grow(int)::$_0&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/vector.tcc:117:6
#7 0x7ff8dd7a0125 in llvm::StdThreadPool::grow(int) /tmp/xx/iree/third_party/llvm-project/llvm/lib/Support/ThreadPool.cpp:51:13
SUMMARY: AddressSanitizer: heap-use-after-free /tmp/xx/iree/third_party/llvm-project/mlir/include/mlir/IR/Operation.h:897:18 in mlir::Operation::getPropertiesStorageSize() const
Shadow bytes around the buggy address:
0x7cd8cc303800: fa fa fa fa fd fd fd fd fd fd fd fd fd fd fd fd
0x7cd8cc303880: fd fd fd fd fd fd fd fd fa fa fa fa fa fa fa fa
0x7cd8cc303900: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
0x7cd8cc303980: fd fd fd fa fa fa fa fa fa fa fa fa fd fd fd fd
0x7cd8cc303a00: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fa
=>0x7cd8cc303a80: fa fa fa fa fa fa fa fa fd fd fd fd fd[fd]fd fd
0x7cd8cc303b00: fd fd fd fd fd fd fd fd fd fd fd fa fa fa fa fa
0x7cd8cc303b80: fa fa fa fa fd fd fd fd fd fd fd fd fd fd fd fd
0x7cd8cc303c00: fd fd fd fd fd fd fd fd fa fa fa fa fa fa fa fa
0x7cd8cc303c80: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
0x7cd8cc303d00: fd fd fd fd fa fa fa fa fa fa fa fa fd fd fd fd
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==118841==ABORTING
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment