[PATCH] D90836: [ARM][MachineOutliner] Add stack fixup feature.

Sam Parker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 2 07:01:35 PST 2020


samparker added a comment.

Hi Yvan,

Sorry for the delay on this, it's taken some courage to look at this and I'm a bit confused to be honest! Can this be split into two patches..? One for enabling outlining of stack using instructions which don't need modifying and then another for handling the ones that need changing?



================
Comment at: llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp:5883
+  // If SP is not the base register we can't do much
+  if (SPIdx != 1) {
+    if (AddrMode != ARMII::AddrModeT2_i8s4)
----------------
nit: Perform all the SPIdx check together?


================
Comment at: llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp:6212
+  for (MachineInstr &MI : MBB) {
+    if (!MI.mayLoadOrStore())
+      continue;
----------------
There isn't this check in the first pass, so could we be missing some instructions here?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D90836/new/

https://reviews.llvm.org/D90836



More information about the llvm-commits mailing list