about summary refs log tree commit diff
path: root/crt
diff options
context:
space:
mode:
authorSzabolcs Nagy <nsz@port70.net>2015-03-10 21:18:41 +0000
committerRich Felker <dalias@aerifal.cx>2015-03-11 20:12:35 -0400
commit01ef3dd9c5fa7a56aa370f244dd08e05c73010f5 (patch)
tree8fe90d994a43124ff309d3af4c185e28b2b1d6ff /crt
parentf4e4632abfa8297db1485e132bb15b9ef6c32a1b (diff)
downloadmusl-01ef3dd9c5fa7a56aa370f244dd08e05c73010f5.tar.gz
musl-01ef3dd9c5fa7a56aa370f244dd08e05c73010f5.tar.xz
musl-01ef3dd9c5fa7a56aa370f244dd08e05c73010f5.zip
add aarch64 port
This adds complete aarch64 target support including bigendian subarch.

Some of the long double math functions are known to be broken otherwise
interfaces should be fully functional, but at this point consider this
port experimental.

Initial work on this port was done by Sireesh Tripurari and Kevin Bortis.
Diffstat (limited to 'crt')
-rw-r--r--crt/aarch64/crti.s13
-rw-r--r--crt/aarch64/crtn.s7
2 files changed, 20 insertions, 0 deletions
diff --git a/crt/aarch64/crti.s b/crt/aarch64/crti.s
new file mode 100644
index 00000000..775df0ac
--- /dev/null
+++ b/crt/aarch64/crti.s
@@ -0,0 +1,13 @@
+.section .init
+.global _init
+.type _init,%function
+_init:
+	stp x29,x30,[sp,-16]!
+	mov x29,sp
+
+.section .fini
+.global _fini
+.type _fini,%function
+_fini:
+	stp x29,x30,[sp,-16]!
+	mov x29,sp
diff --git a/crt/aarch64/crtn.s b/crt/aarch64/crtn.s
new file mode 100644
index 00000000..73cab692
--- /dev/null
+++ b/crt/aarch64/crtn.s
@@ -0,0 +1,7 @@
+.section .init
+	ldp x29,x30,[sp],#16
+	ret
+
+.section .fini
+	ldp x29,x30,[sp],#16
+	ret