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...