Messages in this thread | | | Date | Mon, 28 Sep 2015 15:43:11 +0200 | From | Denys Vlasenko <> | Subject | Re: [PATCH] x86/signal: Deinline get_sigframe, save 240 bytes |
| |
On 09/28/2015 02:33 PM, H. Peter Anvin wrote: > This one makes me slightly nervous, because it isn't clear > that these aren't potentially performance sensitive.
CALL instruction is not a crime :) It costs about the same as one read-modify-write operation on a memory operand.
This function is used in signal delivery code. If performance critical code uses massive numbers of signals, it already has a problem, Unix signals are too inefficient. That's why we have futexes etc...
> On September 28, 2015 5:23:57 AM PDT, Denys Vlasenko <dvlasenk@redhat.com> wrote: >> This function compiles to 277 bytes of machine code and has 4 >> callsites.
I must correct myself: there are two callsites, not four. (There are four calls in the source, but two of them are in 32-bit code and two are in 64-bit).
| |