https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180
Bug ID: 85180 Summary: Infinite (?) loop in RTL DSE optimizer Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: uweigand at gcc dot gnu.org CC: krebbel at gcc dot gnu.org Target Milestone: --- Target: s390x-ibm-linux Created attachment 43828 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43828&action=edit Test case - run with "cc1plus -O" When attempting to compile the attached testcase simply with "cc1plus -O" on a s390x-ibm-linux target, the compilation process never terminates. The problem appear to originate in the dse.c pass; building with -fno-dse makes the problem go away. I'm not completely sure that this is really an infinite loop, strictly speaking, or just some exponential time behavior somewhere. In any case, at the time the compiler hangs, it sits in a long chain of find_base_term calls ultimately originating at the canon_output_dependence in dse.c:1593 (record_store).