Initial import from FreeBSD RELENG_4:
[dragonfly.git] / sys / platform / pc32 / include / asnames.h
1 /*-
2  * Copyright (c) 1997 John D. Polstra
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  * 1. Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  *    notice, this list of conditions and the following disclaimer in the
12  *    documentation and/or other materials provided with the distribution.
13  *
14  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24  * SUCH DAMAGE.
25  *
26  * $FreeBSD: src/sys/i386/include/asnames.h,v 1.44.2.8 2003/01/22 20:14:53 jhb Exp $
27  */
28
29 #ifndef _MACHINE_ASNAMES_H_
30 #define _MACHINE_ASNAMES_H_
31
32 /*
33  * This file is used by the kernel assembly language sources to provide
34  * the proper mapping between the global names used in assembly language
35  * code and the corresponding C symbols.  By convention, all C symbols
36  * that are referenced from assembly language are prefixed with `_'.
37  * That happens to be the same prefix that the a.out compiler attaches
38  * to each C symbol.
39  *
40  * When using the ELF compiler, C symbols are identical to the corresponding
41  * assembly language symbols.  Thus the extra underscores cause problems.
42  * The defines in this file map the underscore names back to the proper
43  * unadorned names.
44  *
45  * Every global symbol that is referenced from both C source and assembly
46  * language source must have an entry in this file, or the kernel will
47  * not build properly using the ELF compiler.
48  *
49  * This file is included by <machine/asmacros.h>, and it is OK to rely
50  * on that.
51  */
52
53 #ifdef __ELF__
54
55 #define _APTD                           APTD
56 #define _APTDpde                        APTDpde
57 #define _APTmap                         APTmap
58 #define _CONST_QNaN                     CONST_QNaN
59 #define _IdlePTD                        IdlePTD
60 #define _KPTphys                        KPTphys
61 #define _MP_GDT                         MP_GDT
62 #define _MPgetlock                      MPgetlock
63 #define _MPgetlock_edx                  MPgetlock_edx
64 #define _MPrellock                      MPrellock
65 #define _MPrellock_edx                  MPrellock_edx
66 #define _MPtrylock                      MPtrylock
67 #define _PTD                            PTD
68 #define _PTDpde                         PTDpde
69 #define _PTmap                          PTmap
70 #define _SMP_prvspace                   SMP_prvspace
71 #define _SMPpt                          SMPpt
72 #define _Xalign                         Xalign
73 #define _Xbnd                           Xbnd
74 #define _Xbpt                           Xbpt
75 #define _Xcpuast                        Xcpuast
76 #define _Xcpucheckstate                 Xcpucheckstate
77 #define _Xcpustop                       Xcpustop
78 #define _Xdbg                           Xdbg
79 #define _Xdiv                           Xdiv
80 #define _Xdna                           Xdna
81 #define _Xfastintr0                     Xfastintr0
82 #define _Xfastintr1                     Xfastintr1
83 #define _Xfastintr10                    Xfastintr10
84 #define _Xfastintr11                    Xfastintr11
85 #define _Xfastintr12                    Xfastintr12
86 #define _Xfastintr13                    Xfastintr13
87 #define _Xfastintr14                    Xfastintr14
88 #define _Xfastintr15                    Xfastintr15
89 #define _Xfastintr16                    Xfastintr16
90 #define _Xfastintr17                    Xfastintr17
91 #define _Xfastintr18                    Xfastintr18
92 #define _Xfastintr19                    Xfastintr19
93 #define _Xfastintr2                     Xfastintr2
94 #define _Xfastintr20                    Xfastintr20
95 #define _Xfastintr21                    Xfastintr21
96 #define _Xfastintr22                    Xfastintr22
97 #define _Xfastintr23                    Xfastintr23
98 #define _Xfastintr3                     Xfastintr3
99 #define _Xfastintr4                     Xfastintr4
100 #define _Xfastintr5                     Xfastintr5
101 #define _Xfastintr6                     Xfastintr6
102 #define _Xfastintr7                     Xfastintr7
103 #define _Xfastintr8                     Xfastintr8
104 #define _Xfastintr9                     Xfastintr9
105 #define _Xforward_irq                   Xforward_irq
106 #define _Xfpu                           Xfpu
107 #define _Xfpusegm                       Xfpusegm
108 #define _Xill                           Xill
109 #define _Xint0x80_syscall               Xint0x80_syscall
110 #define _Xintr0                         Xintr0
111 #define _Xintr1                         Xintr1
112 #define _Xintr10                        Xintr10
113 #define _Xintr11                        Xintr11
114 #define _Xintr12                        Xintr12
115 #define _Xintr13                        Xintr13
116 #define _Xintr14                        Xintr14
117 #define _Xintr15                        Xintr15
118 #define _Xintr16                        Xintr16
119 #define _Xintr17                        Xintr17
120 #define _Xintr18                        Xintr18
121 #define _Xintr19                        Xintr19
122 #define _Xintr2                         Xintr2
123 #define _Xintr20                        Xintr20
124 #define _Xintr21                        Xintr21
125 #define _Xintr22                        Xintr22
126 #define _Xintr23                        Xintr23
127 #define _Xintr3                         Xintr3
128 #define _Xintr4                         Xintr4
129 #define _Xintr5                         Xintr5
130 #define _Xintr6                         Xintr6
131 #define _Xintr7                         Xintr7
132 #define _Xintr8                         Xintr8
133 #define _Xintr9                         Xintr9
134 #define _Xinvltlb                       Xinvltlb
135 #define _Xrendezvous                    Xrendezvous
136 #define _Xmchk                          Xmchk
137 #define _Xmissing                       Xmissing
138 #define _Xnmi                           Xnmi
139 #define _Xofl                           Xofl
140 #define _Xpage                          Xpage
141 #define _Xprot                          Xprot
142 #define _Xrsvd                          Xrsvd
143 #define _Xspuriousint                   Xspuriousint
144 #define _Xstk                           Xstk
145 #define _Xsyscall                       Xsyscall
146 #define _Xtss                           Xtss
147 #define _Xxmm                           Xxmm
148 #define __default_ldt                   _default_ldt
149 #define __ucodesel                      _ucodesel
150 #define __udatasel                      _udatasel
151 #define _alltraps                       alltraps
152 #define _ap_init                        ap_init
153 #define _apic_imen                      apic_imen
154 #define _apic_isrbit_location           apic_isrbit_location
155 #define _apic_pin_trigger               apic_pin_trigger
156 #define _arith_invalid                  arith_invalid
157 #define _arith_overflow                 arith_overflow
158 #define _arith_underflow                arith_underflow
159 #define _bcopy                          bcopy
160 #define _bcopy_vector                   bcopy_vector
161 #define _bigJump                        bigJump
162 #define _bintr                          bintr
163 #define _bio_imask                      bio_imask
164 #define _bioscall_vector                bioscall_vector
165 #define _bootCodeSeg                    bootCodeSeg
166 #define _bootDataSeg                    bootDataSeg
167 #define _bootMP                         bootMP
168 #define _bootMP_size                    bootMP_size
169 #define _bootSTK                        bootSTK
170 #define _boot_get_mplock                boot_get_mplock
171 #define _bootdev                        bootdev
172 #define _boothowto                      boothowto
173 #define _bootinfo                       bootinfo
174 #define _btrap                          btrap
175 #define _bzero                          bzero
176 #define _cam_imask                      cam_imask
177 #define _checkstate_cpus                checkstate_cpus
178 #define _checkstate_cpustate            checkstate_cpustate
179 #define _checkstate_curproc             checkstate_curproc
180 #define _checkstate_need_ast            checkstate_need_ast
181 #define _checkstate_pc                  checkstate_pc
182 #define _checkstate_pending_ast         checkstate_pending_ast
183 #define _checkstate_probed_cpus         checkstate_probed_cpus
184 #define _chooseproc                     chooseproc
185 #define _cnt                            cnt
186 #define _copyin_vector                  copyin_vector
187 #define _copyout_vector                 copyout_vector
188 #define _cpl                            cpl
189 #define _cpl_lock                       cpl_lock
190 #define _cpu                            cpu
191 #define _cpu0prvpage                    cpu0prvpage
192 #define _cpu_apic_versions              cpu_apic_versions
193 #define _cpu_class                      cpu_class
194 #define _cpu_feature                    cpu_feature
195 #define _cpu_fxsr                       cpu_fxsr
196 #define _cpu_high                       cpu_high
197 #define _cpu_procinfo                   cpu_procinfo
198 #define _cpu_id                         cpu_id
199 #define _cpu_idle                       cpu_idle
200 #define _cpu_num_to_apic_id             cpu_num_to_apic_id
201 #define _cpu_switch                     cpu_switch
202 #define _cpu_vendor                     cpu_vendor
203 #define _default_halt                   default_halt
204 #define _denormal_operand               denormal_operand
205 #define _div_small                      div_small
206 #define _divide_by_zero                 divide_by_zero
207 #define _divide_kernel                  divide_kernel
208 #define _do_page_zero_idle              do_page_zero_idle
209 #define _doreti                         doreti
210 #define _edata                          edata
211 #define _eintrcnt                       eintrcnt
212 #define _eintrnames                     eintrnames
213 #define _end                            end
214 #define _etext                          etext
215 #define _exception                      exception
216 #define _fast_intr_lock                 fast_intr_lock
217 #define _fastmove                       fastmove
218 #define _gdt                            gdt
219 #define _generic_bcopy                  generic_bcopy
220 #define _generic_bzero                  generic_bzero
221 #define _generic_copyin                 generic_copyin
222 #define _generic_copyout                generic_copyout
223 #define _get_align_lock                 get_align_lock
224 #define _get_altsyscall_lock            get_altsyscall_lock
225 #define _get_fpu_lock                   get_fpu_lock
226 #define _get_isrlock                    get_isrlock
227 #define _get_mplock                     get_mplock
228 #define _get_syscall_lock               get_syscall_lock
229 #define _idle                           idle
230 #define _idle_poll                      idle_poll
231 #define _ihandlers                      ihandlers
232 #define _imen                           imen
233 #define _imen_lock                      imen_lock
234 #define _in_vm86call                    in_vm86call
235 #define _init386                        init386
236 #define _init_secondary                 init_secondary
237 #define _intr_countp                    intr_countp
238 #define _intr_handler                   intr_handler
239 #define _intr_mask                      intr_mask
240 #define _intr_nesting_level             intr_nesting_level
241 #define _intr_unit                      intr_unit
242 #define _intrcnt                        intrcnt
243 #define _intrnames                      intrnames
244 #define _invltlb_ok                     invltlb_ok
245 #define _ioapic                         ioapic
246 #define _ipending                       ipending
247 #define _isr_lock                       isr_lock
248 #define _kernbase                       kernbase
249 #define _kernelname                     kernelname
250 #define _lapic                          lapic
251 #define _linux_sigcode                  linux_sigcode
252 #define _linux_szsigcode                linux_szsigcode
253 #define _mi_startup                     mi_startup
254 #define _microuptime                    microuptime
255 #define _mp_gdtbase                     mp_gdtbase
256 #define _mp_lock                        mp_lock
257 #define _mp_ncpus                       mp_ncpus
258 #define _mul64                          mul64
259 #define _net_imask                      net_imask
260 #define _netisr                         netisr
261 #define _netisrs                        netisrs
262 #define _nfs_diskless                   nfs_diskless
263 #define _nfs_diskless_valid             nfs_diskless_valid
264 #define _normalize                      normalize
265 #define _normalize_nuo                  normalize_nuo
266 #define _npx_intr                       npx_intr
267 #define _npxsave                        npxsave
268 #define _szosigcode                     szosigcode
269 #define _ovbcopy_vector                 ovbcopy_vector
270 #define _panic                          panic
271 #define _pc98_system_parameter          pc98_system_parameter
272 #define _poly_div16                     poly_div16
273 #define _poly_div2                      poly_div2
274 #define _poly_div4                      poly_div4
275 #define _polynomial                     polynomial
276 #define _private_tss                    private_tss
277 #define _proc0                          proc0
278 #define _proc0paddr                     proc0paddr
279 #define _procrunnable                   procrunnable
280 #define _real_2op_NaN                   real_2op_NaN
281 #define _reg_div                        reg_div
282 #define _reg_u_add                      reg_u_add
283 #define _reg_u_div                      reg_u_div
284 #define _reg_u_mul                      reg_u_mul
285 #define _reg_u_sub                      reg_u_sub
286 #define _rel_mplock                     rel_mplock
287 #define _round_reg                      round_reg
288 #define _s_lock                         s_lock
289 #define _s_unlock                       s_unlock
290 #define _set_precision_flag_down        set_precision_flag_down
291 #define _set_precision_flag_up          set_precision_flag_up
292 #define _set_user_ldt                   set_user_ldt
293 #define _shrx                           shrx
294 #define _shrxs                          shrxs
295 #define _sigcode                        sigcode
296 #define _smp_active                     smp_active
297 #define _smp_rendezvous_action          smp_rendezvous_action
298 #define _soft_imask                     soft_imask
299 #define _softclock                      softclock
300 #define _softnet_imask                  softnet_imask
301 #define _softtty_imask                  softtty_imask
302 #define _spl0                           spl0
303 #define _splz                           splz
304 #define _ss_lock                        ss_lock
305 #define _ss_unlock                      ss_unlock
306 #define _started_cpus                   started_cpus
307 #define _stopped_cpus                   stopped_cpus
308 #define _svr4_sigcode                   svr4_sigcode
309 #define _svr4_sys_context               svr4_sys_context
310 #define _svr4_szsigcode                 svr4_szsigcode
311 #define _swi_dispatcher                 swi_dispatcher
312 #define _swi_generic                    swi_generic
313 #define _swi_null                       swi_null
314 #define _swi_vm                         swi_vm
315 #define _syscall2                       syscall2
316 #define _szsigcode                      szsigcode
317 #define _ticks                          ticks
318 #define _time                           time
319 #define _trap                           trap
320 #define _trapwrite                      trapwrite
321 #define _tty_imask                      tty_imask
322 #define _vec                            vec
323 #define _vec8254                        vec8254
324 #define _vm86_prepcall                  vm86_prepcall
325 #define _vm86pa                         vm86pa
326 #define _vm86paddr                      vm86paddr
327 #define _vm86pcb                        vm86pcb
328 #define _vm_page_zero_idle              vm_page_zero_idle
329 #define _wm_sqrt                        wm_sqrt
330
331 #endif /* __ELF__ */
332
333 #if defined(SMP) || defined(__ELF__)
334 #ifdef SMP
335 #define FS(x)   %fs:gd_ ## x
336 #else
337 #define FS(x)   x
338 #endif
339
340 #define _common_tss                     FS(common_tss)
341 #define _common_tssd                    FS(common_tssd)
342 #define _cpuid                          FS(cpuid)
343 #define _cpu_lockid                     FS(cpu_lockid)
344 #define _curpcb                         FS(curpcb)
345 #define _curproc                        FS(curproc)
346 #define _astpending                     FS(astpending)
347 #define _currentldt                     FS(currentldt)
348 #define _inside_intr                    FS(inside_intr)
349 #define _npxproc                        FS(npxproc)
350 #define _other_cpus                     FS(other_cpus)
351 #define _prv_CADDR1                     FS(prv_CADDR1)
352 #define _prv_CADDR2                     FS(prv_CADDR2)
353 #define _prv_CADDR3                     FS(prv_CADDR3)
354 #define _prv_CMAP1                      FS(prv_CMAP1)
355 #define _prv_CMAP2                      FS(prv_CMAP2)
356 #define _prv_CMAP3                      FS(prv_CMAP3)
357 #define _prv_PADDR1                     FS(prv_PADDR1)
358 #define _prv_PMAP1                      FS(prv_PMAP1)
359 #define _ss_eflags                      FS(ss_eflags)
360 #define _switchticks                    FS(switchticks)
361 #define _switchtime                     FS(switchtime)
362 #define _tss_gdt                        FS(tss_gdt)
363 #define _idlestack                      FS(idlestack)
364 #define _idlestack_top                  FS(idlestack_top)
365
366 #endif
367
368 #endif /* !_MACHINE_ASNAMES_H_ */