libbpf: Use __BYTE_ORDER__
authorIlya Leoshkevich <iii@linux.ibm.com>
Tue, 26 Oct 2021 01:08:27 +0000 (03:08 +0200)
committerAndrii Nakryiko <andrii@kernel.org>
Tue, 26 Oct 2021 03:39:41 +0000 (20:39 -0700)
Use the compiler-defined __BYTE_ORDER__ instead of the libc-defined
__BYTE_ORDER for consistency.

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20211026010831.748682-3-iii@linux.ibm.com
tools/lib/bpf/btf.c
tools/lib/bpf/btf_dump.c
tools/lib/bpf/libbpf.c
tools/lib/bpf/linker.c
tools/lib/bpf/relo_core.c

index ef924fc..0c628c3 100644 (file)
@@ -538,9 +538,9 @@ int btf__set_pointer_size(struct btf *btf, size_t ptr_sz)
 
 static bool is_host_big_endian(void)
 {
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
        return false;
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
        return true;
 #else
 # error "Unrecognized __BYTE_ORDER__"
index 8e05ab4..17db62b 100644 (file)
@@ -1576,11 +1576,11 @@ static int btf_dump_get_bitfield_value(struct btf_dump *d,
        /* Bitfield value retrieval is done in two steps; first relevant bytes are
         * stored in num, then we left/right shift num to eliminate irrelevant bits.
         */
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
        for (i = t->size - 1; i >= 0; i--)
                num = num * 256 + bytes[i];
        nr_copy_bits = bit_sz + bits_offset;
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
        for (i = 0; i < t->size; i++)
                num = num * 256 + bytes[i];
        nr_copy_bits = t->size * 8 - bits_offset;
@@ -1700,10 +1700,10 @@ static int btf_dump_int_data(struct btf_dump *d,
                /* avoid use of __int128 as some 32-bit platforms do not
                 * support it.
                 */
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
                lsi = ints[0];
                msi = ints[1];
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
                lsi = ints[1];
                msi = ints[0];
 #else
index 4b21586..2fbed2d 100644 (file)
@@ -1299,10 +1299,10 @@ errout:
 
 static int bpf_object__check_endianness(struct bpf_object *obj)
 {
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
        if (obj->efile.ehdr->e_ident[EI_DATA] == ELFDATA2LSB)
                return 0;
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
        if (obj->efile.ehdr->e_ident[EI_DATA] == ELFDATA2MSB)
                return 0;
 #else
index 7bf658f..ce0800e 100644 (file)
@@ -323,12 +323,12 @@ static int init_output_elf(struct bpf_linker *linker, const char *file)
 
        linker->elf_hdr->e_machine = EM_BPF;
        linker->elf_hdr->e_type = ET_REL;
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
        linker->elf_hdr->e_ident[EI_DATA] = ELFDATA2LSB;
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
        linker->elf_hdr->e_ident[EI_DATA] = ELFDATA2MSB;
 #else
-#error "Unknown __BYTE_ORDER"
+#error "Unknown __BYTE_ORDER__"
 #endif
 
        /* STRTAB */
@@ -538,12 +538,12 @@ static int linker_load_obj_file(struct bpf_linker *linker, const char *filename,
                                const struct bpf_linker_file_opts *opts,
                                struct src_obj *obj)
 {
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
        const int host_endianness = ELFDATA2LSB;
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
        const int host_endianness = ELFDATA2MSB;
 #else
-#error "Unknown __BYTE_ORDER"
+#error "Unknown __BYTE_ORDER__"
 #endif
        int err = 0;
        Elf_Scn *scn;
index 4016ed4..b5b8956 100644 (file)
@@ -662,7 +662,7 @@ static int bpf_core_calc_field_relo(const char *prog_name,
                        *validate = true; /* signedness is never ambiguous */
                break;
        case BPF_FIELD_LSHIFT_U64:
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
                *val = 64 - (bit_off + bit_sz - byte_off  * 8);
 #else
                *val = (8 - byte_sz) * 8 + (bit_off - byte_off * 8);