Module Name: src Committed By: matt Date: Thu Jun 30 20:10:17 UTC 2011
Modified Files: src/lib/csu/arch/powerpc: crt0.S Log Message: Adapt to new ___start definition. Use PIC method to load %r13 with address of _SDA_BASE_ To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/lib/csu/arch/powerpc/crt0.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/csu/arch/powerpc/crt0.S diff -u src/lib/csu/arch/powerpc/crt0.S:1.1 src/lib/csu/arch/powerpc/crt0.S:1.2 --- src/lib/csu/arch/powerpc/crt0.S:1.1 Tue Feb 8 02:02:25 2011 +++ src/lib/csu/arch/powerpc/crt0.S Thu Jun 30 20:10:17 2011 @@ -29,21 +29,23 @@ #include <powerpc/asm.h> -RCSID("$NetBSD: crt0.S,v 1.1 2011/02/08 02:02:25 matt Exp $") +RCSID("$NetBSD: crt0.S,v 1.2 2011/06/30 20:10:17 matt Exp $") STRONG_ALIAS(_start,__start) .weak _SDA_BASE_ - .weak _SDA_BASE2_ ENTRY_NOPROFILE(__start) + bcl 20,31,1f +1: + mflr %r11 /* SVR4 ABI says small data is in r13 */ - lis %r13,_SDA_BASE_@ha - addi %r13,%r13,_SDA_BASE_@l + addis %r13,%r11,_SDA_BASE_-1b@ha + addi %r13,%r13,_SDA_BASE_-1b@l - /* E[mbedded] ABI says small data is in r2 */ - lis %r2,_SDA_BASE2_@ha - addi %r2,%r2,_SDA_BASE2_@l + mr %r3,%r6 + mr %r4,%r7 + mr %r5,%r8 b ___start END(__start)