This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH,RFC,V3 0/5] Support for CTF in GCC
On Wed, Jul 3, 2019 at 5:18 AM Jeff Law <email@example.com> wrote:
> On 7/2/19 11:54 AM, Indu Bhagat wrote:
> > Ping.
> > Can someone please review these patches ? We would like to get the
> > support for CTF integrated soon.
> I'm not sure there's really even consensus that we want CTF support in
> GCC. Though I think that the changes you've made in the last several
> weeks do make it somewhat more palatable. But ultimately the first step
> is to get that consensus.
> I'd hazard a guess that Jakub in particular isn't on board as he's been
> pushing to some degree for post-processing or perhaps doing it via a
> plug in.
> Richi has been guiding you a bit through how to make the changes easier
> to integrate, but I haven't seen him state one way or the other his
> preference on whether or not CTF support is something we want.
I'm mostly worried about the lack of a specification and the appearant
restriction on a subset of C (the patches have gcc_unreachable ()
in paths that can be reached by VECTOR_TYPE or COMPLEX_TYPE
not to mention FIXED_POINT_TYPE, etc...).
While CTF might be easy and fast to parse and small I fear it will
go the STABS way of being not extensible and bitrotten.
Given it appears to generate only debug info for symbols and no locations
or whatnot it should be sufficient to introspect the compilation to generate
the CTF info on the side and then merge it in at link-time. Which makes
me wonder if this shouldn't be a plugin for now until it is more complete
and can be evaluated better (comments in the patches indicate even the
on-disk format is in flux?). Adding plugin hook invocations to the three
places the CTF info generation hooks off should be easy.
That said, the patch series isn't ready for integration since it will
crash left and right -- did you bootstrap and run the testsuite
> I'm hesitant to add CTF support in GCC, but can understand how it might
> be useful given the kernel's aversion to everything dwarf. But if the
> kernel is the primary consumer than I'd lean towards post-processing.