lkml.org 
[lkml]   [2008]   [Jan]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC PATCH 01/22 -v2] Add basic support for gcc profiler instrumentation
    On Thu, 10 Jan 2008, Jan Kiszka wrote:
    > > ===================================================================
    > > --- /dev/null 1970-01-01 00:00:00.000000000 +0000
    > > +++ linux-compile-i386.git/arch/x86/kernel/mcount-wrapper.S 2008-01-09 14:10:07.000000000 -0500
    > > @@ -0,0 +1,25 @@
    > > +/*
    > > + * linux/arch/x86/mcount-wrapper.S
    > > + *
    > > + * Copyright (C) 2004 Ingo Molnar
    > > + */
    > > +
    > > +.globl mcount
    > > +mcount:
    > > + cmpl $0, mcount_enabled
    > > + jz out
    > > +
    > > + push %ebp
    > > + mov %esp, %ebp
    >
    > What is the benefit of having a call frame in this trampoline? We used
    > to carry this in the i386 mcount tracer for Adeos/I-pipe too (it was
    > derived from the -rt code), but I just successfully tested a removal
    > patch. Also glibc [1] doesn't include it.

    OK, I just tried this out on i386, and it works fine.

    >
    > > + pushl %eax
    > > + pushl %ecx
    > > + pushl %edx
    > > +
    > > + call __mcount
    >
    > I think this indirection should be avoided, just like the 64-bit version
    > and glibc do.

    I also did this too.

    >
    > > +
    > > + popl %edx
    > > + popl %ecx
    > > + popl %eax
    > > + popl %ebp
    > > +out:
    > > + ret
    >

    I'll go try the updates on x86_64 now.

    Thanks for the tips!

    -- Steve



    \
     
     \ /
      Last update: 2008-01-11 00:05    [W:4.214 / U:0.180 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site