On 05/05/15 19:39, Adrien Prost-Boucle wrote:
On Tue, 2015-05-05 at 19:01 +0200, Tristan Gingold wrote:
I am pretty sure that GCC isn't
the right engine to optimize a design - at least not at the high
level.

At least gcc could simplify away all generate statements and other
generic-dependent branches. These are often used with a low
granularity so a noticeable speedup could be obtained there.

Not really.  This should be handled before gcc, as otherwise
generics aren't anymore constants!

It could also certainly simplify logic expressions, reveal memory
allocations of statically-known size, etc.
Any decent compiler framework can do that, so I don't think it's a
matter of choosing gcc or something else.

I see another way of handling ieee libs that are poorly written, from
a simulation speed perspective: GHDL could declare optimized built-in
implementations of critical ieee lib functions, like gcc does for many
C library function calls.
Or, intermediate approach, maybe just inlining all basic std_logic
functions could bring a significant speedup.

These builtin implementations could even be used by default, with a
parameter to let the user indicate he explicitely wants to use ghdl
-compiled ieee libs, for specific personal purposes.

So I'm pretty confident gcc is currently much underused, and these
optimization opportunities seem very much worth a try, don't you think?

Possibly, but first high level optimizations are needed: they will really speed up simulation, much more than gcc optimizations.

Tristan.


_______________________________________________
Ghdl-discuss mailing list
[email protected]
https://mail.gna.org/listinfo/ghdl-discuss

Reply via email to