https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71288
Bug ID: 71288 Summary: [7 Regression] Time and memory hog during if-conversion at -O3 Product: gcc Version: 7.0 Status: UNCONFIRMED Keywords: compile-time-hog, memory-hog Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- gcc-7.0.0-alpha20160522 consumes lots of memory and time (indefinite time?) when compiling the following testcase at -O3: unsigned short int hb; short int kr; void o8 (void) { unsigned short int ov; while (hb < 1) { if (hb != kr) hb = 0; for (ov = 0; ov < 16; ++ov) { kr = 0; hb -= ((hb != 0) ? (ov < hb) : 1); } } } % timeout 15 x86_64-pc-linux-gnu-gcc-7.0.0-alpha20160522 -c -O3 -w gjpx2kcj.c % echo $? 124 Strictly speaking, the testcase is not fully reduced. It is the minimal version which still demonstrates the same hottest path in perf top as the original program: 26.77% cc1 [.] (anonymous namespace)::pass_if_conversion::execute