This is the mail archive of the gcc@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] |
If that's the only reason you're doing this walk, then you should just have a tag on types that indicates whether or not they have any fields with run-time offsets. There's no reason to be penalizing every standard C and C++ program for a feature used rarely in GNU C, never in GNU C++, and never in ISO C.You also managed to add another quadratic algorithm somewhere, see gcc.gnu.org/PR16163. Can you please fix this asap.
Well, it's only quadratic due to the way the testcase is constructed. And the reason is due to something that I already know about and will be fixed by a change I plan to make soon anyway.
The issue here is that the tree walker didn't used to look at the fields of
types. So it missed variables in DECL_FIELD_OFFSET, for example. Now that
it does, the cost of walking through a type is proportional to the number of
fields in the type.
-- Mark Mitchell CodeSourcery, LLC (916) 791-8304 mark@codesourcery.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |