Messages in this thread | | | Date | Mon, 18 Oct 2021 20:29:12 +0200 | Subject | Re: [GIT PULL] KVM fixes for Linux 5.15-rc7 | From | Paolo Bonzini <> |
| |
On 18/10/21 20:15, Linus Torvalds wrote: >> * Use a bitwise-OR instead of a logical-OR to aggregate the reserved >> * bits and EPT's invalid memtype/XWR checks to avoid an extra Jcc >> * (this is extremely unlikely to be short-circuited as true). > That makes very little sense. > > It seems to be avoiding a 'jcc' and replace it with a 'setcc' and an > 'or'. Which is likely both bigger and slower.
The compiler knows that the setcc is unnecessary, because a!=0|b!=0 is the same as (a|b)!=0.
> If the jcc were unpredictable, maybe that would be one thing. But at > least from a quick look, that doesn't even seem likely > > The other use of that function has a "WARN_ONCE()" on it, so > presumably it normally doesn't ever trigger either of the boolean > conditions.
Yes, and that was why it used a "|".
Anyway, not worth arguing for or against; I'll just change it to logical OR.
Paolo
| |