xref: /xnu-8796.101.5/libkern/os/base_private.h (revision aca3beaa3dfbd42498b42c5e5ce20a938e6554e5)
1 /*
2  * Copyright (c) 2008-2013 Apple Inc. All rights reserved.
3  *
4  * @APPLE_APACHE_LICENSE_HEADER_START@
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  *     http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  * @APPLE_APACHE_LICENSE_HEADER_END@
19  */
20 
21 #ifndef __OS_BASE_PRIVATE__
22 #define __OS_BASE_PRIVATE__
23 
24 #ifndef KERNEL
25 #include <TargetConditionals.h>
26 #endif
27 #include <os/base.h>
28 
29 #ifndef os_fastpath
30 #define os_fastpath(x) ((__typeof__(x))OS_EXPECT((long)(x), ~0l))
31 #endif
32 #ifndef os_slowpath
33 #define os_slowpath(x) ((__typeof__(x))OS_EXPECT((long)(x), 0l))
34 #endif
35 #ifndef os_likely
36 #define os_likely(x) OS_EXPECT(!!(x), 1)
37 #endif
38 #ifndef os_unlikely
39 #define os_unlikely(x) OS_EXPECT(!!(x), 0)
40 #endif
41 
42 
43 #endif // __OS_BASE_PRIVATE__
44