Files
cKit/Base/c_Compiler_MSVC.h
T

23 lines
753 B
C
Raw Normal View History

2026-08-29 00:53:40 +08:00
#ifndef INCLUDED_C_COMPILER_MSVC_H
#define INCLUDED_C_COMPILER_MSVC_H
#define C_INLINE __forceinline
#define C_NOINLINE __declspec(noinline)
#define C_STATIC_FORCE_INLINE static C_INLINE
#define C_PACKED_STRUCT_START __pragma(pack(push, 1))
#define C_PACKED_STRUCT_END __pragma(pack(pop))
#define C_PACKED /* MSVC 不支持通过单行后缀修饰变量 */
#define C_ALIGN(bytes) __declspec(align(bytes))
/* 通知编译器两个指针指向的内存绝不重叠,用于大幅提升数学库(Math)的向量化效率 */
#define C_RESTRICT __restrict
/* 用于 Search / Sort 等高频判断分支,提示 CPU 哪条分支概率更高 */
#define C_LIKELY(x) (x)
#define C_UNLIKELY(x) (x)
#endif /*INCLUDED_C_COMPILER_MSVC_H*/