3 |
#ifndef SCM_STACKCHK_H |
#ifndef SCM_STACKCHK_H |
4 |
#define SCM_STACKCHK_H |
#define SCM_STACKCHK_H |
5 |
|
|
6 |
/* Copyright (C) 1995,1996,1998,2000 Free Software Foundation, Inc. |
/* Copyright (C) 1995,1996,1998,2000, 2003 Free Software Foundation, Inc. |
7 |
* |
* |
8 |
* This library is free software; you can redistribute it and/or |
* This library is free software; you can redistribute it and/or |
9 |
* modify it under the terms of the GNU Lesser General Public |
* modify it under the terms of the GNU Lesser General Public |
36 |
#ifdef STACK_CHECKING |
#ifdef STACK_CHECKING |
37 |
# if SCM_STACK_GROWS_UP |
# if SCM_STACK_GROWS_UP |
38 |
# define SCM_STACK_OVERFLOW_P(s)\ |
# define SCM_STACK_OVERFLOW_P(s)\ |
39 |
(s > ((SCM_STACKITEM *) SCM_BASE (scm_rootcont) + SCM_STACK_LIMIT)) |
(SCM_STACK_PTR (s) \ |
40 |
|
> ((SCM_STACKITEM *) SCM_BASE (scm_rootcont) + SCM_STACK_LIMIT)) |
41 |
# else |
# else |
42 |
# define SCM_STACK_OVERFLOW_P(s)\ |
# define SCM_STACK_OVERFLOW_P(s)\ |
43 |
(s < ((SCM_STACKITEM *) SCM_BASE (scm_rootcont) - SCM_STACK_LIMIT)) |
(SCM_STACK_PTR (s) \ |
44 |
|
< ((SCM_STACKITEM *) SCM_BASE (scm_rootcont) - SCM_STACK_LIMIT)) |
45 |
# endif |
# endif |
46 |
# define SCM_CHECK_STACK\ |
# define SCM_CHECK_STACK\ |
47 |
{\ |
{\ |