diff options
author | Eric Andersen <andersen@codepoet.org> | 2003-11-05 02:04:16 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2003-11-05 02:04:16 +0000 |
commit | 84f5d5e948043704035d9fd4708e898bd3038ba6 (patch) | |
tree | d66cd4603a9a048d7d1dbcbf3f2c6b378efad19f /libc/sysdeps/linux/sh/crti.S | |
parent | 6966e6c4edf576c92a33d046705e1f458de772f2 (diff) |
Continue the conversion to using per-arch crti.S and crtn.S
Diffstat (limited to 'libc/sysdeps/linux/sh/crti.S')
-rw-r--r-- | libc/sysdeps/linux/sh/crti.S | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/sh/crti.S b/libc/sysdeps/linux/sh/crti.S new file mode 100644 index 000000000..74d08f14c --- /dev/null +++ b/libc/sysdeps/linux/sh/crti.S @@ -0,0 +1,50 @@ + .file "initfini.c" + .text + .little + + .section .init + .hidden _init + .align 1 + .global _init + .type _init, @function +_init: + mov.l r12,@-r15 + mova .L6,r0 + mov.l r14,@-r15 + sts.l pr,@-r15 + mov.l .L6,r12 + mov r15,r14 + add r0,r12 + + + + bra 1f + nop + .align 2 +.L6: + .long _GLOBAL_OFFSET_TABLE_ +1: + + .section .fini + .hidden _fini + .align 1 + .global _fini + .type _fini, @function +_fini: + mov.l r12,@-r15 + mova .L11,r0 + mov.l r14,@-r15 + sts.l pr,@-r15 + mov.l .L11,r12 + mov r15,r14 + add r0,r12 + + + bra 1f + nop + .align 2 +.L11: + .long _GLOBAL_OFFSET_TABLE_ +1: + + .ident "GCC: (GNU) 3.3.2" |