summaryrefslogtreecommitdiff
path: root/src/runtime/rt0_linux_power64.s
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2014-10-29 12:25:24 -0400
committerRuss Cox <rsc@golang.org>2014-10-29 12:25:24 -0400
commit710efc5a3085f55968c120abb25206fb72c05d46 (patch)
tree433262b4bdac6643d923971ea21bb39cb69822a7 /src/runtime/rt0_linux_power64.s
parent40520a21d8b050635a417666db959f75d757fff5 (diff)
parentcc517ca5f7183e7f5d91bf75897b23cc0f4ed04f (diff)
downloadgo-710efc5a3085f55968c120abb25206fb72c05d46.tar.gz
[dev.garbage] all: merge dev.power64 (5ad5e85cfb99) into dev.garbage
The goal here is to get the big-endian fixes so that in some upcoming code movement for write barriers I don't make them unmergeable. LGTM=rlh R=rlh CC=golang-codereviews https://codereview.appspot.com/166890043
Diffstat (limited to 'src/runtime/rt0_linux_power64.s')
-rw-r--r--src/runtime/rt0_linux_power64.s17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/runtime/rt0_linux_power64.s b/src/runtime/rt0_linux_power64.s
new file mode 100644
index 000000000..970b6a673
--- /dev/null
+++ b/src/runtime/rt0_linux_power64.s
@@ -0,0 +1,17 @@
+#include "textflag.h"
+
+// actually a function descriptor for _main<>(SB)
+TEXT _rt0_power64_linux(SB),NOSPLIT,$0
+ DWORD $_main<>(SB)
+ DWORD $0
+ DWORD $0
+
+TEXT _main<>(SB),NOSPLIT,$-8
+ MOVD 0(R1), R3 // argc
+ ADD $8, R1, R4 // argv
+ BR main(SB)
+
+TEXT main(SB),NOSPLIT,$-8
+ MOVD $runtime·rt0_go(SB), R31
+ MOVD R31, CTR
+ BR (CTR)