================ @@ -2824,8 +2826,12 @@ bool RISCVAsmParser::parseDirectiveOption() { break; } - auto Ext = llvm::lower_bound(RISCVFeatureKV, Arch); - if (Ext == std::end(RISCVFeatureKV) || StringRef(Ext->Key) != Arch || + std::string Feature = RISCVISAInfo::getTargetFeatureForExtension(Arch); + if (!enableExperimentalExtension() && + StringRef(Feature).starts_with("experimental-")) + return Error(Loc, "Unexpected experimental extensions."); + auto Ext = llvm::lower_bound(RISCVFeatureKV, Feature); + if (Ext == std::end(RISCVFeatureKV) || StringRef(Ext->Key) != Feature || !RISCVISAInfo::isSupportedExtension(Arch)) { ---------------- yetingk wrote:
Done. Thank you. https://github.com/llvm/llvm-project/pull/89727 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits