Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-3]: src/libexec/ld.elf_so/arch/powerpc Pull up following revision...
details: https://anonhg.NetBSD.org/src/rev/497905d4302b
branches: netbsd-3
changeset: 577283:497905d4302b
user: tron <tron%NetBSD.org@localhost>
date: Sat Oct 01 10:33:01 2005 +0000
description:
Pull up following revision(s) (requested by chs in ticket #834):
libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.38
fix two problems with icache invalidation of the PLT:
- restore revision 1.33, it was correct.
- fix pointer arithmetic in other calls to __syncicache().
diffstat:
libexec/ld.elf_so/arch/powerpc/ppc_reloc.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diffs (36 lines):
diff -r 6dca8c3859b9 -r 497905d4302b libexec/ld.elf_so/arch/powerpc/ppc_reloc.c
--- a/libexec/ld.elf_so/arch/powerpc/ppc_reloc.c Sat Oct 01 05:59:00 2005 +0000
+++ b/libexec/ld.elf_so/arch/powerpc/ppc_reloc.c Sat Oct 01 10:33:01 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: ppc_reloc.c,v 1.35 2003/07/24 10:12:29 skrll Exp $ */
+/* $NetBSD: ppc_reloc.c,v 1.35.6.1 2005/10/01 10:33:01 tron Exp $ */
/*-
* Copyright (C) 1998 Tsubai Masanari
@@ -82,7 +82,7 @@
pltresolve[3] |= ha(obj);
pltresolve[4] |= l(obj);
- __syncicache(pltcall, 72 + N * 8);
+ __syncicache(pltcall, 72 + N * 12);
}
void
@@ -211,7 +211,7 @@
/* b pltresolve */
distance = (Elf_Addr)pltresolve - (Elf_Addr)where;
*where++ = 0x48000000 | (distance & 0x03fffffc);
- /* __syncicache(where - 12, 12); */
+ /* __syncicache(where - 3, 12); */
}
return 0;
@@ -267,7 +267,7 @@
/* b pltcall */
distance = (Elf_Addr)pltcall - (Elf_Addr)where;
*where++ = 0x48000000 | (distance & 0x03fffffc);
- __syncicache(where - 12, 12);
+ __syncicache(where - 3, 12);
}
return (caddr_t)value;
Home |
Main Index |
Thread Index |
Old Index