chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-users] remark() (fwd)


From: tonyg
Subject: [Chicken-users] remark() (fwd)
Date: Thu, 25 Jul 2002 11:15:35 +0000 (GMT)

Finally discovered the HPUX fix, I think.
Forwarding it to the list in case anyone else is interested in HPUX :-)

Tony

Forwarded message:
> From tonyg Thu Jul 25 11:14:39 2002
> Subject: remark()
> To: address@hidden (Felix Winkelmann)
> Date: Thu, 25 Jul 2002 11:14:39 +0000 (GMT)
> 
> Yaaaaaaaaaaaaay! It works!
> 
> Sure enough, remark() turned up between 0.990 (which I ported) and
> 0.1011 (which I blindly applied my patch to). I missed it! And all the
> versions since have just run on HP by chance (when they've run at
> all)... it wasn't a compiler bug at all!
> 
> Hey, maybe even gcc3 or -O3 will work on HP now?
> 
> Here's the fix, anyway:
> 
> 
> --- chicken-0.1071/runtime.c    Mon Jul  1 21:07:48 2002
> +++ chicken-0.1071-finished-hpux/runtime.c      Thu Jul 25 10:39:21 2002
> @@ -2116,7 +2116,13 @@
>    p = (C_SCHEME_BLOCK *)val;
>    
>    /* not in stack and not in heap? */
> -  if(p < (C_SCHEME_BLOCK *)C_stack_pointer || p >= (C_SCHEME_BLOCK 
> *)stack_bottom)
> +  if(
> +#if C_STACK_GROWS_DOWNWARD
> +       p < (C_SCHEME_BLOCK *)C_stack_pointer || p >= (C_SCHEME_BLOCK 
> *)stack_bottom
> +#else
> +       p >= (C_SCHEME_BLOCK *)C_stack_pointer || p < (C_SCHEME_BLOCK 
> *)stack_bottom
> +#endif
> +    )
>      if((p < (C_SCHEME_BLOCK *)fromspace_start || p >= (C_SCHEME_BLOCK 
> *)C_fromspace_limit) &&
>         (p < (C_SCHEME_BLOCK *)tospace_start || p >= (C_SCHEME_BLOCK 
> *)tospace_limit) &&
>         (p < (C_SCHEME_BLOCK *)new_tospace_start || p >= (C_SCHEME_BLOCK 
> *)new_tospace_limit) )
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]