/*
- * Copyright (c) 2000-2005 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 2000-2006 Apple Computer, Inc. All rights reserved.
*
* @APPLE_OSREFERENCE_LICENSE_HEADER_START@
*
* any improvements or extensions that they make and grant Carnegie Mellon
* the rights to redistribute these changes.
*/
-/*
- */
-
#ifndef _I386_SEG_H_
#define _I386_SEG_H_
#include <mach_kdb.h>
+#ifndef ASSEMBLER
#include <stdint.h>
#include <mach/vm_types.h>
#include <architecture/i386/sel.h>
}
#define LDTSZ 8192 /* size of the kernel ldt in entries */
-#define LDTSZ_MIN 17 /* kernel ldt entries used by the system */
+#define LDTSZ_MIN SEL_TO_INDEX(USER_SETTABLE)
+ /* kernel ldt entries */
#if MACH_KDB
#define GDTSZ 19
*/
#define IDTSZ 256
-#ifndef __ASSEMBLER__
-
#include <sys/cdefs.h>
/*
};
#define FAKE_UBER64(addr32) { (uint32_t) (addr32), KERNEL_UBER_BASE_HI32 }
#define FAKE_COMPAT(addr32) { (uint32_t) (addr32), 0x0 }
-#define UBER64(addr32) ((addr64_t) addr32 + KERNEL_UBER_BASE)
+#define UBER64(addr32) ((addr64_t) (uintptr_t)addr32 + KERNEL_UBER_BASE)
/*
* Boot-time data for master (or only) CPU
#define DEBUG_TSS 0x90 /* debug TSS (uniprocessor) */
#endif
+#ifndef __ASSEMBLER__
struct __gdt_desc_struct {
unsigned short size;
unsigned long address __attribute__((packed));
unsigned long address __attribute__((packed));
unsigned short pad;
} __attribute__ ((packed));
-
+#endif /* __ASSEMBLER__ */
#endif /* _I386_SEG_H_ */