http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58574
Bug ID: 58574 Summary: [4.9 Regression] Wrong code due to s390x machine reorg pass Product: gcc Version: 4.9.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: jakub at gcc dot gnu.org CC: krebbel at gcc dot gnu.org Created attachment 30928 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30928&action=edit scipy.C The attached testcase is miscompiled with -O2 -march=z10 -m64 on s390x-linux. foo function starts with: cfdbr %r1,5,%f0 clijle %r1,93,.L70 .L68: larl %r5,.L586 but doesn't initialize %r5 at all at label .L70 or after it (that is the switch), while various cases use %r5.