summaryrefslogtreecommitdiffstats
path: root/mlir/lib/Transforms/MaterializeVectors.cpp
diff options
context:
space:
mode:
authorRiver Riddle <riverriddle@google.com>2019-01-28 17:20:44 -0800
committerjpienaar <jpienaar@google.com>2019-03-29 15:42:08 -0700
commit5ecef2b3f63c8391e8dd1e06209b1b8f3000c9c7 (patch)
treed6ea68cd94341da21af92570694a12b759c1c9be /mlir/lib/Transforms/MaterializeVectors.cpp
parentcacf05892e58b20f135e5c326466535e67114bce (diff)
downloadbcm5719-llvm-5ecef2b3f63c8391e8dd1e06209b1b8f3000c9c7.tar.gz
bcm5719-llvm-5ecef2b3f63c8391e8dd1e06209b1b8f3000c9c7.zip
Define a AffineOps dialect as well as an AffineIfOp operation. Replace all instances of IfInst with AffineIfOp and delete IfInst.
PiperOrigin-RevId: 231318632
Diffstat (limited to 'mlir/lib/Transforms/MaterializeVectors.cpp')
-rw-r--r--mlir/lib/Transforms/MaterializeVectors.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/mlir/lib/Transforms/MaterializeVectors.cpp b/mlir/lib/Transforms/MaterializeVectors.cpp
index 09d961f85cd..2744b1d624c 100644
--- a/mlir/lib/Transforms/MaterializeVectors.cpp
+++ b/mlir/lib/Transforms/MaterializeVectors.cpp
@@ -20,6 +20,7 @@
//
//===----------------------------------------------------------------------===//
+#include "mlir/AffineOps/AffineOps.h"
#include "mlir/Analysis/AffineAnalysis.h"
#include "mlir/Analysis/Dominance.h"
#include "mlir/Analysis/LoopAnalysis.h"
@@ -559,9 +560,6 @@ static bool instantiateMaterialization(Instruction *inst,
if (isa<ForInst>(inst))
return inst->emitError("NYI path ForInst");
- if (isa<IfInst>(inst))
- return inst->emitError("NYI path IfInst");
-
// Create a builder here for unroll-and-jam effects.
FuncBuilder b(inst);
auto *opInst = cast<OperationInst>(inst);
@@ -570,6 +568,9 @@ static bool instantiateMaterialization(Instruction *inst,
if (opInst->isa<AffineApplyOp>()) {
return false;
}
+ if (opInst->getNumBlockLists() != 0)
+ return inst->emitError("NYI path Op with region");
+
if (auto write = opInst->dyn_cast<VectorTransferWriteOp>()) {
auto *clone = instantiate(&b, write, state->hwVectorType,
state->hwVectorInstance, state->substitutionsMap);
OpenPOWER on IntegriCloud