]>
Commit | Line | Data |
---|---|---|
57a299fe | 1 | /* System-specific settings for dynamic linker code. i386 version. |
04277e02 | 2 | Copyright (C) 2002-2019 Free Software Foundation, Inc. |
df45b31e UD |
3 | This file is part of the GNU C Library. |
4 | ||
5 | The GNU C Library is free software; you can redistribute it and/or | |
6 | modify it under the terms of the GNU Lesser General Public | |
7 | License as published by the Free Software Foundation; either | |
8 | version 2.1 of the License, or (at your option) any later version. | |
9 | ||
10 | The GNU C Library is distributed in the hope that it will be useful, | |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 | Lesser General Public License for more details. | |
14 | ||
15 | You should have received a copy of the GNU Lesser General Public | |
59ba27a6 PE |
16 | License along with the GNU C Library; if not, see |
17 | <http://www.gnu.org/licenses/>. */ | |
df45b31e | 18 | |
b43769a3 | 19 | #ifndef _LINUX_I386_DL_SYSDEP_H |
df45b31e | 20 | |
b43769a3 RM |
21 | #include_next <dl-sysdep.h> |
22 | ||
23 | /* Traditionally system calls have been made using int $0x80. A | |
24 | second method was introduced which, if possible, will use the | |
25 | sysenter/syscall instructions. To signal the presence and where to | |
26 | find the code the kernel passes an AT_SYSINFO value in the | |
27 | auxiliary vector to the application. */ | |
28 | #define NEED_DL_SYSINFO 1 | |
29 | ||
30 | #ifndef __ASSEMBLER__ | |
31 | extern void _dl_sysinfo_int80 (void) attribute_hidden; | |
32 | # define DL_SYSINFO_DEFAULT (uintptr_t) _dl_sysinfo_int80 | |
33 | # define DL_SYSINFO_IMPLEMENTATION \ | |
34 | asm (".text\n\t" \ | |
35 | ".type _dl_sysinfo_int80,@function\n\t" \ | |
36 | ".hidden _dl_sysinfo_int80\n" \ | |
37 | CFI_STARTPROC "\n" \ | |
38 | "_dl_sysinfo_int80:\n\t" \ | |
39 | "int $0x80;\n\t" \ | |
40 | "ret;\n\t" \ | |
41 | CFI_ENDPROC "\n" \ | |
42 | ".size _dl_sysinfo_int80,.-_dl_sysinfo_int80\n\t" \ | |
43 | ".previous"); | |
44 | #endif | |
45649185 | 45 | |
2f61deff | 46 | #endif /* dl-sysdep.h */ |