2 * stubs for C-linkage library functions which we need to refer to
5 * These exist for the benefit of Lisp code that needs to refer to
6 * foreign symbols when dlsym() is not available (i.e. when dumping
7 * cold-sbcl.core, when we may be running in a host that's not SBCL,
8 * or on platforms that don't have it at all). If the runtime is
9 * dynamically linked, library functions won't be linked into it, so
10 * the map file won't show them. So, we need a bunch of stubs that
15 * This software is part of the SBCL system. See the README file for
18 * This software is derived from the CMU CL system, which was
19 * written at Carnegie Mellon University and released into the
20 * public domain. The software is in the public domain and is
21 * provided with absolutely no warranty. See the COPYING and CREDITS
22 * files for more information.
32 #define LDSO_STUBIFY(fct) \
34 .globl ldso_stub__ ## fct ; \
35 .type ldso_stub__ ## fct,@function ; \
36 ldso_stub__ ## fct: ; \
39 .size ldso_stub__ ## fct,.L ## fct ## e1-ldso_stub__ ## fct ;
43 /* I _hope_ this is correct - I haven't checked in the manual
44 * yet. It works to the point of building and passing tests,
45 * at any rate - dan 2001.05.10 */
46 #define LDSO_STUBIFY(fct) \
47 .globl ldso_stub__ ## fct ; \
48 .type ldso_stub__ ## fct,@function ; \
49 ldso_stub__ ## fct: ; \
52 .size ldso_stub__ ## fct,.L ## fct ## e1-ldso_stub__ ## fct ;
55 #error unsupported CPU architecture
66 LDSO_STUBIFY(cfgetispeed)
67 LDSO_STUBIFY(cfgetospeed)
68 LDSO_STUBIFY(cfsetispeed)
69 LDSO_STUBIFY(cfsetospeed)
73 LDSO_STUBIFY(closedir)
92 LDSO_STUBIFY(ftruncate)
94 LDSO_STUBIFY(getdtablesize)
98 LDSO_STUBIFY(gethostbyaddr)
99 LDSO_STUBIFY(gethostbyname)
100 LDSO_STUBIFY(gethostname)
101 LDSO_STUBIFY(getitimer)
102 LDSO_STUBIFY(getpagesize)
103 LDSO_STUBIFY(getpeername)
104 LDSO_STUBIFY(getpgrp)
106 LDSO_STUBIFY(getppid)
107 LDSO_STUBIFY(getrusage)
108 LDSO_STUBIFY(getsockname)
109 LDSO_STUBIFY(gettimeofday)
122 LDSO_STUBIFY(memmove)
125 LDSO_STUBIFY(opendir)
129 LDSO_STUBIFY(readdir)
130 LDSO_STUBIFY(readlink)
136 LDSO_STUBIFY(setitimer)
137 LDSO_STUBIFY(setpgrp)
138 LDSO_STUBIFY(sigsetmask)
142 LDSO_STUBIFY(strerror)
143 LDSO_STUBIFY(symlink)
146 LDSO_STUBIFY(tcdrain)
148 LDSO_STUBIFY(tcflush)
149 LDSO_STUBIFY(tcgetattr)
150 LDSO_STUBIFY(tcsendbreak)
151 LDSO_STUBIFY(tcsetattr)
152 LDSO_STUBIFY(truncate)
153 LDSO_STUBIFY(ttyname)
161 * These aren't needed on the X86 because they're microcoded into the
162 * FPU, so the Lisp VOPs can implement them directly without having to
165 * Note: There might be some other functions in this category as well.
166 * E.g. I notice tanh() and acos() in the list above.. -- WHN 2001-06-07
168 #if !defined __i386__