[PATCH] D32563: Add LiveRangeShrink pass to shrink live range within BB.

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Apr 30 07:53:11 PDT 2017


spatel added a comment.

d = foo();
c = foo();
t = d + c;
b = foo();
t = t + b;
a = foo();
t = t + a;

The MachineCombiner pass will try to reverse this transform to increase throughput. See comments above TargetInstrInfo::getMachineCombinerPatterns(). If it's not doing it currently, it's probably only because some intervening instructions are causing the pattern to not match.

Why would a transform that is concerned with register pressure and live ranges not be better accomplished at the machine instruction level?


https://reviews.llvm.org/D32563





More information about the llvm-commits mailing list