diff options
Diffstat (limited to 'libgloss/sparc_leon/crtn.S')
-rw-r--r-- | libgloss/sparc_leon/crtn.S | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/libgloss/sparc_leon/crtn.S b/libgloss/sparc_leon/crtn.S new file mode 100644 index 000000000..ec85b3a29 --- /dev/null +++ b/libgloss/sparc_leon/crtn.S @@ -0,0 +1,63 @@ + +! Copyright (C) 1992 Free Software Foundation, Inc. +! Written By David Vinayak Henkel-Wallace, June 1992 +! +! This file is free software; you can redistribute it and/or modify it +! under the terms of the GNU General Public License as published by the +! Free Software Foundation; either version 2, or (at your option) any +! later version. +! +! In addition to the permissions in the GNU General Public License, the +! Free Software Foundation gives you unlimited permission to link the +! compiled version of this file with other programs, and to distribute +! those programs without any restriction coming from the use of this +! file. (The General Public License restrictions do apply in other +! respects; for example, they cover modification of the file, and +! distribution when not linked into another program.) +! +! This file is distributed in the hope that it will be useful, but +! WITHOUT ANY WARRANTY; without even the implied warranty of +! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +! General Public License for more details. +! +! You should have received a copy of the GNU General Public License +! along with this program; see the file COPYING. If not, write to +! the Free Software Foundation, 59 Temple Place - Suite 330, +! Boston, MA 02111-1307, USA. +! +! As a special exception, if you link this library with files +! compiled with GCC to produce an executable, this does not cause +! the resulting executable to be covered by the GNU General Public License. +! This exception does not however invalidate any other reasons why +! the executable file might be covered by the GNU General Public License. +! + +! This file just makes sure that the .fini and .init sections do in +! fact return. Users may put any desired instructions in those sections. +! This file is the last thing linked into any executable. + + .file "crtn.s" + + .section ".init" + .align 4 +#ifndef _FLAT + ret + restore +#else + ld [%sp+64], %o7 + retl + add %sp, 96, %sp +#endif + + .section ".fini" + .align 4 + +#ifndef _FLAT + ret + restore +#else + ld [%sp+64], %o7 + retl + add %sp, 96, %sp +#endif + |