summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/ppc/start.S
diff options
context:
space:
mode:
authorGwenolé Beauchesne <gbeauchesne@mandriva.org>2003-06-04 18:31:57 +0000
committerGwenolé Beauchesne <gbeauchesne@mandriva.org>2003-06-04 18:31:57 +0000
commit09e967c2d732783b2579e4e120cd9b608404cb00 (patch)
tree8d2783a6a7e33608c6012efd6a88b8f5694df81d /mdk-stage1/dietlibc/ppc/start.S
parent18fcff49d3c836697d3b75a3d01d31c700e69974 (diff)
downloaddrakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.tar
drakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.tar.gz
drakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.tar.bz2
drakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.tar.xz
drakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.zip
Merge from R9_0-AMD64, most notably:
- AMD64 support to insmod-busybox, minilibc, et al. - Sync with insmod-modutils 2.4.19 something but everyone should use dietlibc nowadays - Factor out compilation and prefix with $(DIET) for dietlibc builds - 64-bit & varargs fixes
Diffstat (limited to 'mdk-stage1/dietlibc/ppc/start.S')
-rw-r--r--mdk-stage1/dietlibc/ppc/start.S32
1 files changed, 15 insertions, 17 deletions
diff --git a/mdk-stage1/dietlibc/ppc/start.S b/mdk-stage1/dietlibc/ppc/start.S
index c7afeecd2..7b2aed7fb 100644
--- a/mdk-stage1/dietlibc/ppc/start.S
+++ b/mdk-stage1/dietlibc/ppc/start.S
@@ -1,21 +1,17 @@
-#include "start.h"
-
-#ifdef __powerpc__
-
.text
.global _start
.type _start,@function
_start:
/* Save the stack pointer, in case we're statically linked under Linux. */
- mr 9,1
+ mr 9,1
/* Set up an initial stack frame, and clear the LR. */
- clrrwi 1,1,4
- li 0,0
- stwu 1,-16(1)
- mtlr 0
- stw 0,0(1)
+ clrrwi 1,1,4
+ li 0,0
+ stwu 1,-16(1)
+ mtlr 0
+ stw 0,0(1)
- /* r9 enthält den initialen Stackpointer.
+ /* r9 contains the initial stack pointer
argc = (r9)
argv = (r9+4)
envp = argv+(argc+1)*4 */
@@ -27,18 +23,20 @@ _start:
slwi 5,5,2 /* (argc+1)*4 */
add 5,5,4 /* argv+(argc+1)*4 */
- lis 6,environ@ha
- stw 5,environ@l(6)
+ lis 14,environ@ha
+ stw 5,environ@l(14)
+#ifdef WANT_DYNAMIC
+ mr 6,7
+ bl _dyn_start
+#else
bl main
+#endif
b exit
.size _start,.-_start
/* Define a symbol for the first piece of initialized data. */
- .section ".data"
+ .section ".data"
__data_start:
-
-#endif
-