[PATCH]: Remove DW_TAG_arg_variable and DW_TAG_auto_variable
Duncan P. N. Exon Smith
dexonsmith at apple.com
Wed Aug 5 14:10:57 PDT 2015
Looks like I forgot to respond with my commits. Main one was
r243774, full details in PR22779.
> On 2015-Jul-30, at 17:57, Eric Christopher <echristo at gmail.com> wrote:
>
> Nah, it's been a TODO to remove them since I first saw them :)
>
> -eric
>
> On Thu, Jul 30, 2015 at 5:52 PM Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
> Okay cool, I'll push it through when I get a chance (probably tomorrow).
> Mainly wanted to be sure no one was attached to the old tags.
>
> > On 2015-Jul-30, at 17:34, Eric Christopher <echristo at gmail.com> wrote:
> >
> > Without looking, if you think you can do it go ahead. If you want actual review I can do that too :)
> >
> > -eric
> >
> > On Thu, Jul 30, 2015 at 5:33 PM Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
> > These patches remove the two remaining fake DWARF tags, which we use to
> > differentiate between types of variables. However, they're not
> > necessary. The `arg:` field fully encodes whether a local variable is a
> > parameter.
> >
> > The other obvious option (and my original plan here) was to create two
> > subclasses `DIAutoVariable` and `DIParameterVariable`. These classes
> > would be so similar that I'm not sure that's worthwhile until we're
> > tablegen'ing these.
> >
> > Here's what's in the patches:
> >
> > - 0001: Update the DIBuilder API to use `createAutoVariable()` and
> > `createParameterVariable()` (instead of `createLocalVariable()`).
> > - 0002: clang side of 0001.
> > - 0003: Strip the fake tags from the IR.
> > - 0004: LLVM testcases for 0003 updated via script (I'll squash this).
> > - 0005: Clang testcases for 0003.
> >
> > (Note: a follow-up could change `DILocalVariable::DILocalVariable()` to
> > set the tag to `DW_TAG_formal_parameter` instead of `DW_TAG_variable`
> > (as appropriate), instead of having that logic magically in the backend
> > in `DbgVariable`. I left a FIXME to that effect.)
> >
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
More information about the llvm-commits
mailing list