2 * Copyright (c) 1997 John D. Polstra
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
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.
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
26 * $FreeBSD: src/sys/i386/include/asnames.h,v 1.44.2.8 2003/01/22 20:14:53 jhb Exp $
27 * $DragonFly: src/sys/platform/pc32/include/Attic/asnames.h,v 1.8 2003/06/22 08:54:20 dillon Exp $
30 #ifndef _MACHINE_ASNAMES_H_
31 #define _MACHINE_ASNAMES_H_
34 * This file is used by the kernel assembly language sources to provide
35 * the proper mapping between the global names used in assembly language
36 * code and the corresponding C symbols. By convention, all C symbols
37 * that are referenced from assembly language are prefixed with `_'.
38 * That happens to be the same prefix that the a.out compiler attaches
41 * When using the ELF compiler, C symbols are identical to the corresponding
42 * assembly language symbols. Thus the extra underscores cause problems.
43 * The defines in this file map the underscore names back to the proper
46 * Every global symbol that is referenced from both C source and assembly
47 * language source must have an entry in this file, or the kernel will
48 * not build properly using the ELF compiler.
50 * This file is included by <machine/asmacros.h>, and it is OK to rely
57 #define _APTDpde APTDpde
58 #define _APTmap APTmap
59 #define _CONST_QNaN CONST_QNaN
60 #define _IdlePTD IdlePTD
61 #define _KPTphys KPTphys
62 #define _MP_GDT MP_GDT
63 #define _MPgetlock MPgetlock
64 #define _MPgetlock_edx MPgetlock_edx
65 #define _MPrellock MPrellock
66 #define _MPrellock_edx MPrellock_edx
67 #define _MPtrylock MPtrylock
69 #define _PTDpde PTDpde
71 #define _CPU_prvspace CPU_prvspace
73 #define _Xalign Xalign
76 #define _Xcpuast Xcpuast
77 #define _Xcpucheckstate Xcpucheckstate
78 #define _Xcpustop Xcpustop
82 #define _Xfastintr0 Xfastintr0
83 #define _Xfastintr1 Xfastintr1
84 #define _Xfastintr10 Xfastintr10
85 #define _Xfastintr11 Xfastintr11
86 #define _Xfastintr12 Xfastintr12
87 #define _Xfastintr13 Xfastintr13
88 #define _Xfastintr14 Xfastintr14
89 #define _Xfastintr15 Xfastintr15
90 #define _Xfastintr16 Xfastintr16
91 #define _Xfastintr17 Xfastintr17
92 #define _Xfastintr18 Xfastintr18
93 #define _Xfastintr19 Xfastintr19
94 #define _Xfastintr2 Xfastintr2
95 #define _Xfastintr20 Xfastintr20
96 #define _Xfastintr21 Xfastintr21
97 #define _Xfastintr22 Xfastintr22
98 #define _Xfastintr23 Xfastintr23
99 #define _Xfastintr3 Xfastintr3
100 #define _Xfastintr4 Xfastintr4
101 #define _Xfastintr5 Xfastintr5
102 #define _Xfastintr6 Xfastintr6
103 #define _Xfastintr7 Xfastintr7
104 #define _Xfastintr8 Xfastintr8
105 #define _Xfastintr9 Xfastintr9
106 #define _Xforward_irq Xforward_irq
108 #define _Xfpusegm Xfpusegm
110 #define _Xint0x80_syscall Xint0x80_syscall
111 #define _Xintr0 Xintr0
112 #define _Xintr1 Xintr1
113 #define _Xintr10 Xintr10
114 #define _Xintr11 Xintr11
115 #define _Xintr12 Xintr12
116 #define _Xintr13 Xintr13
117 #define _Xintr14 Xintr14
118 #define _Xintr15 Xintr15
119 #define _Xintr16 Xintr16
120 #define _Xintr17 Xintr17
121 #define _Xintr18 Xintr18
122 #define _Xintr19 Xintr19
123 #define _Xintr2 Xintr2
124 #define _Xintr20 Xintr20
125 #define _Xintr21 Xintr21
126 #define _Xintr22 Xintr22
127 #define _Xintr23 Xintr23
128 #define _Xintr3 Xintr3
129 #define _Xintr4 Xintr4
130 #define _Xintr5 Xintr5
131 #define _Xintr6 Xintr6
132 #define _Xintr7 Xintr7
133 #define _Xintr8 Xintr8
134 #define _Xintr9 Xintr9
135 #define _Xinvltlb Xinvltlb
136 #define _Xrendezvous Xrendezvous
138 #define _Xmissing Xmissing
144 #define _Xspuriousint Xspuriousint
146 #define _Xsyscall Xsyscall
149 #define __default_ldt _default_ldt
150 #define __ucodesel _ucodesel
151 #define __udatasel _udatasel
152 #define _alltraps alltraps
153 #define _ap_init ap_init
154 #define _apic_imen apic_imen
155 #define _apic_isrbit_location apic_isrbit_location
156 #define _apic_pin_trigger apic_pin_trigger
157 #define _arith_invalid arith_invalid
158 #define _arith_overflow arith_overflow
159 #define _arith_underflow arith_underflow
161 #define _bcopy_vector bcopy_vector
162 #define _bigJump bigJump
164 #define _bio_imask bio_imask
165 #define _bioscall_vector bioscall_vector
166 #define _bootCodeSeg bootCodeSeg
167 #define _bootDataSeg bootDataSeg
168 #define _bootMP bootMP
169 #define _bootMP_size bootMP_size
170 #define _bootSTK bootSTK
171 #define _boot_get_mplock boot_get_mplock
172 #define _bootdev bootdev
173 #define _boothowto boothowto
174 #define _bootinfo bootinfo
177 #define _cam_imask cam_imask
178 #define _checkstate_cpus checkstate_cpus
179 #define _checkstate_cpustate checkstate_cpustate
180 #define _checkstate_curproc checkstate_curproc
181 #define _checkstate_need_ast checkstate_need_ast
182 #define _checkstate_pc checkstate_pc
183 #define _checkstate_pending_ast checkstate_pending_ast
184 #define _checkstate_probed_cpus checkstate_probed_cpus
185 #define _chooseproc chooseproc
187 #define _copyin_vector copyin_vector
188 #define _copyout_vector copyout_vector
189 #define _cpl_lock cpl_lock
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
211 #define _eintrcnt eintrcnt
212 #define _eintrnames eintrnames
215 #define _exception exception
216 #define _fast_intr_lock fast_intr_lock
217 #define _fastmove fastmove
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
230 #define _idle_poll idle_poll
231 #define _ihandlers ihandlers
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
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
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
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
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
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
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
320 #define _trapwrite trapwrite
321 #define _tty_imask tty_imask
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
333 #if defined(SMP) || defined(__ELF__)
335 #define FS(x) %fs:gd_ ## x
340 #define _common_tss FS(common_tss)
341 #define _common_tssd FS(common_tssd)
342 #define _cpuid FS(cpuid)
343 #define _reqpri FS(reqpri)
344 #define _cpu_lockid FS(cpu_lockid)
345 #define _curthread FS(curthread)
346 #define _idlethread FS(idlethread)
347 #define _astpending FS(astpending)
348 #define _currentldt FS(currentldt)
349 #define _inside_intr FS(inside_intr)
350 #define _npxthread FS(npxthread)
351 #define _other_cpus FS(other_cpus)
352 #define _prv_CADDR1 FS(prv_CADDR1)
353 #define _prv_CADDR2 FS(prv_CADDR2)
354 #define _prv_CADDR3 FS(prv_CADDR3)
355 #define _prv_CMAP1 FS(prv_CMAP1)
356 #define _prv_CMAP2 FS(prv_CMAP2)
357 #define _prv_CMAP3 FS(prv_CMAP3)
358 #define _prv_PADDR1 FS(prv_PADDR1)
359 #define _prv_PMAP1 FS(prv_PMAP1)
360 #define _ss_eflags FS(ss_eflags)
361 #define _switchticks FS(switchticks)
362 #define _switchtime FS(switchtime)
363 #define _tss_gdt FS(tss_gdt)
364 #define _idlestack FS(idlestack)
365 #define _idlestack_top FS(idlestack_top)
369 #endif /* !_MACHINE_ASNAMES_H_ */