[PATCH] D125515: [WebAssembly] Fix register use-def in FixIrreducibleControlFlow

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 16 15:17:59 PDT 2022


arsenm added inline comments.


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyReplacePhysRegs.cpp:108
+  // set.
+  MF.getProperties().set(MachineFunctionProperties::Property::TracksLiveness);
+
----------------
aheejin wrote:
> dschuff wrote:
> > Should this go in the FixIrreducibleControlFlow pass? It's that pass that sets up the implicit defs correctly and not this one, right?
> It can go in any pass before OptimizeLiveIntervals pass. We can put that in FixIrreducibleCFG, but I'm not sure if that pass is any special, because every pass preserves correct register def-use relationship (except for FixIrreducibleControlFlow, until now) and `IMPLICIT_DEF` is just a way of preserving it in that pass. Also, note that while we only add `IMPLICIT_DEF`s in case of irreducible CFGs, we have to set this for every function, whether or not it is irreducible.
This should move into the pass's getSetProperties/getClearedProperties


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D125515



More information about the llvm-commits mailing list