[lkml]   [2009]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH][GIT PULL][v2.6.32] tracing/x86: Add check to detect GCC messing with mcount prologue
    On 11/24/2009 09:12 AM, Andrew Haley wrote:
    >> If we're changing gcc anyway, then let's add the option of intercepting
    >> the function at the point where the machine state is well-defined by
    >> ABI, which is before the function stack frame is set up.
    > Hmm. On the x86 I suppose we could just inject a naked call instruction,
    > but not all aeches allow us to call anything before we've saved the return
    > address. Or are you talking x86 only?

    For x86, we should use a naked call.

    For architectures where that is not possible, we should use a minimal
    sequence such that the ABI state at the invocation point is 100% derivable.

    On MIPS, for example, we could use a sequence such as:

    mov at, ra
    jal __fentry__

    It would be up to __fentry__ to save the value in at and to restore it
    back into ra before resuming, meaning that __fentry__ has a nonstandard
    calling convention.


     \ /
      Last update: 2009-11-24 21:03    [W:0.019 / U:0.236 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site