[PATCH] D3635: DebugInfo: Emit any enum with a referenced enum constant.
David Blaikie via cfe-commits
cfe-commits at lists.llvm.org
Mon Apr 4 11:43:20 PDT 2016
dblaikie abandoned this revision.
dblaikie added a subscriber: rsmith.
dblaikie added a comment.
In http://reviews.llvm.org/D3635#44720, @rsmith wrote:
> Implementation LGTM, if you decide that you want to go in this direction.
Just looking over some old patches/git branches I had lying around.
It seems what I might need to make this closer to GCC's size/fidelity tradeoff, is the ability to detect if the use of the enumerator was an ODR use. So that this:
enum X { Y };
int i = Y;
was a use, but this:
int i[Y];
was not.
Is that reasnable? Can I practically detect that property in MarkAnyDeclReferenced?
(is "int i = Y;" an ODR use? Perhaps I'm getting the terminology wrong... maybe there is no nice linguistic property that distinguishes these two cases?)
& just for the record, the patch as it stands grows the .dwo size for the dwos build for the clang binary by a little over 18% :/
& using the MightBeOdrUse flag to MarkAnyDeclReferenced didn't seem to change the array case behavior above - I didn't get aggregate numbers to see if it had any impact.
http://reviews.llvm.org/D3635
More information about the cfe-commits
mailing list