summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/InstructionPrecedenceTracking.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [LICM] Hoist guards from non-header blocksMax Kazantsev2018-11-121-0/+5
| | | | | | | | | | | This patch relaxes overconservative checks on whether or not we could write memory before we execute an instruction. This allows us to hoist guards out of loops even if they are not in the header block. Differential Revision: https://reviews.llvm.org/D50891 Reviewed By: fedor.sergeev llvm-svn: 346643
* [NFC] Rename variableMax Kazantsev2018-09-111-2/+2
| | | | llvm-svn: 341901
* [NFC] Simplify inner structure of InstructionPrecedenceTrackingMax Kazantsev2018-09-061-32/+17
| | | | | | | | | | | | | | Currently it has a set KnownBlocks that marks blocks as having cached answers and a map FirstSpecialInsts that maps these blocks to first special instructions in them. The value in the map is always non-null, and for blocks that are known to have no special instructions the map does not have an instance. This patch removes KnownBlocks as obsolete. Instead, for blocks that are known to have no special instructions, we just put a nullptr value. This makes the code much easier to read. llvm-svn: 341531
* Return "[NFC] Add severe validation of InstructionPrecedenceTracking"Max Kazantsev2018-09-061-0/+60
| | | | | | | | | | This validation patch has been reverted as rL341147 because of conserns raised by @reames. This revision returns it as is to raise a discussion and address the concerns. Differential Revision: https://reviews.llvm.org/D51523 Reviewed By: reames llvm-svn: 341526
* Revert "[NFC] Add severe validation of InstructionPrecedenceTracking" for ↵Max Kazantsev2018-08-311-39/+0
| | | | | | discussion llvm-svn: 341147
* [NFC] Add severe validation of InstructionPrecedenceTrackingMax Kazantsev2018-08-301-0/+39
| | | | llvm-svn: 341051
* [NFC] Rename map to make the naming consistentMax Kazantsev2018-08-301-6/+6
| | | | llvm-svn: 341043
* [NFC] Move OrderedInstructions and InstructionPrecedenceTracking to AnalysisMax Kazantsev2018-08-301-0/+99
These classes don't make any changes to IR and have no reason to be in Transform/Utils. This patch moves them to Analysis folder. This will allow us reusing these classes in some analyzes, like MustExecute. llvm-svn: 341015
OpenPOWER on IntegriCloud