[llvm] Revert "[PowerPC] clean unused PPC target feature FeatureBPERMD" (PR #159837)

Sergei Barannikov via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 19 12:33:55 PDT 2025


https://github.com/s-barannikov created https://github.com/llvm/llvm-project/pull/159837

Reverts llvm/llvm-project#159782

The PR breaks multiple build bots and CI as well.


>From db1b1b28278693272ec6222e2096b755d15fbf9b Mon Sep 17 00:00:00 2001
From: Sergei Barannikov <barannikov88 at gmail.com>
Date: Fri, 19 Sep 2025 22:31:34 +0300
Subject: [PATCH] Revert "[PowerPC] clean unused PPC target feature
 FeatureBPERMD (#159782)"

This reverts commit 2e34188513e296f0c3d84b5a808924cafc6fd5a4.
---
 llvm/lib/Target/PowerPC/PPC.td | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/llvm/lib/Target/PowerPC/PPC.td b/llvm/lib/Target/PowerPC/PPC.td
index 7a03927df4aff..d491e88b66ad8 100644
--- a/llvm/lib/Target/PowerPC/PPC.td
+++ b/llvm/lib/Target/PowerPC/PPC.td
@@ -129,6 +129,8 @@ def FeatureFPCVT     : SubtargetFeature<"fpcvt", "HasFPCVT", "true",
                                         [FeatureFPU]>;
 def FeatureISEL      : SubtargetFeature<"isel","HasISEL", "true",
                                         "Enable the isel instruction">;
+def FeatureBPERMD    : SubtargetFeature<"bpermd", "HasBPERMD", "true",
+                                        "Enable the bpermd instruction">;
 def FeatureExtDiv    : SubtargetFeature<"extdiv", "HasExtDiv", "true",
                                         "Enable extended divide instructions">;
 def FeatureLDBRX     : SubtargetFeature<"ldbrx","HasLDBRX", "true",
@@ -375,7 +377,7 @@ def NoNaNsFPMath
     : Predicate<"Subtarget->getTargetMachine().Options.NoNaNsFPMath">;
 def NaNsFPMath
     : Predicate<"!Subtarget->getTargetMachine().Options.NoNaNsFPMath">;
-def HasBPERMD : Predicate<"Subtarget->getCPUDirective() >= PPC::DIR_PWR7">;
+def HasBPERMD : Predicate<"Subtarget->hasBPERMD()">;
 def HasExtDiv : Predicate<"Subtarget->hasExtDiv()">;
 def IsISA2_06 : Predicate<"Subtarget->isISA2_06()">;
 def IsISA2_07 : Predicate<"Subtarget->isISA2_07()">;
@@ -440,6 +442,7 @@ def ProcessorFeatures {
                                                   FeatureLDBRX,
                                                   Feature64BitSupport,
                                                   /* Feature64BitRegs, */
+                                                  FeatureBPERMD,
                                                   FeatureExtDiv,
                                                   FeatureMFTB,
                                                   DeprecatedDST,



More information about the llvm-commits mailing list