On Jan 8, 2012, at 7:03 AM, Wesley J. Landaker wrote:

> Hey Tristan & other GHDL folks,
> 
> Has anyone made any progress getting GHDL ported up to a build on and/or 
> with a newer GCC?
> 
> I'm working on updating the GHDL Debian package. Currently it is built on 
> gcc-core-4.3.4 as a base, with gnat-4.4 as the compiler.
> 
> This no longer builds in the current Debian environment. I would like to use 
> gnat-4.6, and a newer gcc-core that doesn't have issues with a multilib 
> environment (and has other improvements).
> 
> The GHDL Ubuntu packages contain a patch which intrusively modifies gcc-
> core-4.3.4 to make it work somewhat, but this isn't a sustainable solution 
> and doesn't completely fix the problems.
> 
> Usually I can get through a couple obstacles, but my current attempts are 
> crashing and burning, and I have less time to work on this than I used to. 
> Has anyone else made any effort to make this work? Any full or partial 
> successes?

I'm going to try this on for shock value, then show a light at the end of the 
tunnel.

First, no one is currently actively developing GHDL.  There has been a dearth 
of volunteers.  Tristan is off working hard for living doing Ada coding for 
what's probably flight critical applications in aerospace.  I should be working 
for a living, too.  Add to that I can't actually upload a release image to 
ghdl.free.fr from outside the free.fr domain, and only critical fixes are going 
to get released, making demands on Tristan's time (or rehosting or forking 
GHDL).

Gcc release cycles have been too frequent for one person to keep up with part 
time (as you can attest).  The implication is that GHDL can't keep up without 
more bodies or code contributions flowing back.  Today there is one part time 
person and people praying for bug fixes.

Currently the lifetime of the gcc front end version of GHDL is bound by the 
ability to compile gcc-4.3.x or otherwise newer version.  

Now for the good news.  I recently came across someone doing a VHDL analyzer 
and simulator inspired by GHDL, written in C.  There is one very interesting 
characteristic although the code is being organically grown (incrementally 
implemented, meaning potentially doing things over as you add complexity).  It 
uses the LLVM code generator (back end) which is separable from the front end, 
uncoupling some of the forced synchronization like you're noting with trying to 
go beyond gcc-4.3.4 and gnat 4.4. 

In the LLVM 3.1 release notes there's mention of a gcc-4.6.1 based front end 
that implements Ada fully.  This new tool adopts LLVM's bitcode library format 
preserving the ability I think to do Link Time Optimization (which an HDL 
simulator can benefit from) and foreign interfaces.

I'd suggest GHDL takes a similar path and uses the LLVM back end in the future, 
in effect leapfrogging to become up to date. This provides a promise of the 
ability to do parallel thread execution at some point, too.

In lieu of crafting the future there's always an mcode version for Linux and 
there's also the issue of VHDL standard compliance, where GHDL isn't fully 
VHDL-93 compliant.

As far as your immediate problem other than Thomas Sailer at the Fedora Project 
 with the multilib stuff, no.  His patches ought to be evaluate fro inclusion 
in ghdl. On the surface gnat-4.6 seems separable from multilibs.

http://download.fedora.redhat.com/pub/fedora/linux/releases/16/Everything/source/SRPMS/ghdl-0.29-2.143svn.4.fc16.src.rpm
 (43+ MB)  See the ghdl.spec file.











_______________________________________________
Ghdl-discuss mailing list
Ghdl-discuss@gna.org
https://mail.gna.org/listinfo/ghdl-discuss

Reply via email to