aboutsummaryrefslogtreecommitdiff
path: root/mlir/lib/Conversion/VectorToLLVM
diff options
context:
space:
mode:
authorEmilio Cota <ecg@google.com>2021-04-12 19:15:35 +0200
committerAlex Zinenko <zinenko@google.com>2021-04-12 19:20:04 +0200
commit8508a63b887e29d1c699f1a9cdf8b2a6164a6f0a (patch)
treec40e7a84084191d5874e595b709e49b5387a47c9 /mlir/lib/Conversion/VectorToLLVM
parentb0fc712b14ff5f9fbf56e6605fd6ae48ab017ec8 (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.txt4
-rw-r--r--mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp16
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 &registry) 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(