[llvm] [ADT] Always use 32-bit size type for SmallVector with 16-bit elements (PR #95536)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 14 06:31:50 PDT 2024


================
@@ -116,8 +116,7 @@ template <class Size_T> class SmallVectorBase {
 
 template <class T>
 using SmallVectorSizeType =
-    std::conditional_t<sizeof(T) < 4 && sizeof(void *) >= 8, uint64_t,
-                       uint32_t>;
+    std::conditional_t<sizeof(T) == 1, uintptr_t, uint32_t>;
----------------
nikic wrote:

```suggestion
    std::conditional_t<sizeof(T) == 1, size_t, uint32_t>;
```
Unlikely to differ, but I think that is closer to what is intended...

https://github.com/llvm/llvm-project/pull/95536


More information about the llvm-commits mailing list