[PATCH] D53889: [CodeGen] Prefer static frame index for STATEPOINT liveness args

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 28 10:04:11 PST 2018


reames added inline comments.


================
Comment at: lib/CodeGen/SelectionDAG/StatepointLowering.cpp:529
+        (isa<Argument>(V) &&
+         Builder.FuncInfo.getArgumentFrameIndex(cast<Argument>(V)) != INT_MAX))
+      Incoming = Builder.getNonRegisterValue(V);
----------------
Hm, I'm really uncomfortable with this bit of code.  For two reasons:
1) I agree with the general idea this should be generic and buried inside getValue.  If it can't be, it makes me want to understand why because I'm missing something.
2) You shouldn't need to change handling of allocas since that should already work.

Is it possible to let the virtual register be lowered and then peak back through to the source?  

Basically, I'm looking to be convinced this is the right approach.


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

https://reviews.llvm.org/D53889





More information about the llvm-commits mailing list