[lkml]   [2004]   [Oct]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Semaphore assembly-code bug

    On Fri, 29 Oct 2004, Andreas Steinmetz wrote:
    > If you still believe in features I can't find any manufacturer
    > documentation for, well, you're Linus so it's your decision.

    It's not that I'm Linus. It's that I am apparently better informed than
    you are, and the numbers you are looking at are irrelevant. For example,
    have you even _looked_ at the Pentium M stack engine documentation, which
    is what this whole argument is all about?

    And the documentation you look at is not revelant. For example, when you
    look at the latency of "pop", who _cares_? That's the latency to use the
    data, and has no meaning, since in this case we don't actually ever use
    it. So what matters is other things entirely, like how well the
    instructions can run in parallell.

    Try it.

    popl %eax
    popl %ecx

    should one cycle on a Pentium. I pretty much _guarantee_ that

    lea 4(%esp),%esp
    popl %ecx

    takes longer, since they have a data dependency on %esp that is hard to
    break (the P4 trace-cache _may_ be able to break it, but the only CPU that
    I think is likely to break it is actually the Transmeta CPU's, which did
    that kind of thing by default and _will_ parallelise the two, and even
    combine the stack offsetting into one single micro-op).

    So my argument is that "popl" is smaller, and I doubt you can find a
    machine where it's actually slower (most will take two cycles). And I am
    pretty confident that I can find machines where it is faster (ie regular

    Not that any of this matters, since there's a patch that makes all of this
    moot. If it works.

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2009-11-18 23:46    [W:0.019 / U:7.448 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site