https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104498
--- Comment #7 from avieira at gcc dot gnu.org --- And I was thinking it didn't know how to handle anchor + offset... Anyway if I just record the swap and use it to invert the distance calculation that seems to 'work' for the testcase. I'm happy to go bootstrap it, or would you rather fix this some other way?