Xeon Phi: Removing duplicated headers
authorReto Achermann <reto.achermann@inf.ethz.ch>
Thu, 18 Jun 2015 15:28:27 +0000 (17:28 +0200)
committerReto Achermann <reto.achermann@inf.ethz.ch>
Fri, 19 Jun 2015 10:09:29 +0000 (12:09 +0200)
Most of the headers of the Xeon Phi architecture were copies
or used the X86_64 architecture. We reuse the x86_64 headers
directly now.

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>

38 files changed:
include/arch/k1om/_fpmath.h [deleted file]
include/arch/k1om/arch/inttypes.h [deleted file]
include/arch/k1om/arch/setjmp.h [deleted file]
include/arch/k1om/arch/stdint.h [deleted file]
include/arch/k1om/barrelfish/bulk_transfer_arch.h [deleted file]
include/arch/k1om/barrelfish/core_state_arch.h [deleted file]
include/arch/k1om/barrelfish/cpu_arch.h [deleted file]
include/arch/k1om/barrelfish/curdispatcher_arch.h [deleted file]
include/arch/k1om/barrelfish/dispatcher_arch.h [deleted file]
include/arch/k1om/barrelfish/invocations_arch.h [deleted file]
include/arch/k1om/barrelfish/ldt.h [deleted file]
include/arch/k1om/barrelfish/lmp_chan_arch.h [deleted file]
include/arch/k1om/barrelfish/pmap_arch.h [deleted file]
include/arch/k1om/barrelfish/syscall_arch.h [deleted file]
include/arch/k1om/barrelfish_kpi/asm_inlines_arch.h [deleted file]
include/arch/k1om/barrelfish_kpi/cpu_arch.h [deleted file]
include/arch/k1om/barrelfish_kpi/dispatcher_shared_arch.h [deleted file]
include/arch/k1om/barrelfish_kpi/eflags_arch.h [deleted file]
include/arch/k1om/barrelfish_kpi/generic_arch.h [deleted file]
include/arch/k1om/barrelfish_kpi/lmp_arch.h [deleted file]
include/arch/k1om/barrelfish_kpi/paging_arch.h [deleted file]
include/arch/k1om/barrelfish_kpi/registers_arch.h [deleted file]
include/arch/k1om/barrelfish_kpi/spinlocks_arch.h [deleted file]
include/arch/k1om/bench/bench_arch.h [deleted file]
include/arch/k1om/concurrent/arch/cas.h [deleted file]
include/arch/k1om/fenv.h [deleted file]
include/arch/k1om/float.h [deleted file]
include/arch/k1om/machine/_limits.h [deleted file]
include/arch/k1om/machine/asm.h [deleted file]
include/arch/k1om/machine/endian.h [deleted file]
include/arch/k1om/machine/fpu.h [deleted file]
include/arch/k1om/machine/types.h [deleted file]
include/target/k1om/barrelfish/dispatcher_target.h [deleted file]
include/target/k1om/barrelfish/pmap_target.h [deleted file]
include/target/k1om/barrelfish_kpi/cpu_target.h [deleted file]
include/target/k1om/barrelfish_kpi/dispatcher_shared_target.h [deleted file]
include/target/k1om/barrelfish_kpi/paging_target.h [deleted file]
include/target/k1om/barrelfish_kpi/registers_target.h [deleted file]

