1 #ifndef JEMALLOC_INTERNAL_QUANTUM_H
2 #define JEMALLOC_INTERNAL_QUANTUM_H
5 * Minimum allocation alignment is 2^LG_QUANTUM bytes (ignoring tiny size
9 # if (defined(__i386__) || defined(_M_IX86))
18 # if (defined(__sparc64__) || defined(__sparcv9) || defined(__sparc_v9__))
21 # if (defined(__amd64__) || defined(__x86_64__) || defined(_M_X64))
48 # if defined(__riscv) || defined(__riscv__)
54 # if (defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || \
55 defined(__SH4_SINGLE_ONLY__))
65 # error "Unknown minimum alignment for architecture; specify via "
70 #define QUANTUM ((size_t)(1U << LG_QUANTUM))
71 #define QUANTUM_MASK (QUANTUM - 1)
73 /* Return the smallest quantum multiple that is >= a. */
74 #define QUANTUM_CEILING(a) \
75 (((a) + QUANTUM_MASK) & ~QUANTUM_MASK)
77 #endif /* JEMALLOC_INTERNAL_QUANTUM_H */