Re: [PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-03 Thread Brian Gerst
On Tue, May 3, 2016 at 1:55 PM, Andy Lutomirski wrote: > On Tue, May 3, 2016 at 10:45 AM, Brian Gerst wrote: >> On Mon, May 2, 2016 at 10:56 AM, Denys Vlasenko wrote: >>> Use of a temporary R8 register here seems to be unnecessary.

Re: [PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-03 Thread Brian Gerst
On Tue, May 3, 2016 at 1:55 PM, Andy Lutomirski wrote: > On Tue, May 3, 2016 at 10:45 AM, Brian Gerst wrote: >> On Mon, May 2, 2016 at 10:56 AM, Denys Vlasenko wrote: >>> Use of a temporary R8 register here seems to be unnecessary. >>> >>> "push %r8" is a two-byte insn (it needs REX prefix to

Re: [PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-03 Thread Andy Lutomirski
On Tue, May 3, 2016 at 10:45 AM, Brian Gerst wrote: > On Mon, May 2, 2016 at 10:56 AM, Denys Vlasenko 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

Re: [PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-03 Thread Andy Lutomirski
On Tue, May 3, 2016 at 10:45 AM, Brian Gerst wrote: > On Mon, May 2, 2016 at 10:56 AM, Denys Vlasenko 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

Re: [PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-03 Thread Brian Gerst
On Mon, May 2, 2016 at 10:56 AM, Denys Vlasenko 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. > >

Re: [PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-03 Thread Brian Gerst
On Mon, May 2, 2016 at 10:56 AM, Denys Vlasenko 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

Re: [PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-02 Thread Andy Lutomirski
On Mon, May 2, 2016 at 7:56 AM, Denys Vlasenko 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. > >

Re: [PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-02 Thread Andy Lutomirski
On Mon, May 2, 2016 at 7:56 AM, Denys Vlasenko 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

[PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-02 Thread Denys Vlasenko
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

[PATCH RESEND] x86/asm/entry/32: simplify pushes of zeroed pt_regs->REGs

2016-05-02 Thread Denys Vlasenko
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