Dear all,
this issue apparently needs a boost.
First, I would like to separate the optimizations (in particular if
they are considered for their own sake, if I may put it like that)
from the important thing - which is to get the thing in. And here, as
I understand it, everyone agrees "it is good enough". The benchmarking
results and absense of any applications that "abuse" this stuff allow
us to do so.
Of course we should keeping an eye open for suggested optimizations by
{Raph,Kevin,Denys}. BTW I did not get the Denys' point about optimized
ByNeedFuture that it "become very straightforward and semantically
clean".
Now, I'm more concerned with the fact that the "by-need" branch failed
on me while doing the "oztest" (Redhat 7.3, gcc 3.3.2 (compiled off
sources), optimized emulator):
unix_write1:
Program received signal SIGSEGV, Segmentation fault.
0x401a9860 in getIPAddress() ()
from /home/kost/soft/mozart/cache/x-oz/boot/DPB.so-linux-i486
(gdb) bt
#0 0x401a9860 in getIPAddress() ()
from /home/kost/soft/mozart/cache/x-oz/boot/DPB.so-linux-i486
#1 0x401b78e7 in BIinitIPConnection ()
from /home/kost/soft/mozart/cache/x-oz/boot/DPMisc.so-linux-i486
#2 0x404d9eb8 in ?? ()
Cannot access memory at address 0x18
(gdb)
Curiously - and worryingly - it works fine with the "gdb" emulator.
Anyone dare to comment??!
Then, *after* the thing is merged, I'd still like to see the emulator
clean-ups (as we discussed before).
> > I can implement it if someone gives me a hint. I know how to push a
> > call statement in a thread, but I don't know how to push a try-catch
> > statement, as ByNeedFuture requires. Can somebody help me?
>
> After a quick look, I get the impression that we need something like this:
>
> push a task to call the handler (expecting the exception term in X[0])
> push a catch frame
> push a task to pop the catch frame and the exception handler (POPEX instruction
> )
> push a task to perform the actual work
well, if someone is still interested in doing that, I'd note that - as
far as I can see - there is no such thing as "a task to pop the catch
frame and the exception handler" but I believe the TASKCATCH itself
can be modified for doing so.
>
> Cheers,
Cheers,
--- Kostja.
-
Please send submissions to hackers@mozart-oz.org
and administriva mail to hackers-request@mozart-oz.org.
The Mozart Oz web site is at http://www.mozart-oz.org/.