diff options
author | Emilio Cota <ecg@google.com> | 2021-04-12 19:15:35 +0200 |
---|---|---|
committer | Alex Zinenko <zinenko@google.com> | 2021-04-12 19:20:04 +0200 |
commit | 8508a63b887e29d1c699f1a9cdf8b2a6164a6f0a (patch) | |
tree | c40e7a84084191d5874e595b709e49b5387a47c9 /mlir/lib/Conversion/VectorToLLVM | |
parent | b0fc712b14ff5f9fbf56e6605fd6ae48ab017ec8 (diff) |
[mlir] Rename AVX512 dialect to X86Vector
We will soon be adding non-AVX512 operations to MLIR, such as AVX's rsqrt. In https://reviews.llvm.org/D99818 several possibilities were discussed, namely to (1) add non-AVX512 ops to the AVX512 dialect, (2) add more dialects (e.g. AVX dialect for AVX rsqrt), and (3) expand the scope of the AVX512 to include these SIMD x86 ops, thereby renaming the dialect to something more accurate such as X86Vector.
Consensus was reached on option (3), which this patch implements.
Reviewed By: aartbik, ftynse, nicolasvasilache
Differential Revision: https://reviews.llvm.org/D100119
Diffstat (limited to 'mlir/lib/Conversion/VectorToLLVM')
-rw-r--r-- | mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt | 4 | ||||
-rw-r--r-- | mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp | 16 |
2 files changed, 10 insertions, 10 deletions
diff --git a/mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt b/mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt index 9a5683a9168e..62c7eced084f 100644 --- a/mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt +++ b/mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt @@ -16,8 +16,6 @@ add_mlir_conversion_library(MLIRVectorToLLVM MLIRArmNeon MLIRAMX MLIRAMXTransforms - MLIRAVX512 - MLIRAVX512Transforms MLIRArmSVE MLIRArmSVEToLLVM MLIRLLVMArmSVE @@ -27,4 +25,6 @@ add_mlir_conversion_library(MLIRVectorToLLVM MLIRTargetLLVMIRExport MLIRTransforms MLIRVector + MLIRX86Vector + MLIRX86VectorTransforms ) diff --git a/mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp b/mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp index 49ee670b2f06..c2a83e70be7e 100644 --- a/mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp +++ b/mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp @@ -15,8 +15,6 @@ #include "mlir/Conversion/StandardToLLVM/ConvertStandardToLLVMPass.h" #include "mlir/Dialect/AMX/AMXDialect.h" #include "mlir/Dialect/AMX/Transforms.h" -#include "mlir/Dialect/AVX512/AVX512Dialect.h" -#include "mlir/Dialect/AVX512/Transforms.h" #include "mlir/Dialect/ArmNeon/ArmNeonDialect.h" #include "mlir/Dialect/ArmSVE/ArmSVEDialect.h" #include "mlir/Dialect/LLVMIR/LLVMArmSVEDialect.h" @@ -24,6 +22,8 @@ #include "mlir/Dialect/MemRef/IR/MemRef.h" #include "mlir/Dialect/StandardOps/IR/Ops.h" #include "mlir/Dialect/Vector/VectorOps.h" +#include "mlir/Dialect/X86Vector/Transforms.h" +#include "mlir/Dialect/X86Vector/X86VectorDialect.h" #include "mlir/Transforms/GreedyPatternRewriteDriver.h" using namespace mlir; @@ -38,7 +38,7 @@ struct LowerVectorToLLVMPass this->enableArmNeon = options.enableArmNeon; this->enableArmSVE = options.enableArmSVE; this->enableAMX = options.enableAMX; - this->enableAVX512 = options.enableAVX512; + this->enableX86Vector = options.enableX86Vector; } // Override explicitly to allow conditional dialect dependence. void getDependentDialects(DialectRegistry ®istry) const override { @@ -50,8 +50,8 @@ struct LowerVectorToLLVMPass registry.insert<LLVM::LLVMArmSVEDialect>(); if (enableAMX) registry.insert<amx::AMXDialect>(); - if (enableAVX512) - registry.insert<avx512::AVX512Dialect>(); + if (enableX86Vector) + registry.insert<x86vector::X86VectorDialect>(); } void runOnOperation() override; }; @@ -115,9 +115,9 @@ void LowerVectorToLLVMPass::runOnOperation() { configureAMXLegalizeForExportTarget(target); populateAMXLegalizeForLLVMExportPatterns(converter, patterns); } - if (enableAVX512) { - configureAVX512LegalizeForExportTarget(target); - populateAVX512LegalizeForLLVMExportPatterns(converter, patterns); + if (enableX86Vector) { + configureX86VectorLegalizeForExportTarget(target); + populateX86VectorLegalizeForLLVMExportPatterns(converter, patterns); } if (failed( |