Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions mlir/lib/Dialect/Transform/IR/TransformOps.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -799,8 +799,8 @@ transform::ApplyRegisteredPassOp::apply(transform::TransformRewriter &rewriter,
if (auto paramOperand = dyn_cast<transform::ParamOperandAttr>(valueAttr)) {
// The corresponding value attribute(s) is/are passed in via a param.
// Obtain the param-operand via its specified index.
size_t dynamicOptionIdx = paramOperand.getIndex().getInt();
assert(dynamicOptionIdx < dynamicOptions.size() &&
int64_t dynamicOptionIdx = paramOperand.getIndex().getInt();
assert(dynamicOptionIdx < static_cast<int64_t>(dynamicOptions.size()) &&
"the number of ParamOperandAttrs in the options DictionaryAttr"
"should be the same as the number of options passed as params");
ArrayRef<Attribute> attrsAssociatedToParam =
Expand Down Expand Up @@ -1015,8 +1015,9 @@ LogicalResult transform::ApplyRegisteredPassOp::verify() {
std::function<LogicalResult(Attribute)> checkOptionValue =
[&](Attribute valueAttr) -> LogicalResult {
if (auto paramOperand = dyn_cast<transform::ParamOperandAttr>(valueAttr)) {
size_t dynamicOptionIdx = paramOperand.getIndex().getInt();
if (dynamicOptionIdx < 0 || dynamicOptionIdx >= dynamicOptions.size())
int64_t dynamicOptionIdx = paramOperand.getIndex().getInt();
if (dynamicOptionIdx < 0 ||
dynamicOptionIdx >= static_cast<int64_t>(dynamicOptions.size()))
return emitOpError()
<< "dynamic option index " << dynamicOptionIdx
<< " is out of bounds for the number of dynamic options: "
Expand Down
Loading