common: alignment: Add a helper function for generic alignment checking.
This commit is contained in:
		
							parent
							
								
									ad48ebb2c8
								
							
						
					
					
						commit
						b838e58d63
					
				@ -38,6 +38,13 @@ constexpr bool IsWordAligned(T value) {
 | 
			
		||||
    return (value & 0b11) == 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
template <typename T>
 | 
			
		||||
constexpr bool IsAligned(T value, std::size_t alignment) {
 | 
			
		||||
    using U = typename std::make_unsigned<T>::type;
 | 
			
		||||
    const U mask = static_cast<U>(alignment - 1);
 | 
			
		||||
    return (value & mask) == 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
template <typename T, std::size_t Align = 16>
 | 
			
		||||
class AlignmentAllocator {
 | 
			
		||||
public:
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user