Fix ARM EABI jmpbuf-offsets.h

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Fix ARM EABI jmpbuf-offsets.h

Joseph Myers
If glibc is configured for ARM EABI, but not using --without-fp, then
fpu/ sysdeps directories will be picked up; in particular,
sysdeps/arm/fpu/, which contains old FPA files.  Most of these are
overridden by sysdeps/arm/eabi/, but jmpbuf-offsets.h isn't, which
means the wrong value of __JMP_BUF_SP is picked up; this causes
several cancellation tests to fail in such a configuration.  Fixed by
adding sysdeps/arm/eabi/jmpbuf-offsets.h to give a correct value for
this macro.  (The value happens to be the same as that in
sysdeps/arm/, but that's coincidental since there are separate
setjmp/longjmp implementations, so I chose a separate header rather
than one including <sysdeps/arm/jmpbuf-offsets.h>.)

2006-11-09  Joseph Myers  <[hidden email]>

        * sysdeps/arm/eabi/jmpbuf-offsets.h: New.

diff -rupN ports.orig/sysdeps/arm/eabi/jmpbuf-offsets.h ports/sysdeps/arm/eabi/jmpbuf-offsets.h
--- ports.orig/sysdeps/arm/eabi/jmpbuf-offsets.h 1970-01-01 00:00:00.000000000 +0000
+++ ports/sysdeps/arm/eabi/jmpbuf-offsets.h 2006-11-09 22:09:57.000000000 +0000
@@ -0,0 +1,20 @@
+/* Private macros for accessing __jmp_buf contents.  ARM EABI version.
+   Copyright (C) 2006 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#define __JMP_BUF_SP 8

--
Joseph S. Myers
[hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: Fix ARM EABI jmpbuf-offsets.h

Daniel Jacobowitz-2
On Thu, Nov 09, 2006 at 10:11:23PM +0000, Joseph S. Myers wrote:
> 2006-11-09  Joseph Myers  <[hidden email]>
>
> * sysdeps/arm/eabi/jmpbuf-offsets.h: New.

Sorry about the delay.  I checked this in.

--
Daniel Jacobowitz
CodeSourcery