26 lines
638 B
Diff
26 lines
638 B
Diff
|
From: Thorsten Glaser <tg@debian.org>
|
||
|
Date: Sun, 30 Sep 2012 13:56:52 +0000
|
||
|
Subject: fix jmp_buf size on armhf
|
||
|
|
||
|
On armhf (!__SOFTFP__) with __ARM_ARCH__ >= 6 and __ARM_NEON__,
|
||
|
sigsetjmp() can store as much as 42 registers:
|
||
|
* d0 - d15 (armhf) => 16
|
||
|
* d16 - d31 (NEON) => 16
|
||
|
* r4 - r11, sp, lr => 10
|
||
|
Make appropriate space for that in jmp_buf and remove an unused
|
||
|
define at the same time.
|
||
|
|
||
|
--- a/include/setjmp.h
|
||
|
+++ b/include/setjmp.h
|
||
|
@@ -164,9 +164,8 @@ typedef int __jmp_buf[3];
|
||
|
#endif
|
||
|
|
||
|
#ifdef __arm__
|
||
|
-#define __JMP_BUF_SP 8
|
||
|
#ifndef __ASSEMBLER__
|
||
|
-typedef int __jmp_buf[24];
|
||
|
+typedef int __jmp_buf[42];
|
||
|
#endif
|
||
|
#endif
|
||
|
|