This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
PATCH [mainline] speed up comparing enums declared in multiple translation units
- From: Fariborz Jahanian <fjahanian at apple dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: Fariborz Jahanian <fjahanian at apple dot com>
- Date: Fri, 12 Mar 2004 10:21:39 -0800
- Subject: PATCH [mainline] speed up comparing enums declared in multiple translation units
Made changes suggested by rth and A. Pinski. Revised is attached.
OK for mainline?
- fariborz jahanian (fjahanian@apple.com)
This is a performance bug fix which prevents mesa (SPEC program) to
compile with IMA in a
reasonable amount of time. Performance hit is comparing two enumerated
types declared in
different translation unit. Fix is in routine
tagged_types_tu_compatible_p and uses
the infrastructure already there to prevent recursion when comparing
composite types.
Essentially it remembers previous comparison results of the two enum
types and uses the
saved result. bootstrapped, dejagnu tested on ppc-darwin. Furthermore,
tested against
SPEC benchmark with IMA. mesa now takes minutes to compile, instead of
days (on my
particular G5 machine anyway).
ChangeLog:
2004-03-09 Fariborz Jahanian <fjahanian@apple.com>
* c-typeck.c (tagged_types_tu_compatible_p): speed up type
comparison of enums declared in separate tus.
Attachment:
ima-mesa-patch-3.txt
Description: Text document