bpf: define INT8_TYPE as signed char
commit6cf4286ff9456685a29812a3560d00b956d62c39
authorDavid Faust <david.faust@oracle.com>
Thu, 14 Mar 2024 16:05:38 +0000 (14 09:05 -0700)
committerDavid Faust <david.faust@oracle.com>
Thu, 14 Mar 2024 17:57:20 +0000 (14 10:57 -0700)
tree0c655c42db668a67aff35284f7d0f96551be63be
parentbc5a9dab55d13f888a3cdd150c8cf5c2244f35e0
bpf: define INT8_TYPE as signed char

Change the BPF backend to define INT8_TYPE with an explicit sign, rather
than a plain char.  This is in line with other targets and removes the
risk of int8_t being affected by the signedness of the plain char type
of the host system.

The motivation for this change is that even if `char' is defined to be
signed in BPF targets, some BPF programs use the (mal)practice of
including internal libc headers, either directly or indirectly via
kernel headers, which in turn may trigger compilation errors regarding
redefinitions of types.

gcc/

* config/bpf/bpf.h (INT8_TYPE): Change to signed char.
gcc/config/bpf/bpf.h