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
Loading
Please register or sign in to comment