similar to: [LLVMdev] Why google-perftools fails to detect stack of JITted code? (with option -disable-fp-elim set)

Displaying 20 results from an estimated 11000 matches similar to: "[LLVMdev] Why google-perftools fails to detect stack of JITted code? (with option -disable-fp-elim set)"

2010 Jun 18
2
[LLVMdev] Why google-perftools fails on the JITted code?
I am trying to run some code allocating a lot of memory and not releasing it in JIT under google-perftools. Just one function 'main' calling 'malloc'. google-perftools fails to correctly read stack when malloc is called from inside the JITted code, and as a result perftools report is wrong: address of 'main' procedure appears shifted 0x3946e1d0->0x3946e1ed and is
2010 Jun 18
3
[LLVMdev] Why google-perftools fails on the JITted code?
On Jun 18, 2010, at 3:29 AM, Yuri wrote: > Now I see that JITted code doesn't have standard prolog, on x86 each > procedure instead begins with 'sub $0x4,%esp'. > > Is there an option to make JIT generate regular prologs? Try turning off frame pointer elimination. On the llc command line, this is -disable-fp-elim -Chris > > Yuri >
2010 Jun 19
0
[LLVMdev] Why google-perftools fails on the JITted code?
On Sat, Jun 19, 2010 at 4:35 AM, Chris Lattner <clattner at apple.com> wrote: > > On Jun 18, 2010, at 3:29 AM, Yuri wrote: > >> Now I see that JITted code doesn't have standard prolog, on x86 each >> procedure instead begins with 'sub    $0x4,%esp'. >> >> Is there an option to make JIT generate regular prologs? > > Try turning off frame
2010 Jun 18
0
[LLVMdev] Why google-perftools fails on the JITted code?
Now I see that JITted code doesn't have standard prolog, on x86 each procedure instead begins with 'sub $0x4,%esp'. Is there an option to make JIT generate regular prologs? Yuri
2010 Jun 23
0
[LLVMdev] Why would -disable-fp-elim cause SEGV in JIT, when without it code works fine?
You said this is on 32-bit x86? My understanding is that in that case, gdb will use ebp/esp to unwind the stack and doesn't need dwarf. It may have different behavior on FreeBSD if frame pointers are normally omitted on that platform. gdb ignores them on Linux x86_64 because they are generally omitted. This might actually be the best explanation for your symptoms, since this is what a gdb
2010 Jun 23
2
[LLVMdev] Why would -disable-fp-elim cause SEGV in JIT, when without it code works fine?
I have this situation when the same code SEGVs in JIT with option -disable-fp-elim and works fine without it. How can this possibly happen? Is it possible that there is a bug in JIT that stack isn't properly lowered for local variables when prologs are present? Or maybe JIT can accidentally use ebp for some values when it's supposed to be only used by frame pointer value. Stack (see
2010 Jun 19
2
[LLVMdev] [patch] New feature: debug info for function memory ranges (-jit-emit-debug-function-range)
Have you found http://llvm.org/docs/DebuggingJITedCode.html? The JIT already has support for something like this for gdb's benefit. Perftools and valgrind just don't know how to find it yet. On Sat, Jun 19, 2010 at 2:03 PM, Yuri <yuri at rawbw.com> wrote: > This new option (--jit-emit-debug-function-range) will allow to output > function information for memory ranges that
2010 Jun 19
0
[LLVMdev] [patch] New feature: debug info for function memory ranges (-jit-emit-debug-function-range)
This new option (--jit-emit-debug-function-range) will allow to output function information for memory ranges that functions occupy in memory while they run in JIT. File format generated is like this: ... 0x5000000 0x5001000 function_name_is_here ... This feature is useful for external tools like valgrind and google-perftools to profile the code when it is run in JIT. Particularly
2010 Jun 16
6
[LLVMdev] [patch] New feature: debug info in add2line format (--jit-emit-debug-addr2line)
This new option will allow to output function information in the same format as addr2line from binutils emits: ... 0xABCDEF01 T function_name_is_here ... This feature is useful to profile the code when it is run in JIT by external tools like valgrind and google-perftools. For example, google-perftools runs addr2line on executable and uses the resulting file to resolve memory addresses to
2013 Jul 25
2
[LLVMdev] Clang/LLVM 3.3 unwanted attributes being added: NoFramePointerElim
Since updating to LLVM 3.3, the system is generating attributes such as: attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false"
2010 Jun 22
2
[LLVMdev] [patch] New feature: debug info for function memory ranges (-jit-emit-debug-function-range)
On 06/19/2010 14:03, Yuri wrote: > This new option (--jit-emit-debug-function-range) will allow to output > function information for memory ranges that functions occupy in memory > while they run in JIT. File format generated is like this: > ... > 0x5000000 0x5001000 function_name_is_here > ... > > This feature is useful for external tools like valgrind and >
2010 Jun 24
1
[LLVMdev] Why would -disable-fp-elim cause SEGV in JIT, when without it code works fine?
On 06/23/2010 10:24, Reid Kleckner wrote: > You said this is on 32-bit x86? My understanding is that in that > case, gdb will use ebp/esp to unwind the stack and doesn't need dwarf. > It may have different behavior on FreeBSD if frame pointers are > normally omitted on that platform. gdb ignores them on Linux x86_64 > because they are generally omitted. > > This might
2010 Jun 24
0
[LLVMdev] [patch] New feature: debug info for function memory ranges (-jit-emit-debug-function-range)
On Jun 22, 2010, at 4:18 PM, Yuri wrote: > On 06/19/2010 14:03, Yuri wrote: >> This new option (--jit-emit-debug-function-range) will allow to output >> function information for memory ranges that functions occupy in memory >> while they run in JIT. File format generated is like this: >> ... >> 0x5000000 0x5001000 function_name_is_here >> ... >>
2012 Mar 08
1
[LLVMdev] attribute for disabling fp elim
Hi all, Is there a way to specify an attribute in a .ll file so that it will disable fp elim as if llc has been invoked with -disable-fp-elim on command line ? Thanks for your answers Best Regards Seb -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120308/1d4875f1/attachment.html>
2010 Oct 17
0
[LLVMdev] Why gdb can't determine stack of code run in JIT?
I know you haven't been able to get the JIT gdb support to work on FreeBSD (right?), but this is exactly the problem that we ran into that it solves. http://llvm.org/docs/DebuggingJITedCode.html I don't know what heuristic gdb is trying to use to unwind the stack, but it doesn't work. I asked a gdb developer about it two summers ago when I was working on this, but he seemed
2010 Oct 16
5
[LLVMdev] Why gdb can't determine stack of code run in JIT?
I run some code in JIT on x86-64 architecture. Even though llvm::NoFramePointerElim is set to true, I still see weird stack in gdb, see below. 800b485a4 is the current rip register where gdb stopped. Then many others values aren't valid. Then there is value that looks ok again. Why gdb can't determine stack? Yuri -- stack -- #0 0x0000000800b485a4 in ?? () #1 0x000000000000005f in
2011 Feb 10
3
how will CentOS handle the perftools 1.7 vs. 1.6 issue?
In order to avoid a cross post, the following background quote is from SCIENTIFIC-LINUX-USERS at fnal.gov: <quote> On Wed, Feb 9, 2011 at 11:27 AM, Ewan Mac Mahon <ewan at macmahon.me.uk> wrote: > > I'm a little bit hazy on the details, but there are some slides from the > meeting here[1]: >
2010 Jun 19
0
[LLVMdev] [patch] New feature: debug info for function memory ranges (-jit-emit-debug-function-range)
On 06/19/2010 14:14, Jeffrey Yasskin wrote: > Have you found http://llvm.org/docs/DebuggingJITedCode.html? The JIT > already has support for something like this for gdb's benefit Yes, I saw it and tried it. -jit-emit-debug generates ELF image in memory with debug info. Another option -jit-emit-debug-to-disk creates .o ELF files with debug info, one per function. If there are thousands
2010 Oct 16
0
[LLVMdev] Why gdb can't determine stack of code run in JIT?
When gdb is stopped in a function with no known start address, it has to make a guess about how to get the caller's rip. Either we assume that the saved rip is at rsp+8, or we assume that the saved rip is found via the rbp register. But it's a guess either way - gdb can't find the start of the function so it can't know which is the correct method. It would be nice if it could
2017 Apr 26
2
no-frame-pointer-elim & optimized
Hi, I have a function with: attributes #2 = { "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" } Yet when compiling it generates: https://gist.github.com/carlokok/7c3c98d2fd8c966671f40a5ad94f19d3 (Note how it checks fFinalizer before setting up ebp). It also has a: .loc 36 195 7 prologue_end before this happens How can I get llvm to do the frame