소스 검색

fix endian subarchs for sh arch

default endianness for sh on linux is little, and while conventions
vary, "eb" seems to be the most widely used suffix for big endian.
Rich Felker 11 년 전
부모
커밋
5c27c4458f
3개의 변경된 파일7개의 추가작업 그리고 7개의 파일을 삭제
  1. 3 3
      arch/sh/bits/endian.h
  2. 2 2
      arch/sh/reloc.h
  3. 2 2
      configure

+ 3 - 3
arch/sh/bits/endian.h

@@ -1,5 +1,5 @@
-#if __LITTLE_ENDIAN__
-#define __BYTE_ORDER __LITTLE_ENDIAN
-#else
+#if __BIG_ENDIAN__
 #define __BYTE_ORDER __BIG_ENDIAN
+#else
+#define __BYTE_ORDER __LITTLE_ENDIAN
 #endif

+ 2 - 2
arch/sh/reloc.h

@@ -1,5 +1,5 @@
-#if __BYTE_ORDER == __LITTLE_ENDIAN
-#define ENDIAN_SUFFIX "l"
+#if __BYTE_ORDER == __BIG_ENDIAN
+#define ENDIAN_SUFFIX "eb"
 #else
 #define ENDIAN_SUFFIX ""
 #endif

+ 2 - 2
configure

@@ -421,8 +421,8 @@ fi
 test "$ARCH" = "microblaze" && trycppif __MICROBLAZEEL__ "$t" \
 && SUBARCH=${SUBARCH}el
 
-test "$ARCH" = "sh" && trycppif __LITTLE_ENDIAN__ "$t" \
-&& SUBARCH=${SUBARCH}el
+test "$ARCH" = "sh" && trycppif __BIG_ENDIAN__ "$t" \
+&& SUBARCH=${SUBARCH}eb
 
 test "$SUBARCH" \
 && printf "configured for %s variant: %s\n" "$ARCH" "$ARCH$SUBARCH"