1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/lib
Max Kazantsev 5cbed866a3 [SCEV] Use depth limit instead of local cache for SExt and ZExt
In rL300494 there was an attempt to deal with excessive compile time on
invocations of getSign/ZeroExtExpr using local caching. This approach only
helps if we request the same SCEV multiple times throughout recursion. But
in the bug PR33431 we see a case where we request different values all the time,
so caching does not help and the size of the cache grows enormously.

In this patch we remove the local cache for this methods and add the recursion
depth limit instead, as we do for arithmetics. This gives us a guarantee that the
invocation sequence is limited and reasonably short.

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

llvm-svn: 306785
2017-06-30 05:04:09 +00:00
..
Analysis [SCEV] Use depth limit instead of local cache for SExt and ZExt 2017-06-30 05:04:09 +00:00
AsmParser Add dependency from AsmParser to BinaryFormat. 2017-06-07 04:24:33 +00:00
BinaryFormat [BinaryFormat] Identify AArch64 COFF files 2017-06-29 06:30:56 +00:00
Bitcode Add missing library dependency. 2017-06-28 00:05:27 +00:00
CodeGen [DWARF] Move a couple of member functions to the DWARFUnit baseclass. NFC. 2017-06-30 00:27:45 +00:00
DebugInfo [DWARF] Added verification checks for the .apple_names section. 2017-06-29 20:13:05 +00:00
Demangle [ItaniumDemangle] Fix a exponential string copying bug 2017-05-28 23:24:52 +00:00
ExecutionEngine Attempt to fix Orc JIT test timeouts 2017-06-29 20:15:08 +00:00
Fuzzer [libFuzzer] change the default max_len from 64 to 4096. This will affect cases where libFuzzer is run w/o initial corpus or with a corpus of very small items. 2017-06-15 22:43:40 +00:00
IR [Dominators] Add parent and sibling property verification (non-hacky) 2017-06-29 17:45:51 +00:00
IRReader
LineEditor
Linker Support for taking the max of module flags when linking, use for PIE/PIC 2017-05-23 00:08:00 +00:00
LTO [ThinLTO] Remove unnecessary include of Linker.h (NFC) 2017-06-22 16:18:48 +00:00
MC [WebAssembly] Add data size and alignement to linking section 2017-06-27 20:27:59 +00:00
Object Revert "Replace trivial use of external rc.exe by writing our own .res file." 2017-06-29 00:17:26 +00:00
ObjectYAML [WebAssembly] Add data size and alignement to linking section 2017-06-27 20:27:59 +00:00
Option [GSoC] Flag value completion for clang 2017-06-20 16:31:31 +00:00
Passes Hook the sample PGO machinery in the new PM 2017-06-29 23:33:05 +00:00
ProfileData [Coverage] Remove two overloads of CoverageMapping::load. NFC. 2017-06-30 00:45:26 +00:00
Support 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
TableGen [BinaryFormat, Option, TableGen] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-16 00:43:26 +00:00
Target [WebAssembly] Add support for exception handling instructions 2017-06-30 00:43:15 +00:00
Testing Mark LLVMTestingSupport as not installed in LLVMBuild. 2017-06-19 22:01:50 +00:00
ToolDrivers [GSoC] Flag value completion for clang 2017-06-20 16:31:31 +00:00
Transforms [SCEV] Use depth limit instead of local cache for SExt and ZExt 2017-06-30 05:04:09 +00:00
XRay Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
CMakeLists.txt [gtest] Create a shared include directory for gtest utilities. 2017-06-14 16:41:50 +00:00
LLVMBuild.txt [gtest] Create a shared include directory for gtest utilities. 2017-06-14 16:41:50 +00:00