diff options
author | cinap_lenrek <cinap_lenrek@gmx.de> | 2013-06-08 23:53:28 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@gmx.de> | 2013-06-08 23:53:28 +0200 |
commit | b38d1979951bb048b254983a0fdf694aa7dcb48a (patch) | |
tree | 9f57ed4a125a21d626ca1b0ac0cb1e86994e8cce /sys/src/ape/lib/ap/arm/main9.s | |
parent | 4e81aab690a17910e221af2a7eeaf6f2309524ac (diff) |
ape: fix _main stack setup for arm (_privates and _errnoloc was inside argv)
Diffstat (limited to 'sys/src/ape/lib/ap/arm/main9.s')
-rw-r--r-- | sys/src/ape/lib/ap/arm/main9.s | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/src/ape/lib/ap/arm/main9.s b/sys/src/ape/lib/ap/arm/main9.s index 3e291ac61..f2b86ca89 100644 --- a/sys/src/ape/lib/ap/arm/main9.s +++ b/sys/src/ape/lib/ap/arm/main9.s @@ -15,14 +15,18 @@ TEXT _main(SB), 1, $(16+NPRIVATES*4) /* _tos = arg */ MOVW R(arg), _tos(SB) - MOVW $errno+12(SP), R1 + MOVW $errno-68(SP), R1 MOVW R1, _errnoloc(SB) - MOVW $private+16(SP), R1 + MOVW $private-64(SP), R1 MOVW R1, _privates(SB) MOVW $NPRIVATES, R1 MOVW R1, _nprivates(SB) BL _envsetup(SB) + + /* main(argc, argv, environ); */ + MOVW environ(SB), R(arg) + MOVW R(arg), 12(R(sp)) MOVW $inargv+0(FP), R(arg) MOVW R(arg), 8(R(sp)) MOVW inargc-4(FP), R(arg) |