@@ -2547,6 +2547,8 @@ class OpFormatParser : public FormatParser {
25472547 LogicalResult verifyOptionalGroupElement (SMLoc loc, FormatElement *element,
25482548 bool isAnchor);
25492549
2550+ LogicalResult markQualified (SMLoc loc, FormatElement *element) override ;
2551+
25502552 // / Parse an operation variable.
25512553 FailureOr<FormatElement *> parseVariableImpl (SMLoc loc, StringRef name,
25522554 Context ctx) override ;
@@ -2622,10 +2624,6 @@ class OpFormatParser : public FormatParser {
26222624 FailureOr<FormatElement *> parseOIListDirective (SMLoc loc, Context context);
26232625 LogicalResult verifyOIListParsingElement (FormatElement *element, SMLoc loc);
26242626 FailureOr<FormatElement *> parseOperandsDirective (SMLoc loc, Context context);
2625- FailureOr<FormatElement *> parseQualifiedDirective (SMLoc loc,
2626- Context context);
2627- FailureOr<FormatElement *> parseReferenceDirective (SMLoc loc,
2628- Context context);
26292627 FailureOr<FormatElement *> parseRegionsDirective (SMLoc loc, Context context);
26302628 FailureOr<FormatElement *> parseResultsDirective (SMLoc loc, Context context);
26312629 FailureOr<FormatElement *> parseSuccessorsDirective (SMLoc loc,
@@ -3224,16 +3222,12 @@ OpFormatParser::parseDirectiveImpl(SMLoc loc, FormatToken::Kind kind,
32243222 return parseFunctionalTypeDirective (loc, ctx);
32253223 case FormatToken::kw_operands:
32263224 return parseOperandsDirective (loc, ctx);
3227- case FormatToken::kw_qualified:
3228- return parseQualifiedDirective (loc, ctx);
32293225 case FormatToken::kw_regions:
32303226 return parseRegionsDirective (loc, ctx);
32313227 case FormatToken::kw_results:
32323228 return parseResultsDirective (loc, ctx);
32333229 case FormatToken::kw_successors:
32343230 return parseSuccessorsDirective (loc, ctx);
3235- case FormatToken::kw_ref:
3236- return parseReferenceDirective (loc, ctx);
32373231 case FormatToken::kw_type:
32383232 return parseTypeDirective (loc, ctx);
32393233 case FormatToken::kw_oilist:
@@ -3338,22 +3332,6 @@ OpFormatParser::parseOperandsDirective(SMLoc loc, Context context) {
33383332 return create<OperandsDirective>();
33393333}
33403334
3341- FailureOr<FormatElement *>
3342- OpFormatParser::parseReferenceDirective (SMLoc loc, Context context) {
3343- if (context != CustomDirectiveContext)
3344- return emitError (loc, " 'ref' is only valid within a `custom` directive" );
3345-
3346- FailureOr<FormatElement *> arg;
3347- if (failed (parseToken (FormatToken::l_paren,
3348- " expected '(' before argument list" )) ||
3349- failed (arg = parseElement (RefDirectiveContext)) ||
3350- failed (
3351- parseToken (FormatToken::r_paren, " expected ')' after argument list" )))
3352- return failure ();
3353-
3354- return create<RefDirective>(*arg);
3355- }
3356-
33573335FailureOr<FormatElement *>
33583336OpFormatParser::parseRegionsDirective (SMLoc loc, Context context) {
33593337 if (context == TypeDirectiveContext)
@@ -3495,19 +3473,11 @@ FailureOr<FormatElement *> OpFormatParser::parseTypeDirective(SMLoc loc,
34953473 return create<TypeDirective>(*operand);
34963474}
34973475
3498- FailureOr<FormatElement *>
3499- OpFormatParser::parseQualifiedDirective (SMLoc loc, Context context) {
3500- FailureOr<FormatElement *> element;
3501- if (failed (parseToken (FormatToken::l_paren,
3502- " expected '(' before argument list" )) ||
3503- failed (element = parseElement (context)) ||
3504- failed (
3505- parseToken (FormatToken::r_paren, " expected ')' after argument list" )))
3506- return failure ();
3507- return TypeSwitch<FormatElement *, FailureOr<FormatElement *>>(*element)
3476+ LogicalResult OpFormatParser::markQualified (SMLoc loc, FormatElement *element) {
3477+ return TypeSwitch<FormatElement *, LogicalResult>(element)
35083478 .Case <AttributeVariable, TypeDirective>([](auto *element) {
35093479 element->setShouldBeQualified ();
3510- return element ;
3480+ return success () ;
35113481 })
35123482 .Default ([&](auto *element) {
35133483 return this ->emitError (
0 commit comments