diff options
author | Hye-Shik Chang <perky@FreeBSD.org> | 2003-09-27 18:29:04 +0000 |
---|---|---|
committer | Hye-Shik Chang <perky@FreeBSD.org> | 2003-09-27 18:29:04 +0000 |
commit | e7f4671585f217909792b436ea30d721361ab4e9 (patch) | |
tree | 70551107646b64819038295d2dcd2566d40ec401 /lang/python | |
parent | 5f8ab8f9c8beeca382a628734e05eb4d9c919d57 (diff) |
Use smaller recursion limits on amd64 and sparc64 to avoid
stack overflows.
Tested on: sledge, panther
Notes
Notes:
svn path=/head/; revision=89577
Diffstat (limited to 'lang/python')
-rw-r--r-- | lang/python/files/patch-Modules::_sre.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lang/python/files/patch-Modules::_sre.c b/lang/python/files/patch-Modules::_sre.c new file mode 100644 index 000000000000..e316a144e075 --- /dev/null +++ b/lang/python/files/patch-Modules::_sre.c @@ -0,0 +1,19 @@ +--- Modules/_sre.c 26 Jun 2003 14:41:08 -0000 2.99 ++++ Modules/_sre.c 27 Sep 2003 18:13:15 -0000 +@@ -71,9 +71,14 @@ + Win64 (MS_WIN64), Linux64 (__LP64__), Monterey (64-bit AIX) (_LP64) */ + /* FIXME: maybe the limit should be 40000 / sizeof(void*) ? */ + #define USE_RECURSION_LIMIT 7500 +-#else + +-#if defined(__GNUC__) && defined(WITH_THREAD) && defined(__FreeBSD__) ++#elif defined(__FreeBSD__) ++/* FreeBSD/amd64 and /sparc64 requires even smaller limit */ ++#if defined(__amd64__) ++#define USE_RECURSION_LIMIT 6000 ++#elif defined(__sparc64__) ++#define USE_RECURSION_LIMIT 3000 ++#elif defined(__GNUC__) && defined(WITH_THREAD) + /* the pthreads library on FreeBSD has a fixed 1MB stack size for the + * initial (or "primary") thread, which is insufficient for the default + * recursion limit. gcc 3.x at the default optimisation |