1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
llvm-mirror/include/llvm/Support
Jakub Kuderski 67f7dee077 [Dominators] Keep tree level in DomTreeNode and use it to find NCD and answer dominance queries
Summary:
This patch makes DomTreeNodes keep their level (depth) in the DomTree. By having this information always available, it is possible to speedup and simplify findNearestCommonDominator and certain dominance queries.

In the future, level information will be also needed to perform incremental updates.

My testing doesn't show any noticeable performance differences after applying this patch. There may be some improvements when other passes are thought to use the level information.

Reviewers: dberlin, sanjoy, chandlerc, grosser

Reviewed By: dberlin

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D34548

llvm-svn: 306892
2017-06-30 21:51:40 +00:00
..
Solaris/sys [Solaris] replace Solaris.h hack with a set of better hacks 2017-06-22 13:18:46 +00:00
AArch64TargetParser.def [AArch64] Make the TargetParser add CPU exts provided by the arch. 2017-05-03 20:33:58 +00:00
AlignOf.h
Allocator.h
AMDGPUCodeObjectMetadata.h AMDGPU/NFC: Move amdgpu code object metadata to support 2017-06-06 18:35:50 +00:00
ARMAttributeParser.h
ARMBuildAttributes.h
ARMEHABI.h
ARMTargetParser.def Make mcpu=generic the default for armv7-a and armv8-a. 2017-06-01 07:31:43 +00:00
ARMWinEH.h
ArrayRecycler.h [Support] Make asan poisoning for recyclers more aggressive by also poisoning the 'next' pointer. 2017-04-20 20:28:18 +00:00
Atomic.h
AtomicOrdering.h
BinaryByteStream.h
BinaryItemStream.h
BinaryStream.h
BinaryStreamArray.h Resubmit "[llvm-pdbutil] rewrite the "raw" output style." 2017-06-15 22:24:24 +00:00
BinaryStreamError.h
BinaryStreamReader.h Add a BinarySubstreamRef, and a method to read one. 2017-06-23 16:38:40 +00:00
BinaryStreamRef.h [llvm-pdbutil] Add a mode to bytes for dumping split debug chunks. 2017-06-26 17:22:36 +00:00
BinaryStreamWriter.h [BinaryStream] Reduce the amount of boiler plate needed to use. 2017-05-17 20:23:31 +00:00
BlockFrequency.h
BranchProbability.h [BPI] Add multiplication by scalar operators to BranchProbability 2017-04-21 03:14:30 +00:00
CachePruning.h Add a ThinLTO cache policy for controlling the maximum cache size in bytes. 2017-06-23 17:05:03 +00:00
Capacity.h
Casting.h [Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-09 21:41:54 +00:00
CBindingWrapping.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
Chrono.h
circular_raw_ostream.h
CMakeLists.txt Completely disable git/svn version checking if not needed. 2017-06-30 18:48:33 +00:00
CodeGen.h
CodeGenCWrappers.h
COM.h
CommandLine.h [Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-09 21:41:54 +00:00
Compiler.h [Support/Compiler.h] - Use gnu::fallthrough for LLVM_FALLTHROUGH when available. 2017-05-12 06:53:48 +00:00
Compression.h
ConvertUTF.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
CrashRecoveryContext.h
DataExtractor.h [DWARF] Support for DW_FORM_strx3 and complete support for DW_FORM_strx{1,2,4} 2017-06-21 19:37:44 +00:00
DataTypes.h.cmake Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
Debug.h
DebugCounter.h Hide dbgs() stream for when built with -fmodules. 2017-06-14 19:16:22 +00:00
DOTGraphTraits.h
DynamicLibrary.h Refactor DynamicLibrary so searching for a symbol will have a defined order and 2017-04-27 16:55:24 +00:00
Endian.h [Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-09 21:41:54 +00:00
EndianStream.h
Errc.h
Errno.h Recommit "[Support] Add RetryAfterSignal helper function" 2017-06-29 13:15:31 +00:00
Error.h Add a cantFail overload for Expected-reference (Expected<T&>) types. 2017-06-20 22:18:02 +00:00
ErrorHandling.h
ErrorOr.h [Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-09 21:41:54 +00:00
FileOutputBuffer.h
FileSystem.h Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
FileUtilities.h
Format.h
FormatAdapters.h [formatv] Add the ability to specify a fill character when aligning. 2017-06-15 03:06:38 +00:00
FormatCommon.h [formatv] Add the ability to specify a fill character when aligning. 2017-06-15 03:06:38 +00:00
FormatProviders.h Revert "[llvm-pdbutil] rewrite the "raw" output style." 2017-06-15 20:55:51 +00:00
FormattedStream.h
FormatVariadic.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
FormatVariadicDetails.h
GCOV.h [ProfileData, Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-21 23:19:47 +00:00
GenericDomTree.h [Dominators] Keep tree level in DomTreeNode and use it to find NCD and answer dominance queries 2017-06-30 21:51:40 +00:00
GenericDomTreeConstruction.h [Dominators] Keep tree level in DomTreeNode and use it to find NCD and answer dominance queries 2017-06-30 21:51:40 +00:00
GlobPattern.h
GraphWriter.h [ProfileData, Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-21 23:19:47 +00:00
Host.h [Solaris] replace Solaris.h hack with a set of better hacks 2017-06-22 13:18:46 +00:00
JamCRC.h
KnownBits.h [KnownBits] Add bit counting methods to KnownBits struct and use them where possible 2017-05-12 17:20:30 +00:00
LEB128.h [Support] Fix overflow in SLEB128 decoding. 2017-04-27 02:09:44 +00:00
LICENSE.TXT
LineIterator.h
Locale.h
LockFileManager.h
LowLevelTypeImpl.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
ManagedStatic.h [ManagedStatic] Avoid putting function pointers in template args. 2017-05-29 20:56:27 +00:00
MathExtras.h [MathExtras] fix documentation comments; NFC 2017-06-14 14:28:24 +00:00
MD5.h
Memory.h
MemoryBuffer.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
MipsABIFlags.h
Mutex.h
MutexGuard.h
NativeFormatting.h
OnDiskHashTable.h
Options.h
Parallel.h Try again to fix the buildbots. 2017-05-11 00:18:52 +00:00
Path.h [Support] Don't use std::iterator, it's deprecated in C++17. 2017-06-25 00:00:08 +00:00
PluginLoader.h
PointerLikeTypeTraits.h
PrettyStackTrace.h
Printable.h
Process.h
Program.h
RandomNumberGenerator.h
raw_os_ostream.h
raw_ostream.h
raw_sha1_ostream.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
Recycler.h [Support] Make asan poisoning for recyclers more aggressive by also poisoning the 'next' pointer. 2017-04-20 20:28:18 +00:00
RecyclingAllocator.h
Regex.h Add const to a const method. NFC 2017-04-18 01:04:05 +00:00
Registry.h
RWMutex.h
SaveAndRestore.h
ScaledNumber.h
ScopedPrinter.h [llvm-pdbdump] Allow printing only a portion of a stream. 2017-04-28 00:43:38 +00:00
SHA1.h
Signals.h
SMLoc.h
SourceMgr.h [Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-09 21:41:54 +00:00
SpecialCaseList.h
StringPool.h [Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-09 21:41:54 +00:00
StringSaver.h Make StringSaver::save less ambiguous. 2017-04-27 03:45:33 +00:00
SwapByteOrder.h
SystemUtils.h
TargetParser.h Unified logic for computing target ABI in backend and front end by moving this common code to Support/TargetParser. 2017-06-30 00:03:54 +00:00
TargetRegistry.h [ProfileData, Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-21 23:19:47 +00:00
TargetSelect.h
TarWriter.h
thread.h
Threading.h
ThreadLocal.h
ThreadPool.h Support: Remove MSVC 2013 workarounds in ThreadPool class. 2017-06-14 00:36:21 +00:00
Timer.h [Support] Make printAllJSONValues public, for custom output. 2017-04-03 18:04:15 +00:00
ToolOutputFile.h
TrailingObjects.h
TrigramIndex.h
type_traits.h [Support] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-09 21:41:54 +00:00
TypeName.h
Unicode.h
UnicodeCharRanges.h
UniqueLock.h
Valgrind.h
Watchdog.h
Win64EH.h
WindowsError.h
xxhash.h Revert r301487: Replace HashString algorithm with xxHash64 2017-04-26 23:15:10 +00:00
YAMLParser.h Remove inline keyword from inline classof methods 2017-06-29 19:35:17 +00:00
YAMLTraits.h Fix ODR violations due to abuse of LLVM_YAML_IS_(FLOW_)?SEQUENCE_VECTOR 2017-06-30 20:56:57 +00:00