https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107943
--- Comment #6 from Bernd Edlinger <bernd.edlinger at hotmail dot de> --- I don't know if that is relevant or not, but I was using a slighthly different criterion in bisection. I used .../configure --prefix=... --enable-languages=all and defined the bad criterion using the unreduced test case compilation took >10 minutes on Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz The original test case is available as follows: $ wget https://www.openssl.org/source/openssl-1.1.1s.tar.gz $ tar xf openssl-1.1.1s.tar.gz $ ./config -fanalyzer $ make With this pointed to a different commit: r12-7615-gc5288df751f Author: Roger Sayle <ro...@nextmovesoftware.com> Date: Fri Mar 11 17:46:50 2022 +0000 PR tree-optimization/98335: Improvements to DSE's compute_trims. This patch is the main middle-end piece of a fix for PR tree-opt/98335, which is a code-quality regression affecting mainline. The issue occurs in DSE's (dead store elimination's) compute_trims function that determines where a store to memory can be trimmed. In the testcase given in the PR, this function notices that the first byte of a DImode store is dead, and replaces the 8-byte store at (aligned) offset zero, with a 7-byte store at (unaligned) offset one. Most architectures can store a power-of-two bytes (up to a maximum) in single instruction, so writing 7 bytes requires more instructions than writing 8 bytes. This patch follows Jakub Jelinek's suggestion in comment 5, that compute_trims needs improved heuristics. beginning with this version the original test case, enters a steady state after 2 minutes (observed with top: VIRT=196296 RES=170872 SHR=21992 %CPU=100,0) and has no progress for at least 20 hours, before I killed it. The reduced test case does not exhibit this behaviour, and runs just for some seconds. But I agree that the r11-3840-gaf66094d03779377 is also special and made the compile time raise from 0 to 2-10 minutes, however I would not have opened this issue for that, since I was believing there is something expensive to check that just did not give a result in the end.