This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: distcc and ccache speedup: adds directives-only preprocessing


On Feb 13, 2007, "Ollie Wild" <aaw@google.com> wrote:

> I did add a couple test cases specific to this patch.  I also compiled
> a large subset of Google's internal codebase with this.

I was more worried about oddities that probably no sane program should
rely on but that Standard-compliant compilers must handle correctly.

> The directives-only option is a null-op unless compilation is done as
> a two stage process: first preprocessing, then compilation.  I'd need
> to modify the C testsuite accordingly in order to do a full run.  I'm
> not terribly familiar with dejagnu in general and gcc's test code in
> particular, but if you could give me some pointers, I'd be willing to
> try it out.

For a one-shot run (probably good enough) I'd try replacing xgcc in
the build tree with a script that runs ccache xgcc.orig in such a way
that -fdirectives-only is exercised, and running the C and C++
testsuites to get an idea of whether the patch breaks anything covered
by the GCC testsuite.

> It does interfere with -dN and -dD.  These are fundamentally
> incompatible with directives-only, though, since directives-only
> preprocessing requires macro definitions to be output (to enable
> deferral of macro expansion).  At the moment, directives-only takes
> precedence, though this could be changed.

Ideally we'd get errors for conflicting options.

-- 
Alexandre Oliva         http://www.lsd.ic.unicamp.br/~oliva/
FSF Latin America Board Member         http://www.fsfla.org/
Red Hat Compiler Engineer   aoliva@{redhat.com, gcc.gnu.org}
Free Software Evangelist  oliva@{lsd.ic.unicamp.br, gnu.org}


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]