This is an archive of the discontinued LLVM Phabricator instance.

[PowerPC] Add a Memory Latency Mutation to the scheduler
AbandonedPublic

Authored by stefanp on Apr 4 2018, 9:43 AM.

Details

Summary

Loads and Stores that depend on the same address should be scheduled apart because we don't want a load that is waiting for a store to finish or a store that is waiting for a load to finish.

This patch depends on D45265 and so that patch would have to go in first.

Diff Detail

Event Timeline

stefanp created this revision.Apr 4 2018, 9:43 AM
lei added inline comments.Apr 26 2018, 1:14 PM
lib/Target/PowerPC/PPCSubtarget.cpp
53

Maybe do an early exit here:

if (!SU.getInstr()->mayLoad() && ! SU.getInstr()->mayStore())
  continue;

Then we don't need to nest the two for loops below.

stefanp updated this revision to Diff 147351.May 17 2018, 10:56 AM

Modifications based on review comments.

stefanp abandoned this revision.Jan 28 2019, 6:56 AM

No longer working on this.