diff --git a/include/arch/k1om/_fpmath.h b/include/arch/k1om/_fpmath.h
deleted file mode 100644 (file)
index 41b01c3..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/*-
- * Copyright (c) 2002, 2003 David Schultz <das@FreeBSD.ORG>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * $FreeBSD: src/lib/libc/amd64/_fpmath.h,v 1.7 2008/01/17 16:39:06 bde Exp $
- */
-
-union IEEEl2bits {
-       long double     e;
-       struct {
-               unsigned int    manl    :32;
-               unsigned int    manh    :32;
-               unsigned int    exp     :15;
-               unsigned int    sign    :1;
-               unsigned int    junkl   :16;
-               unsigned int    junkh   :32;
-       } bits;
-       struct {
-               unsigned long   man     :64;
-               unsigned int    expsign :16;
-               unsigned long   junk    :48;
-       } xbits;
-};
-
-#define        LDBL_NBIT       0x80000000
-#define        mask_nbit_l(u)  ((u).bits.manh &= ~LDBL_NBIT)
-
-#define        LDBL_MANH_SIZE  32
-#define        LDBL_MANL_SIZE  32
-
-#define        LDBL_TO_ARRAY32(u, a) do {                      \
-       (a)[0] = (uint32_t)(u).bits.manl;               \
-       (a)[1] = (uint32_t)(u).bits.manh;               \
-} while (0)
diff --git a/include/arch/k1om/arch/inttypes.h b/include/arch/k1om/arch/inttypes.h
deleted file mode 100644 (file)
index 73ee8f7..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Australian Public Licence B (OZPLB)
- *
- * Version 1-0
- *
- * Copyright (c) 2004 National ICT Australia
- *
- * All rights reserved.
- *
- * Developed by: Embedded, Real-time and Operating Systems Program (ERTOS)
- *               National ICT Australia
- *               http://www.ertos.nicta.com.au
- *
- * Permission is granted by National ICT Australia, free of charge, to
- * any person obtaining a copy of this software and any associated
- * documentation files (the "Software") to deal with the Software without
- * restriction, including (without limitation) the rights to use, copy,
- * modify, adapt, merge, publish, distribute, communicate to the public,
- * sublicense, and/or sell, lend or rent out copies of the Software, and
- * to permit persons to whom the Software is furnished to do so, subject
- * to the following conditions:
- *
- *     * Redistributions of source code must retain the above copyright
- *       notice, this list of conditions and the following disclaimers.
- *
- *     * Redistributions in binary form must reproduce the above
- *       copyright notice, this list of conditions and the following
- *       disclaimers in the documentation and/or other materials provided
- *       with the distribution.
- *
- *     * Neither the name of National ICT Australia, nor the names of its
- *       contributors, may be used to endorse or promote products derived
- *       from this Software without specific prior written permission.
- *
- * EXCEPT AS EXPRESSLY STATED IN THIS LICENCE AND TO THE FULL EXTENT
- * PERMITTED BY APPLICABLE LAW, THE SOFTWARE IS PROVIDED "AS-IS", AND
- * NATIONAL ICT AUSTRALIA AND ITS CONTRIBUTORS MAKE NO REPRESENTATIONS,
- * WARRANTIES OR CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
- * BUT NOT LIMITED TO ANY REPRESENTATIONS, WARRANTIES OR CONDITIONS
- * REGARDING THE CONTENTS OR ACCURACY OF THE SOFTWARE, OR OF TITLE,
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT,
- * THE ABSENCE OF LATENT OR OTHER DEFECTS, OR THE PRESENCE OR ABSENCE OF
- * ERRORS, WHETHER OR NOT DISCOVERABLE.
- *
- * TO THE FULL EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL
- * NATIONAL ICT AUSTRALIA OR ITS CONTRIBUTORS BE LIABLE ON ANY LEGAL
- * THEORY (INCLUDING, WITHOUT LIMITATION, IN AN ACTION OF CONTRACT,
- * NEGLIGENCE OR OTHERWISE) FOR ANY CLAIM, LOSS, DAMAGES OR OTHER
- * LIABILITY, INCLUDING (WITHOUT LIMITATION) LOSS OF PRODUCTION OR
- * OPERATION TIME, LOSS, DAMAGE OR CORRUPTION OF DATA OR RECORDS; OR LOSS
- * OF ANTICIPATED SAVINGS, OPPORTUNITY, REVENUE, PROFIT OR GOODWILL, OR
- * OTHER ECONOMIC LOSS; OR ANY SPECIAL, INCIDENTAL, INDIRECT,
- * CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES, ARISING OUT OF OR IN
- * CONNECTION WITH THIS LICENCE, THE SOFTWARE OR THE USE OF OR OTHER
- * DEALINGS WITH THE SOFTWARE, EVEN IF NATIONAL ICT AUSTRALIA OR ITS
- * CONTRIBUTORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH CLAIM, LOSS,
- * DAMAGES OR OTHER LIABILITY.
- *
- * If applicable legislation implies representations, warranties, or
- * conditions, or imposes obligations or liability on National ICT
- * Australia or one of its contributors in respect of the Software that
- * cannot be wholly or partly excluded, restricted or modified, the
- * liability of National ICT Australia or the contributor is limited, to
- * the full extent permitted by the applicable legislation, at its
- * option, to:
- * a.  in the case of goods, any one or more of the following:
- * i.  the replacement of the goods or the supply of equivalent goods;
- * ii.  the repair of the goods;
- * iii. the payment of the cost of replacing the goods or of acquiring
- *  equivalent goods;
- * iv.  the payment of the cost of having the goods repaired; or
- * b.  in the case of services:
- * i.  the supplying of the services again; or
- * ii.  the payment of the cost of having the services supplied again.
- *
- * The construction, validity and performance of this licence is governed
- * by the laws in force in New South Wales, Australia.
- */
-#ifndef _ARCH_IA32_INT_TYPES
-#define _ARCH_IA32_INT_TYPES
-
-#define __LENGTH_8_MOD "hh"
-#define __LENGTH_16_MOD "h"
-#define __LENGTH_32_MOD
-#define __LENGTH_64_MOD "l"
-#define __LENGTH_MAX_MOD "l"
-#define __LENGTH_PTR_MOD "l"
-
-#endif
diff --git a/include/arch/k1om/arch/setjmp.h b/include/arch/k1om/arch/setjmp.h
deleted file mode 100644 (file)
index e606c8f..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Australian Public Licence B (OZPLB)
- * 
- * Version 1-0
- * 
- * Copyright (c) 2004 National ICT Australia
- * 
- * All rights reserved. 
- * 
- * Developed by: Embedded, Real-time and Operating Systems Program (ERTOS)
- *               National ICT Australia
- *               http://www.ertos.nicta.com.au
- * 
- * Permission is granted by National ICT Australia, free of charge, to
- * any person obtaining a copy of this software and any associated
- * documentation files (the "Software") to deal with the Software without
- * restriction, including (without limitation) the rights to use, copy,
- * modify, adapt, merge, publish, distribute, communicate to the public,
- * sublicense, and/or sell, lend or rent out copies of the Software, and
- * to permit persons to whom the Software is furnished to do so, subject
- * to the following conditions:
- * 
- *     * Redistributions of source code must retain the above copyright
- *       notice, this list of conditions and the following disclaimers.
- * 
- *     * Redistributions in binary form must reproduce the above
- *       copyright notice, this list of conditions and the following
- *       disclaimers in the documentation and/or other materials provided
- *       with the distribution.
- * 
- *     * Neither the name of National ICT Australia, nor the names of its
- *       contributors, may be used to endorse or promote products derived
- *       from this Software without specific prior written permission.
- * 
- * EXCEPT AS EXPRESSLY STATED IN THIS LICENCE AND TO THE FULL EXTENT
- * PERMITTED BY APPLICABLE LAW, THE SOFTWARE IS PROVIDED "AS-IS", AND
- * NATIONAL ICT AUSTRALIA AND ITS CONTRIBUTORS MAKE NO REPRESENTATIONS,
- * WARRANTIES OR CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
- * BUT NOT LIMITED TO ANY REPRESENTATIONS, WARRANTIES OR CONDITIONS
- * REGARDING THE CONTENTS OR ACCURACY OF THE SOFTWARE, OR OF TITLE,
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT,
- * THE ABSENCE OF LATENT OR OTHER DEFECTS, OR THE PRESENCE OR ABSENCE OF
- * ERRORS, WHETHER OR NOT DISCOVERABLE.
- * 
- * TO THE FULL EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL
- * NATIONAL ICT AUSTRALIA OR ITS CONTRIBUTORS BE LIABLE ON ANY LEGAL
- * THEORY (INCLUDING, WITHOUT LIMITATION, IN AN ACTION OF CONTRACT,
- * NEGLIGENCE OR OTHERWISE) FOR ANY CLAIM, LOSS, DAMAGES OR OTHER
- * LIABILITY, INCLUDING (WITHOUT LIMITATION) LOSS OF PRODUCTION OR
- * OPERATION TIME, LOSS, DAMAGE OR CORRUPTION OF DATA OR RECORDS; OR LOSS
- * OF ANTICIPATED SAVINGS, OPPORTUNITY, REVENUE, PROFIT OR GOODWILL, OR
- * OTHER ECONOMIC LOSS; OR ANY SPECIAL, INCIDENTAL, INDIRECT,
- * CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES, ARISING OUT OF OR IN
- * CONNECTION WITH THIS LICENCE, THE SOFTWARE OR THE USE OF OR OTHER
- * DEALINGS WITH THE SOFTWARE, EVEN IF NATIONAL ICT AUSTRALIA OR ITS
- * CONTRIBUTORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH CLAIM, LOSS,
- * DAMAGES OR OTHER LIABILITY.
- * 
- * If applicable legislation implies representations, warranties, or
- * conditions, or imposes obligations or liability on National ICT
- * Australia or one of its contributors in respect of the Software that
- * cannot be wholly or partly excluded, restricted or modified, the
- * liability of National ICT Australia or the contributor is limited, to
- * the full extent permitted by the applicable legislation, at its
- * option, to:
- * a.  in the case of goods, any one or more of the following:
- * i.  the replacement of the goods or the supply of equivalent goods;
- * ii.  the repair of the goods;
- * iii. the payment of the cost of replacing the goods or of acquiring
- *  equivalent goods;
- * iv.  the payment of the cost of having the goods repaired; or
- * b.  in the case of services:
- * i.  the supplying of the services again; or
- * ii.  the payment of the cost of having the services supplied again.
- * 
- * The construction, validity and performance of this licence is governed
- * by the laws in force in New South Wales, Australia.
- */
-/*
-  Author: Alex Webster
-*/
-
-typedef unsigned long jmp_buf[8];
diff --git a/include/arch/k1om/arch/stdint.h b/include/arch/k1om/arch/stdint.h
deleted file mode 100644 (file)
index f37fbb3..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Modifications Copyright (c) 2008, ETH Zurich.
- */
-/*
- * Australian Public Licence B (OZPLB)
- * 
- * Version 1-0
- * 
- * Copyright (c) 2004 National ICT Australia
- * 
- * All rights reserved. 
- * 
- * Developed by: Embedded, Real-time and Operating Systems Program (ERTOS)
- *               National ICT Australia
- *               http://www.ertos.nicta.com.au
- * 
- * Permission is granted by National ICT Australia, free of charge, to
- * any person obtaining a copy of this software and any associated
- * documentation files (the "Software") to deal with the Software without
- * restriction, including (without limitation) the rights to use, copy,
- * modify, adapt, merge, publish, distribute, communicate to the public,
- * sublicense, and/or sell, lend or rent out copies of the Software, and
- * to permit persons to whom the Software is furnished to do so, subject
- * to the following conditions:
- * 
- *     * Redistributions of source code must retain the above copyright
- *       notice, this list of conditions and the following disclaimers.
- * 
- *     * Redistributions in binary form must reproduce the above
- *       copyright notice, this list of conditions and the following
- *       disclaimers in the documentation and/or other materials provided
- *       with the distribution.
- * 
- *     * Neither the name of National ICT Australia, nor the names of its
- *       contributors, may be used to endorse or promote products derived
- *       from this Software without specific prior written permission.
- * 
- * EXCEPT AS EXPRESSLY STATED IN THIS LICENCE AND TO THE FULL EXTENT
- * PERMITTED BY APPLICABLE LAW, THE SOFTWARE IS PROVIDED "AS-IS", AND
- * NATIONAL ICT AUSTRALIA AND ITS CONTRIBUTORS MAKE NO REPRESENTATIONS,
- * WARRANTIES OR CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
- * BUT NOT LIMITED TO ANY REPRESENTATIONS, WARRANTIES OR CONDITIONS
- * REGARDING THE CONTENTS OR ACCURACY OF THE SOFTWARE, OR OF TITLE,
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT,
- * THE ABSENCE OF LATENT OR OTHER DEFECTS, OR THE PRESENCE OR ABSENCE OF
- * ERRORS, WHETHER OR NOT DISCOVERABLE.
- * 
- * TO THE FULL EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL
- * NATIONAL ICT AUSTRALIA OR ITS CONTRIBUTORS BE LIABLE ON ANY LEGAL
- * THEORY (INCLUDING, WITHOUT LIMITATION, IN AN ACTION OF CONTRACT,
- * NEGLIGENCE OR OTHERWISE) FOR ANY CLAIM, LOSS, DAMAGES OR OTHER
- * LIABILITY, INCLUDING (WITHOUT LIMITATION) LOSS OF PRODUCTION OR
- * OPERATION TIME, LOSS, DAMAGE OR CORRUPTION OF DATA OR RECORDS; OR LOSS
- * OF ANTICIPATED SAVINGS, OPPORTUNITY, REVENUE, PROFIT OR GOODWILL, OR
- * OTHER ECONOMIC LOSS; OR ANY SPECIAL, INCIDENTAL, INDIRECT,
- * CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES, ARISING OUT OF OR IN
- * CONNECTION WITH THIS LICENCE, THE SOFTWARE OR THE USE OF OR OTHER
- * DEALINGS WITH THE SOFTWARE, EVEN IF NATIONAL ICT AUSTRALIA OR ITS
- * CONTRIBUTORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH CLAIM, LOSS,
- * DAMAGES OR OTHER LIABILITY.
- * 
- * If applicable legislation implies representations, warranties, or
- * conditions, or imposes obligations or liability on National ICT
- * Australia or one of its contributors in respect of the Software that
- * cannot be wholly or partly excluded, restricted or modified, the
- * liability of National ICT Australia or the contributor is limited, to
- * the full extent permitted by the applicable legislation, at its
- * option, to:
- * a.  in the case of goods, any one or more of the following:
- * i.  the replacement of the goods or the supply of equivalent goods;
- * ii.  the repair of the goods;
- * iii. the payment of the cost of replacing the goods or of acquiring
- *  equivalent goods;
- * iv.  the payment of the cost of having the goods repaired; or
- * b.  in the case of services:
- * i.  the supplying of the services again; or
- * ii.  the payment of the cost of having the services supplied again.
- * 
- * The construction, validity and performance of this licence is governed
- * by the laws in force in New South Wales, Australia.
- */
-#ifndef _ARCH_IA32_STD_INT
-#define _ARCH_IA32_STD_INT
-
-typedef signed char int8_t;
-typedef short int16_t;
-typedef int int32_t;
-typedef long int64_t;
-
-typedef unsigned char uint8_t;
-typedef unsigned short uint16_t;
-typedef unsigned int uint32_t;
-typedef unsigned long uint64_t;
-
-#define __PTR_SIZE 64
-
-#endif
diff --git a/include/arch/k1om/barrelfish/bulk_transfer_arch.h b/include/arch/k1om/barrelfish/bulk_transfer_arch.h
deleted file mode 100644 (file)
index 5f5af51..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * \file
- * \brief Unidirectional bulk data transfer via shared memory
- */
-
-/*
- * Copyright (c) 2009, 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#include <arch/x86/barrelfish/bulk_transfer_arch.h>
diff --git a/include/arch/k1om/barrelfish/core_state_arch.h b/include/arch/k1om/barrelfish/core_state_arch.h
deleted file mode 100644 (file)
index 2ae7733..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * \file
- * \brief
- */
-
-/*
- * Copyright (c) 2008, 2009, 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_CORESTATE_H
-#define ARCH_X86_64_BARRELFISH_CORESTATE_H
-
-#include <arch/x86/barrelfish/core_state_arch.h>
-
-#endif
diff --git a/include/arch/k1om/barrelfish/cpu_arch.h b/include/arch/k1om/barrelfish/cpu_arch.h
deleted file mode 100644 (file)
index 3500f13..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * \file
- * \brief Architecture specific CPU bits.
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef X86_64_BARRELFISH_CPU_H
-#define X86_64_BARRELFISH_CPU_H
-
-#define CURRENT_CPU_TYPE CPU_K1OM
-
-#endif
diff --git a/include/arch/k1om/barrelfish/curdispatcher_arch.h b/include/arch/k1om/barrelfish/curdispatcher_arch.h
deleted file mode 100644 (file)
index 96deceb..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * \file
- * \brief Implementation of curdispatcher
- */
-
-/*
- * Copyright (c) 2007, 2008, 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_CURDISPATCHER_H
-#define ARCH_X86_64_BARRELFISH_CURDISPATCHER_H
-
-/**
- * \brief Returns pointer to current dispatcher, using thread register
- */
-static inline dispatcher_handle_t curdispatcher(void)
-{
-    dispatcher_handle_t ret;
-
-    __asm("movq %%fs:8, %[ret]" // XXX: assume offsetof(struct thread, disp) == 8
-          : [ret] "=r" (ret));
-
-    return ret;
-}
-
-#endif // ARCH_X86_64_BARRELFISH_CURDISPATCHER_H
diff --git a/include/arch/k1om/barrelfish/dispatcher_arch.h b/include/arch/k1om/barrelfish/dispatcher_arch.h
deleted file mode 100644 (file)
index 82165e2..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * \file
- * \brief Architecture specific dispatcher structure private to the user
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_DISPATCHER_H
-#define ARCH_X86_64_BARRELFISH_DISPATCHER_H
-
-#include <target/k1om/barrelfish/dispatcher_target.h>
-
-static inline struct dispatcher_generic*
-get_dispatcher_generic(dispatcher_handle_t handle)
-{
-    return get_dispatcher_generic_x86_64(handle);
-}
-
-static inline size_t get_dispatcher_size(void)
-{
-    return sizeof(struct dispatcher_x86_64);
-}
-
-#endif // ARCH_X86_64_BARRELFISH_DISPATCHER_H
diff --git a/include/arch/k1om/barrelfish/invocations_arch.h b/include/arch/k1om/barrelfish/invocations_arch.h
deleted file mode 100644 (file)
index 07cc2d8..0000000
+++ /dev/null
@@ -1,469 +0,0 @@
-/**
- * \file
- * \brief Low-level capability invocations
- */
-
-/*
- * Copyright (c) 2007, 2008, 2009, 2010, 2012, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef INVOCATIONS_ARCH_H
-#define INVOCATIONS_ARCH_H
-
-#include <barrelfish/syscall_arch.h>
-#include <barrelfish_kpi/dispatcher_shared.h>
-#include <barrelfish_kpi/distcaps.h>
-#include <barrelfish/caddr.h>
-#include <barrelfish_kpi/paging_arch.h>
-
-static inline struct sysret cap_invoke(struct capref to, uintptr_t arg1,
-                                       uintptr_t arg2, uintptr_t arg3,
-                                       uintptr_t arg4, uintptr_t arg5,
-                                       uintptr_t arg6, uintptr_t arg7,
-                                       uintptr_t arg8, uintptr_t arg9,
-                                       uintptr_t arg10)
-{
-    uint8_t invoke_bits = get_cap_valid_bits(to);
-    capaddr_t invoke_cptr = get_cap_addr(to) >> (CPTR_BITS - invoke_bits);
-
-    return syscall(SYSCALL_INVOKE, (uint64_t)invoke_cptr << 32 |
-                   (uint64_t)invoke_bits << 16 | 10 << 8, 0,
-                   arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9,
-                   arg10);
-}
-
-#define cap_invoke10(to, _a, _b, _c, _d, _e, _f, _g, _h, _i, _j)   \
-    cap_invoke(to, _a, _b, _c, _d, _e, _f, _g, _h, _i, _j)
-#define cap_invoke9(to, _a, _b, _c, _d, _e, _f, _g, _h, _i)        \
-    cap_invoke10(to, _a, _b, _c, _d, _e, _f, _g, _h, _i, 0)
-#define cap_invoke8(to, _a, _b, _c, _d, _e, _f, _g, _h)    \
-    cap_invoke9(to, _a, _b, _c, _d, _e, _f, _g, _h, 0)
-#define cap_invoke7(to, _a, _b, _c, _d, _e, _f, _g)    \
-    cap_invoke8(to, _a, _b, _c, _d, _e, _f, _g, 0)
-#define cap_invoke6(to, _a, _b, _c, _d, _e, _f)        \
-    cap_invoke7(to, _a, _b, _c, _d, _e, _f, 0)
-#define cap_invoke5(to, _a, _b, _c, _d, _e)            \
-    cap_invoke6(to, _a, _b, _c, _d, _e, 0)
-#define cap_invoke4(to, _a, _b, _c, _d)                \
-    cap_invoke5(to, _a, _b, _c, _d, 0)
-#define cap_invoke3(to, _a, _b, _c)                    \
-    cap_invoke4(to, _a, _b, _c, 0)
-#define cap_invoke2(to, _a, _b)                        \
-    cap_invoke3(to, _a, _b, 0)
-#define cap_invoke1(to, _a)                            \
-    cap_invoke2(to, _a, 0)
-
-
-/**
- * \brief Retype a capability.
- *
- * Retypes CPtr 'cap' into 2^'objbits' caps of type 'newtype' and places them
- * into slots starting at slot 'slot' in the CNode, addressed by 'to', with
- * 'bits' address bits of 'to' valid.
- *
- * See also cap_retype(), which wraps this.
- *
- * \param root          Capability of the CNode to invoke
- * \param cap           Address of cap to retype.
- * \param newtype       Kernel object type to retype to.
- * \param objbits       Size of created objects, for variable-sized types
- * \param to            Address of CNode cap to place retyped caps into.
- * \param slot          Slot in CNode cap to start placement.
- * \param bits          Number of valid address bits in 'to'.
- *
- * \return Error code
- */
-static inline errval_t invoke_cnode_retype(struct capref root, capaddr_t cap,
-                                           enum objtype newtype, int objbits,
-                                           capaddr_t to, capaddr_t slot, int bits)
-{
-    assert(cap != CPTR_NULL);
-    return cap_invoke7(root, CNodeCmd_Retype, cap, newtype, objbits, to,
-                       slot, bits).error;
-}
-
-/**
- * \brief Create a capability.
- *
- * Create a new capability of type 'type' and size 'objbits'. The new cap will
- * be placed in the slot 'dest_slot' of the CNode located at 'dest_cnode_cptr'
- * in the address space rooted at 'root'.
- *
- * See also cap_create(), which wraps this.
- *
- * \param root            Capability of the CNode to invoke.
- * \param type            Kernel object type to create.
- * \param objbits         Size of created object
- *                        (ignored for fixed-size objects)
- * \param dest_cnode_cptr Address of CNode cap, where newly created cap will be
- *                        placed into.
- * \param dest_slot       Slot in CNode cap to place new cap.
- * \param dest_vbits      Number of valid address bits in 'dest_cnode_cptr'.
- *
- * \return Error code
- */
-static inline errval_t invoke_cnode_create(struct capref root,
-                                           enum objtype type, uint8_t objbits,
-                                           capaddr_t dest_cnode_cptr,
-                                           capaddr_t dest_slot,
-                                           uint8_t dest_vbits)
-{
-    assert(dest_cnode_cptr != CPTR_NULL);
-    return cap_invoke6(root, CNodeCmd_Create, type, objbits, dest_cnode_cptr,
-                       dest_slot, dest_vbits).error;
-}
-
-/**
- * \brief "Mint" a capability.
- *
- * Copies CPtr 'from' into slot 'slot' in the CNode, addressed by 'to', within
- * the address space, rooted at 'root' and with 'tobits' and 'frombits' address
- * bits of 'to' and 'from' valid, respectively.
- *
- * See also cap_mint(), which wraps this.
- *
- * \param root          Capability of the CNode to invoke
- * \param to            CNode to place copy into.
- * \param slot          Slot in CNode cap to place copy into.
- * \param from          Address of cap to copy.
- * \param tobits        Number of valid address bits in 'to'.
- * \param frombits      Number of valid address bits in 'from'.
- * \param param1        1st cap-dependent parameter.
- * \param param2        2nd cap-dependent parameter.
- *
- * \return Error code
- */
-static inline errval_t invoke_cnode_mint(struct capref root, capaddr_t to,
-                                         capaddr_t slot, capaddr_t from, int tobits,
-                                         int frombits, uint64_t param1,
-                                         uint64_t param2)
-{
-    return cap_invoke8(root, CNodeCmd_Mint, to, slot, from, tobits, frombits,
-                       param1, param2).error;
-}
-
-/**
- * \brief Copy a capability.
- *
- * Copies CPtr 'from' into slot 'slot' in the CNode, addressed by 'to', within
- * the address space, rooted at 'root' and with 'tobits' and 'frombits' address
- * bits of 'to' and 'from' valid, respectively.
- *
- * See also cap_copy(), which wraps this.
- *
- * \param root          Capability of the CNode to invoke
- * \param to            CNode to place copy into.
- * \param slot          Slot in CNode cap to place copy into.
- * \param from          Address of cap to copy.
- * \param tobits        Number of valid address bits in 'to'.
- * \param frombits      Number of valid address bits in 'from'.
- *
- * \return Error code
- */
-static inline errval_t invoke_cnode_copy(struct capref root, capaddr_t to,
-                                         capaddr_t slot, capaddr_t from, int tobits,
-                                         int frombits)
-{
-    return cap_invoke6(root, CNodeCmd_Copy, to, slot, from,
-                       tobits, frombits).error;
-}
-
-/**
- * \brief Delete a capability.
- *
- * Delete the capability pointed to by 'cap', with 'bits' address bits
- * of it valid, from the address space rooted at 'root'.
- *
- * \param root  Capability of the CNode to invoke
- * \param cap   Address of cap to delete.
- * \param bits  Number of valid bits within 'cap'.
- *
- * \return Error code
- */
-static inline errval_t invoke_cnode_delete(struct capref root, capaddr_t cap,
-                                           int bits)
-{
-    return cap_invoke3(root, CNodeCmd_Delete, cap, bits).error;
-}
-
-static inline errval_t invoke_cnode_revoke(struct capref root, capaddr_t cap,
-                                           int bits)
-{
-    return cap_invoke3(root, CNodeCmd_Revoke, cap, bits).error;
-}
-
-static inline errval_t invoke_cnode_get_state(struct capref root, capaddr_t cap,
-                                              int bits, distcap_state_t *ret)
-{
-    struct sysret sysret = cap_invoke3(root, CNodeCmd_GetState, cap, bits);
-
-    assert(ret != NULL);
-    if (err_is_ok(sysret.error)) {
-        *ret = sysret.value;
-    }
-    else {
-        *ret = 0;
-    }
-    return sysret.error;
-}
-
-static inline errval_t invoke_vnode_map(struct capref ptable, capaddr_t slot,
-                                        capaddr_t src, int frombits, size_t flags,
-                                        size_t offset, size_t pte_count)
-{
-    return cap_invoke7(ptable, VNodeCmd_Map, slot, src, frombits, flags, offset, pte_count).error;
-}
-
-static inline errval_t invoke_vnode_unmap(struct capref cap, capaddr_t mapping_addr,
-                                          int bits, size_t entry, size_t num_pages)
-{
-    return cap_invoke5(cap, VNodeCmd_Unmap, mapping_addr, bits, entry, num_pages).error;
-}
-
-/**
- * \brief Return the physical address and size of a frame capability
- *
- * \param frame    CSpace address of frame capability
- * \param ret      frame_identity struct filled in with relevant data
- *
- * \return Error code
- */
-static inline errval_t invoke_frame_identify(struct capref frame,
-                                             struct frame_identity *ret)
-{
-    struct sysret sysret = cap_invoke1(frame, FrameCmd_Identify);
-
-    assert(ret != NULL);
-    if (err_is_ok(sysret.error)) {
-        ret->base = sysret.value & (~BASE_PAGE_MASK);
-        ret->bits = sysret.value & BASE_PAGE_MASK;
-        return sysret.error;
-    }
-
-    ret->base = 0;
-    ret->bits = 0;
-    return sysret.error;
-}
-
-/**
- * \brief Modify mapping flags on parts of a mapped frame
- *
- * \param frame    CSpace address of frame capability
- * \param off      Offset (in #pages) of the first page to get new set of flags
- *                 from the first page in the mapping identified by `frame`
- * \param pages    Number of pages that should get new set of flags
- * \param flags    New set of flags
- *
- * \return Error code
- */
-static inline errval_t invoke_frame_modify_flags(struct capref frame,
-                                                 size_t offset,
-                                                 size_t pages,
-                                                 size_t flags)
-{
-    return cap_invoke4(frame, FrameCmd_ModifyFlags, offset, pages, flags).error;
-}
-
-static inline errval_t invoke_iocap_in(struct capref iocap, enum io_cmd cmd,
-                                       uint16_t port, uint32_t *data)
-{
-    struct sysret sysret = cap_invoke2(iocap, cmd, port);
-
-    if (err_is_ok(sysret.error)) {
-        assert(data != NULL);
-        *data = sysret.value;
-    }
-    return sysret.error;
-}
-
-static inline errval_t invoke_iocap_out(struct capref iocap, enum io_cmd cmd,
-                                        uint16_t port, uint32_t data)
-{
-    return cap_invoke3(iocap, cmd, port, data).error;
-}
-
-/**
- * \brief Setup a dispatcher, possibly making it runnable
- *
- * \param dispatcher    Address of dispatcher capability
- * \param domdispatcher Address of existing dispatcher for domain ID
- * \param cspace_root   Root of CSpace for new dispatcher
- * \param cspace_root_bits  Number of valid bits in cspace_root
- * \param vspace_root   Root of VSpace for new dispatcher
- * \param dispatcher_frame Frame capability for dispatcher structure
- * \param run           Make runnable if true
- *
- * Any arguments of CPTR_NULL are ignored.
- *
- * \return Error code
- */
-static inline errval_t
-invoke_dispatcher(struct capref dispatcher, struct capref domdispatcher,
-                  struct capref cspace, struct capref vspace,
-                  struct capref dispframe, bool run)
-{
-    uint8_t root_vbits = get_cap_valid_bits(cspace);
-    capaddr_t root_caddr = get_cap_addr(cspace) >> (CPTR_BITS - root_vbits);
-    capaddr_t vtree_caddr = get_cap_addr(vspace);
-    capaddr_t disp_caddr = get_cap_addr(dispframe);
-    capaddr_t dd_caddr = get_cap_addr(domdispatcher);
-
-    return cap_invoke7(dispatcher, DispatcherCmd_Setup, root_caddr,
-                       root_vbits, vtree_caddr, disp_caddr, run,
-                       dd_caddr).error;
-}
-
-/**
- * \brief Setup a VM guest DCB
- *
- * \param dcb       Dispatcher capability
- */
-static inline errval_t
-invoke_dispatcher_setup_guest(struct capref dispatcher,
-                              struct capref ep_cap,
-                              struct capref vnode,
-                              struct capref vmkit_guest,
-                              struct capref guest_control_cap)
-{
-    return cap_invoke5(dispatcher, DispatcherCmd_SetupGuest,
-                       get_cap_addr(ep_cap), get_cap_addr(vnode),
-                       get_cap_addr(vmkit_guest),
-                       get_cap_addr(guest_control_cap)).error;
-}
-
-
-static inline errval_t invoke_irqtable_alloc_vector(struct capref irqcap, int *retirq)
-{
-    struct sysret ret = cap_invoke1(irqcap, IRQTableCmd_Alloc);
-    if (err_is_ok(ret.error)) {
-        *retirq = ret.value;
-    } else {
-        *retirq = 0;
-    }
-    return ret.error;
-}
-
-static inline errval_t invoke_irqtable_set(struct capref irqcap, int irq,
-                                           struct capref ep)
-{
-    return cap_invoke3(irqcap, IRQTableCmd_Set, irq, get_cap_addr(ep)).error;
-}
-
-static inline errval_t invoke_irqtable_delete(struct capref irqcap, int irq)
-{
-    return cap_invoke2(irqcap, IRQTableCmd_Delete, irq).error;
-}
-
-/**
- * \brief do a kernel cap invocation to get the core id
- */
-static inline errval_t invoke_kernel_get_core_id(struct capref kern_cap,
-                                                 coreid_t *core_id)
-{
-    assert(core_id != NULL);
-
-    struct sysret sysret = cap_invoke1(kern_cap, KernelCmd_Get_core_id);
-    if (sysret.error == SYS_ERR_OK) {
-        *core_id = sysret.value;
-    }
-    return sysret.error;
-}
-
-static inline errval_t invoke_dispatcher_dump_ptables(struct capref dispcap)
-{
-    return cap_invoke1(dispcap, DispatcherCmd_DumpPTables).error;
-}
-
-static inline errval_t invoke_dispatcher_dump_capabilities(struct capref dispcap)
-{
-    return cap_invoke1(dispcap, DispatcherCmd_DumpCapabilities).error;
-}
-
-static inline errval_t invoke_perfmon_activate(struct capref perfmon_cap,
-                                               uint8_t event, uint8_t perf_umask,
-                                               bool kernel, uint8_t counter_id,
-                                               uint64_t counter_value,
-                                               capaddr_t ep_addr)
-{
-    return cap_invoke7(perfmon_cap, PerfmonCmd_Activate,
-                       event, perf_umask, counter_id, kernel,
-                       counter_value, ep_addr).error;
-}
-
-static inline errval_t invoke_perfmon_write(struct capref perfmon_cap,
-                                                  uint8_t counter_id,
-                                                  uint64_t counter_value)
-{
-    return cap_invoke3(perfmon_cap, PerfmonCmd_Write, counter_id, counter_value).error;
-}
-
-static inline errval_t invoke_perfmon_deactivate(struct capref perfmon_cap)
-{
-    return cap_invoke1(perfmon_cap, PerfmonCmd_Deactivate).error;
-}
-
-static inline errval_t
-invoke_dispatcher_properties(struct capref dispatcher,
-                             enum task_type type, unsigned long deadline,
-                             unsigned long wcet, unsigned long period,
-                             unsigned long release, unsigned short weight)
-{
-    return cap_invoke7(dispatcher, DispatcherCmd_Properties, type, deadline,
-                       wcet, period, release, weight).error;
-}
-
-static inline errval_t invoke_ipi_notify_send(struct capref notify_cap)
-{
-    return cap_invoke1(notify_cap, NotifyCmd_Send).error;
-}
-
-/**
- * \brief Return the system-wide unique ID of the passed ID capability.
- *
- * \param idcap ID capability to invoke.
- * \param id    Filled-in with system-wide unique ID of ID cap.
- *
- * \return      Error code
- */
-static inline errval_t invoke_idcap_identify(struct capref idcap,
-                                             idcap_id_t *id)
-{
-    assert(id != NULL);
-
-    struct sysret sysret = cap_invoke1(idcap, IDCmd_Identify);
-
-    if (err_is_ok(sysret.error)) {
-        *id = sysret.value;
-    }
-
-    return sysret.error;
-}
-
-static inline errval_t invoke_send_init_ipi(struct capref ipi_cap, coreid_t core_id)
-{
-    return cap_invoke2(ipi_cap, IPICmd_Send_Init,
-                       core_id).error;
-}
-
-static inline errval_t invoke_send_start_ipi(struct capref ipi_cap, coreid_t core_id, forvaddr_t entry)
-{
-    return cap_invoke3(ipi_cap, IPICmd_Send_Start,
-                       core_id, entry).error;
-}
-
-static inline errval_t invoke_get_global_paddr(struct capref kernel_cap, genpaddr_t* global)
-{ 
-    struct sysret sr = cap_invoke1(kernel_cap, KernelCmd_GetGlobalPhys);
-    if (err_is_ok(sr.error)) {
-        *global = sr.value;
-    }
-
-    return sr.error;
-}
-
-#endif
diff --git a/include/arch/k1om/barrelfish/ldt.h b/include/arch/k1om/barrelfish/ldt.h
deleted file mode 100644 (file)
index 5f9f145..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * \file
- * \brief "Public" interface to Barrelfish userland LDT
- */
-
-/*
- * Copyright (c) 2011, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef _BARRELFISH_X86_64_LDT_H
-#define _BARRELFISH_X86_64_LDT_H
-
-errval_t ldt_alloc_segment(void *segbase, uint16_t *ret_selector);
-errval_t ldt_update_segment(uint16_t selector, void *segbase);
-errval_t ldt_free_segment(uint16_t selector);
-
-#endif
diff --git a/include/arch/k1om/barrelfish/lmp_chan_arch.h b/include/arch/k1om/barrelfish/lmp_chan_arch.h
deleted file mode 100644 (file)
index f714d6c..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-/**
- * \file
- * \brief
- */
-
-/*
- * Copyright (c) 2007, 2008, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_K1OM_BARRELFISH_LMP_CHAN_H
-#define ARCH_K1OM_BARRELFISH_LMP_CHAN_H
-
-#include <barrelfish/syscall_arch.h>
-#include <barrelfish/caddr.h>
-#include <barrelfish/cspace.h>
-#include <barrelfish_kpi/lmp.h>
-
-/**
- * \brief Send a message on the given LMP endpoint, if possible
- *
- * Non-blocking, may fail if there is no space in the receiver's endpoint.
- *
- * \param ep Remote endpoint
- * \param flags LMP send flags
- * \param send_cap (Optional) capability to send with the message
- * \param length_words Length of the message in words; payload beyond this
- *                      size will not be delivered
- * \param arg1..N Message payload
- */
-static inline errval_t lmp_ep_send(struct capref ep, lmp_send_flags_t flags,
-                                   struct capref send_cap, uint8_t length_words,
-                                   uint64_t arg1, uint64_t arg2, uint64_t arg3,
-                                   uint64_t arg4, uint64_t arg5, uint64_t arg6,
-                                   uint64_t arg7, uint64_t arg8, uint64_t arg9,
-                                   uint64_t arg10)
-{
-    uint8_t send_bits = get_cap_valid_bits(send_cap);
-    capaddr_t send_cptr = get_cap_addr(send_cap) >> (CPTR_BITS - send_bits);
-
-#ifndef TRACE_DISABLE_LRPC
-    // Do an LRPC if possible
-    if (send_cptr == 0 && send_bits == 0          // Not sending a cap
-        && ep.cnode.address == CPTR_ROOTCN        // EP in rootcn
-        && (flags & LMP_FLAG_SYNC) != 0           // sync option
-        && length_words <= LRPC_MSG_LENGTH) {     // Check length
-
-        assert(LRPC_MSG_LENGTH == 4);
-        return syscall6(SYSCALL_LRPC, ep.slot, arg1, arg2, arg3, arg4).error;
-    }
-#endif
-
-    uint8_t invoke_bits = get_cap_valid_bits(ep);
-    capaddr_t invoke_cptr = get_cap_addr(ep) >> (CPTR_BITS - invoke_bits);
-
-    return syscall(SYSCALL_INVOKE,
-                   (uint64_t)invoke_cptr << 32 | (uint64_t)send_bits << 24 |
-                   (uint64_t)invoke_bits << 16 | (uint64_t)length_words << 8 |
-                   flags, send_cptr,
-                   arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9,
-                   arg10).error;
-}
-
-#define lmp_ep_send10(ep, flags, send_cap, a, b, c, d, e, f, g, h, i, j) \
-  lmp_ep_send((ep), (flags), (send_cap), 10, (a), (b), (c), (d), (e), (f), (g), (h), (i), (j))
-#define lmp_ep_send9(ep, flags, send_cap, a, b, c, d, e, f, g, h, i) \
-  lmp_ep_send((ep), (flags), (send_cap), 9, (a), (b), (c), (d), (e), (f), (g), (h), (i), 0)
-#define lmp_ep_send8(ep, flags, send_cap, a, b, c, d, e, f, g, h) \
-  lmp_ep_send((ep), (flags), (send_cap), 8, (a), (b), (c), (d), (e), (f), (g), (h), 0, 0)
-#define lmp_ep_send7(ep, flags, send_cap, a, b, c, d, e, f, g) \
-  lmp_ep_send((ep), (flags), (send_cap), 7, (a), (b), (c), (d), (e), (f), (g), 0, 0, 0)
-#define lmp_ep_send6(ep, flags, send_cap, a, b, c, d, e, f) \
-  lmp_ep_send((ep), (flags), (send_cap), 6, (a), (b), (c), (d), (e), (f), 0, 0, 0, 0)
-#define lmp_ep_send5(ep, flags, send_cap, a, b, c, d, e) \
-  lmp_ep_send((ep), (flags), (send_cap), 5, (a), (b), (c), (d), (e), 0, 0, 0, 0, 0)
-#define lmp_ep_send4(ep, flags, send_cap, a, b, c, d) \
-  lmp_ep_send((ep), (flags), (send_cap), 4, (a), (b), (c), (d), 0, 0, 0, 0, 0, 0)
-#define lmp_ep_send3(ep, flags, send_cap, a, b, c) \
-  lmp_ep_send((ep), (flags), (send_cap), 3, (a), (b), (c), 0, 0, 0, 0, 0, 0, 0)
-#define lmp_ep_send2(ep, flags, send_cap, a, b) \
-  lmp_ep_send((ep), (flags), (send_cap), 2, (a), (b), 0, 0, 0, 0, 0, 0, 0, 0)
-#define lmp_ep_send1(ep, flags, send_cap, a) \
-  lmp_ep_send((ep), (flags), (send_cap), 1, (a), 0, 0, 0, 0, 0, 0, 0, 0, 0)
-#define lmp_ep_send0(ep, flags, send_cap) \
-  lmp_ep_send((ep), (flags), (send_cap), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
-
-#define lmp_chan_send(lc, flags, send_cap, len, a, b, c, d, e, f, g, h, i, j) \
-  lmp_ep_send((lc)->remote_cap, (flags), (send_cap), (len), (a), (b), (c), (d), (e), (f), (g), (h), (i), (j))
-
-#define lmp_chan_send10(lc, flags, send_cap, a, b, c, d, e, f, g, h, i, j) \
-  lmp_ep_send10((lc)->remote_cap, (flags), (send_cap), (a), (b), (c), (d), (e), (f), (g), (h), (i), (j))
-#define lmp_chan_send9(lc, flags, send_cap, a, b, c, d, e, f, g, h, i) \
-  lmp_ep_send9((lc)->remote_cap, (flags), (send_cap), (a), (b), (c), (d), (e), (f), (g), (h), (i))
-#define lmp_chan_send8(lc, flags, send_cap, a, b, c, d, e, f, g, h) \
-  lmp_ep_send8((lc)->remote_cap, (flags), (send_cap), (a), (b), (c), (d), (e), (f), (g), (h))
-#define lmp_chan_send7(lc, flags, send_cap, a, b, c, d, e, f, g) \
-  lmp_ep_send7((lc)->remote_cap, (flags), (send_cap), (a), (b), (c), (d), (e), (f), (g))
-#define lmp_chan_send6(lc, flags, send_cap, a, b, c, d, e, f) \
-  lmp_ep_send6((lc)->remote_cap, (flags), (send_cap), (a), (b), (c), (d), (e), (f))
-#define lmp_chan_send5(lc, flags, send_cap, a, b, c, d, e) \
-  lmp_ep_send5((lc)->remote_cap, (flags), (send_cap), (a), (b), (c), (d), (e))
-#define lmp_chan_send4(lc, flags, send_cap, a, b, c, d) \
-  lmp_ep_send4((lc)->remote_cap, (flags), (send_cap), (a), (b), (c), (d))
-#define lmp_chan_send3(lc, flags, send_cap, a, b, c) \
-  lmp_ep_send3((lc)->remote_cap, (flags), (send_cap), (a), (b), (c))
-#define lmp_chan_send2(lc, flags, send_cap, a, b) \
-  lmp_ep_send2((lc)->remote_cap, (flags), (send_cap), (a), (b))
-#define lmp_chan_send1(lc, flags, send_cap, a) \
-  lmp_ep_send1((lc)->remote_cap, (flags), (send_cap), (a))
-#define lmp_chan_send0(lc, flags, send_cap) \
-  lmp_ep_send0((lc)->remote_cap, (flags), (send_cap))
-
-#endif // ARCH_K1OM_BARRELFISH_LMP_CHAN_H
diff --git a/include/arch/k1om/barrelfish/pmap_arch.h b/include/arch/k1om/barrelfish/pmap_arch.h
deleted file mode 100644 (file)
index 2616a43..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
- * \file
- * \brief pmap management wrappers
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_PMAP_H
-#define ARCH_X86_64_BARRELFISH_PMAP_H
-
-#include <target/k1om/barrelfish/pmap_target.h>
-
-#define ARCH_DEFAULT_PMAP_SIZE sizeof(struct pmap_x86)
-
-static inline errval_t pmap_init(struct pmap *pmap, struct vspace *vspace,
-                                 struct capref vnode,
-                                 struct slot_allocator *opt_slot_alloc)
-{
-    return pmap_x86_64_init(pmap, vspace, vnode, opt_slot_alloc);
-}
-
-static inline errval_t pmap_current_init(bool init_domain)
-{
-    return pmap_x86_64_current_init(init_domain);
-}
-
-#endif // ARCH_X86_64_BARRELFISH_PMAP_H
diff --git a/include/arch/k1om/barrelfish/syscall_arch.h b/include/arch/k1om/barrelfish/syscall_arch.h
deleted file mode 100644 (file)
index 1452f09..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-/**
- * \file
- * \brief User-side system call implementation
- */
-
-/*
- * Copyright (c) 2007, 2008, 2009, 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_SYSCALL_H
-#define ARCH_X86_64_BARRELFISH_SYSCALL_H
-
-#include <barrelfish_kpi/syscalls.h>  // for struct sysret.
-
-/*
- * Introduction to the syscall macros, or "what the hell is going on here"?
- *
- * The macros here are collectively used to expand the body of the inlined
- * function syscall() that implements all syscalls except for cap_invoke(),
- * which is a special case, due to the thread_invoke_cap_and_exit() hack.
- *
- * First, BF_SYSCALL_BODY sets up the register arguments to be passed into the
- * syscall, then BF_SYSCALL_ASM contains the asm code that includes the actual
- * syscall. This macro has a "label" argument which can be used to emit an
- * arbitrary bit of assembly code after the syscall instruction. This is used
- * by cap_invoke() to insert a label immediately following the syscall, so that
- * the threads package can tell if a thread that was about to do an invocation
- * actually reached the syscall instruction. Note that this can't be inserted
- * in the syscall code unconditionally, because we want it to be inlined, and
- * that would result in multiple definitions of the symbol.
- *
- * If you can think of a better way to do this, by all means clean it up! :)
- */
-
-/* FIXME: the first version of this code is optimal, and works when we are
- * compiling either with optimisation on (-O) or at any optimisation level
- * without a frame pointer (-fomit-frame-pointer), however not for the
- * standard unoptimised GCC, which insists on using RBP.
- */
-#if 0 /* was if defined(NDEBUG), but gcc is still screwing this up -- AB */
-// XXX: Need to update this to the new syscall ABI before it will work again
-# define BF_SYSCALL_ASM(arg11, label) \
-    register uint64_t a11 __asm("rbp") = arg11;     \
-    __asm volatile("syscall\n\t"                    \
-                   label                            \
-        : "+r" (a10_ret1), "+r" (a2_ret2)           \
-        : "r" (a1), "r" (a3), "r" (a4), "r" (a5), "r" (a6), "r" (a7), \
-          "r" (a8), "r" (a9), "r" (a11), "r" (a12), "r" (syscall_num) \
-        : "r11", "rcx");
-#else /* DEBUG */
-# define BF_SYSCALL_ASM(arg11, label) \
-    __asm volatile("pushq %%rbp             \n\t"   \
-                   "movq %%rcx, %%rbp       \n\t"   \
-                   "syscall                 \n\t"   \
-                   label                            \
-                   "popq %%rbp              \n\t"   \
-        : "+a" (a10_ret1), "+c" (arg11), "+d" (a2_ret2), "+r" (a1), \
-          "+r" (a3), "+r" (a4), "+r" (a5), "+r" (syscall_num)  \
-        : "r" (a6), "r" (a7), "r" (a8), "r" (a9), "r" (a12) \
-        : "r11");
-#endif
-
-/* NB: We use a10_ret (in the rax register) as both input and output
- * register, because some versions of GCC (eg. 4.2.3) fail to use rax as
- * both an input and separately as an output register
- */
-#define BF_SYSCALL_BODY(num, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, \
-                        arg9, arg10, arg11, arg12, label) \
-    register uint64_t syscall_num __asm("rdi") = num;   \
-    register uint64_t a1 __asm("rsi") = arg1;           \
-    register uint64_t a2_ret2 __asm("rdx") = arg2;           \
-    register uint64_t a3 __asm("r10") = arg3;           \
-    register uint64_t a4 __asm("r8") = arg4;            \
-    register uint64_t a5 __asm("r9") = arg5;            \
-    register uint64_t a6 __asm("r12") = arg6;           \
-    register uint64_t a7 __asm("r13") = arg7;           \
-    register uint64_t a8 __asm("r14") = arg8;           \
-    register uint64_t a9 __asm("r15") = arg9;           \
-    register uint64_t a12 __asm("rbx") = arg12;         \
-    register uint64_t a10_ret1 __asm("rax") = arg10;     \
-    BF_SYSCALL_ASM(arg11, label)
-
-
-static inline struct sysret syscall(uint64_t num, uint64_t arg1, uint64_t arg2,
-                 uint64_t arg3, uint64_t arg4, uint64_t arg5, uint64_t arg6,
-                 uint64_t arg7, uint64_t arg8, uint64_t arg9, uint64_t arg10,
-                 uint64_t arg11, uint64_t arg12)
-{
-    BF_SYSCALL_BODY(num, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9,
-                    arg10, arg11, arg12, "");
-    return (struct sysret){/*error*/ a10_ret1, /*value*/ a2_ret2};
-}
-
-#define syscall12(_a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l) \
-       syscall(_a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, 0)
-#define syscall11(_a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k) \
-       syscall12(_a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, 0)
-#define syscall10(_a, _b, _c, _d, _e, _f, _g, _h, _i, _j) \
-       syscall11(_a, _b, _c, _d, _e, _f, _g, _h, _i, _j, 0)
-#define syscall9(_a, _b, _c, _d, _e, _f, _g, _h, _i) \
-       syscall10(_a, _b, _c, _d, _e, _f, _g, _h, _i, 0)
-#define syscall8(_a, _b, _c, _d, _e, _f, _g, _h) \
-       syscall9(_a, _b, _c, _d, _e, _f, _g, _h, 0)
-#define syscall7(_a, _b, _c, _d, _e, _f, _g) \
-       syscall8(_a, _b, _c, _d, _e, _f, _g, 0)
-#define syscall6(_a, _b, _c, _d, _e, _f) \
-       syscall7(_a, _b, _c, _d, _e, _f, 0)
-#define syscall5(_a, _b, _c, _d, _e) \
-       syscall6(_a, _b, _c, _d, _e, 0)
-#define syscall4(_a, _b, _c, _d) \
-       syscall5(_a, _b, _c, _d, 0)
-#define syscall3(_a, _b, _c) \
-       syscall4(_a, _b, _c, 0)
-#define syscall2(_a, _b) \
-       syscall3(_a, _b, 0)
-#define syscall1(_a) \
-       syscall2(_a, 0)
-
-static inline errval_t sys_x86_fpu_trap_on(void)
-{
-    return syscall1(SYSCALL_X86_FPU_TRAP_ON).error;
-}
-
-static inline errval_t sys_x86_reload_ldt(void)
-{
-    return syscall1(SYSCALL_X86_RELOAD_LDT).error;
-}
-
-#endif
diff --git a/include/arch/k1om/barrelfish_kpi/asm_inlines_arch.h b/include/arch/k1om/barrelfish_kpi/asm_inlines_arch.h
deleted file mode 100644 (file)
index d00d190..0000000
+++ /dev/null
@@ -1,225 +0,0 @@
-/**
- * \file
- * \brief
- */
-
-/*
- * Copyright (c) 2007, 2008, 2009, 2010, 2011, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_KPI_ASM_INLINES_H
-#define ARCH_X86_64_BARRELFISH_KPI_ASM_INLINES_H
-
-#ifndef __ASSEMBLER__
-
-#include <target/k1om/barrelfish_kpi/registers_target.h>
-
-#define CLOCK_PER_MS 1046008
-
-static inline void
-delay_ms(uint32_t ms)
-{
-    if (ms == 0) {
-        return;
-    }
-    uint64_t num_cpu_clks = ms * CLOCK_PER_MS;
-
-    if (num_cpu_clks <= 1023) {
-        /* since delay can only go upto 1023 clocks */
-        __asm __volatile("delay %0"::"r"(num_cpu_clks));
-    } else {
-        /* break it up into 1000 clock chunks */
-        for (uint32_t tick = 1000; num_cpu_clks >= 1000; num_cpu_clks -= 1000) {
-            __asm __volatile("delay %0"::"r"(tick));
-        }
-
-        /* the remaining */
-        __asm __volatile("delay %0"::"r"(num_cpu_clks));
-    }
-    return;
-}
-
-/*
- * some functions require to have the register ECX set to a specific value
- * and will produce wrong results if the value in register ECX is out of range.
- */
-static inline void
-cpuid_ext(uint32_t function,
-          uint32_t ecx_in,
-          uint32_t *eax,
-          uint32_t *ebx,
-          uint32_t *ecx,
-          uint32_t *edx)
-{
-    // make it possible to omit certain return registers
-    uint32_t a, b, c, d;
-    if (eax == NULL) {
-        eax = &a;
-    }
-    if (ebx == NULL) {
-        ebx = &b;
-    }
-    if (ecx == NULL) {
-        ecx = &c;
-    }
-    if (edx == NULL) {
-        edx = &d;
-    }
-    __asm volatile("cpuid"
-            : "=a" (*eax), "=b" (*ebx), "=c" (*ecx), "=d" (*edx)
-            : "a" (function), "c" (ecx_in)
-    );
-}
-
-static inline void
-cpuid(uint32_t function,
-      uint32_t *eax,
-      uint32_t *ebx,
-      uint32_t *ecx,
-      uint32_t *edx)
-{
-    cpuid_ext(function, 0, eax, ebx, ecx, edx);
-}
-
-/** \brief Atomic compare-and-swap on 128 bits
- *
- * If *dst == old then *dst = new, returns 0 on failure
- *
- * Note, dest should point to a 128bit structure that is to be overwritten
- */
-static inline int
-cmpxchg128(volatile uint64_t dest[2],
-           uint64_t old_top,
-           uint64_t old_bot,
-           uint64_t new_top,
-           uint64_t new_bot)
-{
-    uint8_t ret;
-
-    __asm volatile (
-            "lock cmpxchg16b %1\n\t"
-            "setz %0\n\t"
-            : "=a"(ret), "=m"(*dest)  //, "=d"(old_top), "=a"(old_bot)
-            : "a"(old_top), "d"(old_bot), "b"(new_top), "c"(new_bot), "m"(*dest)
-            : "memory");
-
-    return ret;
-}
-
-static inline void
-fpu_init(void)
-{
-    __asm volatile ("fninit");
-}
-
-static inline void
-fpu_save(struct registers_fpu_x86_64 *fpustate)
-{
-    uint8_t *regs = fpustate->registers;
-    regs += 16 - ((uintptr_t) regs % 16);
-
-    __asm volatile("fxsaveq %0" : "=m" (*regs));
-}
-
-static inline void
-fpu_restore(struct registers_fpu_x86_64 *fpustate)
-{
-    uint8_t *regs = fpustate->registers;
-    regs += 16 - ((uintptr_t) regs % 16);
-
-    __asm volatile ("fxrstorq %0" :: "m" (*regs));
-}
-
-/** \brief This code reads the cycle counter */
-static inline uint64_t
-rdtsc(void)
-{
-
-    uint32_t eax, edx;
-    __asm volatile ("rdtsc" : "=a" (eax), "=d" (edx));
-    return ((uint64_t) edx << 32) | eax;
-
-    return 0;
-}
-
-/** \brief This code reads the cycle counter -- flushing the
- instruction pipeline first. Throws away the processor ID information. */
-static inline uint64_t
-rdtscp(void)
-{
-    /*
-     uint32_t eax, edx;
-     __asm volatile ("rdtscp" : "=a" (eax), "=d" (edx) :: "ecx");
-     return ((uint64_t)edx << 32) | eax;
-     */
-    return 0;
-}
-
-static inline uint64_t
-rdpmc(uint32_t counter)
-{
-    /*
-    uint32_t eax, edx;
-
-     __asm volatile("rdpmc"
-     : "=a" (eax), "=d" (edx)
-     : "c" (counter)
-     );
-
-    return ((uint64_t) edx << 32) | eax;
-     */
-    return 0;
-}
-
-static inline void
-mfence(void)
-{
-    // __asm volatile("mfence");
-}
-
-static inline void
-sfence(void)
-{
-    //  __asm volatile("sfence");
-}
-
-static inline void
-lfence(void)
-{
-    // __asm volatile("lfence");
-}
-
-static inline void
-clflush(void *line)
-{
-    __asm volatile("clflush %0" :: "m" (line));
-}
-
-#ifndef __scc__
-#       define CACHE_LINE_SIZE 64 /* bytes */
-#else
-#       define CACHE_LINE_SIZE 32 /* bytes */
-#endif
-
-#ifndef __cplusplus
-/* flush a range of memory from the cache */
-static inline void cache_flush_range(void *base, size_t len)
-{
-    //mfence();
-
-    uint8_t *line = (uint8_t *)((uintptr_t)base & ~(CACHE_LINE_SIZE-1UL));
-    do {
-        clflush(line);
-        line += CACHE_LINE_SIZE;
-    }while (line < (uint8_t *)base + len);
-}
-#endif
-
-#endif // __ASSEMBLER__
-
-#endif // ARCH_X86_64_BARRELFISH_KPI_ASM_INLINES_H
diff --git a/include/arch/k1om/barrelfish_kpi/cpu_arch.h b/include/arch/k1om/barrelfish_kpi/cpu_arch.h
deleted file mode 100644 (file)
index b005071..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/**
- * \file
- * \brief Arch specific CPU declarations
- */
-
-/*
- * Copyright (c) 2010, 2011, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_KPI_CPU_H
-#define ARCH_X86_64_BARRELFISH_KPI_CPU_H
-
-/// This CPU supports lazy FPU context switching
-#define FPU_LAZY_CONTEXT_SWITCH
-
-/*
- * Entries in the Interrupt Descriptor Table (IDT)
- */
-#define IDT_DE          0       /* #DE: Divide Error */
-#define IDT_DB          1       /* #DB: Debug */
-#define IDT_NMI         2       /* Nonmaskable External Interrupt */
-#define IDT_BP          3       /* #BP: Breakpoint */
-#define IDT_OF          4       /* #OF: Overflow */
-#define IDT_BR          5       /* #BR: Bound Range Exceeded */
-#define IDT_UD          6       /* #UD: Undefined/Invalid Opcode */
-#define IDT_NM          7       /* #NM: No Math Coprocessor */
-#define IDT_DF          8       /* #DF: Double Fault */
-#define IDT_FPUGP       9       /* Coprocessor Segment Overrun */
-#define IDT_TS          10      /* #TS: Invalid TSS */
-#define IDT_NP          11      /* #NP: Segment Not Present */
-#define IDT_SS          12      /* #SS: Stack Segment Fault */
-#define IDT_GP          13      /* #GP: General Protection Fault */
-#define IDT_PF          14      /* #PF: Page Fault */
-#define IDT_MF          16      /* #MF: FPU Floating-Point Error */
-#define IDT_AC          17      /* #AC: Alignment Check */
-#define IDT_MC          18      /* #MC: Machine Check */
-#define IDT_XF          19      /* #XF: SIMD Floating-Point Exception */
-
-#endif
diff --git a/include/arch/k1om/barrelfish_kpi/dispatcher_shared_arch.h b/include/arch/k1om/barrelfish_kpi/dispatcher_shared_arch.h
deleted file mode 100644 (file)
index 4e260e4..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/**
- * \file
- * \brief Architecture specific dispatcher struct shared between kernel and user
- */
-
-/*
- * Copyright (c) 2010, 2011, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_KPI_DISPATCHER_SHARED_ARCH_H
-#define ARCH_X86_64_BARRELFISH_KPI_DISPATCHER_SHARED_ARCH_H
-
-#include <target/k1om/barrelfish_kpi/dispatcher_shared_target.h>
-
-/**
- * \brief Returns whether dispatcher is currently disabled, given IP.
- *
- * \param disp  Pointer to dispatcher
- * \param ip    User-level instruction pointer.
- *
- * \return true if dispatcher disabled, false otherwise.
- */
-static inline bool dispatcher_is_disabled_ip(dispatcher_handle_t handle,
-                                             uintptr_t rip)
-{
-    /* one crit_pc pair */
-    struct dispatcher_shared_generic *disp =
-        get_dispatcher_shared_generic(handle);
-    struct dispatcher_shared_x86_64 *disp64 =
-        get_dispatcher_shared_x86_64(handle);
-    return disp->disabled ||
-        (disp64->crit_pc_low <= rip && rip < disp64->crit_pc_high);
-}
-
-static inline arch_registers_state_t*
-dispatcher_get_enabled_save_area(dispatcher_handle_t handle)
-{
-    return dispatcher_x86_64_get_enabled_save_area(handle);
-}
-
-static inline arch_registers_state_t*
-dispatcher_get_disabled_save_area(dispatcher_handle_t handle)
-{
-    return dispatcher_x86_64_get_disabled_save_area(handle);
-}
-
-static inline arch_registers_state_t*
-dispatcher_get_trap_save_area(dispatcher_handle_t handle)
-{
-    return dispatcher_x86_64_get_trap_save_area(handle);
-}
-
-static inline arch_registers_fpu_state_t*
-dispatcher_get_enabled_fpu_save_area(dispatcher_handle_t handle)
-{
-    return dispatcher_x86_64_get_enabled_fpu_save_area(handle);
-}
-
-static inline arch_registers_fpu_state_t*
-dispatcher_get_disabled_fpu_save_area(dispatcher_handle_t handle)
-{
-    return dispatcher_x86_64_get_disabled_fpu_save_area(handle);
-}
-
-#endif // ARCH_X86_64_BARRELFISH_KPI_DISPATCHER_SHARED_ARCH_H
diff --git a/include/arch/k1om/barrelfish_kpi/eflags_arch.h b/include/arch/k1om/barrelfish_kpi/eflags_arch.h
deleted file mode 100644 (file)
index 4fffc24..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * \file
- * \brief
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_KPI_EFLAGS_H
-#define ARCH_X86_64_BARRELFISH_KPI_EFLAGS_H
-
-/**
- * State of EFLAGS when executing a user-space program: Enable interrupts
- */
-#define USER_CS                         0x23
-#define USER_SS                         0x1b
-#define USER_EFLAGS                     0x202
-
-#endif // ARCH_X86_64_BARRELFISH_KPI_EFLAGS_H
diff --git a/include/arch/k1om/barrelfish_kpi/generic_arch.h b/include/arch/k1om/barrelfish_kpi/generic_arch.h
deleted file mode 100644 (file)
index 0e06935..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * \file
- * \brief Generic include for a bunch of arch specific files
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_KPI_GENERIC_H
-#define ARCH_X86_64_BARRELFISH_KPI_GENERIC_H
-
-#include <barrelfish_kpi/eflags_arch.h>
-#include <barrelfish_kpi/asm_inlines_arch.h>
-#include <arch/k1om/barrelfish_kpi/asm_inlines_arch.h>
-
-#endif // ARCH_X86_64_BARRELFISH_KPI_GENERIC_H
diff --git a/include/arch/k1om/barrelfish_kpi/lmp_arch.h b/include/arch/k1om/barrelfish_kpi/lmp_arch.h
deleted file mode 100644 (file)
index 5c02376..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * \file
- * \brief Arch specific LMP declarations
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_KPI_LMP_H
-#define ARCH_X86_64_BARRELFISH_KPI_LMP_H
-
-/**
- * \brief Maximum total length of LMP and LRPC messages (payload)
- *
- * Determined by number of registers available to transfer messages.
- */
-#define LMP_MSG_LENGTH          10
-#define LRPC_MSG_LENGTH         4
-
-#endif // ARCH_X86_64_BARRELFISH_KPI_LMP_H
diff --git a/include/arch/k1om/barrelfish_kpi/paging_arch.h b/include/arch/k1om/barrelfish_kpi/paging_arch.h
deleted file mode 100644 (file)
index 4b57c82..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * \file
- * \brief Define generics for arch specific definitions
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_KPI_PAGING_H
-#define ARCH_X86_64_BARRELFISH_KPI_PAGING_H
-
-#include <target/k1om/barrelfish_kpi/paging_target.h>
-
-/**
- * Information about page sizes
- */
-#define BASE_PAGE_BITS      X86_64_BASE_PAGE_BITS
-#define BASE_PAGE_SIZE      X86_64_BASE_PAGE_SIZE
-#define BASE_PAGE_MASK      X86_64_BASE_PAGE_MASK
-#define BASE_PAGE_OFFSET    X86_64_BASE_PAGE_OFFSET
-
-#define LARGE_PAGE_BITS      X86_64_LARGE_PAGE_BITS
-#define LARGE_PAGE_SIZE      X86_64_LARGE_PAGE_SIZE
-#define LARGE_PAGE_MASK      X86_64_LARGE_PAGE_MASK
-#define LARGE_PAGE_OFFSET    X86_64_LARGE_PAGE_OFFSET
-
-/**
- * Bits within the various page directories and tables.
- */
-#define PTABLE_EXECUTE_DISABLE  X86_64_PTABLE_EXECUTE_DISABLE
-#define PTABLE_GLOBAL_PAGE      X86_64_PTABLE_GLOBAL_PAGE
-#define PTABLE_ATTR_INDEX       X86_64_PTABLE_ATTR_INDEX
-#define PTABLE_DIRTY            X86_64_PTABLE_DIRTY
-#define PTABLE_ACCESSED         X86_64_PTABLE_ACCESSED
-#define PTABLE_CACHE_DISABLED   X86_64_PTABLE_CACHE_DISABLED
-#define PTABLE_WRITE_THROUGH    X86_64_PTABLE_WRITE_THROUGH
-#define PTABLE_USER_SUPERVISOR  X86_64_PTABLE_USER_SUPERVISOR
-#define PTABLE_READ_WRITE       X86_64_PTABLE_READ_WRITE
-#define PTABLE_PRESENT          X86_64_PTABLE_PRESENT
-
-#define PTABLE_SIZE             X86_64_PTABLE_SIZE
-#define PTABLE_MASK             X86_64_PTABLE_MASK
-#define PTABLE_CLEAR            X86_64_PTABLE_CLEAR
-
-#define PTABLE_ACCESS_DEFAULT   X86_64_PTABLE_ACCESS_DEFAULT
-#define PTABLE_ACCESS_READONLY  X86_64_PTABLE_ACCESS_READONLY
-
-#define PTABLE_ENTRY_SIZE       X86_64_PTABLE_ENTRY_SIZE
-
-#endif // ARCH_X86_64_BARRELFISH_KPI_PAGING_H
diff --git a/include/arch/k1om/barrelfish_kpi/registers_arch.h b/include/arch/k1om/barrelfish_kpi/registers_arch.h
deleted file mode 100644 (file)
index dc10664..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
- * \file
- * \brief Arch independent accessor functions for use in generic code
- * Generic include for kernel
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_KPI_REGISTERS_H
-#define ARCH_X86_64_BARRELFISH_KPI_REGISTERS_H
-
-#include <barrelfish_kpi/types.h> // for lvaddr_t
-#include <target/k1om/barrelfish_kpi/registers_target.h>
-
-///< Opaque handle for the register state
-typedef struct registers_x86_64 arch_registers_state_t;
-
-///< Opaque handle for the FPU register state
-typedef struct registers_fpu_x86_64 arch_registers_fpu_state_t;
-
-static inline void
-registers_set_entry(arch_registers_state_t *regs, lvaddr_t entry)
-{
-    registers_x86_64_set_entry(regs, entry);
-}
-
-static inline void
-registers_set_param(arch_registers_state_t *regs, uint64_t param)
-{
-    registers_x86_64_set_param(regs, param);
-}
-
-static inline void
-registers_get_param(arch_registers_state_t *regs, uint64_t *param)
-{
-    registers_x86_64_get_param(regs, param);
-}
-
-static inline uint64_t
-registers_get_ip(arch_registers_state_t *regs)
-{
-    return registers_x86_64_get_ip(regs);
-}
-
-static inline uint64_t
-registers_get_sp(arch_registers_state_t *regs)
-{
-    return registers_x86_64_get_sp(regs);
-}
-
-#endif // ARCH_X86_64_BARRELFISH_KPI_REGISTERS_H
diff --git a/include/arch/k1om/barrelfish_kpi/spinlocks_arch.h b/include/arch/k1om/barrelfish_kpi/spinlocks_arch.h
deleted file mode 100644 (file)
index ce92742..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * \file
- * \brief
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#include <arch/x86/barrelfish_kpi/spinlocks_arch.h>
diff --git a/include/arch/k1om/bench/bench_arch.h b/include/arch/k1om/bench/bench_arch.h
deleted file mode 100644 (file)
index fc41255..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * \file
- * \brief Arch specific bench include.
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef ARCH_X86_64_BARRELFISH_BENCH_H
-#define ARCH_X86_64_BARRELFISH_BENCH_H
-
-#include <arch/x86/bench/bench_arch.h>
-
-#endif
diff --git a/include/arch/k1om/concurrent/arch/cas.h b/include/arch/k1om/concurrent/arch/cas.h
deleted file mode 100644 (file)
index 5eabeef..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/** \file
- *  \brief compare and set (cas) implementations
- */
-
-/*
- * Copyright (c) 2009, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef CAS_H_
-#define CAS_H_
-
-#include <stdint.h>
-#include <stdbool.h>
-
-/*
- * \brief compare and set. If the value at address
- *        equals old, set it to new otherwise don't write to address.
- *        Returns the actual previous value at the address.
- */
-static inline uintptr_t cas_ret_act(volatile uintptr_t *address, uintptr_t old,
-        uintptr_t new)
-{
-    register uintptr_t res;
-    __asm volatile("lock; cmpxchgq %2,%0    \n\t"
-                   : "+m" (*address), "=a" (res)
-                   : "r" (new), "a" (old)
-                   : "memory");
-    return res;
-}
-
-/*
- * \brief compare and set. If the value at address
- *        equals old, set it to new and return true,
- *        otherwise don't write to address and return false
- */
-static inline bool cas(volatile uintptr_t *address, uintptr_t old,
-        uintptr_t new)
-{
-    register bool res;
-    __asm volatile("lock; cmpxchgq %2,%0     \n\t"
-                   "setz %1                  \n\t"
-                   : "+m" (*address), "=q" (res)
-                   : "r" (new), "a" (old)
-                   : "memory");
-    return res;
-}
-
-#endif /* CAS_H_ */
diff --git a/include/arch/k1om/fenv.h b/include/arch/k1om/fenv.h
deleted file mode 100644 (file)
index 1d150db..0000000
+++ /dev/null
@@ -1,218 +0,0 @@
-/*-
- * Copyright (c) 2004-2005 David Schultz <das@FreeBSD.ORG>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * $FreeBSD: src/lib/msun/amd64/fenv.h,v 1.6 2007/01/06 21:46:23 das Exp $
- */
-
-#ifndef        _FENV_H_
-#define        _FENV_H_
-
-#include <sys/cdefs.h>
-#include <sys/_types.h>
-
-typedef struct {
-       struct {
-               __uint32_t      __control;
-               __uint32_t      __status;
-               __uint32_t      __tag;
-               char            __other[16];
-       } __x87;
-       __uint32_t              __mxcsr;
-} fenv_t;
-
-typedef        __uint16_t      fexcept_t;
-
-/* Exception flags */
-#define        FE_INVALID      0x01
-#define        FE_DENORMAL     0x02
-#define        FE_DIVBYZERO    0x04
-#define        FE_OVERFLOW     0x08
-#define        FE_UNDERFLOW    0x10
-#define        FE_INEXACT      0x20
-#define        FE_ALL_EXCEPT   (FE_DIVBYZERO | FE_DENORMAL | FE_INEXACT | \
-                        FE_INVALID | FE_OVERFLOW | FE_UNDERFLOW)
-
-/* Rounding modes */
-#define        FE_TONEAREST    0x0000
-#define        FE_DOWNWARD     0x0400
-#define        FE_UPWARD       0x0800
-#define        FE_TOWARDZERO   0x0c00
-#define        _ROUND_MASK     (FE_TONEAREST | FE_DOWNWARD | \
-                        FE_UPWARD | FE_TOWARDZERO)
-
-/*
- * As compared to the x87 control word, the SSE unit's control word
- * has the rounding control bits offset by 3 and the exception mask
- * bits offset by 7.
- */
-#define        _SSE_ROUND_SHIFT        3
-#define        _SSE_EMASK_SHIFT        7
-
-__BEGIN_DECLS
-
-/* Default floating-point environment */
-extern const fenv_t    __fe_dfl_env;
-#define        FE_DFL_ENV      (&__fe_dfl_env)
-
-#define        __fldcw(__cw)           __asm __volatile("fldcw %0" : : "m" (__cw))
-#define        __fldenv(__env)         __asm __volatile("fldenv %0" : : "m" (__env))
-#define        __fldenvx(__env)        __asm __volatile("fldenv %0" : : "m" (__env)  \
-                               : "st", "st(1)", "st(2)", "st(3)", "st(4)",   \
-                               "st(5)", "st(6)", "st(7)")
-#define        __fnclex()              __asm __volatile("fnclex")
-#define        __fnstenv(__env)        __asm __volatile("fnstenv %0" : "=m" (*(__env)))
-#define        __fnstcw(__cw)          __asm __volatile("fnstcw %0" : "=m" (*(__cw)))
-//according to
-//http://www.nabble.com/The-Linux-binutils-2.18.50.0.4-is-released-td15360254.html
-//we need to use %ax now...
-//#define      __fnstsw(__sw)          __asm __volatile("fnstsw %0" : "=am" (*(__sw)))
-#define __fnstsw(__sw)      __asm __volatile("fnstsw %%ax" : "=am" (*(__sw)))
-#define        __fwait()               __asm __volatile("fwait")
-#define        __ldmxcsr(__csr)        __asm __volatile("ldmxcsr %0" : : "m" (__csr))
-#define        __stmxcsr(__csr)        __asm __volatile("stmxcsr %0" : "=m" (*(__csr)))
-
-static __inline int
-feclearexcept(int __excepts)
-{
-       fenv_t __env;
-
-       if (__excepts == FE_ALL_EXCEPT) {
-               __fnclex();
-       } else {
-               __fnstenv(&__env.__x87);
-               __env.__x87.__status &= ~__excepts;
-               __fldenv(__env.__x87);
-       }
-       __stmxcsr(&__env.__mxcsr);
-       __env.__mxcsr &= ~__excepts;
-       __ldmxcsr(__env.__mxcsr);
-       return (0);
-}
-
-static __inline int
-fegetexceptflag(fexcept_t *__flagp, int __excepts)
-{
-       int __mxcsr, __status;
-
-       __stmxcsr(&__mxcsr);
-       __fnstsw(&__status);
-       *__flagp = (__mxcsr | __status) & __excepts;
-       return (0);
-}
-
-int fesetexceptflag(const fexcept_t *__flagp, int __excepts);
-int feraiseexcept(int __excepts);
-
-static __inline int
-fetestexcept(int __excepts)
-{
-       int __mxcsr, __status;
-
-       __stmxcsr(&__mxcsr);
-       __fnstsw(&__status);
-       return ((__status | __mxcsr) & __excepts);
-}
-
-static __inline int
-fegetround(void)
-{
-       int __control;
-
-       /*
-        * We assume that the x87 and the SSE unit agree on the
-        * rounding mode.  Reading the control word on the x87 turns
-        * out to be about 5 times faster than reading it on the SSE
-        * unit on an Opteron 244.
-        */
-       __fnstcw(&__control);
-       return (__control & _ROUND_MASK);
-}
-
-static __inline int
-fesetround(int __round)
-{
-       int __mxcsr, __control;
-
-       if (__round & ~_ROUND_MASK)
-               return (-1);
-
-       __fnstcw(&__control);
-       __control &= ~_ROUND_MASK;
-       __control |= __round;
-       __fldcw(__control);
-
-       __stmxcsr(&__mxcsr);
-       __mxcsr &= ~(_ROUND_MASK << _SSE_ROUND_SHIFT);
-       __mxcsr |= __round << _SSE_ROUND_SHIFT;
-       __ldmxcsr(__mxcsr);
-
-       return (0);
-}
-
-int fegetenv(fenv_t *__envp);
-int feholdexcept(fenv_t *__envp);
-
-static __inline int
-fesetenv(const fenv_t *__envp)
-{
-
-       /*
-        * XXX Using fldenvx() instead of fldenv() tells the compiler that this
-        * instruction clobbers the i387 register stack.  This happens because
-        * we restore the tag word from the saved environment.  Normally, this
-        * would happen anyway and we wouldn't care, because the ABI allows
-        * function calls to clobber the i387 regs.  However, fesetenv() is
-        * inlined, so we need to be more careful.
-        */
-       __fldenvx(__envp->__x87);
-       __ldmxcsr(__envp->__mxcsr);
-       return (0);
-}
-
-int feupdateenv(const fenv_t *__envp);
-
-#if __BSD_VISIBLE
-
-int feenableexcept(int __mask);
-int fedisableexcept(int __mask);
-
-static __inline int
-fegetexcept(void)
-{
-       int __control;
-
-       /*
-        * We assume that the masks for the x87 and the SSE unit are
-        * the same.
-        */
-       __fnstcw(&__control);
-       return (~__control & FE_ALL_EXCEPT);
-}
-
-#endif /* __BSD_VISIBLE */
-
-__END_DECLS
-
-#endif /* !_FENV_H_ */
diff --git a/include/arch/k1om/float.h b/include/arch/k1om/float.h
deleted file mode 100644 (file)
index d700e29..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-/*-
- * Copyright (c) 1989 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *     from: @(#)float.h       7.1 (Berkeley) 5/8/90
- * $FreeBSD: src/sys/amd64/include/float.h,v 1.16 2008/01/17 13:12:46 bde Exp $
- */
-
-#ifndef _MACHINE_FLOAT_H_
-#define _MACHINE_FLOAT_H_ 1
-
-#include <sys/cdefs.h>
-
-#ifdef CONFIG_OLDC
-__BEGIN_DECLS
-extern int __flt_rounds(void);
-__END_DECLS
-#define FLT_ROUNDS  __flt_rounds()
-#else
-#define FLT_ROUNDS  1
-#endif /* CONFIGOLDC */
-
-#define FLT_RADIX      2               /* b */
-#if __ISO_C_VISIBLE >= 1999
-#define        FLT_EVAL_METHOD 0               /* no promotions */
-#define        DECIMAL_DIG     21              /* max precision in decimal digits */
-#endif
-
-#define FLT_MANT_DIG   24              /* p */
-#define FLT_EPSILON    1.19209290E-07F /* b**(1-p) */
-#define FLT_DIG                6               /* floor((p-1)*log10(b))+(b == 10) */
-#define FLT_MIN_EXP    (-125)          /* emin */
-#define FLT_MIN                1.17549435E-38F /* b**(emin-1) */
-#define FLT_MIN_10_EXP (-37)           /* ceil(log10(b**(emin-1))) */
-#define FLT_MAX_EXP    128             /* emax */
-#define FLT_MAX                3.40282347E+38F /* (1-b**(-p))*b**emax */
-#define FLT_MAX_10_EXP 38              /* floor(log10((1-b**(-p))*b**emax)) */
-
-#define DBL_MANT_DIG   53
-#define DBL_EPSILON    2.2204460492503131E-16
-#define DBL_DIG                15
-#define DBL_MIN_EXP    (-1021)
-#define DBL_MIN                2.2250738585072014E-308
-#define DBL_MIN_10_EXP (-307)
-#define DBL_MAX_EXP    1024
-#define DBL_MAX                1.7976931348623157E+308
-#define DBL_MAX_10_EXP 308
-
-#define LDBL_MANT_DIG  64
-#define LDBL_EPSILON   1.0842021724855044340E-19L
-#define LDBL_DIG       18
-#define LDBL_MIN_EXP   (-16381)
-#define LDBL_MIN       3.3621031431120935063E-4932L
-#define LDBL_MIN_10_EXP        (-4931)
-#define LDBL_MAX_EXP   16384
-#define LDBL_MAX       1.1897314953572317650E+4932L
-#define LDBL_MAX_10_EXP        4932
-#endif /* _MACHINE_FLOAT_H_ */
diff --git a/include/arch/k1om/machine/_limits.h b/include/arch/k1om/machine/_limits.h
deleted file mode 100644 (file)
index afbf51c..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-/*-
- * Copyright (c) 1988, 1993
- *     The Regents of the University of California.  All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *     @(#)limits.h    8.3 (Berkeley) 1/4/94
- * $FreeBSD: src/sys/amd64/include/_limits.h,v 1.11 2005/08/20 16:44:40 stefanf Exp $
- */
-
-#ifndef        _MACHINE__LIMITS_H_
-#define        _MACHINE__LIMITS_H_
-
-/*
- * According to ANSI (section 2.2.4.2), the values below must be usable by
- * #if preprocessing directives.  Additionally, the expression must have the
- * same type as would an expression that is an object of the corresponding
- * type converted according to the integral promotions.  The subtraction for
- * INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an
- * unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2).
- * These numbers are for the default configuration of gcc.  They work for
- * some other compilers as well, but this should not be depended on.
- */
-
-#define        __CHAR_BIT      8               /* number of bits in a char */
-
-#define        __SCHAR_MAX     0x7f            /* max value for a signed char */
-#define        __SCHAR_MIN     (-0x7f - 1)     /* min value for a signed char */
-
-#define        __UCHAR_MAX     0xffU           /* max value for an unsigned char */
-
-#define        __USHRT_MAX     0xffffU         /* max value for an unsigned short */
-#define        __SHRT_MAX      0x7fff          /* max value for a short */
-#define        __SHRT_MIN      (-0x7fff - 1)   /* min value for a short */
-
-#define        __UINT_MAX      0xffffffffU     /* max value for an unsigned int */
-#define        __INT_MAX       0x7fffffff      /* max value for an int */
-#define        __INT_MIN       (-0x7fffffff - 1)       /* min value for an int */
-
-#define        __ULONG_MAX     0xffffffffffffffffUL    /* max for an unsigned long */
-#define        __LONG_MAX      0x7fffffffffffffffL     /* max for a long */
-#define        __LONG_MIN      (-0x7fffffffffffffffL - 1) /* min for a long */
-
-                       /* max value for an unsigned long long */
-#define        __ULLONG_MAX    0xffffffffffffffffULL
-#define        __LLONG_MAX     0x7fffffffffffffffLL    /* max value for a long long */
-#define        __LLONG_MIN     (-0x7fffffffffffffffLL - 1)  /* min for a long long */
-
-#define        __SSIZE_MAX     __LONG_MAX      /* max value for a ssize_t */
-
-#define        __SIZE_T_MAX    __ULONG_MAX     /* max value for a size_t */
-
-#define        __OFF_MAX       __LONG_MAX      /* max value for an off_t */
-#define        __OFF_MIN       __LONG_MIN      /* min value for an off_t */
-
-/* Quads and longs are the same on the amd64.  Ensure they stay in sync. */
-#define        __UQUAD_MAX     __ULONG_MAX     /* max value for a uquad_t */
-#define        __QUAD_MAX      __LONG_MAX      /* max value for a quad_t */
-#define        __QUAD_MIN      __LONG_MIN      /* min value for a quad_t */
-
-#define        __LONG_BIT      64
-#define        __WORD_BIT      32
-
-/*
- * Minimum signal stack size. The current signal frame
- * for i386 is 408 bytes large.
- */
-#define        __MINSIGSTKSZ   (512 * 4)
-
-#endif /* !_MACHINE__LIMITS_H_ */
diff --git a/include/arch/k1om/machine/asm.h b/include/arch/k1om/machine/asm.h
deleted file mode 100644 (file)
index 7efd642..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *     from: @(#)DEFS.h        5.1 (Berkeley) 4/23/90
- * $FreeBSD$
- */
-
-#ifndef _MACHINE_ASM_H_
-#define        _MACHINE_ASM_H_
-
-#include <sys/cdefs.h>
-
-#ifdef PIC
-#define        PIC_PLT(x)      x@PLT
-#define        PIC_GOT(x)      x@GOTPCREL(%rip)
-#else
-#define        PIC_PLT(x)      x
-#define        PIC_GOT(x)      x
-#endif
-
-/*
- * CNAME and HIDENAME manage the relationship between symbol names in C
- * and the equivalent assembly language names.  CNAME is given a name as
- * it would be used in a C program.  It expands to the equivalent assembly
- * language name.  HIDENAME is given an assembly-language name, and expands
- * to a possibly-modified form that will be invisible to C programs.
- */
-#define CNAME(csym)            csym
-#define HIDENAME(asmsym)       .asmsym
-
-#define _START_ENTRY   .text; .p2align 4,0x90
-
-#define _ENTRY(x)      _START_ENTRY; \
-                       .globl CNAME(x); .type CNAME(x),@function; CNAME(x):
-
-#ifdef PROF
-#define        ALTENTRY(x)     _ENTRY(x); \
-                       pushq %rbp; movq %rsp,%rbp; \
-                       call PIC_PLT(HIDENAME(mcount)); \
-                       popq %rbp; \
-                       jmp 9f
-#define        ENTRY(x)        _ENTRY(x); \
-                       pushq %rbp; movq %rsp,%rbp; \
-                       call PIC_PLT(HIDENAME(mcount)); \
-                       popq %rbp; \
-                       9:
-#else
-#define        ALTENTRY(x)     _ENTRY(x)
-#define        ENTRY(x)        _ENTRY(x)
-#endif
-
-#define        END(x)          .size x, . - x
-
-#define RCSID(x)       .text; .asciz x
-
-#undef __FBSDID
-#if !defined(lint) && !defined(STRIP_FBSDID)
-#define __FBSDID(s)    .ident s
-#else
-#define __FBSDID(s)    /* nothing */
-#endif /* not lint and not STRIP_FBSDID */
-
-#endif /* !_MACHINE_ASM_H_ */
diff --git a/include/arch/k1om/machine/endian.h b/include/arch/k1om/machine/endian.h
deleted file mode 100644 (file)
index 5455cbe..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-/*-
- * Copyright (c) 1987, 1991 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *     @(#)endian.h    7.8 (Berkeley) 4/3/91
- * $FreeBSD: src/sys/amd64/include/endian.h,v 1.8 2005/03/11 21:46:01 peter Exp $
- */
-
-#ifndef _MACHINE_ENDIAN_H_
-#define        _MACHINE_ENDIAN_H_
-
-#include <sys/cdefs.h>
-#include <sys/_types.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Define the order of 32-bit words in 64-bit words.
- */
-#define        _QUAD_HIGHWORD 1
-#define        _QUAD_LOWWORD 0
-
-/*
- * Definitions for byte order, according to byte significance from low
- * address to high.
- */
-#define        _LITTLE_ENDIAN  1234    /* LSB first: i386, vax */
-#define        _BIG_ENDIAN     4321    /* MSB first: 68000, ibm, net */
-#define        _PDP_ENDIAN     3412    /* LSB first in word, MSW first in long */
-
-#define        _BYTE_ORDER     _LITTLE_ENDIAN
-
-/*
- * Deprecated variants that don't have enough underscores to be useful in more
- * strict namespaces.
- */
-#if __BSD_VISIBLE
-#define        LITTLE_ENDIAN   _LITTLE_ENDIAN
-#define        BIG_ENDIAN      _BIG_ENDIAN
-#define        PDP_ENDIAN      _PDP_ENDIAN
-#define        BYTE_ORDER      _BYTE_ORDER
-#endif
-
-#if defined(__GNUCLIKE_ASM) && defined(__GNUCLIKE_BUILTIN_CONSTANT_P)
-
-#define __word_swap_int_var(x) \
-__extension__ ({ register __uint32_t __X = (x); \
-   __asm ("rorl $16, %0" : "+r" (__X)); \
-   __X; })
-
-#ifdef __OPTIMIZE__
-
-#define        __word_swap_int_const(x) \
-       ((((x) & 0xffff0000) >> 16) | \
-        (((x) & 0x0000ffff) << 16))
-#define        __word_swap_int(x) (__builtin_constant_p(x) ? \
-       __word_swap_int_const(x) : __word_swap_int_var(x))
-
-#else  /* __OPTIMIZE__ */
-
-#define        __word_swap_int(x) __word_swap_int_var(x)
-
-#endif /* __OPTIMIZE__ */
-
-#define __byte_swap_int_var(x) \
-__extension__ ({ register __uint32_t __X = (x); \
-   __asm ("bswap %0" : "+r" (__X)); \
-   __X; })
-
-#ifdef __OPTIMIZE__
-
-#define        __byte_swap_int_const(x) \
-       ((((x) & 0xff000000) >> 24) | \
-        (((x) & 0x00ff0000) >>  8) | \
-        (((x) & 0x0000ff00) <<  8) | \
-        (((x) & 0x000000ff) << 24))
-#define        __byte_swap_int(x) (__builtin_constant_p(x) ? \
-       __byte_swap_int_const(x) : __byte_swap_int_var(x))
-
-#else  /* __OPTIMIZE__ */
-
-#define        __byte_swap_int(x) __byte_swap_int_var(x)
-
-#endif /* __OPTIMIZE__ */
-
-#define __byte_swap_long_var(x) \
-__extension__ ({ register __uint64_t __X = (x); \
-   __asm ("bswap %0" : "+r" (__X)); \
-   __X; })
-
-#ifdef __OPTIMIZE__
-
-#define        __byte_swap_long_const(x) \
-       (((x >> 56) | \
-        ((x >> 40) & 0xff00) | \
-        ((x >> 24) & 0xff0000) | \
-        ((x >> 8) & 0xff000000) | \
-        ((x << 8) & (0xfful << 32)) | \
-        ((x << 24) & (0xfful << 40)) | \
-        ((x << 40) & (0xfful << 48)) | \
-        ((x << 56))))
-
-#define        __byte_swap_long(x) (__builtin_constant_p(x) ? \
-       __byte_swap_long_const(x) : __byte_swap_long_var(x))
-
-#else  /* __OPTIMIZE__ */
-
-#define        __byte_swap_long(x) __byte_swap_long_var(x)
-
-#endif /* __OPTIMIZE__ */
-
-#define __byte_swap_word_var(x) \
-__extension__ ({ register __uint16_t __X = (x); \
-   __asm ("xchgb %h0, %b0" : "+Q" (__X)); \
-   __X; })
-
-#ifdef __OPTIMIZE__
-
-#define        __byte_swap_word_const(x) \
-       ((((x) & 0xff00) >> 8) | \
-        (((x) & 0x00ff) << 8))
-
-#define        __byte_swap_word(x) (__builtin_constant_p(x) ? \
-       __byte_swap_word_const(x) : __byte_swap_word_var(x))
-
-#else  /* __OPTIMIZE__ */
-
-#define        __byte_swap_word(x) __byte_swap_word_var(x)
-
-#endif /* __OPTIMIZE__ */
-
-static __inline __uint64_t
-__bswap64(__uint64_t _x)
-{
-
-       return (__byte_swap_long(_x));
-}
-
-static __inline __uint32_t
-__bswap32(__uint32_t _x)
-{
-
-       return (__byte_swap_int(_x));
-}
-
-static __inline __uint16_t
-__bswap16(__uint16_t _x)
-{
-
-       return (__byte_swap_word(_x));
-}
-
-#define        __htonl(x)      __bswap32(x)
-#define        __htons(x)      __bswap16(x)
-#define        __ntohl(x)      __bswap32(x)
-#define        __ntohs(x)      __bswap16(x)
-
-#else /* !(__GNUCLIKE_ASM && __GNUCLIKE_BUILTIN_CONSTANT_P) */
-
-/*
- * No optimizations are available for this compiler.  Fall back to
- * non-optimized functions by defining the constant usually used to prevent
- * redefinition.
- */
-#define        _BYTEORDER_FUNC_DEFINED
-
-#endif /* __GNUCLIKE_ASM && __GNUCLIKE_BUILTIN_CONSTANT_P */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* !_MACHINE_ENDIAN_H_ */
diff --git a/include/arch/k1om/machine/fpu.h b/include/arch/k1om/machine/fpu.h
deleted file mode 100644 (file)
index 04b205b..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *     from: @(#)npx.h 5.3 (Berkeley) 1/18/91
- * $FreeBSD: src/sys/amd64/include/fpu.h,v 1.33 2004/04/05 21:25:51 imp Exp $
- */
-
-/*
- * Floating Point Data Structures and Constants
- * W. Jolitz 1/90
- */
-
-#ifndef _MACHINE_FPU_H_
-#define        _MACHINE_FPU_H_
-
-/* Contents of each x87 floating point accumulator */
-struct fpacc87 {
-       u_char  fp_bytes[10];
-};
-
-/* Contents of each SSE extended accumulator */
-struct  xmmacc {
-       u_char  xmm_bytes[16];
-};
-
-struct  envxmm {
-       u_int16_t       en_cw;          /* control word (16bits) */
-       u_int16_t       en_sw;          /* status word (16bits) */
-       u_int8_t        en_tw;          /* tag word (8bits) */
-       u_int8_t        en_zero;
-       u_int16_t       en_opcode;      /* opcode last executed (11 bits ) */
-       u_int64_t       en_rip;         /* floating point instruction pointer */
-       u_int64_t       en_rdp;         /* floating operand pointer */
-       u_int32_t       en_mxcsr;       /* SSE sontorol/status register */
-       u_int32_t       en_mxcsr_mask;  /* valid bits in mxcsr */
-};
-
-struct  savefpu {
-       struct  envxmm  sv_env;
-       struct {
-               struct fpacc87  fp_acc;
-               u_char          fp_pad[6];      /* padding */
-       } sv_fp[8];
-       struct xmmacc   sv_xmm[16];
-       u_char sv_pad[96];
-} __aligned(16);
-
-/*
- * The hardware default control word for i387's and later coprocessors is
- * 0x37F, giving:
- *
- *     round to nearest
- *     64-bit precision
- *     all exceptions masked.
- *
- * FreeBSD/i386 uses 53 bit precision for things like fadd/fsub/fsqrt etc
- * because of the difference between memory and fpu register stack arguments.
- * If its using an intermediate fpu register, it has 80/64 bits to work
- * with.  If it uses memory, it has 64/53 bits to work with.  However,
- * gcc is aware of this and goes to a fair bit of trouble to make the
- * best use of it.
- *
- * This is mostly academic for AMD64, because the ABI prefers the use
- * SSE2 based math.  For FreeBSD/amd64, we go with the default settings.
- */
-#define        __INITIAL_FPUCW__       0x037F
-#define        __INITIAL_MXCSR__       0x1F80
-#define        __INITIAL_MXCSR_MASK__  0xFFBF
-
-#ifdef _KERNEL
-int    fpudna(void);
-void   fpudrop(void);
-void   fpuexit(struct thread *td);
-int    fpuformat(void);
-int    fpugetregs(struct thread *td, struct savefpu *addr);
-void   fpuinit(void);
-void   fpusetregs(struct thread *td, struct savefpu *addr);
-int    fputrap(void);
-#endif
-
-#endif /* !_MACHINE_FPU_H_ */
diff --git a/include/arch/k1om/machine/types.h b/include/arch/k1om/machine/types.h
deleted file mode 100644 (file)
index 5072a88..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-#ifndef        _MACHTYPES_H_
-#define        _MACHTYPES_H_
-
-/*
- *  The following section is RTEMS specific and is needed to more
- *  closely match the types defined in the BSD machine/types.h.
- *  This is needed to let the RTEMS/BSD TCP/IP stack compile.
- */
-#if defined(__rtems__)
-#include <machine/_types.h>
-#endif
-
-#define        _CLOCK_T_       __clock_t               /* clock() */
-#define        _TIME_T_        long                    /* time() */
-#define _CLOCKID_T_    unsigned long
-#define _TIMER_T_      unsigned long
-
-#ifndef _HAVE_SYSTYPES
-typedef long int __off_t;
-typedef int __pid_t;
-#ifdef __GNUC__
-__extension__ typedef long long int __loff_t;
-#else
-typedef long int __loff_t;
-#endif
-#endif
-
-#endif /* _MACHTYPES_H_ */
-
-
diff --git a/include/target/k1om/barrelfish/dispatcher_target.h b/include/target/k1om/barrelfish/dispatcher_target.h
deleted file mode 100644 (file)
index 91d7251..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/**
- * \file
- * \brief Architecture specific dispatcher structure private to the user
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef TARGET_X86_64_BARRELFISH_DISPATCHER_H
-#define TARGET_X86_64_BARRELFISH_DISPATCHER_H
-
-#include <barrelfish_kpi/dispatcher_shared.h>
-#include <barrelfish_kpi/dispatcher_shared_arch.h>
-#include <barrelfish/dispatcher.h>
-
-/// Dispatcher structure (including data accessed only by user code)
-struct dispatcher_x86_64 {
-    struct dispatcher_shared_x86_64 d;  ///< Shared (user/kernel) data. Must be first.
-    struct dispatcher_generic generic;  ///< User private data
-
-    uint16_t disp_seg_selector;         ///< Dispatcher segment selector
-    /// Dummy segment to which disp_seg_selector refers; see ldt_init_disabled()
-    uintptr_t dummyseg[2];              
-
-    /* Incoming LMP endpoints (buffers and receive cap pointers) follow */
-};
-
-static inline struct dispatcher_generic*
-get_dispatcher_generic_x86_64(dispatcher_handle_t handle)
-{
-    struct dispatcher_x86_64 *disp = (struct dispatcher_x86_64*)handle;
-    return &disp->generic;
-}
-
-static inline struct dispatcher_x86_64 *
-get_dispatcher_x86_64(dispatcher_handle_t handle)
-{
-    return (struct dispatcher_x86_64*)handle;
-}
-
-#endif // TARGET_X86_64_BARRELFISH_DISPATCHER_H
diff --git a/include/target/k1om/barrelfish/pmap_target.h b/include/target/k1om/barrelfish/pmap_target.h
deleted file mode 100644 (file)
index c8474cf..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/**
- * \file
- * \brief Arch specific declerations that can be included by others
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef TARGET_X86_64_BARRELFISH_PMAP_H
-#define TARGET_X86_64_BARRELFISH_PMAP_H
-
-#include <target/x86/barrelfish/pmap_target.h>
-
-struct pmap_dump_info {
-    size_t pml4_index, pdpt_index, pdir_index, pt_index;
-    vregion_flags_t flags;
-    struct capref cap;
-    genvaddr_t offset;
-};
-#define PRIfmtPTIDX "%zd.%zd.%zd.%zd"
-#define GET_PTIDX(dump_info) (dump_info)->pml4_index, (dump_info)->pdpt_index, \
-                             (dump_info)->pdir_index, (dump_info)->pt_index
-
-errval_t pmap_x86_64_init(struct pmap *pmap, struct vspace *vspace,
-                          struct capref vnode,
-                          struct slot_allocator *opt_slot_alloc);
-errval_t pmap_x86_64_current_init(bool);
-
-#endif // TARGET_X86_64_BARRELFISH_PMAP_H
diff --git a/include/target/k1om/barrelfish_kpi/cpu_target.h b/include/target/k1om/barrelfish_kpi/cpu_target.h
deleted file mode 100644 (file)
index 7769962..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * \file
- * \brief Arch specific CPU declarations
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-/*-
- * Copyright (c) 1989, 1990 William F. Jolitz
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *      from: @(#)segments.h    7.1 (Berkeley) 5/9/91
- * $FreeBSD$
- */
-
-#ifndef TARGET_X86_64_BARRELFISH_KPI_CPU_H
-#define TARGET_X86_64_BARRELFISH_KPI_CPU_H
-
-/*
- * AMD64 Segmentation Data Structures and definitions
- */
-
-/**
- * \brief Segment descriptor
- */
-union segment_descriptor { // FIXME: rename to x86_64_segment_descriptor
-    uint64_t raw;
-    struct {
-        uint64_t lo_limit:16;
-        uint64_t lo_base:24;
-        uint64_t type:4;
-        uint64_t system_desc:1;         // S
-        uint64_t privilege_level:2;     // DPL
-        uint64_t present:1;             // P
-        uint64_t hi_limit:4;
-        uint64_t available:1;           // AVL
-        uint64_t long_mode:1;           // L
-        uint64_t operation_size:1;      // D/B
-        uint64_t granularity:1;         // G
-        uint64_t hi_base:8;
-    } d;
-    struct {
-        uint64_t lo_limit:16;
-        uint64_t lo_base:24;
-        uint64_t type:4;
-        uint64_t always0:1;
-        uint64_t privilege_level:2;
-        uint64_t present:1;
-        uint64_t hi_limit:4;
-        uint64_t available:1;
-        uint64_t always0_1:2;
-        uint64_t granularity:1;
-        uint64_t hi_base:8;
-    } sys_lo; ///< low part of system descriptor (TSS, LDT, etc.)
-    struct {
-        uint64_t base:32;
-        uint64_t reserved:8;
-        uint64_t always0:5;
-        uint64_t reserved2:19;
-    } sys_hi; ///< high part of system descriptor (TSS, LDT, etc.)
-};
-
-///< Constructs a segment selector in the LDT with user privilege
-#define X86_64_LDT_SELECTOR(s) (((s)<<3) | 7)
-
-///< Return the index of a segment selector
-#define X86_64_SELECTOR_IDX(s) ((s)>>3)
-
-#endif
diff --git a/include/target/k1om/barrelfish_kpi/dispatcher_shared_target.h b/include/target/k1om/barrelfish_kpi/dispatcher_shared_target.h
deleted file mode 100644 (file)
index 2905ca4..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * \file
- * \brief Architecture specific dispatcher struct shared between kernel and user
- */
-
-/*
- * Copyright (c) 2007, 2008, 2009, 2010, 2011, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef TARGET_X86_64_BARRELFISH_KPI_DISPATCHER_SHARED_H
-#define TARGET_X86_64_BARRELFISH_KPI_DISPATCHER_SHARED_H
-
-#include <barrelfish_kpi/dispatcher_shared.h>
-
-///< Architecture specific kernel/user shared dispatcher struct
-struct dispatcher_shared_x86_64 {
-    struct dispatcher_shared_generic d; ///< Generic portion
-
-    lvaddr_t    crit_pc_low;        ///< Critical section lower PC bound
-    lvaddr_t    crit_pc_high;       ///< Critical section upper PC bound
-
-    lvaddr_t    ldt_base;           ///< Base address of local descriptor table (LDT)
-    size_t      ldt_npages;         ///< Size of local descriptor table (# 4k pages)
-
-    struct registers_x86_64 enabled_save_area;  ///< Enabled register save area
-    struct registers_x86_64 disabled_save_area; ///< Disabled register save area
-    struct registers_x86_64 trap_save_area;     ///< Trap register save area
-    struct registers_fpu_x86_64 enabled_fpu_state;      ///< FPU register save area
-    struct registers_fpu_x86_64 disabled_fpu_state;     ///< FPU register save area
-};
-
-static inline struct dispatcher_shared_x86_64*
-get_dispatcher_shared_x86_64(dispatcher_handle_t handle)
-{
-    return (struct dispatcher_shared_x86_64*)handle;
-}
-
-static inline struct registers_x86_64*
-dispatcher_x86_64_get_enabled_save_area(dispatcher_handle_t handle)
-{
-    struct dispatcher_shared_x86_64 *disp =
-        get_dispatcher_shared_x86_64(handle);
-    return &disp->enabled_save_area;
-}
-
-static inline struct registers_x86_64*
-dispatcher_x86_64_get_disabled_save_area(dispatcher_handle_t handle)
-{
-    struct dispatcher_shared_x86_64 *disp =
-        get_dispatcher_shared_x86_64(handle);
-    return &disp->disabled_save_area;
-}
-
-static inline struct registers_x86_64*
-dispatcher_x86_64_get_trap_save_area(dispatcher_handle_t handle)
-{
-    struct dispatcher_shared_x86_64 *disp =
-        get_dispatcher_shared_x86_64(handle);
-    return &disp->trap_save_area;
-}
-
-static inline struct registers_fpu_x86_64*
-dispatcher_x86_64_get_enabled_fpu_save_area(dispatcher_handle_t handle)
-{
-    struct dispatcher_shared_x86_64 *disp =
-        get_dispatcher_shared_x86_64(handle);
-    return &disp->enabled_fpu_state;
-}
-
-static inline struct registers_fpu_x86_64*
-dispatcher_x86_64_get_disabled_fpu_save_area(dispatcher_handle_t handle)
-{
-    struct dispatcher_shared_x86_64 *disp =
-        get_dispatcher_shared_x86_64(handle);
-    return &disp->disabled_fpu_state;
-}
-
-#endif // TARGET_X86_64_BARRELFISH_KPI_DISPATCHER_SHARED_H
diff --git a/include/target/k1om/barrelfish_kpi/paging_target.h b/include/target/k1om/barrelfish_kpi/paging_target.h
deleted file mode 100644 (file)
index ca2e684..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- * \file
- * \brief Arch specific definitions, can be included by others.
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef TARGET_K1OM_BARRELFISH_KPI_PAGING_H
-#define TARGET_K1OM_BARRELFISH_KPI_PAGING_H
-
-#ifndef __ASSEMBLER__
-typedef uint64_t paging_x86_64_flags_t;
-#endif
-
-/** The system's base page size is 4kB */
-#define X86_64_BASE_PAGE_BITS                  12
-#define X86_64_BASE_PAGE_SIZE                  0x1000
-#define X86_64_BASE_PAGE_MASK                  (X86_64_BASE_PAGE_SIZE - 1)
-#define X86_64_BASE_PAGE_OFFSET(a)             ((a) & X86_64_BASE_PAGE_MASK)
-
-/** The system's large page size is 2MB */
-#define X86_64_LARGE_PAGE_BITS                  21
-#define X86_64_LARGE_PAGE_SIZE                  0x200000
-#define X86_64_LARGE_PAGE_MASK                  (X86_64_LARGE_PAGE_SIZE - 1)
-#define X86_64_LARGE_PAGE_OFFSET(a)             ((a) & X86_64_LARGE_PAGE_MASK)
-
-/**
- * Bits within the various page directories and tables.
- */
-#define X86_64_PTABLE_EXECUTE_DISABLE  (((paging_x86_64_flags_t)1) << 63)
-#define X86_64_PTABLE_GLOBAL_PAGE      (((paging_x86_64_flags_t)1) << 8)
-#define X86_64_PTABLE_ATTR_INDEX       (((paging_x86_64_flags_t)1) << 7)
-#define X86_64_PTABLE_DIRTY            (((paging_x86_64_flags_t)1) << 6)
-#define X86_64_PTABLE_ACCESSED         (((paging_x86_64_flags_t)1) << 5)
-#define X86_64_PTABLE_CACHE_DISABLED   (((paging_x86_64_flags_t)1) << 4)
-#define X86_64_PTABLE_WRITE_THROUGH    (((paging_x86_64_flags_t)1) << 3)
-#define X86_64_PTABLE_USER_SUPERVISOR  (((paging_x86_64_flags_t)1) << 2)
-#define X86_64_PTABLE_READ_WRITE       (((paging_x86_64_flags_t)1) << 1)
-#define X86_64_PTABLE_PRESENT          (((paging_x86_64_flags_t)1) << 0)
-
-#define X86_64_PTABLE_SIZE         512     /**< Page directory/table size */
-#define X86_64_PTABLE_MASK         0x1ff   /**< Page dir/table address mask */
-#define X86_64_PTABLE_CLEAR        0       /**< Bitmap of a clear table entry */
-
-#define X86_64_PTABLE_ENTRY_SIZE   sizeof(union x86_64_pdir_entry)
-
-/// Default access is read/write, but not execute
-#define X86_64_PTABLE_ACCESS_DEFAULT \
-    (X86_64_PTABLE_EXECUTE_DISABLE | X86_64_PTABLE_USER_SUPERVISOR | \
-     X86_64_PTABLE_READ_WRITE)
-#define X86_64_PTABLE_ACCESS_READONLY \
-    (X86_64_PTABLE_EXECUTE_DISABLE | X86_64_PTABLE_USER_SUPERVISOR)
-
-/* Macros to compute the corresponding portions of the vaddr */
-#define X86_64_PML4_BASE(base)         (((uint64_t)(base) >> 39) & X86_64_PTABLE_MASK)
-#define X86_64_PDPT_BASE(base)         (((uint64_t)(base) >> 30) & X86_64_PTABLE_MASK)
-#define X86_64_PDIR_BASE(base)         (((uint64_t)(base) >> 21) & X86_64_PTABLE_MASK)
-#define X86_64_PTABLE_BASE(base)       (((uint64_t)(base) >> 12) & X86_64_PTABLE_MASK)
-
-#endif // TARGET_X86_64_BARRELFISH_KPI_PAGING_H
diff --git a/include/target/k1om/barrelfish_kpi/registers_target.h b/include/target/k1om/barrelfish_kpi/registers_target.h
deleted file mode 100644 (file)
index 06b2ea6..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-/**
- * \file
- * \brief Arch specific definition of the registers, can be included by anyone.
- * Definitions shared by kernel and user
- */
-
-/*
- * Copyright (c) 2010, ETH Zurich.
- * All rights reserved.
- *
- * This file is distributed under the terms in the attached LICENSE file.
- * If you do not find this file, copies can be found by writing to:
- * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
- */
-
-#ifndef TARGET_X86_64_BARRELFISH_KPI_REGISTERS_H
-#define TARGET_X86_64_BARRELFISH_KPI_REGISTERS_H
-
-#include <barrelfish_kpi/eflags_arch.h> // for USER_EFLAGS
-#include <barrelfish_kpi/types.h>       // for lvaddr_t
-
-/** \brief Number of registers to be saved for this architecture
- *
- * This is the same as ARCH_NUMREGS, but it is used by assembler stubs, so needs
- * to be defined here as a constant.
- */
-#define X86_64_NUM_REGS                        20
-
-#ifndef __ASSEMBLER__
-
-// Warning: both the GDB stubs and any number of asm fragments depend
-// on the order of these fields. Don't change them without due care!
-struct registers_x86_64 {
-    uint64_t rax, rbx, rcx, rdx, rsi, rdi, rbp, rsp,
-        r8, r9, r10, r11, r12, r13, r14, r15, rip, eflags;
-    uint16_t fs, gs; ///< Only meaningful segment selectors in 64-bit mode
-};
-
-struct registers_fpu_x86_64 {
-    // Should be aligned at 16-byte boundary, according to Intel
-    // description of FXRSTOR instruction.
-    uint8_t registers[512 + 16] __attribute__ ((aligned (16)));
-};
-
-static inline void
-registers_x86_64_set_entry(struct registers_x86_64 *regs, lvaddr_t entry)
-{
-    regs->rip    = entry;
-    regs->eflags = USER_EFLAGS;
-    regs->fs = 0;
-    regs->gs = 0;
-}
-
-static inline void
-registers_x86_64_set_param(struct registers_x86_64 *regs, uint64_t param)
-{
-    regs->rax = param;
-}
-
-static inline void
-registers_x86_64_get_param(struct registers_x86_64 *regs, uint64_t *param)
-{
-    *param = regs->rax;
-}
-
-static inline uint64_t
-registers_x86_64_get_ip(struct registers_x86_64 *regs)
-{
-    return regs->rip;
-}
-
-static inline uint64_t
-registers_x86_64_get_sp(struct registers_x86_64 *regs)
-{
-    return regs->rsp;
-}
-
-#endif // __ASSEMBLER__
-#endif // TARGET_X86_64_BARRELFISH_KPI_REGISTERS_H