perf tools: Use __BYTE_ORDER__
Switch from the libc-defined __BYTE_ORDER to the compiler-defined __BYTE_ORDER__ in order to make endianness detection more robust, like it was done for libbpf. Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> Suggested-by: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Heiko Carstens <hca@linux.ibm.com> Cc: Thomas Richter <tmricht@linux.ibm.com> Cc: Vasily Gorbik <gor@linux.ibm.com> Link: https://lore.kernel.org/r/20211104132311.984703-1-iii@linux.ibm.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
b3a018fc31
commit
4e88118c20
@ -13,7 +13,7 @@
|
||||
|
||||
#include "arm-spe-pkt-decoder.h"
|
||||
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
||||
#define le16_to_cpu bswap_16
|
||||
#define le32_to_cpu bswap_32
|
||||
#define le64_to_cpu bswap_64
|
||||
|
@ -1437,7 +1437,7 @@ static struct bt_ctf_field_type *create_int_type(int size, bool sign, bool hex)
|
||||
bt_ctf_field_type_integer_set_base(type, BT_CTF_INTEGER_BASE_HEXADECIMAL))
|
||||
goto err;
|
||||
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
||||
bt_ctf_field_type_set_byte_order(type, BT_CTF_BYTE_ORDER_BIG_ENDIAN);
|
||||
#else
|
||||
bt_ctf_field_type_set_byte_order(type, BT_CTF_BYTE_ORDER_LITTLE_ENDIAN);
|
||||
|
@ -42,7 +42,7 @@ int jit_add_debug_info(Elf *e, uint64_t code_addr, void *debug, int nr_debug_ent
|
||||
#error "unsupported architecture"
|
||||
#endif
|
||||
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
||||
#define GEN_ELF_ENDIAN ELFDATA2MSB
|
||||
#else
|
||||
#define GEN_ELF_ENDIAN ELFDATA2LSB
|
||||
|
@ -35,7 +35,7 @@
|
||||
#define INTEL_BTS_ERR_NOINSN 5
|
||||
#define INTEL_BTS_ERR_LOST 9
|
||||
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
||||
#define le64_to_cpu bswap_64
|
||||
#else
|
||||
#define le64_to_cpu
|
||||
|
@ -143,7 +143,7 @@ static void intel_pt_insn_decoder(struct insn *insn,
|
||||
|
||||
if (branch == INTEL_PT_BR_CONDITIONAL ||
|
||||
branch == INTEL_PT_BR_UNCONDITIONAL) {
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
||||
switch (insn->immediate.nbytes) {
|
||||
case 1:
|
||||
intel_pt_insn->rel = insn->immediate.value;
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
#define BIT63 ((uint64_t)1 << 63)
|
||||
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
||||
#define le16_to_cpu bswap_16
|
||||
#define le32_to_cpu bswap_32
|
||||
#define le64_to_cpu bswap_64
|
||||
|
@ -244,7 +244,7 @@ static bool s390_cpumsf_basic_show(const char *color, size_t pos,
|
||||
struct hws_basic_entry *basicp)
|
||||
{
|
||||
struct hws_basic_entry *basic = basicp;
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
|
||||
struct hws_basic_entry local;
|
||||
unsigned long long word = be64toh(*(unsigned long long *)basicp);
|
||||
|
||||
@ -288,7 +288,7 @@ static bool s390_cpumsf_diag_show(const char *color, size_t pos,
|
||||
struct hws_diag_entry *diagp)
|
||||
{
|
||||
struct hws_diag_entry *diag = diagp;
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
|
||||
struct hws_diag_entry local;
|
||||
unsigned long long word = be64toh(*(unsigned long long *)diagp);
|
||||
|
||||
@ -322,7 +322,7 @@ static unsigned long long trailer_timestamp(struct hws_trailer_entry *te,
|
||||
static bool s390_cpumsf_trailer_show(const char *color, size_t pos,
|
||||
struct hws_trailer_entry *te)
|
||||
{
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
|
||||
struct hws_trailer_entry local;
|
||||
const unsigned long long flags = be64toh(te->flags);
|
||||
|
||||
@ -552,7 +552,7 @@ static unsigned long long get_trailer_time(const unsigned char *buf)
|
||||
te = (struct hws_trailer_entry *)(buf + S390_CPUMSF_PAGESZ
|
||||
- sizeof(*te));
|
||||
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
|
||||
clock_base = be64toh(te->progusage[0]) >> 63 & 0x1;
|
||||
progusage2 = be64toh(te->progusage[1]);
|
||||
#else
|
||||
|
Loading…
x
Reference in New Issue
Block a user