search for: inline_me

Displaying 4 results from an estimated 4 matches for "inline_me".

2019 Nov 14
2
DW_OP_implicit_pointer design/implementation in general
...> My reading of the DWARF issue is that it was fairly specifically designed > to handle the case of a function taking parameters by pointer/reference, > which is then inlined, and the caller is passing local objects rather than > other pointers/references. So: > > > > void inline_me(foo *ptr) { > > does something with ptr->x or *ptr; > > } > > void caller() { > > foo actual_obj; > > inline_me(&actual_obj); > > } > > > > After inlining, maintaining a pointer to actual_obj might be sub-optimal, > but after a “step in...
2019 Nov 14
3
DW_OP_implicit_pointer design/implementation in general
On Thu, Nov 14, 2019 at 1:27 PM Adrian Prantl <aprantl at apple.com> wrote: > > > > On Nov 14, 2019, at 1:21 PM, David Blaikie <dblaikie at gmail.com> wrote: > > > > Hey folks, > > > > Would you all mind having a bit of a design discussion around the > feature both at the DWARF level and the LLVM implementation? It seems like > what's
2019 Nov 15
4
DW_OP_implicit_pointer design/implementation in general
...> My reading of the DWARF issue is that it was fairly specifically designed > to handle the case of a function taking parameters by pointer/reference, > which is then inlined, and the caller is passing local objects rather than > other pointers/references. So: > > > > void inline_me(foo *ptr) { > > does something with ptr->x or *ptr; > > } > > void caller() { > > foo actual_obj; > > inline_me(&actual_obj); > > } > > > > After inlining, maintaining a pointer to actual_obj might be sub-optimal, > but after a “step in...
2009 Sep 14
4
[LLVMdev] Exception Handling Tables Question
...rate. Right now we generate call sites for all of the code in a function, even for code that cannot (or at least shouldn't) throw an exception. E.g., for this code: #include <cstdio> struct Cleanup { ~Cleanup(void) { printf("in cleanup\n"); } }; static void inline_me(void) { Cleanup C; throw 0; } int main(void) { try { inline_me(); } catch (...) { printf("in catch all\n"); } return 0; } (assume it's all been inlined), the EH handling table for "main" goes from Leh_func_begin1 to Leh_func_end1, mark...