search for: print_stack_trace

Displaying 6 results from an estimated 6 matches for "print_stack_trace".

2013 Oct 30
2
[LLVMdev] Preserving accurate stack traces with optimization?
...of inlining, I mean the exact stack trace you would get without any inlining (i.e. in a unoptimized build.) To put this another way, I need to be able to distinguish the path by which a function was inlined. Consider the following example (in approximate C): void a() { if( randomly_true ) print_stack_trace(); } void b() { a(); } void c() { a(); } void main() { b(); c(); } In our environment, we need to be able to distinguish the traces "a;b;main" from "a;c;main" reliably. We need this regardless of what decisions the optimizer might make about inlining (or other o...
2013 Oct 30
0
[LLVMdev] Preserving accurate stack traces with optimization?
...g, I mean the exact stack trace you would get without any inlining (i.e. in a unoptimized build.) To put this another way, I need to be able to distinguish the path by which a function was inlined. Consider the following example (in approximate C): > > void a() { > if( randomly_true ) print_stack_trace(); > } > void b() { > a(); > } > void c() { > a(); > } > void main() { > b(); > c(); > } > > In our environment, we need to be able to distinguish the traces "a;b;main" from "a;c;main" reliably. We need this regardless of what dec...
2013 Oct 30
2
[LLVMdev] Preserving accurate stack traces with optimization?
...exact stack trace you would get without any inlining (i.e. in a unoptimized > build.) To put this another way, I need to be able to distinguish the path > by which a function was inlined. Consider the following example (in > approximate C): > > void a() { > if( randomly_true ) print_stack_trace(); > } > void b() { > a(); > } > void c() { > a(); > } > void main() { > b(); > c(); > } > > In our environment, we need to be able to distinguish the traces > "a;b;main" from "a;c;main" reliably. We need this regardless of what...
2013 Oct 30
0
[LLVMdev] Preserving accurate stack traces with optimization?
Hi Philip, Could you define what is an accurate stack trace for your project? In other words, what do you mean by full and accurate stack frame? Without this definition, this is difficult to give you any feedback. In particular, I do not see what it means when we use inlining. E.g., what do you expect from code like this: static void fct1(…) { ... } static void fct2(…) { … fct1(…) ... }
2013 Oct 31
0
[LLVMdev] Preserving accurate stack traces with optimization?
...inlining >> (i.e. in a unoptimized build.) To put this another way, I need >> to be able to distinguish the path by which a function was >> inlined. Consider the following example (in approximate C): >> >> void a() { >> if( randomly_true ) print_stack_trace(); >> } >> void b() { >> a(); >> } >> void c() { >> a(); >> } >> void main() { >> b(); >> c(); >> } >> >> In our environment, we need to be able to distinguish the t...
2013 Oct 28
3
[LLVMdev] Preserving accurate stack traces with optimization?
Is there a known way to preserve a full and accurate stack trace while utilizing most of LLVM's optimization abilities? We are investigating using LLVM as a JIT for a language which requires the ability to generate an accurate stack trace from any arbitrary point(1) during the execution. I know that we can make this work by doing inlining externally, manually recording virtual frames,