authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-01-27 23:24:33+01:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-01-27 23:24:57+01:00
log0f51f663f06728f38f518073a23d69a7c1b0d792
tree11e0bd922e981f189dea9ace4888f43b5ba5a4ea
parent06cf86abeb3a062c6c3e21f4379c7fea9e6d71b6
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

musl: update some hexagon headers from the quic fork


4 files changed, 69 insertions(+), 6 deletions(-)

lib/libc/include/hexagon-linux-musl/bits/hwcap.h created+31
...@@ -0,0 +1,31 @@
1/* ISA version encoding in bits 0-6 (7 bits) */
2#define HWCAP_HEXAGON_ISA_MASK 0x7F /* ISA version mask */
3
4/* ISA version enumeration values */
5#define HWCAP_HEXAGON_ISA_V2 1 /* Hexagon V2 */
6#define HWCAP_HEXAGON_ISA_V3 2 /* Hexagon V3 */
7#define HWCAP_HEXAGON_ISA_V4 3 /* Hexagon V4 */
8#define HWCAP_HEXAGON_ISA_V5 4 /* Hexagon V5 */
9#define HWCAP_HEXAGON_ISA_V55 5 /* Hexagon V55 */
10#define HWCAP_HEXAGON_ISA_V60 6 /* Hexagon V60 */
11#define HWCAP_HEXAGON_ISA_V62 7 /* Hexagon V62 */
12#define HWCAP_HEXAGON_ISA_V65 8 /* Hexagon V65 */
13#define HWCAP_HEXAGON_ISA_V66 9 /* Hexagon V66 */
14#define HWCAP_HEXAGON_ISA_V67 10 /* Hexagon V67 */
15#define HWCAP_HEXAGON_ISA_V68 11 /* Hexagon V68 */
16#define HWCAP_HEXAGON_ISA_V69 12 /* Hexagon V69 */
17#define HWCAP_HEXAGON_ISA_V71 13 /* Hexagon V71 */
18#define HWCAP_HEXAGON_ISA_V73 14 /* Hexagon V73 */
19#define HWCAP_HEXAGON_ISA_V79 15 /* Hexagon V79 */
20
21/* Essential feature flags */
22#define HWCAP_HEXAGON_HVX (1 << 7) /* HVX (Hexagon Vector eXtensions) */
23#define HWCAP_HEXAGON_CABAC (1 << 8) /* CABAC acceleration */
24#define HWCAP_HEXAGON_HVX_LENGTH_128B (1 << 9) /* HVX 128-byte vector length */
25#define HWCAP_HEXAGON_HVX_IEEE_FP (1 << 10) /* HVX IEEE floating point */
26#define HWCAP_HEXAGON_AUDIO (1 << 11) /* Audio ISA extensions */
27
28/* Utility macros for userspace applications */
29#define HWCAP_HEXAGON_GET_ISA(hwcap) ((hwcap) & HWCAP_HEXAGON_ISA_MASK)
30#define HWCAP_HEXAGON_IS_ISA(hwcap, version) (HWCAP_HEXAGON_GET_ISA(hwcap) == (version))
31#define HWCAP_HEXAGON_HAS_ISA(hwcap, version) (HWCAP_HEXAGON_GET_ISA(hwcap) >= (version))
lib/libc/include/hexagon-linux-musl/bits/signal.h+4-4
...@@ -31,9 +31,10 @@ typedef struct sigcontext...@@ -31,9 +31,10 @@ typedef struct sigcontext
31 unsigned long pc;31 unsigned long pc;
32 unsigned long cause;32 unsigned long cause;
33 unsigned long badva;33 unsigned long badva;
34 unsigned long cs0;
35 unsigned long cs1;
34 unsigned long pad1;36 unsigned long pad1;
35 unsigned long long pad2;37} __attribute__((__aligned__(8))) mcontext_t;
36} mcontext_t;
37#else38#else
38typedef struct {39typedef struct {
39 unsigned long __regs[48];40 unsigned long __regs[48];
...@@ -61,7 +62,6 @@ typedef struct __ucontext {...@@ -61,7 +62,6 @@ typedef struct __ucontext {
61#define SA_RESTART 0x1000000062#define SA_RESTART 0x10000000
62#define SA_NODEFER 0x4000000063#define SA_NODEFER 0x40000000
63#define SA_RESETHAND 0x8000000064#define SA_RESETHAND 0x80000000
64#define SA_RESTORER 0x04000000
6565
66#endif66#endif
6767
...@@ -100,4 +100,4 @@ typedef struct __ucontext {...@@ -100,4 +100,4 @@ typedef struct __ucontext {
100#define SIGSYS 31100#define SIGSYS 31
101#define SIGUNUSED SIGSYS101#define SIGUNUSED SIGSYS
102102
103#define _NSIG 65
\ No newline at end of file
103#define _NSIG 65
lib/libc/musl/arch/hexagon/bits/hwcap.h created+31
...@@ -0,0 +1,31 @@
1/* ISA version encoding in bits 0-6 (7 bits) */
2#define HWCAP_HEXAGON_ISA_MASK 0x7F /* ISA version mask */
3
4/* ISA version enumeration values */
5#define HWCAP_HEXAGON_ISA_V2 1 /* Hexagon V2 */
6#define HWCAP_HEXAGON_ISA_V3 2 /* Hexagon V3 */
7#define HWCAP_HEXAGON_ISA_V4 3 /* Hexagon V4 */
8#define HWCAP_HEXAGON_ISA_V5 4 /* Hexagon V5 */
9#define HWCAP_HEXAGON_ISA_V55 5 /* Hexagon V55 */
10#define HWCAP_HEXAGON_ISA_V60 6 /* Hexagon V60 */
11#define HWCAP_HEXAGON_ISA_V62 7 /* Hexagon V62 */
12#define HWCAP_HEXAGON_ISA_V65 8 /* Hexagon V65 */
13#define HWCAP_HEXAGON_ISA_V66 9 /* Hexagon V66 */
14#define HWCAP_HEXAGON_ISA_V67 10 /* Hexagon V67 */
15#define HWCAP_HEXAGON_ISA_V68 11 /* Hexagon V68 */
16#define HWCAP_HEXAGON_ISA_V69 12 /* Hexagon V69 */
17#define HWCAP_HEXAGON_ISA_V71 13 /* Hexagon V71 */
18#define HWCAP_HEXAGON_ISA_V73 14 /* Hexagon V73 */
19#define HWCAP_HEXAGON_ISA_V79 15 /* Hexagon V79 */
20
21/* Essential feature flags */
22#define HWCAP_HEXAGON_HVX (1 << 7) /* HVX (Hexagon Vector eXtensions) */
23#define HWCAP_HEXAGON_CABAC (1 << 8) /* CABAC acceleration */
24#define HWCAP_HEXAGON_HVX_LENGTH_128B (1 << 9) /* HVX 128-byte vector length */
25#define HWCAP_HEXAGON_HVX_IEEE_FP (1 << 10) /* HVX IEEE floating point */
26#define HWCAP_HEXAGON_AUDIO (1 << 11) /* Audio ISA extensions */
27
28/* Utility macros for userspace applications */
29#define HWCAP_HEXAGON_GET_ISA(hwcap) ((hwcap) & HWCAP_HEXAGON_ISA_MASK)
30#define HWCAP_HEXAGON_IS_ISA(hwcap, version) (HWCAP_HEXAGON_GET_ISA(hwcap) == (version))
31#define HWCAP_HEXAGON_HAS_ISA(hwcap, version) (HWCAP_HEXAGON_GET_ISA(hwcap) >= (version))
lib/libc/musl/arch/hexagon/bits/signal.h+3-2
...@@ -31,9 +31,10 @@ typedef struct sigcontext...@@ -31,9 +31,10 @@ typedef struct sigcontext
31 unsigned long pc;31 unsigned long pc;
32 unsigned long cause;32 unsigned long cause;
33 unsigned long badva;33 unsigned long badva;
34 unsigned long cs0;
35 unsigned long cs1;
34 unsigned long pad1;36 unsigned long pad1;
35 unsigned long long pad2;37} __attribute__((__aligned__(8))) mcontext_t;
36} mcontext_t;
37#else38#else
38typedef struct {39typedef struct {
39 unsigned long __regs[48];40 unsigned long __regs[48];