https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78634
--- Comment #6 from Dominik Vogt <vogt at linux dot vnet.ibm.com> --- It fails with -march=zEC12 but not with -march=z900. It seems to be a tuning issue of the branch cost in the backend; a colleague is working on that and will mave a patch at some time in the future. So, I think you can ignore this, it's something to be dealt with in the backend.