1 #ifndef RUBY_BACKWARD2_ASSUME_H
2 #define RUBY_BACKWARD2_ASSUME_H
23 #include "ruby/internal/config.h"
27 #define ASSUME RBIMPL_ASSUME
28 #define UNREACHABLE RBIMPL_UNREACHABLE()
29 #define UNREACHABLE_RETURN RBIMPL_UNREACHABLE_RETURN
32 #if RBIMPL_HAS_BUILTIN(__builtin_expect)
43 # define RB_LIKELY(x) (__builtin_expect(!!(x), 1))
50 # define RB_UNLIKELY(x) (__builtin_expect(!!(x), 0))
52 # define RB_LIKELY(x) (x)
53 # define RB_UNLIKELY(x) (x)
Defines RBIMPL_HAS_BUILTIN.
Defines RBIMPL_ASSUME / RBIMPL_UNREACHABLE.