[llvm] r203821 - MCDwarf: Refactor line table handling into a single data structure

Rafael EspĂ­ndola rafael.espindola at gmail.com
Thu Mar 13 11:44:45 PDT 2014

> Yep - If that's the/an issue I have two thoughts

It is an issue for sure.

> 1) *squint very hard* in the direction of the debugger to see whether
> this is really valuable (and if it isn't, just produce one line table
> shared by all CUs during LTO)

That is the simplest and also produces a much smaller output. There
was a discussion about it some time ago as a reply to r176605. Greg
Clayton in particular seems to think it is important to produce
multiple tables.

> 2) Adding a feature to external tools (like gas) doesn't actually fix
> our code cleanliness issue - it takes time to ship the new tool and
> more time for everyone to upgrade to it before we could turn down the
> old behavior entirely - I don't know that the difference is important
> enough to worry about that?

Not being able to represent in an assembly file the objects we produce
is a very fundamental design problem. So yes, I think it is worth it.

> I mean I suppose if someone cares they
> could go & advocate for the feature to be added to gas or any other
> assemblers - but for LLVM I'd simply do it the current way (one line
> table for all CUs when emitting asm under LTO - which is a pretty
> specific set of circumstances to begin with) until the feature was
> widely adopted and deployed, then switch, rather than having any
> interim period of supporting both forms.

We only need to implement it is MC first. With that we can key the
behaviour on the integrated-as flag instead of -S versus -c.

Eric, btw, you never replied to
http://llvm.org/bugs/show_bug.cgi?id=18716#c3. What do you think of
the design?


More information about the llvm-commits mailing list