[llvm] [NewPM] Adds a port for AArch64SIMDInstrOpt (PR #188177)

Anshul Nigham via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 2 14:46:11 PDT 2026


================
@@ -65,20 +66,24 @@ STATISTIC(NumModifiedInstr,
 
 namespace {
 
-struct AArch64SIMDInstrOpt : public MachineFunctionPass {
-  static char ID;
-
+class AArch64SIMDInstrOptImpl {
+public:
   const AArch64InstrInfo *TII;
   MachineRegisterInfo *MRI;
   TargetSchedModel SchedModel;
 
   // The two maps below are used to cache decisions instead of recomputing:
+  //
   // This is used to cache instruction replacement decisions within function
   // units and across function units.
----------------
nigham wrote:

In the Impl class, we're only storing references to the map only in the Impl class. The actual objects are stored in the Pass classes (legacy and NewPM). I moved the comments to the members here instead of the using declarations, and added comments making that clear.

https://github.com/llvm/llvm-project/pull/188177


More information about the llvm-commits mailing list