From: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
To: Nathan Howard <liverlint@gmail.com>
Cc: Joe Perches <joe@perches.com>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>,
linux-msdos@vger.kernel.org, Lorenzo Stoakes <lstoakes@gmail.com>,
"Ravi V. Shankar" <ravi.v.shankar@intel.com>,
Andrew Morton <akpm@linux-foundation.org>,
"Michael S. Tsirkin" <mst@redhat.com>,
Adam Buchbinder <adam.buchbinder@gmail.com>,
Alexandre Julliard <julliard@winehq.org>,
Qiaowei Ren <qiaowei.ren@intel.com>,
Vlastimil Babka <vbabka@suse.cz>,
Chris Metcalf <cmetcalf@mellanox.com>,
wine-devel@winehq.org, Jiri Slaby <jslaby@suse.cz>,
x86@kernel.org, Liang Z Li <liang.z.li@intel.com>,
Stas Sergeev <stsp@list.ru>, Paolo Bonzini <pbonzini@redhat.com>,
Dave Hansen <dave.hansen@linux.intel.com>,
Paul Gortmaker <paul.gortmaker@windriver.com>
Subject: Re: [PATCH v4 01/17] x86/mpx: Do not use SIB index if index points to R/ESP
Date: Fri, 24 Feb 2017 11:07:27 -0800 [thread overview]
Message-ID: <1487963247.115017.10.camel@ranerica-desktop> (raw)
In-Reply-To: <CADRb1HZSxmt69V7MEUGMNUHqmfFbOMGVZPp+qLfwAu17KNRh=g@mail.gmail.com>
On Fri, 2017-02-24 at 09:47 -0500, Nathan Howard wrote:
> Also, this code would read better with the inner test
> reversed or done first
>
> if (indx_offset < 0) {
> if (indx_offset != -EDOM)
> goto out_err;
> indx = 0;
> } else {
> indx = regs_get_register(etc...)
> }
>
> or
> if (indx_offset == -EDOM)
> indx = 0;
> else if (indx_offset < 0)
> goto err;
>
>
> Or goto out_err;
>
>
> else
> indx = regs_get_register(etc...)
>
> The compiler should generate the same code in any
> case, but either could improve reader understanding.
>
>
> Also, it may be a tweak more efficient to handle the most likely
> runtime case in the conditional stack first (whichever that may be).
The most likely case will be a positive value but I need to check for
negatives first :( I could wrap the first conditional in an "unlikely".
Thanks and BR,
Ricardo
next prev parent reply other threads:[~2017-02-24 19:07 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-23 6:36 [PATCH v4 00/17] x86: Enable User-Mode Instruction Prevention Ricardo Neri
2017-02-23 6:36 ` [PATCH v4 01/17] x86/mpx: Do not use SIB index if index points to R/ESP Ricardo Neri
2017-02-23 7:24 ` Peter Zijlstra
2017-02-23 9:50 ` Paul Crawford
2017-02-23 12:47 ` Coding style vs legibility [was Re: [PATCH v4 01/17] x86/mpx: Do not use SIB index if index points to R/ESP] Mouse
2017-02-23 22:17 ` [PATCH v4 01/17] x86/mpx: Do not use SIB index if index points to R/ESP Ricardo Neri
2017-02-24 2:33 ` Joe Perches
2017-02-24 2:41 ` Ricardo Neri
2017-02-24 14:47 ` Nathan Howard
2017-02-24 19:07 ` Ricardo Neri [this message]
2017-02-24 15:00 ` Adan Hawthorn
2017-02-23 6:36 ` [PATCH v4 02/17] x86/mpx: Do not use R/EBP as base in the SIB byte with Mod = 0 Ricardo Neri
2017-02-23 6:36 ` [PATCH v4 03/17] x86/mpx, x86/insn: Relocate insn util functions to a new insn-kernel Ricardo Neri
2017-02-23 10:54 ` kbuild test robot
2017-02-23 22:18 ` Ricardo Neri
2017-02-23 6:36 ` [PATCH v4 04/17] x86/insn-eval: Add utility functions to get register offsets Ricardo Neri
2017-02-23 6:36 ` [PATCH v4 05/17] x86/insn-eval: Add utility function to get segment selector Ricardo Neri
2017-02-23 6:36 ` [PATCH v4 06/17] x86/insn-eval: Add utility function to get segment descriptor Ricardo Neri
2017-02-23 6:36 ` [PATCH v4 07/17] x86/insn-eval: Add utility function to get segment descriptor base address Ricardo Neri
2017-02-23 6:36 ` [PATCH v4 08/17] x86/insn-eval: Add functions to get default operand and address sizes Ricardo Neri
2017-02-23 6:36 ` [PATCH v4 09/17] x86/insn-eval: Do not use R/EBP as base if mod in ModRM is zero Ricardo Neri
2017-02-23 6:36 ` [PATCH v4 10/17] insn/eval: Incorporate segment base in address computation Ricardo Neri
2017-02-23 6:37 ` [PATCH v4 11/17] x86/insn-eval: Add support to resolve 16-bit addressing encodings Ricardo Neri
2017-02-23 6:37 ` [PATCH v4 12/17] x86/cpufeature: Add User-Mode Instruction Prevention definitions Ricardo Neri
2017-02-23 6:37 ` [PATCH v4 13/17] x86: Add emulation code for UMIP instructions Ricardo Neri
2017-02-23 6:37 ` [PATCH v4 14/17] x86/umip: Force a page fault when unable to copy emulated result to user Ricardo Neri
2017-02-23 6:37 ` [PATCH v4 15/17] x86/traps: Fixup general protection faults caused by UMIP Ricardo Neri
2017-02-23 9:27 ` Peter Zijlstra
2017-02-23 22:15 ` Ricardo Neri
2017-02-24 19:11 ` Andy Lutomirski
2017-02-24 19:36 ` Ricardo Neri
2017-02-24 19:45 ` H. Peter Anvin
2017-02-23 6:37 ` [PATCH v4 16/17] x86: Enable User-Mode Instruction Prevention Ricardo Neri
2017-02-23 6:37 ` [PATCH v4 17/17] selftests/x86: Add tests for " Ricardo Neri
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1487963247.115017.10.camel@ranerica-desktop \
--to=ricardo.neri-calderon@linux.intel.com \
--cc=adam.buchbinder@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=cmetcalf@mellanox.com \
--cc=dave.hansen@linux.intel.com \
--cc=joe@perches.com \
--cc=jslaby@suse.cz \
--cc=julliard@winehq.org \
--cc=liang.z.li@intel.com \
--cc=linux-msdos@vger.kernel.org \
--cc=liverlint@gmail.com \
--cc=lstoakes@gmail.com \
--cc=mingo@redhat.com \
--cc=mst@redhat.com \
--cc=paul.gortmaker@windriver.com \
--cc=pbonzini@redhat.com \
--cc=qiaowei.ren@intel.com \
--cc=ravi.v.shankar@intel.com \
--cc=stsp@list.ru \
--cc=tglx@linutronix.de \
--cc=vbabka@suse.cz \
--cc=wine-devel@winehq.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox