Finish migrating the cpl into the thread structure.
[dragonfly.git] / sys / i386 / include / asnames.h
CommitLineData
984263bc
MD
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 $
8f41e33b 27 * $DragonFly: src/sys/i386/include/Attic/asnames.h,v 1.8 2003/06/22 08:54:20 dillon Exp $
984263bc
MD
28 */
29
30#ifndef _MACHINE_ASNAMES_H_
31#define _MACHINE_ASNAMES_H_
32
33/*
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
39 * to each C symbol.
40 *
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
44 * unadorned names.
45 *
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.
49 *
50 * This file is included by <machine/asmacros.h>, and it is OK to rely
51 * on that.
52 */
53
54#ifdef __ELF__
55
56#define _APTD APTD
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
68#define _PTD PTD
69#define _PTDpde PTDpde
70#define _PTmap PTmap
8ad65e08 71#define _CPU_prvspace CPU_prvspace
984263bc
MD
72#define _SMPpt SMPpt
73#define _Xalign Xalign
74#define _Xbnd Xbnd
75#define _Xbpt Xbpt
76#define _Xcpuast Xcpuast
77#define _Xcpucheckstate Xcpucheckstate
78#define _Xcpustop Xcpustop
79#define _Xdbg Xdbg
80#define _Xdiv Xdiv
81#define _Xdna Xdna
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
107#define _Xfpu Xfpu
108#define _Xfpusegm Xfpusegm
109#define _Xill Xill
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
137#define _Xmchk Xmchk
138#define _Xmissing Xmissing
139#define _Xnmi Xnmi
140#define _Xofl Xofl
141#define _Xpage Xpage
142#define _Xprot Xprot
143#define _Xrsvd Xrsvd
144#define _Xspuriousint Xspuriousint
145#define _Xstk Xstk
146#define _Xsyscall Xsyscall
147#define _Xtss Xtss
148#define _Xxmm Xxmm
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
160#define _bcopy bcopy
161#define _bcopy_vector bcopy_vector
162#define _bigJump bigJump
163#define _bintr bintr
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
175#define _btrap btrap
176#define _bzero bzero
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
186#define _cnt cnt
187#define _copyin_vector copyin_vector
188#define _copyout_vector copyout_vector
984263bc
MD
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)
f1d1c3fa 343#define _reqpri FS(reqpri)
984263bc 344#define _cpu_lockid FS(cpu_lockid)
84b592ba
MD
345#define _curthread FS(curthread)
346#define _idlethread FS(idlethread)
984263bc
MD
347#define _astpending FS(astpending)
348#define _currentldt FS(currentldt)
349#define _inside_intr FS(inside_intr)
af0bff84 350#define _npxthread FS(npxthread)
984263bc
MD
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)
366
367#endif
368
369#endif /* !_MACHINE_ASNAMES_H_ */