llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-mlir-gpu
Author: Matthias Springer (matthias-springer)
<details>
<summary>Changes</summary>
Fix this build error, which is reported by some compilers after #<!-- -->175815:
```
error: operands to ?: have different types ‘mlir::Operation::result_range {aka
mlir::ResultRange}’ and ‘mlir::ValueRange’
return successor.isParent() ? getOperation()->getResults() : ValueRange();
```
---
Full diff: https://github.com/llvm/llvm-project/pull/176332.diff
10 Files Affected:
- (modified) clang/lib/CIR/Dialect/IR/CIRDialect.cpp (+14-7)
- (modified) mlir/lib/Dialect/EmitC/IR/EmitC.cpp (+2-1)
- (modified) mlir/lib/Dialect/GPU/IR/GPUDialect.cpp (+1-1)
- (modified) mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp (+1-1)
- (modified) mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp (+1-1)
- (modified) mlir/lib/Dialect/SCF/IR/SCF.cpp (+6-3)
- (modified) mlir/lib/Dialect/Shape/IR/Shape.cpp (+1-1)
- (modified) mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
(+2-1)
- (modified) mlir/test/lib/Dialect/Test/TestOpDefs.cpp (+1-1)
- (modified) mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp (+4-2)
``````````diff
diff --git a/clang/lib/CIR/Dialect/IR/CIRDialect.cpp
b/clang/lib/CIR/Dialect/IR/CIRDialect.cpp
index d6d7c9cb96c35..91c3050c46806 100644
--- a/clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+++ b/clang/lib/CIR/Dialect/IR/CIRDialect.cpp
@@ -1187,7 +1187,8 @@ void
cir::IfOp::getSuccessorRegions(mlir::RegionBranchPoint point,
}
mlir::ValueRange cir::IfOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
void cir::IfOp::build(OpBuilder &builder, OperationState &result, Value cond,
@@ -1231,7 +1232,8 @@ void cir::ScopeOp::getSuccessorRegions(
}
mlir::ValueRange cir::ScopeOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
void cir::ScopeOp::build(
@@ -1398,7 +1400,8 @@ void cir::CaseOp::getSuccessorRegions(
}
mlir::ValueRange cir::CaseOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
void cir::CaseOp::build(OpBuilder &builder, OperationState &result,
@@ -1429,7 +1432,8 @@ void cir::SwitchOp::getSuccessorRegions(
}
mlir::ValueRange cir::SwitchOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
void cir::SwitchOp::build(OpBuilder &builder, OperationState &result,
@@ -1661,7 +1665,8 @@ void cir::GlobalOp::getSuccessorRegions(
}
mlir::ValueRange cir::GlobalOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
static void printGlobalOpTypeAndInitialValue(OpAsmPrinter &p, cir::GlobalOp op,
@@ -2339,7 +2344,8 @@ void cir::TernaryOp::getSuccessorRegions(
}
mlir::ValueRange cir::TernaryOp::getSuccessorInputs(RegionSuccessor successor)
{
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
void cir::TernaryOp::build(
@@ -3576,7 +3582,8 @@ void cir::TryOp::getSuccessorRegions(
}
mlir::ValueRange cir::TryOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
static void
diff --git a/mlir/lib/Dialect/EmitC/IR/EmitC.cpp
b/mlir/lib/Dialect/EmitC/IR/EmitC.cpp
index d14cc2c645f5a..1d4b748b2a88a 100644
--- a/mlir/lib/Dialect/EmitC/IR/EmitC.cpp
+++ b/mlir/lib/Dialect/EmitC/IR/EmitC.cpp
@@ -893,7 +893,8 @@ void IfOp::getSuccessorRegions(RegionBranchPoint point,
}
ValueRange IfOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
void IfOp::getEntrySuccessorRegions(ArrayRef<Attribute> operands,
diff --git a/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
b/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
index 11d22a2024a2e..033a94e3f8fce 100644
--- a/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
+++ b/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
@@ -2407,7 +2407,7 @@ void WarpExecuteOnLane0Op::getSuccessorRegions(
}
ValueRange WarpExecuteOnLane0Op::getSuccessorInputs(RegionSuccessor successor)
{
- return successor.isParent() ? getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getResults()) : ValueRange();
}
void WarpExecuteOnLane0Op::build(OpBuilder &builder, OperationState &result,
TypeRange resultTypes, Value laneId,
diff --git a/mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
b/mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
index 97020bc49ba04..e0f7a8b452a1d 100644
--- a/mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
+++ b/mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
@@ -413,7 +413,7 @@ void AllocaScopeOp::getSuccessorRegions(
}
ValueRange AllocaScopeOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getResults()) : ValueRange();
}
/// Given an operation, return whether this op is guaranteed to
diff --git a/mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
b/mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
index a49085f1a92cd..abfcad88c2437 100644
--- a/mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
+++ b/mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
@@ -428,7 +428,7 @@ getSingleRegionOpSuccessorRegions(Operation *op, Region
®ion,
static ValueRange getSingleRegionSuccessorInputs(Operation *op,
RegionSuccessor successor) {
- return successor.isParent() ? op->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(op->getResults()) : ValueRange();
}
void KernelsOp::getSuccessorRegions(RegionBranchPoint point,
diff --git a/mlir/lib/Dialect/SCF/IR/SCF.cpp b/mlir/lib/Dialect/SCF/IR/SCF.cpp
index 294c8412064ff..5b6e9304de505 100644
--- a/mlir/lib/Dialect/SCF/IR/SCF.cpp
+++ b/mlir/lib/Dialect/SCF/IR/SCF.cpp
@@ -311,7 +311,8 @@ void ExecuteRegionOp::getSuccessorRegions(
}
ValueRange ExecuteRegionOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
//===----------------------------------------------------------------------===//
@@ -2137,7 +2138,8 @@ void IfOp::getSuccessorRegions(RegionBranchPoint point,
}
ValueRange IfOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
void IfOp::getEntrySuccessorRegions(ArrayRef<Attribute> operands,
@@ -3875,7 +3877,8 @@ void IndexSwitchOp::getSuccessorRegions(
}
ValueRange IndexSwitchOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
void IndexSwitchOp::getEntrySuccessorRegions(
diff --git a/mlir/lib/Dialect/Shape/IR/Shape.cpp
b/mlir/lib/Dialect/Shape/IR/Shape.cpp
index 79b820654d888..95546b4a4deb7 100644
--- a/mlir/lib/Dialect/Shape/IR/Shape.cpp
+++ b/mlir/lib/Dialect/Shape/IR/Shape.cpp
@@ -354,7 +354,7 @@ void AssumingOp::getSuccessorRegions(
}
ValueRange AssumingOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getResults()) : ValueRange();
}
void AssumingOp::inlineRegionIntoParent(AssumingOp &op,
diff --git a/mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
b/mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
index 21d2b13d18405..8932ddfb988d7 100644
--- a/mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
+++ b/mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
@@ -133,7 +133,8 @@ void transform::tune::AlternativesOp::getSuccessorRegions(
ValueRange
transform::tune::AlternativesOp::getSuccessorInputs(RegionSuccessor successor)
{
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
void transform::tune::AlternativesOp::getRegionInvocationBounds(
diff --git a/mlir/test/lib/Dialect/Test/TestOpDefs.cpp
b/mlir/test/lib/Dialect/Test/TestOpDefs.cpp
index c0150ed5ced4b..7a8c3703498fb 100644
--- a/mlir/test/lib/Dialect/Test/TestOpDefs.cpp
+++ b/mlir/test/lib/Dialect/Test/TestOpDefs.cpp
@@ -788,7 +788,7 @@ void AnyCondOp::getSuccessorRegions(RegionBranchPoint point,
}
ValueRange AnyCondOp::getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getResults()) : ValueRange();
}
void AnyCondOp::getRegionInvocationBounds(
diff --git a/mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp
b/mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp
index 0272905c34f58..3682f073186df 100644
--- a/mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp
+++ b/mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp
@@ -73,7 +73,8 @@ struct LoopRegionsOp
}
ValueRange getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
using RegionBranchOpInterface::Trait<LoopRegionsOp>::getSuccessorRegions;
@@ -101,7 +102,8 @@ struct DoubleLoopRegionsOp
}
ValueRange getSuccessorInputs(RegionSuccessor successor) {
- return successor.isParent() ? getOperation()->getResults() : ValueRange();
+ return successor.isParent() ? ValueRange(getOperation()->getResults())
+ : ValueRange();
}
using RegionBranchOpInterface::Trait<
``````````
</details>
https://github.com/llvm/llvm-project/pull/176332
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits