summaryrefslogtreecommitdiff
path: root/arch/or1k/crt_arch.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/or1k/crt_arch.h')
-rw-r--r--arch/or1k/crt_arch.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/or1k/crt_arch.h b/arch/or1k/crt_arch.h
new file mode 100644
index 0000000..9e310ca
--- /dev/null
+++ b/arch/or1k/crt_arch.h
@@ -0,0 +1,18 @@
+__asm__(
+".text \n"
+".global " START " \n"
+".align 4 \n"
+START ": \n"
+" l.jal 1f \n"
+" l.ori r3, r1, 0 \n"
+".weak _DYNAMIC \n"
+".hidden _DYNAMIC \n"
+" .word _DYNAMIC-. \n"
+"1: l.lwz r4, 0(r9) \n"
+" l.add r4, r4, r9 \n"
+" l.addi r2, r0, -8 \n"
+" l.and r1, r1, r2 \n"
+" l.addi r1, r1, -16 \n"
+" l.jal " START "_c \n"
+" l.ori r2, r0, 0 \n"
+);