> try to replace the lines with:
>
>             when Net_One_Direct =>
>                Mark_Active (Sig);
>
>                Trans := Sig.S.Drivers (0).Last_Trans;
>                --Sig.Driving_Value := Trans.Val_Ptr.all;
>                Direct_Assign (Sig.Driving_Value, Trans.Val_Ptr, Sig.Mode);
>                --Sig.S.Drivers (0).First_Trans.Val := Trans.Val_Ptr.all;
>                Direct_Assign (Sig.S.Drivers (0).First_Trans.Val,
>                               Trans.Val_Ptr, Sig.Mode);
>                Set_Effective_Value (Sig, Sig.Driving_Value);
>

With your changes added in, it appears to behave like version .25 did.

I will do a little further testing later tonight.

Here is the output:

bash-3.1$ ghdl -a adder_tb.vhdl
bash-3.1$ ghdl -e adder_tb
bash-3.1$ ./adder_tb
adder_tb.vhdl:52:12:@8ns:(assertion note): end of test
bash-3.1$

===

Before, with GHDL .27, it would crash with the Bus Error. Will this change
work with Linux as well? I hope it does.

===

Now, Tristan, please take a couple of minutes and help me/us understand
better how you figured out that this bit of code would likely fix things.

How long did it take you? What sorts of things did you consider?

I was surmising that it was the Trans.Val_Ptr that was the problem, but I
would not have known what to change or how to make an elegant solution
work.

The ldd assembly language instruction and the values pulled from it via
gdb implied that something was not 32-bit aligned, because one of those
values when divided mod 4 gave a result with a remainder of .5 ... so
something seemed amiss there, but its clear you are at a level of skill
thats extraordinary.

In order for any of us to lend a hand at the lower levels of GHDL in
future, we need to have some idea of what kinds of skills are needed to
get up to where we can be of some assistance to you and the GHDL project.
At least I am of this sentiment.

If you can spare a little time, please inform us of the process by which
you arrived at the fix. You did this even without a Solaris environment
which makes this all the more remarkable.

===

I will rebuild everything from scratch with the 4.1.2 compiler, optimize
the binaries, strip them, and do a few small Solaris tweaks needed (cause
Solaris 8 lacks some Linux functions) and then send the whole thing up to
you for installation on the download page of your site.

Honestly, I'm blown away by your talents. I'll get back to you with any
other information after I've had a chance to test the Solaris port.

Lastly, before I forget, there was a page that I read about using
Solaris's built-in threading libraries to help with making use of more
processors. Thats something that if its possible to test, would be a big
win for the Solaris port. I'll find that page and would like to get your
opinion of it.

Respectfully,

S.

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

Reply via email to