diff options
author | Tobias Grosser <tobias@grosser.es> | 2015-11-11 16:22:36 +0000 |
---|---|---|
committer | Tobias Grosser <tobias@grosser.es> | 2015-11-11 16:22:36 +0000 |
commit | 20a4c0c205d7c952cc58680bc5aa98f1424a24fd (patch) | |
tree | 36121c2d39232c348be31e31d6079065f68ae0d3 /lldb/scripts/Python | |
parent | 021f874c4f788ef134876e22b5b0c0abf7c8b5a8 (diff) | |
download | llvm-20a4c0c205d7c952cc58680bc5aa98f1424a24fd.zip llvm-20a4c0c205d7c952cc58680bc5aa98f1424a24fd.tar.gz llvm-20a4c0c205d7c952cc58680bc5aa98f1424a24fd.tar.bz2 |
ScopInfo: Limit the number of disjuncts in assumed context
In certain rare cases (mostly -polly-process-unprofitable on large sequences
of conditions - often without any loop), we see some compile-time timeouts due
to the construction of an overly complex assumption context. This change limits
the number of disjuncts to 150 (adjustable), to prevent us from creating
assumptions contexts that are too large for even the compilation to finish.
The limit has been choosen as large as possible to make sure we do not
unnecessarily drop test coverage. If such cases also appear in
-polly-process-unprofitable=false mode we may need to think about this again,
as the current limitations may still allow assumptions that are way to complex
to be checked profitably at run-time.
There is also certainly room for improvement regarding how (and how efficient)
we construct an assumed context, but this requires some more thinking.
This completes llvm.org/PR25458
llvm-svn: 252750
Diffstat (limited to 'lldb/scripts/Python')
0 files changed, 0 insertions, 0 deletions