https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124
Bug ID: 71124 Summary: Compiler enters infinite loop on Microblaze with -O1/-O2/-O3 Product: gcc Version: 4.9.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: thomas.petazz...@free-electrons.com Target Milestone: --- Created attachment 38493 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38493&action=edit Test case The attached preprocessed C++ file (generated from the assimp project) causes g++ 4.9.3 to enter an infinite loop if an optimization level of -O1, -O2 or -O3 is used. With no optimization flags, or with the -Os flag, the compiler works fine. I.e: microblazeel-linux-g++ -O1 -c test.cpp microblazeel-linux-g++ -O2 -c test.cpp microblazeel-linux-g++ -O3 -c test.cpp never terminate. While: microblazeel-linux-g++ -c test.cpp microblazeel-linux-g++ -Os -c test.cpp terminate properly.