[RFA, PATCH, PowerPC] Implements PowerPC e500mc core support

Edmar Wienskoski-RA8797 edmar@freescale.com
Thu Jun 26 15:36:00 GMT 2008


David,

I don't oppose removing the retirement for the other fp instructions.
I don't see any other solution in the short term....

Here is the modified patch. (No changes in the Changelog)

Another idea would be to "flag" an automaton as optional, then genautomata
would decide to implement it or not depending on the resources available.
That way we keep the pipeline description accurate for future solutions, 
while dealing
with the present limitations.

Edmar


David Edelsohn wrote:
> 	Also, let me point out that the e500mc machine description already
> omits some instances of the retirement state on FP descriptions to keep
> the automata a reasonable size.  I am proposing removing "retire" from a
> few more FP patterns.
>
> 	There are two problems with generating the DFAs.  One is that very
> long pipelines, frequently with lots of nop cycles before retirement,
> produce extremely large automata.  Those large automata with many states
> require a long time to generate.
>
> 	The second problem is that although most, if not all machine
> descriptions, localize each class of processors and associated automata to
> a file with all of the information self-contained.  genautomata does not
> utilize this locality, reads the entire machine description, generating
> all of the automata in memory and writes all of the automata at once.
> This is not scalable.  The PowerPC machine description currently tops out
> at over 300MB of data on both AIX and PPC Linux.
>
> 	The latter can be solved with something like a new GCC DFA
> keyword, such as "dfa_flush", which would write out the automata and free
> the automata data structures in memory.  This does not solve the time and
> size of individual automata.
>
> David
>
>
>   

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch_e500mc_20080626
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20080626/411da4ca/attachment.ksh>


More information about the Gcc-patches mailing list