summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--utils/ldd.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/utils/ldd.c b/utils/ldd.c
index 7ec61a92d..908370dfe 100644
--- a/utils/ldd.c
+++ b/utils/ldd.c
@@ -144,7 +144,7 @@ static int interpreter_already_found = 0;
static __inline__ uint32_t byteswap32_to_host(uint32_t value)
{
- if (byteswap == 1) {
+ if (byteswap) {
return (bswap_32(value));
} else {
return (value);
@@ -152,7 +152,7 @@ static __inline__ uint32_t byteswap32_to_host(uint32_t value)
}
static __inline__ uint64_t byteswap64_to_host(uint64_t value)
{
- if (byteswap == 1) {
+ if (byteswap) {
return (bswap_64(value));
} else {
return (value);
@@ -231,14 +231,7 @@ static int check_elf_header(ElfW(Ehdr) *const ehdr)
}
/* Check if the target endianness matches the host's endianness */
- byteswap = 0;
- if (UCLIBC_ENDIAN_HOST == UCLIBC_ENDIAN_LITTLE) {
- if (ehdr->e_ident[5] == ELFDATA2MSB)
- byteswap = 1;
- } else if (UCLIBC_ENDIAN_HOST == UCLIBC_ENDIAN_BIG) {
- if (ehdr->e_ident[5] == ELFDATA2LSB)
- byteswap = 1;
- }
+ byteswap = (ehdr->e_ident[5] == ELFDATAM) ? 0 : 1;
/* Be very lazy, and only byteswap the stuff we use */
if (byteswap) {