summaryrefslogtreecommitdiff
path: root/arch/powerpc64/crt_arch.h
diff options
context:
space:
mode:
authorBobby Bingham <koorogi@koorogi.info>2016-04-30 19:18:17 -0500
committerRich Felker <dalias@aerifal.cx>2016-05-08 22:57:40 -0400
commitc0ede9e4046a0882d83ae4b45c7dfac86fb7c15d (patch)
tree02956e3cc93a50bcc9c946fbc2bbffb883e72f2f /arch/powerpc64/crt_arch.h
parent6bc7d9c411c3a32cfa9d239b73fffb2ba66dd9ff (diff)
downloadmusl-c0ede9e4046a0882d83ae4b45c7dfac86fb7c15d.tar.gz
add powerpc64 port
Diffstat (limited to 'arch/powerpc64/crt_arch.h')
-rw-r--r--arch/powerpc64/crt_arch.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/powerpc64/crt_arch.h b/arch/powerpc64/crt_arch.h
new file mode 100644
index 00000000..168669a9
--- /dev/null
+++ b/arch/powerpc64/crt_arch.h
@@ -0,0 +1,19 @@
+__asm__(
+".text \n"
+".global " START " \n"
+".type " START ", %function \n"
+START ": \n"
+" addis 2, 12, .TOC.-" START "@ha \n"
+" addi 2, 2, .TOC.-" START "@l \n"
+" lwz 4, 1f-" START "(12)\n"
+" add 4, 4, 12 \n"
+" mr 3, 1 \n"
+" clrrdi 1, 1, 4 \n"
+" li 0, 0 \n"
+" stdu 0, -32(1) \n"
+" mtlr 0 \n"
+" bl " START "_c \n"
+".weak _DYNAMIC \n"
+".hidden _DYNAMIC \n"
+"1: .long _DYNAMIC-" START "\n"
+);