I found a bug in Intel Skylake processors
GCC generates code that's smaller but it <i>isn't</i> optimal, because of the potential for partial register stalls (and just overall register renaming issues)<p>It's of course not wrong, but using AH when you're dealing with RAX is a weird anachronism<p>Clang does the obvious, correct thing.