(i[34]86sol2): New abbrev for i[34]86-unknown-solaris2.
[kopensolaris-gnu/glibc.git] / mach / mach_init.h
1 #ifndef _MACH_INIT_H
2
3 #define _MACH_INIT_H    1
4
5 #include <mach/mach_types.h>
6
7 /* Return the current task's task port.  */
8 extern mach_port_t __mach_task_self (void);
9 extern mach_port_t mach_task_self (void);
10
11 /* This cache is initialized at startup.  */
12 extern mach_port_t __mach_task_self_;
13 #define __mach_task_self()      __mach_task_self_
14 #define mach_task_self()        __mach_task_self ()
15
16 /* Kernel page size.  */
17 extern vm_size_t __vm_page_size;
18 extern vm_size_t vm_page_size;
19 #define vm_page_size    __vm_page_size /* XXX ? */
20
21 /* Round the address X up to a page boundary.  */
22 #define round_page(x)   \
23   ((((vm_offset_t) (x) + __vm_page_size - 1) / __vm_page_size) * \
24    __vm_page_size)
25
26 /* Truncate the address X down to a page boundary.  */
27 #define trunc_page(x)   \
28   ((((vm_offset_t) (x)) / __vm_page_size) * __vm_page_size)
29
30 #endif  /* mach_init.h */