@@ -2432,7 +2432,7 @@ void cir::InlineAsmOp::print(OpAsmPrinter &p) {
24322432 auto *nameIt = names.begin ();
24332433 auto *attrIt = getOperandAttrs ().begin ();
24342434
2435- for (auto ops : getAsmOperands ()) {
2435+ for (mlir::OperandRange ops : getAsmOperands ()) {
24362436 p << *nameIt << " = " ;
24372437
24382438 p << ' [' ;
@@ -2504,7 +2504,7 @@ ParseResult cir::InlineAsmOp::parse(OpAsmParser &parser,
25042504 llvm::SmallVector<int32_t > operandsGroupSizes;
25052505 std::string asmString, constraints;
25062506 Type resType;
2507- auto *ctxt = parser.getBuilder ().getContext ();
2507+ MLIRContext *ctxt = parser.getBuilder ().getContext ();
25082508
25092509 auto error = [&](const Twine &msg) -> LogicalResult {
25102510 return parser.emitError (parser.getCurrentLocation (), msg);
@@ -2528,7 +2528,7 @@ ParseResult cir::InlineAsmOp::parse(OpAsmParser &parser,
25282528 OpAsmParser::UnresolvedOperand op;
25292529
25302530 if (parser.parseOperand (op) || parser.parseColon ())
2531- return mlir::failure ( );
2531+ return error ( " can't parse operand " );
25322532
25332533 Type typ;
25342534 if (parser.parseType (typ).failed ())
@@ -2556,26 +2556,30 @@ ParseResult cir::InlineAsmOp::parse(OpAsmParser &parser,
25562556 return mlir::success ();
25572557 }
25582558
2559- if (parser.parseCommaSeparatedList ([&]() {
2560- Value val;
2561- if (parseValue (val).succeeded ()) {
2562- result.operands .push_back (val);
2563- size++;
2564-
2565- if (parser.parseOptionalLParen ().failed ()) {
2566- operandAttrs.push_back (mlir::Attribute ());
2567- return mlir::success ();
2568- }
2569-
2570- if (parser.parseKeyword (" maybe_memory" ).succeeded ()) {
2571- operandAttrs.push_back (mlir::UnitAttr::get (ctxt));
2572- if (parser.parseRParen ())
2573- return expected (" )" );
2574- return mlir::success ();
2575- }
2576- }
2577- return mlir::failure ();
2578- }))
2559+ auto parseOperand = [&]() {
2560+ Value val;
2561+ if (parseValue (val).succeeded ()) {
2562+ result.operands .push_back (val);
2563+ size++;
2564+
2565+ if (parser.parseOptionalLParen ().failed ()) {
2566+ operandAttrs.push_back (mlir::Attribute ());
2567+ return mlir::success ();
2568+ }
2569+
2570+ if (parser.parseKeyword (" maybe_memory" ).succeeded ()) {
2571+ operandAttrs.push_back (mlir::UnitAttr::get (ctxt));
2572+ if (parser.parseRParen ())
2573+ return expected (" )" );
2574+ return mlir::success ();
2575+ } else {
2576+ return expected (" maybe_memory" );
2577+ }
2578+ }
2579+ return mlir::failure ();
2580+ };
2581+
2582+ if (parser.parseCommaSeparatedList (parseOperand).failed ())
25792583 return mlir::failure ();
25802584
25812585 if (parser.parseRSquare ().failed () || parser.parseComma ().failed ())
0 commit comments