Comments (5)
@oowekyala I believe your issue is that your distro of LLVM wasn't compiled with LLVM_ENABLE_RTTI=ON
. For convenience I have such a build at the right commit hash here for a couple of common archs/platforms (though not linux/x86 unfortunately).
from mlir-air.
@oowekyala I've built the distro for linux/x86 https://github.com/makslevental/pristine-llvm-release/releases/tag/llvm-35ca64989a75c93ea7e935ef11c3d1883c21cccd
from mlir-air.
Hey Maksim, thanks a lot, that fixed the problem :) I now have a linker error while linking air-translate, do you know what's going on?
[55/79] Linking CXX executable bin/air-translate
FAILED: bin/air-translate
: && /net/media/scratch/fournier/llvm-install/llvm-for-mlir-aie-Release/bin/clang++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -fuse-ld=lld -Wl,--color-diagnostics -Wl,--gc-sections tools/air-translate/CMakeFiles/air-translate.dir/air-translate.cpp.o -o bin/air-translate -L/net/media/scratch/fournier/mlir-aie/build/lib -Wl,-rpath,"\$ORIGIN/../lib:/net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib" /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMSupport.a -lpthread lib/libAIRDialect.a lib/libAIRRtDialect.a lib/libAIRTargets.a -lAIE /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTargetCpp.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSPIRVDeserialization.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSPIRVSerialization.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSPIRVBinaryUtils.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSPIRVTranslateRegistration.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRArmNeonToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRArmSVEToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRAMXToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRLLVMIRToLLVMTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRLLVMToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRNVVMToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIROpenACCToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIROpenMPToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRROCDLToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRX86VectorToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTargetLLVMIRExport.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRToLLVMIRTranslationRegistration.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTargetLLVMIRImport.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRFromLLVMIRTranslationRegistration.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRIR.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRParser.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRPass.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSupport.a lib/libAIRDialect.a lib/libAIRRtDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIREmitCDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSPIRVDeserialization.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSPIRVSerialization.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSPIRVBinaryUtils.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSPIRVDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRArmNeonToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRArmSVEToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRAMXToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRLLVMToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRNVVMToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIROpenACCToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIROpenACCToLLVM.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIROpenACCDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRMemRefToLLVM.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIROpenMPToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIROpenMPDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRROCDLToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRROCDLDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRVectorToLLVM.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRArmNeonDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRArmSVETransforms.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRArmSVEDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRAMXTransforms.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRAMXDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRVectorTransforms.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRAffineUtils.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRBufferizationTransforms.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRGPUOps.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRLinalgDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRMathDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTilingInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRVectorUtils.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRAffineAnalysis.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSCFDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRBufferizationDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSparseTensorDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRPresburger.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRX86VectorTransforms.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRLLVMCommonConversion.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRVectorDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTensorDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRCastInterfaces.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRAffineDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRDestinationStyleOpInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRComplexDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRParallelCombiningOpInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRMemRefDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRDialectUtils.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRArithUtils.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRShapedOpInterfaces.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRMaskableOpInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRMaskingOpInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRVectorInterfaces.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRX86VectorToLLVMIRTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTargetLLVMIRExport.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRLLVMIRTransforms.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTransforms.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRCopyOpInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRRuntimeVerifiableOpInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTransformUtils.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRRewrite.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRPDLToPDLInterp.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRPass.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRAnalysis.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRLoopLikeInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRViewLikeInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRPDLInterpDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRPDLDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRFuncDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRControlFlowDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRArithDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRInferIntRangeCommon.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRInferIntRangeInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRNVVMDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMFrontendOpenMP.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMScalarOpts.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMAggressiveInstCombine.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMInstCombine.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMTransformUtils.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRX86VectorDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRLLVMIRToLLVMTranslation.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTargetLLVMIRImport.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRTranslateLib.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRParser.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRBytecodeReader.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRAsmParser.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRDLTIDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRLLVMDialect.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSideEffectInterfaces.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRInferTypeOpInterface.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRControlFlowInterfaces.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRCallInterfaces.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRDataLayoutInterfaces.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRIR.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRSupport.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMBitWriter.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMAnalysis.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMProfileData.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMSymbolize.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMDebugInfoPDB.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMDebugInfoMSF.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMDebugInfoDWARF.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMObject.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMIRReader.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMAsmParser.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMBitReader.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMMCParser.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMMC.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMDebugInfoCodeView.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMTextAPI.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMCore.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMBinaryFormat.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMTargetParser.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMRemarks.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMBitstreamReader.a /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMSupport.a -lrt -ldl -lpthread -lm /usr/lib/x86_64-linux-gnu/libz.so /usr/lib/x86_64-linux-gnu/libtinfo.so /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libLLVMDemangle.a && :
ld.lld: error: undefined symbol: llvm::ilist_detail::SpecificNodeAccess<llvm::ilist_detail::node_options<mlir::Operation, false, false, void>>::getValuePtr(llvm::ilist_node_impl<llvm::ilist_detail::node_options<mlir::Operation, false, false, void>>*)
>>> referenced by AIEDialect.cpp
>>> AIEDialect.cpp.o:(xilinx::AIE::SwitchboxOp::verify()) in archive /net/media/scratch/fournier/mlir-aie/build/lib/libAIE.a
>>> referenced by AIEDialect.cpp
>>> AIEDialect.cpp.o:(xilinx::AIE::ShimSwitchboxOp::verify()) in archive /net/media/scratch/fournier/mlir-aie/build/lib/libAIE.a
>>> referenced by AIEDialect.cpp
>>> AIEDialect.cpp.o:(xilinx::AIE::ShimMuxOp::verify()) in archive /net/media/scratch/fournier/mlir-aie/build/lib/libAIE.a
>>> referenced 27 more times
>>> did you mean: llvm::ilist_detail::SpecificNodeAccess<llvm::ilist_detail::node_options<mlir::Operation, true, false, void>>::getValuePtr(llvm::ilist_node_impl<llvm::ilist_detail::node_options<mlir::Operation, true, false, void>>*)
>>> defined in: /net/media/scratch/fournier/llvm-for-mlir-aie/llvm_install/lib/libMLIRIR.a(Operation.cpp.o)
clang-17: error: linker command failed with exit code 1 (use -v to see invocation)
This happens also with your build of LLVM.
from mlir-air.
@oowekyala I haven't run into that one yet but I believe the issue stems from each (at tip) being on different commits of LLVM. The resolution (I believe) is to rewind AIE to https://github.com/Xilinx/mlir-air/blob/main/utils/clone-mlir-aie.sh#L17 and at that commit the LLVM deps will match.
from mlir-air.
That makes sense. Thanks a lot, my build passes now!
from mlir-air.
Related Issues (20)
- Toolchain file seems to need to be passed in twice in cmake?
- AIR lowering pipeline failed for mmult with l2 tile size 64,64,64, l1 tile size 32,32,32
- `air-dependency` pass failed on mmult code generated from Triton
- Missing `test_library.h` building runtime library for target aarch64
- Assertion failure running air-to-aie pass HOT 1
- Update ODS to add 'name' member to 'xilinx::airrt::EventType' and other types HOT 1
- Operation erased with user error
- Failure to build since rocm/hsa addition HOT 3
- Need to replace DimTuple HOT 1
- aircpu library is not built in compiler only mode
- Launch MLIR code on VCK5000? HOT 3
- Confirm that verifiers are in place to verify allocations to L1 / L2 memory are only made inside Herds / Segments
- Herd parameters allow general behaviour, but current lowering does not support this.
- error: undefined reference due to --no-allow-shlib-undefined: AmdairBackend HOT 2
- Error opening /sys/class/amdair/amdair/00/address HOT 1
- Undefined symbol on test 21 HOT 1
- Form Herds from Multiple scf.forall nests. HOT 2
- Build instructions clarification in docs
- Build instructions/getting started for RyzenAI / XRT HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mlir-air.