1 /* $NetBSD: armfpe.s,v 1.1 2001/11/24 01:26:24 thorpej Exp $ */
4 * Copyright (c) 1996 Neil A Carson.
5 * Copyright (c) 1996 Advanced Risc Machines Ltd.
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
11 * 1. Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 * 2. Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the
15 * documentation and/or other materials provided with the distribution.
16 * 3. All advertising materials mentioning features or use of this software
17 * must display the following acknowledgement:
18 * This product includes software developed by the RiscBSD kernel team.
19 * This product includes software developed by Advanced Risc Machines
21 * 4. The name of the company nor the name of the author may be used to
22 * endorse or promote products derived from this software without specific
23 * prior written permission.
25 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AS IS'' AND ANY EXPRESS OR
26 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
27 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
28 * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
29 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
30 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
31 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37 * RiscBSD kernel project
49 * DO NOT MODIFY - THIS FILE IS AUTOMATICALLY GENERATED
52 /* Generated from kernelfpe by ftv@voyager */
53 /* hand-modified for ELF by thorpej@wasabisystems.com */
57 .global _C_LABEL(fpe_arm_start) /* ARM FPE start address */
58 _C_LABEL(fpe_arm_start):
60 .global _C_LABEL(fpe_arm_header) /* ARM FPE header address */
61 _C_LABEL(fpe_arm_header):
63 /* FPE Core entry points */
66 .global _C_LABEL(n) ; \
67 _C_LABEL(n): b _C_LABEL(fpe_arm_start) + o
69 E(fpe_arm_core_abort, 0x00006cd4)
71 E(fpe_arm_core_initws, 0x00006e68)
73 E(fpe_arm_core_initcontext, 0x00006ed0)
75 E(fpe_arm_core_changecontext, 0x00006f70)
77 E(fpe_arm_core_shutdown, 0x00007080)
79 E(fpe_arm_core_activatecontext, 0x00006fec)
81 E(fpe_arm_core_deactivatecontext, 0x00006f78)
83 E(fpe_arm_core_savecontext, 0x00007154)
85 E(fpe_arm_core_loadcontext, 0x00007240)
87 E(fpe_arm_core_disable, 0x00007090)
89 E(fpe_arm_core_enable, 0x000070e4)
93 /* FPE Core callback points */
95 b _C_LABEL(arm_fpe_newhandler)
96 b _C_LABEL(arm_fpe_restorehandler)
97 b _C_LABEL(arm_fpe_handle_exception)
98 b _C_LABEL(arm_fpe_get_ws)
99 b _C_LABEL(arm_fpe_post_proc)
101 /* FPE Core constants */
104 .global _C_LABEL(n) ; \
108 C(fpe_arm_workspace_length, 0x0000000c)
110 C(fpe_arm_context_length, 0x00000088)
112 C(fpe_arm_identity, _C_LABEL(fpe_arm_start) + 0x0000732c)
114 .global _C_LABEL(fpe_arm_core)
115 _C_LABEL(fpe_arm_core):
7503 .global _C_LABEL(fpe_arm_end) /* ARM FPE end address */
7504 _C_LABEL(fpe_arm_end):