As suggested in PR39534, this patch teaches cmov expansion to avoid creating a critical edge by creating a diamond control flow rather than a triangle control flow.
Unfortunately, it doesn't seem to fix the problem reported in that PR. But maybe it gets us closer to being able to fix it?
This looks worse. We gained an instruction. There are similar instances of this in other tests.