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]

Re: needless deep recursion in gt-c-decl.h


Geoff Keating wrote:
I think I described in a previous e-mail how the one-loop
algorithm doesn't work; IIRC it went like:

originally: 24000 maximum nesting on expr.o
one loop: 16000
two loops: 9000
three loops: 800
To quote from your previous email:

I tried both algorithms on the tree marker routine for C.  They both
> had about the same effect, reducing the recursion depth to about
> 16000, with no significant change in CPU time.
> ...
> The 16000 turns out to be mostly RTL marking.

I.e. most of the recursion depth when marking *tree nodes*
consists of marking *rtl modes*.  I'm suggesting that we don't
need to mark rtl nodes while we're marking tree nodes.  Don't
recurse into rtl from tree - we'll get to the rtl from the
other roots anyway.  In that case your results suggest that a
one-loop method is might work fine.
--
	--Per Bothner
per@bothner.com   http://www.bothner.com/per/


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