aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjakub <jakub@94c539fb-cf18-0410-b60f-edeeb537fa16>2010-01-06 10:38:29 +0000
committerjakub <jakub@94c539fb-cf18-0410-b60f-edeeb537fa16>2010-01-06 10:38:29 +0000
commitfc74ad6415d32ef5dc6d6edf1a5ab6b066baec40 (patch)
tree51127f3d00d4cac7690243951cc11c0b7a0c74f6
parent621848112e7bac88d14a0378750233248e9587aa (diff)
downloadprelink-cross-fc74ad6415d32ef5dc6d6edf1a5ab6b066baec40.tar.gz
prelink-cross-fc74ad6415d32ef5dc6d6edf1a5ab6b066baec40.tar.bz2
prelink-cross-fc74ad6415d32ef5dc6d6edf1a5ab6b066baec40.zip
* src/arch-s390.c (s390_prelink_conflict_rela) <case R_390_PC32DBL>:
Ensure negative addends are sign-extended to 64-bits, instead of zero-extended. git-svn-id: http://sourceware.org/svn/prelink@181 94c539fb-cf18-0410-b60f-edeeb537fa16
-rw-r--r--trunk/ChangeLog6
-rw-r--r--trunk/src/arch-s390.c3
2 files changed, 7 insertions, 2 deletions
diff --git a/trunk/ChangeLog b/trunk/ChangeLog
index 8c16f0d..cf7a444 100644
--- a/trunk/ChangeLog
+++ b/trunk/ChangeLog
@@ -1,3 +1,9 @@
+2010-01-06 Jakub Jelinek <jakub@redhat.com>
+
+ * src/arch-s390.c (s390_prelink_conflict_rela) <case R_390_PC32DBL>:
+ Ensure negative addends are sign-extended to 64-bits, instead of
+ zero-extended.
+
2010-01-05 Jakub Jelinek <jakub@redhat.com>
* src/arch-s390.c (s390_prelink_rela, s390_apply_rela,
diff --git a/trunk/src/arch-s390.c b/trunk/src/arch-s390.c
index cf9f84c..829392e 100644
--- a/trunk/src/arch-s390.c
+++ b/trunk/src/arch-s390.c
@@ -340,8 +340,7 @@ s390_prelink_conflict_rela (DSO *dso, struct prelink_info *info,
break;
case R_390_PC32DBL:
case R_390_PLT32DBL:
- ret->r_addend
- = (Elf32_Addr) (((Elf32_Sword) (value - rela->r_offset)) >> 1);
+ ret->r_addend = ((Elf32_Sword) (value - rela->r_offset)) >> 1;
break;
case R_390_PC16:
value -= rela->r_offset;