diff -r 7e179ee91af0 Modules/faulthandler.c --- a/Modules/faulthandler.c Mon Mar 23 15:26:49 2015 +0200 +++ b/Modules/faulthandler.c Mon Mar 23 13:19:28 2015 -0500 @@ -941,7 +941,15 @@ } #if defined(HAVE_SIGALTSTACK) && defined(HAVE_SIGACTION) -static Py_uintptr_t + +#if defined(__INTEL_COMPILER) +/* Turn off compiler's tail call optimization for the stack_overflow + * generator. (Some compilers turn the recursive tail call into a + * loop.) */ +#pragma intel optimization_level 0 +#endif +static +Py_uintptr_t stack_overflow(Py_uintptr_t min_sp, Py_uintptr_t max_sp, size_t *depth) { /* allocate 4096 bytes on the stack at each call */