[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
This commit is contained in:
Valentin Clement 2020-09-15 09:48:24 -04:00 committed by clementval
parent c897a7fb3e
commit 2d8f0c05db
2 changed files with 20 additions and 3 deletions

View File

@ -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 << ")";

View File

@ -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: }