Fix build on sparc64-linux-gnu.
[official-gcc.git] / libgcc / config / ia64 / crtn.S
bloba4deaa75e7d1aa7de3006083eea3817c0d8511b5
1 #   Copyright (C) 2000-2018 Free Software Foundation, Inc.
2 #   Written By Timothy Wall
4 # This file is free software; you can redistribute it and/or modify it
5 # under the terms of the GNU General Public License as published by the
6 # Free Software Foundation; either version 3, or (at your option) any
7 # later version.
9 # This file is distributed in the hope that it will be useful, but
10 # WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 # General Public License for more details.
14 # Under Section 7 of GPL version 3, you are granted additional
15 # permissions described in the GCC Runtime Library Exception, version
16 # 3.1, as published by the Free Software Foundation.
18 # You should have received a copy of the GNU General Public License and
19 # a copy of the GCC Runtime Library Exception along with this program;
20 # see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
21 # <http://www.gnu.org/licenses/>.
23 # This file just makes sure that the .fini and .init sections do in
24 # fact return.  Users may put any desired instructions in those sections.
25 # This file is the last thing linked into any executable.
27         .section        ".init"
28         ;;
29         mov     ar.pfs = r34
30         mov     b0 = r33
31         .restore sp
32         mov     r12 = r35
33         br.ret.sptk.many b0
35         .section        ".fini"
36         ;;
37         mov     ar.pfs = r34
38         mov     b0 = r33
39         .restore sp
40         mov     r12 = r35
41         br.ret.sptk.many b0
43 # end of crtn.S