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

Cherry Zhang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 28 11:37:32 PST 2018


cherry marked an inline comment as done.
cherry 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);
----------------
reames wrote:
> 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.
You're right that allocas already work. I'll remove that case.

I'm happy to try other approach, either trying harder in doing this in getValue, or some other way.



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

https://reviews.llvm.org/D53889





More information about the llvm-commits mailing list