[PATCH] D56091: [WebAssembly] Don't add IMPLICIT_DEFs in PrepareForLiveIntervals

Heejin Ahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 9 11:23:29 PST 2019


aheejin marked an inline comment as done.
aheejin added a comment.

@sunfish Do you have any concerns on removing this? I am not familiar with the situation when this code was first written, so I'm not sure if there's something I'm missing.



================
Comment at: lib/Target/WebAssembly/WebAssemblyPrepareForLiveIntervals.cpp:61
+  // We're now ready to run the LiveIntervals analysis again.
   MF.getProperties().set(MachineFunctionProperties::Property::TracksLiveness);
 
----------------
dschuff wrote:
> This (setting the MachineFunctionProperty) is now the only thing that this pass does. Do we really need all the pass boilerplate just to do that? e.g. can we stick it at the beginning of OptimizeLiveIntervals or RegisterColoring or wherever we actually need it? 
I wanted to do that, but we can't. The next pass (OptimizeLiveIntervals) //requires// LiveIntervals analysis, which means LiveIntervals pass will run //before// OptimizeLiveIntervals starts. If this precondition is not set before LiveIntervals starts, LiveIntervals pass will fail. I also thought about setting it in the pass before PrepareForLiveIntervals, but that seemed to make less sense, because the pass before it could be anything depending on the compilation pipeline.


Repository:
  rL LLVM

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

https://reviews.llvm.org/D56091





More information about the llvm-commits mailing list