From a341fc0c61de749767534ed01d82817cf67b9d36 Mon Sep 17 00:00:00 2001 From: pbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Wed, 20 Sep 2006 17:29:25 +0000 Subject: [PATCH] 2006-09-20 Paul Brook <paul@codesourcery.com> gcc/ * config/arm/unwind-arm.c (selfrel_offset31): Clear top bit for positive offsets. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117087 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 ++++++ gcc/config/arm/unwind-arm.c | 2 ++ 2 files changed, 8 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 86217ace1366..5cc050226b57 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2006-09-20 Paul Brook <paul@codesourcery.com> + + gcc/ + * config/arm/unwind-arm.c (selfrel_offset31): Clear top bit for + positive offsets. + 2006-09-20 Janis Johnson <janis187@us.ibm.com> * doc/extend.texi (Decimal Float): Update for latest draft TR, diff --git a/gcc/config/arm/unwind-arm.c b/gcc/config/arm/unwind-arm.c index b3f8a00dcb59..9d2513b68979 100644 --- a/gcc/config/arm/unwind-arm.c +++ b/gcc/config/arm/unwind-arm.c @@ -337,6 +337,8 @@ selfrel_offset31 (const _uw *p) /* Sign extend to 32 bits. */ if (offset & (1 << 30)) offset |= 1u << 31; + else + offset &= ~(1u << 31); return offset + (_uw) p; } -- GitLab