summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/src/ape/lib/ap/arm/main9.s8
-rw-r--r--sys/src/ape/lib/ap/arm/main9p.s8
2 files changed, 10 insertions, 6 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)
diff --git a/sys/src/ape/lib/ap/arm/main9p.s b/sys/src/ape/lib/ap/arm/main9p.s
index e1ae6443e..318291d81 100644
--- a/sys/src/ape/lib/ap/arm/main9p.s
+++ b/sys/src/ape/lib/ap/arm/main9p.s
@@ -15,9 +15,9 @@ TEXT _mainp(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)
@@ -33,12 +33,12 @@ TEXT _mainp(SB), 1, $(16+NPRIVATES*4)
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)
MOVW R(arg), 4(R(sp))
- MOVW environ(SB), R(arg)
- MOVW R(arg), 8(R(sp))
BL main(SB)
loop:
MOVW R(arg), 4(R(sp))