On Mon, May 2, 2016 at 7:56 AM, Denys Vlasenko <[email protected]> wrote: > Use of a temporary R8 register here seems to be unnecessary. > > "push %r8" is a two-byte insn (it needs REX prefix to specify R8), > "push $0" is two-byte too. It seems just using the latter would be > no worse. > > Thus, code had an unnecessary "xorq %r8,%r8" insn. > It probably costs nothing in execution time here since we are probably > limited by store bandwidth at this point, but still. > > Run-tested under QEMU: 32-bit calls still work:
Acked-by: Andy Lutomirski <[email protected]>

