From e5e5aa4ea693d18bfc8a5bb352a75e9154da6af9 Mon Sep 17 00:00:00 2001 From: Neal Norwitz Date: Sun, 13 Nov 2005 18:55:39 +0000 Subject: Do a better job of not inlining Py_ADDRESS_IN_RANGE() for newer gcc's. Perhaps Py_NO_INLINE should be moved to pyport.h or some other header? --- Objects/obmalloc.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Objects/obmalloc.c b/Objects/obmalloc.c index a6fdf40..266b4c6 100644 --- a/Objects/obmalloc.c +++ b/Objects/obmalloc.c @@ -557,8 +557,15 @@ error: #undef Py_ADDRESS_IN_RANGE -/* Don't make static, to ensure this isn't inlined. */ -int Py_ADDRESS_IN_RANGE(void *P, poolp pool); +#if defined(__GNUC__) && (__GNUC__ == 3) && (__GNUC_MINOR__ >= 1) +#define Py_NO_INLINE __attribute__((__noinline__)) +#else +#define Py_NO_INLINE +#endif + +/* Don't make static, to try to ensure this isn't inlined. */ +int Py_ADDRESS_IN_RANGE(void *P, poolp pool) Py_NO_INLINE; +#undef Py_NO_INLINE #endif /*==========================================================================*/ -- cgit v0.12