Staking out some more mipsel ground.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30620 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Jonas Sundström
2009-05-03 22:26:23 +00:00
parent fa8a3a17c6
commit 4ba7f1c0ed
3 changed files with 78 additions and 0 deletions
+7
View File
@@ -0,0 +1,7 @@
SubDir HAIKU_TOP src system glue arch mipsel ;
KernelObjects
crti.S
crtn.S
;
+42
View File
@@ -0,0 +1,42 @@
/*
* Copyright 2009, Axel Dörfler, axeld@pinc-software.de.
* Distributed under the terms of the MIT License.
*
* Authors:
* Axel Dörfler, axeld@pinc-software.de
* Jonas Sundström, jonas@kirilla.se
*/
/** This file contains the first part of the ".init" and ".fini" sections in
* the ELF executable.
* The functions defined here will be called during initialization/termination
* of the loaded executable/library. The ".init" and ".fini" sections are
* stacked together like this:
*
* crti.S entry point
* call to _init_before/_term_before
* crtbegin.S GCC specific: constructors/destructors are called, ...
* crtend.S
* crtn.S call to _init_after/_term_after
* exit
*/
#define FUNCTION(x) .global x; .type x,@function; x
#warning MIPSEL: fixme
.section .init
FUNCTION(_init):
.set noreorder
jal _init_before
nop
.set reorder
// crtbegin.o stuff comes here
.section .fini
FUNCTION(_fini):
.set noreorder
jal _term_before
nop
.set reorder
// crtbegin.o stuff comes here
+29
View File
@@ -0,0 +1,29 @@
/*
* Copyright 2009, Axel Dörfler, axeld@pinc-software.de.
* Distributed under the terms of the MIT License.
*
* Authors:
* Axel Dörfler, axeld@pinc-software.de
* Jonas Sundström, jonas@kirilla.se
*/
/** This file contains the final part of the ".init" and ".fini" sections in
* the ELF executable. It is tightly connected to crti.S.
* Have a look at crti.S to find a description of what happens here.
*/
#warning MIPSEL: fixme
.section .init
// the image ID and program args are still on the stack
.set noreorder
jal _init_after
nop
.set reorder
.section .fini
// the image ID and program args are still on the stack
.set noreorder
jal _term_after
nop
.set reorder