Lines Matching refs:T
61 template<typename T>
62 ALWAYS_INLINE T Load(uintptr_t offset) const { in Load()
63 T* address = ComputeInternalPointer<T>(offset); in Load()
71 template<typename T>
72 ALWAYS_INLINE void Store(uintptr_t offset, T value) const { in Store()
73 T* address = ComputeInternalPointer<T>(offset); in Store()
80 template<typename T>
81 ALWAYS_INLINE T LoadUnaligned(uintptr_t offset) const { in LoadUnaligned()
83 using U = std::make_unsigned_t<T>; in LoadUnaligned()
90 return bit_cast<T, U>(equivalent_unsigned_integer_value); in LoadUnaligned()
95 template<typename T>
96 ALWAYS_INLINE void StoreUnaligned(uintptr_t offset, T value) const { in StoreUnaligned()
98 using U = std::make_unsigned_t<T>; in StoreUnaligned()
99 U equivalent_unsigned_integer_value = bit_cast<U, T>(value); in StoreUnaligned()
107 template<typename T>
108 ALWAYS_INLINE T* PointerTo(uintptr_t offset) const { in PointerTo()
109 return ComputeInternalPointer<T>(offset); in PointerTo()
135 template<typename T>
136 ALWAYS_INLINE T* ComputeInternalPointer(size_t offset) const { in ComputeInternalPointer()
137 CHECK_GE(size(), sizeof(T)); in ComputeInternalPointer()
138 CHECK_LE(offset, size() - sizeof(T)); in ComputeInternalPointer()
139 return reinterpret_cast<T*>(begin() + offset); in ComputeInternalPointer()
152 template<typename T> static constexpr bool IsWordAligned(const T* address) { in IsWordAligned()