On Tue, Nov 20, 2012 at 6:18 PM, Evgeniy Stepanov <eugeni.stepa...@gmail.com> wrote: > On Tue, Nov 20, 2012 at 5:52 PM, Konstantin Serebryany > <konstantin.s.serebry...@gmail.com> wrote: >> >> On Tue, Nov 20, 2012 at 5:41 PM, Peter Bergner <berg...@vnet.ibm.com> >> wrote: >> > On Tue, 2012-11-20 at 11:07 +0400, Konstantin Serebryany wrote: >> >> I've applied your patch (with minor style and comment changes) >> >> upstream: >> >> http://llvm.org/viewvc/llvm-project?view=rev&revision=168356 >> >> I did not have any way to test it though. Also, gmail does something >> >> horrible with patches inlined in a message, so I might have missed >> >> something. >> > >> > Doing a quick peruse through your LLVM commit, I see you grabbed the >> > PopStackFrames() addition, but the asan_linux.cc changes do not include >> > the call to PopStackFrames() after the _Unwind_Backtrace() call. >> > Specifically, the following patch hunk: >> > >> >> _Unwind_Backtrace(Unwind_Trace, stack); >> >> > + // Pop off the two ASAN functions from the backtrace. >> >> > + stack->PopStackFrames(2); > > > I wonder if under some conditions we may get a different number of extra > frames (inlining comes to mind). What do you think of removing any number of > frames that belong to the runtime library - we have memory layout info for > that?
Bad idea, imho. Hard to implement, slower to run (remember, this *is* a hotspot). The frames in question are in our run-time and we can fully control inlining. What is the current number of redundant frames on ARM? --kcc > > >> >> >> Ah, indeed, I missed that. >> Since the patch also affects ARM, I'd like to hear from Evgeniy Stepanov >> (or we may decouple powerpc from arm) >> >> --kcc >> > >> > I'll scan the reset of your commit looking for anything else that >> > is missing. >> > >> > >> >> Soon I hope to learn how to pull the upstream changes to gcc tree and >> >> do it myself. >> >> (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55376) >> >> In the meantime, you are welcome to apply the same patch to gcc >> >> manually. >> >> Same for the gcc-specific parts of you patch. >> > >> > I'll grab your changes from the LLVM tree so as to pick up your >> > style changes and add anything you inadvertently dropped and >> > commit it. Thanks. >> > >> > Peter >> > >> > > >