[PATCH] D49427: [x86/SLH] Major refactoring of SLH implementaiton. There are two big changes that are intertwined here:
Chandler Carruth via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 17 08:15:39 PDT 2018
chandlerc created this revision.
chandlerc added reviewers: craig.topper, echristo.
Herald added subscribers: mgrang, hiraditya, mcrosier, sanjoy.
1. Extracting the tracing of predicate state through the CFG to its own function.
2. Creating a struct to manage the predicate state used throughout the pass.
Doing #1 necessitates and motivates the particular approach for #2 as
now the predicate management is spread across different functions
focused on different aspects of it. A number of simplifications then
fell out as a direct consequence.
I went with an Optional to make it more natural to construct the
MachineSSAUpdater object.
This is probably the single largest outstanding refactoring step I have.
Things get a bit more surgical from here. My current goal, beyond
generally making this maintainable long-term, is to implement several
improvements to how we do interprocedural tracking of predicate state.
But I don't want to do that until the predicate state management and
tracing is in reasonably clear state.
Repository:
rL LLVM
https://reviews.llvm.org/D49427
Files:
llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D49427.155892.patch
Type: text/x-patch
Size: 24778 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180717/193959ec/attachment.bin>
More information about the llvm-commits
mailing list