From 2d8f0c05dbe76a31060a729928b9b9d7ebbf0c40 Mon Sep 17 00:00:00 2001 From: Valentin Clement Date: Tue, 15 Sep 2020 09:48:24 -0400 Subject: [PATCH] [mlir][openacc] Add missing print of vector_length in parallel op This patch adds the missing print for the vector_length in the parallel operation. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D87630 --- mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp | 11 ++++++++--- mlir/test/Dialect/OpenACC/ops.mlir | 12 ++++++++++++ 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp b/mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp index b5dfa2c..11a7748 100644 --- a/mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp +++ b/mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp @@ -269,22 +269,27 @@ static void print(OpAsmPrinter &printer, ParallelOp &op) { printer << ParallelOp::getOperationName(); // async()? - if (auto async = op.async()) + if (Value async = op.async()) printer << " " << ParallelOp::getAsyncKeyword() << "(" << async << ")"; // wait()? printOperandList(op.waitOperands(), ParallelOp::getWaitKeyword(), printer); // num_gangs()? - if (auto numGangs = op.numGangs()) + if (Value numGangs = op.numGangs()) printer << " " << ParallelOp::getNumGangsKeyword() << "(" << numGangs << ")"; // num_workers()? - if (auto numWorkers = op.numWorkers()) + if (Value numWorkers = op.numWorkers()) printer << " " << ParallelOp::getNumWorkersKeyword() << "(" << numWorkers << ")"; + // vector_length()? + if (Value vectorLength = op.vectorLength()) + printer << " " << ParallelOp::getVectorLengthKeyword() << "(" + << vectorLength << ")"; + // if()? if (Value ifCond = op.ifCond()) printer << " " << ParallelOp::getIfKeyword() << "(" << ifCond << ")"; diff --git a/mlir/test/Dialect/OpenACC/ops.mlir b/mlir/test/Dialect/OpenACC/ops.mlir index 6cdba22..b534f70 100644 --- a/mlir/test/Dialect/OpenACC/ops.mlir +++ b/mlir/test/Dialect/OpenACC/ops.mlir @@ -232,3 +232,15 @@ func @testop() -> () { // CHECK-NEXT: } // CHECK-NEXT: acc.loop tile([[TILESIZE]]: i64, [[TILESIZE]]: i64) { // CHECK-NEXT: } + + +func @testparallelop() -> () { + %vectorLength = constant 128 : index + acc.parallel vector_length(%vectorLength) { + } + return +} + +// CHECK: [[VECTORLENGTH:%.*]] = constant 128 : index +// CHECK-NEXT: acc.parallel vector_length([[VECTORLENGTH]]) { +// CHECK-NEXT: } -- 2.7.4