OSDN Git Service

ldd.c: reduce size
[uclinux-h8/uClibc.git] / utils / ldd.c
index 7ec61a9..908370d 100644 (file)
@@ -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) {