Move likely/unlikely to compiler.h

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
This commit is contained in:
Yuxuan Shui 2018-12-15 19:11:46 +00:00
parent b73dce1d6d
commit 68873efaa2
No known key found for this signature in database
GPG Key ID: 37C999F617EA1A47
3 changed files with 7 additions and 8 deletions

View File

@ -121,12 +121,6 @@
#define MSTR_(s) #s #define MSTR_(s) #s
#define MSTR(s) MSTR_(s) #define MSTR(s) MSTR_(s)
/// @brief Wrapper for gcc branch prediction builtin, for likely branch.
#define likely(x) __builtin_expect(!!(x), 1)
/// @brief Wrapper for gcc branch prediction builtin, for unlikely branch.
#define unlikely(x) __builtin_expect(!!(x), 0)
// Use #s here to prevent macro expansion // Use #s here to prevent macro expansion
/// Macro used for shortening some debugging code. /// Macro used for shortening some debugging code.
#define CASESTRRET(s) case s: return #s #define CASESTRRET(s) case s: return #s

View File

@ -1,4 +1,7 @@
// SPDX-License-Identifier: MPL-2.0 // SPDX-License-Identifier: MPL-2.0
// Copyright (c) 2018 Yuxuan Shui <yshuiv7@gmail.com> // Copyright (c) 2018 Yuxuan Shui <yshuiv7@gmail.com>
#pragma once #pragma once
#define auto __auto_type
#define auto __auto_type
#define likely(x) __builtin_expect(!!(x), 1)
#define unlikely(x) __builtin_expect(!!(x), 0)

View File

@ -10,6 +10,8 @@
#include <stdio.h> #include <stdio.h>
#include <unistd.h> #include <unistd.h>
#include "compiler.h"
#define ARR_SIZE(arr) (sizeof(arr)/sizeof(arr[0])) #define ARR_SIZE(arr) (sizeof(arr)/sizeof(arr[0]))
#ifdef __FAST_MATH__ #ifdef __FAST_MATH__
@ -104,7 +106,7 @@ normalize_d(double d) {
*/ */
static inline void * static inline void *
allocchk_(const char *func_name, void *ptr) { allocchk_(const char *func_name, void *ptr) {
if (!ptr) { if (unlikely(!ptr)) {
// Since memory allocation failed, we try to print // Since memory allocation failed, we try to print
// this error message without any memory allocation. // this error message without any memory allocation.
const char msg[] = "(): Failed to allocate memory\n"; const char msg[] = "(): Failed to allocate memory\n";