]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
libctf: doc: add __float128 and SIMD vector classification to spec.
authorBruce McCulloch <bruce.mcculloch@oracle.com>
Fri, 27 Jun 2025 16:21:52 +0000 (09:21 -0700)
committerNick Alcock <nick.alcock@oracle.com>
Tue, 1 Jul 2025 14:54:27 +0000 (15:54 +0100)
This patch adds two additional distinct types (__float128 and the SIMD
vector type generated from the vector_size attribute) to the umbrella of
two existing types (long double and array, respectively). These types
were previously invalid, producing CTF_K_UNKNOWN in the case of
__float128 or a float in the case of the SIMD vector. This patch will
cleanly allow these types to be represented more accurately without
breaking back-compat.

Signed-off-by: Bruce McCulloch <bruce.mcculloch@oracle.com>
Reviewed-by: Nick Alcock <nick.alcock@oracle.com>
libctf/doc/ctf-spec.texi

index 5b2b881a895a9f0f5bf755add7bdd3d10d912941..b9f60d300fc5a5781e6c420982a7a0867f0813a0 100644 (file)
@@ -829,7 +829,7 @@ of kind @code{CTF_K_UNKNOWN}.
 
 @item 4
 @tab @code{CTF_K_ARRAY}
-@tab An array. @xref{Arrays}.
+@tab An array or SIMD vector. @xref{Arrays}.
 
 @item 5
 @tab @code{CTF_K_FUNCTION}
@@ -1064,7 +1064,7 @@ unused and will become used in future.
 @tindex CTF_FP_LDCPLX
 @item 6
 @tab @code{CTF_FP_LDOUBLE}
-@tab This is a @code{long double}.
+@tab This is a @code{long double}, or quad-precision IEEE 754-2008 @code{__float128}.
 @tindex CTF_FP_LDOUBLE
 @item 7
 @tab @code{CTF_FP_INTRVL}
@@ -1232,6 +1232,13 @@ Arrays are encoded as types of kind @code{CTF_K_ARRAY} in a @code{ctf_stype_t}.
 Both size and kind for arrays are zero.  The variable-length data is a
 @code{ctf_array_t}: @code{vlen} in the info word should be disregarded and is
 always zero.
+@c In CTFv4 and BTF, the @code{kind_flag} member of @{ctf_array_t} is not set.
+
+SIMD vectors are also encoded as types of kind @code{CTF_K_ARRAY} in a
+@code{ctf_stype_t}.  Both size and kind for arrays are zero.  The
+variable-length data is a @code{ctf_array_t}: @code{vlen} in the info word
+should be disregarded and is always zero.
+@c In CTFv4 and BTF, the @code{kind_flag} member of @{ctf_array_t} is set.
 
 @verbatim
 typedef struct ctf_array