mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-28 07:41:05 +00:00
Fri Jun 28 16:53:01 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/alpha/init-first.h, sysdeps/unix/sysv/linux/m68k/init-first.h, sysdeps/unix/sysv/linux/i386/init-first.h: New files. * sysdeps/unix/sysv/linux/init-first.c: Use platform-dependent init-first.h to make abstract machine dependent parts of initialization.
This commit is contained in:
parent
51ac76881f
commit
6f0a2dad9f
12
sysdeps/unix/sysv/linux/alpha/init-first.h
Normal file
12
sysdeps/unix/sysv/linux/alpha/init-first.h
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
/* This fragment is invoked in the stack context of program start.
|
||||||
|
Its job is to set up a pointer to argc as an argument, pass
|
||||||
|
control to `INIT', and, if necessary, clean up after the call
|
||||||
|
to leave the stack in the same condition it was found in. */
|
||||||
|
|
||||||
|
#define SYSDEP_CALL_INIT(NAME, INIT) \
|
||||||
|
asm(".globl " #NAME "\n" \
|
||||||
|
#NAME ":\n\t" \
|
||||||
|
"ldgp $29, 0($27)\n\t" \
|
||||||
|
".prologue 1\n\t" \
|
||||||
|
"mov $30, $16\n\t" \
|
||||||
|
"br $31, " #INIT "..ng");
|
12
sysdeps/unix/sysv/linux/m68k/init-first.h
Normal file
12
sysdeps/unix/sysv/linux/m68k/init-first.h
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
/* This fragment is invoked in the stack context of program start.
|
||||||
|
Its job is to set up a pointer to argc as an argument, pass
|
||||||
|
control to `INIT', and, if necessary, clean up after the call
|
||||||
|
to leave the stack in the same condition it was found in. */
|
||||||
|
|
||||||
|
#define SYSDEP_CALL_INIT(NAME, INIT) \
|
||||||
|
asm(".globl " #NAME "\n\t" \
|
||||||
|
#NAME ":\n\t" \
|
||||||
|
"pea %sp@(4)\n\t" \
|
||||||
|
"jbsr " #INIT "\n\t" \
|
||||||
|
"addq #4,%sp\n\t" \
|
||||||
|
"rts");
|
Loading…
Reference in New Issue
Block a user