Skip to content
This repository was archived by the owner on Feb 5, 2019. It is now read-only.

Commit d13704d

Browse files
committed
[x86/SLH] Major refactoring of SLH implementaiton. There are two big
changes that are intertwined here: 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. Differential Revision: https://reviews.llvm.org/D49427 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@337446 91177308-0d34-0410-b5e6-96231b3b80d8
1 parent 3a2e78e commit d13704d

File tree

1 file changed

+204
-174
lines changed

1 file changed

+204
-174
lines changed

0 commit comments

Comments
 (0)