[llvm] [AArch64][llvm] Redefine some insns as an alias of `SYS` (PR #187004)
Kerry McLaughlin via llvm-commits
llvm-commits at lists.llvm.org
Tue May 5 05:57:02 PDT 2026
================
@@ -919,18 +919,56 @@ bool AArch64InstPrinter::printSysAlias(const MCInst *MI,
bool OptionalReg = false;
std::string Ins;
std::string Name;
+ StringRef RegSep = ", ";
if (CnVal == 7) {
switch (CmVal) {
- default:
- return false;
+ default: return false;
+ // MLBI aliases
+ case 0: {
+ const AArch64MLBI::MLBI *MLBI =
+ AArch64MLBI::lookupMLBIByEncoding(Encoding);
+ if (!MLBI || !MLBI->haveFeatures(STI.getFeatureBits()))
+ return false;
+
+ NeedsReg = MLBI->NeedsReg;
+ Ins = "mlbi\t";
+ Name = std::string(MLBI->Name);
+ } break;
// Maybe IC, maybe Prediction Restriction
case 1:
switch (Op1Val) {
default: return false;
case 0: goto Search_IC;
case 3: goto Search_PRCTX;
}
+ // BRB aliases.
+ case 2: {
+ if (Op1Val == 1) {
+ if (!(STI.hasFeature(AArch64::FeatureAll) ||
+ STI.hasFeature(AArch64::FeatureBRBE)))
+ return false;
+
+ NeedsReg = false;
----------------
kmclaughlin-arm wrote:
`NeedsReg` should already be false.
https://github.com/llvm/llvm-project/pull/187004
More information about the llvm-commits
mailing list