-
Notifications
You must be signed in to change notification settings - Fork 631
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integrate LLVM at llvm/llvm-project@8955e285e1 #18010
Conversation
…or] Add a test of <2x[4]xf32> type on lowering multireduction (#100451) (Zhaoshi Zheng on 2024-07-25 13:39:57 -0700) (17 of 18)
…property combinators, initial ODS support (#94732) (Krzysztof Drewniak on 2024-07-26 09:35:06 -0500) (5 of 6)
Putting this on hold for a little bit. Full debug chats here on Discord. Issues encountered:CUDA
|
RewritePatternSet llvmPatterns(&getContext()); | |
populateLowerHALInterfaceOp(llvmPatterns); | |
populateLLVMConversionPatterns(&getContext(), llvmPatterns, converter); | |
populateComplexToLLVMConversionPatterns(converter, llvmPatterns); | |
populateMathToLLVMConversionPatterns(converter, llvmPatterns); | |
memref::populateExpandStridedMetadataPatterns(llvmPatterns); | |
populateFinalizeMemRefToLLVMConversionPatterns(converter, llvmPatterns); | |
populateFuncToLLVMConversionPatterns(converter, llvmPatterns); | |
cf::populateControlFlowToLLVMConversionPatterns(converter, llvmPatterns); | |
arith::populateArithToLLVMConversionPatterns(converter, llvmPatterns); | |
populateVectorToLLVMConversionPatterns(converter, llvmPatterns); | |
populateGpuToNVVMConversionPatterns(converter, llvmPatterns); | |
populateNVGPUToNVVMConversionPatterns(converter, llvmPatterns); | |
populateGpuWMMAToNVVMConversionPatterns(converter, llvmPatterns); | |
LLVMConversionTarget target(getContext()); | |
configureGpuToNVVMConversionLegality(target); | |
if (failed(applyPartialConversion(m, target, std::move(llvmPatterns)))) { | |
signalPassFailure(); | |
} |
Perhaps some of the patterns there are overlapping or running in the wrong order (change pattern benefit?)
iree/compiler/Codegen/SPIRV/test/vectorize_load_store.mlir.test
+ iree-opt --split-input-file '--pass-pipeline=builtin.module(func.func(iree-spirv-vectorize-load-store, canonicalize, cse))' --mlir-print-local-scope /work/compiler/src/iree/compiler/Codegen/SPIRV/test/vectorize_load_store.mlir
+ FileCheck /work/compiler/src/iree/compiler/Codegen/SPIRV/test/vectorize_load_store.mlir
iree-opt: /work/third_party/llvm-project/llvm/include/llvm/Support/Casting.h:566: decltype(auto) llvm::cast(const From &) [To = mlir::VectorType, From = mlir::Type]: Assertion `isa<To>(Val) && "cast<Ty>() argument of incompatible type!"' failed.
Might relate to llvm/llvm-project@bbd4af5
iree/compiler/Codegen/LLVMGPU/test/set_transform_strategy_pad.mlir.test
lit test failure
iree/compiler/Dialect/Stream/Transforms/test/refine_usage.mlir.test
lit test failure
Started a smaller integrate at #18016 |
Advance to llvm/llvm-project@8955e285e1