llvm/lib
Erik Eckstein e2b6175820 SLPVectorizer: limit the scheduling region size per basic block.
Usually large blocks are not a problem. But if a large block (> 10k instructions)
contains many (potential) chains of vector instructions, and those chains are
spread over a wide range of instructions, then scheduling becomes a compile time problem.
This change introduces a limit for the accumulate scheduling region size of a block.
For real-world functions this limit will never be exceeded (it's about 10x larger than
the maximum value seen in the test-suite and external test suite).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@248917 91177308-0d34-0410-b5e6-96231b3b80d8
2015-09-30 17:00:44 +00:00
..
Analysis Refactor computeKnownBits alignment handling code 2015-09-30 11:55:45 +00:00
AsmParser HHVM calling conventions. 2015-09-29 22:09:16 +00:00
Bitcode [Bitcode][Asm] Teach LLVM to read and write operand bundles. 2015-09-24 23:34:52 +00:00
CodeGen HHVM calling conventions. 2015-09-29 22:09:16 +00:00
DebugInfo Use makeArrayRef or None to avoid unnecessarily mentioning the ArrayRef type extra times. NFC 2015-09-21 05:32:41 +00:00
ExecutionEngine Remove roundingMode argument in APFloat::mod 2015-09-21 19:29:25 +00:00
Fuzzer [libFuzzer] perform fewer crossover operations compared to plain mutations 2015-09-11 00:20:58 +00:00
IR [ARM][NEON] Use address space in vld([1234]|[234]lane) and vst([1234]|[234]lane) instructions 2015-09-30 10:56:37 +00:00
IRReader Return a unique_ptr from getLazyBitcodeModule and parseBitcodeFile. NFC. 2015-06-16 22:27:55 +00:00
LibDriver There is only one saver of strings. 2015-08-13 01:07:02 +00:00
LineEditor
Linker [opaque pointer types] Switch a few cases of getElementType over, since I had them lying around anyway 2015-09-14 20:29:26 +00:00
LTO Reapply "LTO: Disable extra verify runs in release builds" 2015-09-15 23:05:59 +00:00
MC MCAsmInfo: Allow targets to specify when the .section directive should be omitted 2015-09-25 21:41:14 +00:00
Object Prune trailing whitespaces. 2015-09-22 11:19:03 +00:00
Option Add an ArgList::AddAllArgs that accepts a vector of OptSpecifier. 2015-07-29 17:34:41 +00:00
Passes [PM] Port SROA to the new pass manager. 2015-09-12 09:09:14 +00:00
ProfileData InstrProf: Don't call std::unique twice here 2015-09-30 02:02:08 +00:00
Support [BranchProbability] Manually round the floating point output. 2015-09-26 10:09:36 +00:00
TableGen TableGen: Support folding casts from bits to int 2015-07-31 01:12:06 +00:00
Target [AArch64] Use helper function to improve readability. NFC. 2015-09-30 16:50:41 +00:00
Transforms SLPVectorizer: limit the scheduling region size per basic block. 2015-09-30 17:00:44 +00:00
CMakeLists.txt LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00
LLVMBuild.txt Wrap some long lines in LLVMBuild files. NFC 2015-06-12 18:44:57 +00:00
Makefile LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00