Re: Problem with STk 3.99.4 on Solaris 2.6

From: Erick Gallesio <Erick.Gallesio_at_unice.fr>
Date: Fri, 24 Dec 1999 00:36:31 +0100 (CET)

Hi Paul,

Thanks a lot for your analysis. I suppose that you have suffered with
this one ;-) I myself had problems with the SPARC register windows for
continuations and I have a scary remembrance of the debugging
phase...

I'm a little bit afraid that I will have problems with your
solution. In particular your solution suppose that you have a clever
make command, which is rarely the case (makes are very different and
some are very poor). I can of course implement your solution but I
would prefer something like the following code. Tell me if it works
for you and I'll integrate it for next release, otherwise, of I will
integrate yours of course.

> If you have any questions about any of this, feel free
> to email. However, do so soon as I shall be going on
> vacation on Wednesday until after the new year.

It is definitively too late for this year, but you'll have this mail
for your return if the bug has not destroyed everything ;-)

So, Happy New Year.



                -- Erick



*** /users/eg/STk/STk/Src/gc.c Fri Sep 3 21:58:02 1999
--- gc.c.paul Fri Dec 24 00:27:39 1999
***************
*** 463,472 ****
    gc_start();
  
    /**** Marking phase */
! setjmp(save_regs_gc_mark); /* registers */
    STk_mark_stack((SCM *) save_regs_gc_mark,
                   (SCM *) (((char *) save_regs_gc_mark)+
                            sizeof(save_regs_gc_mark)));
    STk_mark_stack((SCM *) STk_stack_start_ptr, (SCM *) &stack_end); /* stack */
    mark_protected(); /* globals */
  
--- 463,476 ----
    gc_start();
  
    /**** Marking phase */
! #ifdef sparc /* registers */
! asm("t 0x3"); /* Flush the register window */
! #else
! setjmp(save_regs_gc_mark);
    STk_mark_stack((SCM *) save_regs_gc_mark,
                   (SCM *) (((char *) save_regs_gc_mark)+
                            sizeof(save_regs_gc_mark)));
+ #endif
    STk_mark_stack((SCM *) STk_stack_start_ptr, (SCM *) &stack_end); /* stack */
    mark_protected(); /* globals */
  
Received on Fri Dec 24 1999 - 11:42:02 CET

This archive was generated by hypermail 2.3.0 : Mon Jul 21 2014 - 19:38:59 CEST