[cfe-commits] [PATCH] Speed up parsing of global declarations.
klimek at google.com
Wed Dec 12 04:35:41 PST 2012
Over the google code base, this patch speeds up parsing by ~3%; Benjamin's patch (without the caching of class ids, but including the cutoff in SemaDecl.cpp that brings the class id into the hot path) is a 1.5% speedup.
Unfortunately it's not easy to pull the caching into DiagnosticIDs, as the method using it are mostly static (and are used from places where I don't see a DiagnosticID in close proximity).
I'm investigating pulling the caching one more layer up, to see whether that gains us anything.
Also, I'm really unhappy about the brittleness of the performance of the caching. I'd be very interested in getting possible explanations for that from somebody who understands the compiler more than me :)
More information about the cfe-commits