diff options
author | Aditya Nandakumar <aditya_nandakumar@apple.com> | 2019-01-16 00:40:37 +0000 |
---|---|---|
committer | Aditya Nandakumar <aditya_nandakumar@apple.com> | 2019-01-16 00:40:37 +0000 |
commit | 2299ac9fffedab9688896bbc12d3e419a152dc12 (patch) | |
tree | a3a8f57815401fa1c13e36273ed7a93bcdafd414 /llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp | |
parent | fe32bcd513ed4817708fd7dc4114590eb98ff6e6 (diff) |
[GISel]: Add support for CSEing continuously during GISel passes.
https://reviews.llvm.org/D52803
This patch adds support to continuously CSE instructions during
each of the GISel passes. It consists of a GISelCSEInfo analysis pass
that can be used by the CSEMIRBuilder.
Diffstat (limited to 'llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp')
-rw-r--r-- | llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp index 34b466a41d2..b3fc94cdec6 100644 --- a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp +++ b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp @@ -31,16 +31,18 @@ using namespace llvm; using namespace LegalizeActions; LegalizerHelper::LegalizerHelper(MachineFunction &MF, - GISelChangeObserver &Observer) - : MRI(MF.getRegInfo()), LI(*MF.getSubtarget().getLegalizerInfo()), - Observer(Observer) { + GISelChangeObserver &Observer, + MachineIRBuilder &Builder) + : MIRBuilder(Builder), MRI(MF.getRegInfo()), + LI(*MF.getSubtarget().getLegalizerInfo()), Observer(Observer) { MIRBuilder.setMF(MF); MIRBuilder.setChangeObserver(Observer); } LegalizerHelper::LegalizerHelper(MachineFunction &MF, const LegalizerInfo &LI, - GISelChangeObserver &Observer) - : MRI(MF.getRegInfo()), LI(LI), Observer(Observer) { + GISelChangeObserver &Observer, + MachineIRBuilder &B) + : MIRBuilder(B), MRI(MF.getRegInfo()), LI(LI), Observer(Observer) { MIRBuilder.setMF(MF); MIRBuilder.setChangeObserver(Observer); } |