Back to index

glibc  2.9
Functions
initfini.c File Reference

Go to the source code of this file.

Functions

 __asm__ ("\ \n\ #include \"defs.h\"\n\ \n\ /*@HEADER_ENDS*/\n\ \n\ /*@_init_PROLOG_BEGINS*/\n\ .section .init\n\ .align 4\n\ .globl _init\n\ .type _init,@function\n\ _init:\n\ stw %rp,-20(%sp)\n\ stwm %r4,64(%sp)\n\ stw %r19,-32(%sp)\n\ bl __gmon_start__,%rp\n\ copy %r19,%r4 /* delay slot */\n\ copy %r4,%r19\n\ /*@_init_PROLOG_ENDS*/\n\ \n\ /*@_init_EPILOG_BEGINS*/\n\ .text\n\ .align 4\n\ .weak __gmon_start__\n\ .type __gmon_start__,@function\n\ __gmon_start__:\n\ .proc\n\ .callinfo\n\ .entry\n\ bv,n %r0(%r2)\n\ .exit\n\ .procend\n\ \n\ /* Here is the tail end of _init. We put __gmon_start before this so\n\ that the assembler creates the .PARISC.unwind section for us, ie.\n\ with the right attributes. */\n\ .section .init\n\ ldw -84(%sp),%rp\n\ copy %r4,%r19\n\ bv %r0(%rp)\n\ _end_init:\n\ ldwm -64(%sp),%r4\n\ \n\ /* Our very own unwind info, because the assembler can't handle\n\ functions split into two or more pieces. */\n\ .section .PARISC.unwind\n\ .extern _init\n\ .word _init, _end_init\n\ .byte 0x08, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08\n\ \n\ /*@_init_EPILOG_ENDS*/\n\ \n\ /*@_fini_PROLOG_BEGINS*/\n\ .section .fini\n\ .align 4\n\ .globl _fini\n\ .type _fini,@function\n\ _fini:\n\ stw %rp,-20(%sp)\n\ stwm %r4,64(%sp)\n\ stw %r19,-32(%sp)\n\ copy %r19,%r4\n\ /*@_fini_PROLOG_ENDS*/\n\ \n\ /*@_fini_EPILOG_BEGINS*/\n\ .section .fini\n\ ldw -84(%sp),%rp\n\ copy %r4,%r19\n\ bv %r0(%rp)\n\ _end_fini:\n\ ldwm -64(%sp),%r4\n\ \n\ .section .PARISC.unwind\n\ .extern _fini\n\ .word _fini, _end_fini\n\ .byte 0x08, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08\n\ \n\ /*@_fini_EPILOG_ENDS*/\n\ \n\ /*@TRAILER_BEGINS*/\ ")

Function Documentation

__asm__ ( "\\n\#include \"defs.h\"\n\\n\/*@HEADER_ENDS*/\n\\n\/*@_init_PROLOG_BEGINS*/\n\ .section .init\n\ .align 4\n\ .globl _init\n\ .type  _init,
@function\n\_init:\n\stw%  rp,
-20(%sp)\n\stwm%  r4,
64(%sp)\n\stw%  r19,
-32(%sp)\n\bl  __gmon_start__,
%rp\n\copy r19,
%r4/*delay slot */\n\copy r4,
%r19\n\/*@_init_PROLOG_ENDS */\n\\n\/*@_init_EPILOG_BEGINS */\n\.text\n\.align 4\n\.weak __gmon_start__\n\.type  __gmon_start__,
@function\n\__gmon_start__:\n\.proc\n\.callinfo\n\.entry\n\  bv,
n%r0(%r2)\n\.exit\n\.procend\n\\n\/*Here is the tail end of _init.We put __gmon_start before this so\n\that the assembler creates the.PARISC.unwind section for  us,
ie.\n\with the right attributes.*/\n\.section.init\n\ldw-  84%sp,
%rp\n\copy r4,
%r19\n\bv%  r0%rp)\n\_end_init:\n\ldwm-64(%sp,
%r4\n\\n\/*Our very own unwind  info,
because the assembler can't handle\n\functions split into two or more pieces.*/\n\.section.PARISC.unwind\n\.extern _init\n\.word  _init,
_end_init\n\.byte  0x08,
0x01  ,
0x00  ,
0x08  ,
0x00  ,
0x00  ,
0x00  ,
0x08\n\\n\/*@_init_EPILOG_ENDS */\n\\n\/*@_fini_PROLOG_BEGINS */\n\.section.fini\n\.align 4\n\.globl _fini\n\.type  _fini,
@function\n\_fini:\n\stw%  rp,
-20(%sp)\n\stwm%  r4,
64(%sp)\n\stw%  r19,
-32(%sp)\n\copy r19,
%r4\n\/*@_fini_PROLOG_ENDS */\n\\n\/*@_fini_EPILOG_BEGINS */\n\.section.fini\n\ldw-  84%sp,
%rp\n\copy r4,
%r19\n\bv%  r0%rp)\n\_end_fini:\n\ldwm-64(%sp,
%r4\n\\n\.section.PARISC.unwind\n\.extern _fini\n\.word  _fini,
_end_fini\n\.byte  0x08,
0x01  ,
0x00  ,
0x08  ,
0x00  ,
0x00  ,
0x00  ,
0x08\n\\n\/*@_fini_EPILOG_ENDS */\n\\n\/*@TRAILER_BEGINS */\"   
)