clang supports arbitrary length ints using the _ExtInt extension. This
can be useful to hold very large values, e.g. 256 bit or 512 bit types.

This requires the _ExtInt extension enabled in clang, which is under
review.

Link: https://clang.llvm.org/docs/LanguageExtensions.html#extended-integer-types
Link: https://reviews.llvm.org/D93103

Signed-off-by: Sean Young <s...@mess.org>
---
 tools/lib/bpf/btf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/lib/bpf/btf.c b/tools/lib/bpf/btf.c
index 3c3f2bc6c652..a676373f052b 100644
--- a/tools/lib/bpf/btf.c
+++ b/tools/lib/bpf/btf.c
@@ -1722,7 +1722,7 @@ int btf__add_int(struct btf *btf, const char *name, 
size_t byte_sz, int encoding
        if (!name || !name[0])
                return -EINVAL;
        /* byte_sz must be power of 2 */
-       if (!byte_sz || (byte_sz & (byte_sz - 1)) || byte_sz > 16)
+       if (!byte_sz || (byte_sz & (byte_sz - 1)) || byte_sz > 64)
                return -EINVAL;
        if (encoding & ~(BTF_INT_SIGNED | BTF_INT_CHAR | BTF_INT_BOOL))
                return -EINVAL;
-- 
2.29.2

Reply via email to