[PATCH] Add new debug kind LocTrackingOnly.
echristo at gmail.com
Mon Jun 23 14:05:47 PDT 2014
On Mon, Jun 23, 2014 at 2:04 PM, David Blaikie <dblaikie at gmail.com> wrote:
> On Mon, Jun 23, 2014 at 2:02 PM, Eric Christopher <echristo at gmail.com> wrote:
>>>> Hm, perhaps. I would be penalizing -Rpass, however. But I guess it doesn't
>>>> matter much. I'll amend the documentation to state that -gcolumn-inf is
>>>> needed with -Rpass.
>>> Well it's not worse - currently -Rpass doesn't enable debug info at
>>> all , but I suppose it at least suggests the user enable both -gmlt
>>> and -gcolumn-info. But I assume if they enabled -g(mlt or otherwise)
>>> they wouldn't be told they should use -gcolumn-info.
>>> So, committing this patch without the column info would be sort of a
>>> regression, but sort of not... Given this is a developer feature only,
>>> I'm OK with it being a little rough around the edges. Up to you
>>> though, we can discuss the issues with -gcolumn-info and -Rpass in
>>> this review if you prefer. Just figured it'd be better to separate
>>> them if practical.
>> Separately from the rest of the patch we might want to look into
>> turning column info back on for -gmlt in particular. It's the use case
>> for the sanitizers etc and so having slightly more accurate back
>> traces is a fairly good thing there. Especially as we get the size of
>> -gmlt down we can look into using that room for things that are
>> explicitly useful.
> Sure, sounds plausible. I have this vague recollection that one of the
> reasons it was turned off was performance implications in clang,
> querying for the column info for everything wasn't terribly cheap -
> but I'm probably misremembering. Maybe it's just creating the extra
> MDNodes that gets costly.
> In any case, whatever the cost was, if any (maybe it was just "GDB
> gets weird when you add column info" - in which case that's less of
> (not at all?) a problem for -gmlt).
IIRC it was mostly "it's a lot of size and nothing uses it". It was
also non-trivial for compile time.
More information about the cfe-commits