+Tue May 9 17:07:41 1995 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * configure.in: Add little endian PowerPC support.
+ * configure: Rebuild with autoconf.
+ * config/ppc-big.mt: New file for big endian PowerPC systems.
+ * config/ppc-lit.mt: New file for little endian PowerPC systems.
+
+ * config/tc-ppc.h (target_big_endian): Declare.
+ (TARGET_FORMAT): Deal with little and big endian ELF variants.
+ (TARGET_BYTES_BIG_ENDIAN): Define as 1, not empty.
+
+ * config/tc-ppc.c (ppc_big_endian): Delete variable, use
+ target_big_endian instead.
+ (md_parse_option): Parse -mlittle and -mlittle-endian to use
+ little endian support. Parse -mbig and -mbig-endian to use big
+ endian support.
+ (md_show_usage): Update to reflect current switches.
+ (ppc_set_cpu): Recognize powerpcle as little endian PowerPC. Use
+ as_fatal, not abort if unknown machine.
+
Tue May 9 10:58:41 1995 Jeff Law (law@snake.cs.utah.edu)
* config/tc-hppa.c (md_apply_fix): Cast *valp to an integer when
m8*) cpu_type=m88k ;;
mips*el) cpu_type=mips endian=little;;
mips*) cpu_type=mips endian=big ;;
- powerpc*) cpu_type=ppc ;;
+ powerpcle*) cpu_type=ppc endian=little;;
+ powerpc*) cpu_type=ppc endian=big;;
rs6000*) cpu_type=ppc ;;
sparc64) cpu_type=sparc obj_format=elf
cat >> confdefs.h <<\EOF
esac
;;
ppc-*-aix*) obj_format=coff ;;
- ppc-*-elf*) obj_format=elf ;;
- ppc-*-eabi*) obj_format=elf ;;
+ ppc-*-elf* | ppc-*-eabi* | ppc-*-sysv4*)
+ obj_format=elf
+ case "$endian" in
+ big) gas_target=ppc-big ;;
+ *) gas_target=ppc-lit ;;
+ esac
+ ;;
ppc-*-netware*) obj_format=elf emulation=ppcnw ;;
- ppc-*-sysv4*) obj_format=elf ;;
sh-*-coff) obj_format=coff ;;
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp.
cat > conftest.$ac_ext <<EOF
-#line 938 "configure"
+#line 944 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
rm -rf conftest*
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <<EOF
-#line 952 "configure"
+#line 958 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 983 "configure"
+#line 989 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_cv_c_cross=yes
else
cat > conftest.$ac_ext <<EOF
-#line 1035 "configure"
+#line 1041 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1058 "configure"
+#line 1064 "configure"
#include "confdefs.h"
#include <alloca.h>
int main() { return 0; }
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1089 "configure"
+#line 1095 "configure"
#include "confdefs.h"
#ifdef __GNUC__
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1147 "configure"
+#line 1153 "configure"
#include "confdefs.h"
#if defined(CRAY) && ! defined(CRAY2)
webecray
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1175 "configure"
+#line 1181 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */
ac_cv_c_stack_direction=0
else
cat > conftest.$ac_ext <<EOF
-#line 1229 "configure"
+#line 1235 "configure"
#include "confdefs.h"
find_stack_direction ()
{
ac_cv_c_inline=no
for ac_kw in inline __inline__ __inline; do
cat > conftest.$ac_ext <<EOF
-#line 1271 "configure"
+#line 1277 "configure"
#include "confdefs.h"
int main() { return 0; }
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1310 "configure"
+#line 1316 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1363 "configure"
+#line 1369 "configure"
#include "confdefs.h"
#include <assert.h>
#include <stdio.h>
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1420 "configure"
+#line 1426 "configure"
#include "confdefs.h"
$gas_test_headers
int main() { return 0; }
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1456 "configure"
+#line 1462 "configure"
#include "confdefs.h"
$gas_test_headers
int main() { return 0; }
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1495 "configure"
+#line 1501 "configure"
#include "confdefs.h"
#ifdef HAVE_ERRNO_H
m8*) cpu_type=m88k ;;
mips*el) cpu_type=mips endian=little;;
mips*) cpu_type=mips endian=big ;;
- powerpc*) cpu_type=ppc ;;
+ powerpcle*) cpu_type=ppc endian=little;;
+ powerpc*) cpu_type=ppc endian=big;;
rs6000*) cpu_type=ppc ;;
sparc64) cpu_type=sparc obj_format=elf
AC_DEFINE(sparcv9) ;;
esac
;;
ppc-*-aix*) obj_format=coff ;;
- ppc-*-elf*) obj_format=elf ;;
- ppc-*-eabi*) obj_format=elf ;;
+ ppc-*-elf* | ppc-*-eabi* | ppc-*-sysv4*)
+ obj_format=elf
+ case "$endian" in
+ big) gas_target=ppc-big ;;
+ *) gas_target=ppc-lit ;;
+ esac
+ ;;
ppc-*-netware*) obj_format=elf emulation=ppcnw ;;
- ppc-*-sysv4*) obj_format=elf ;;
sh-*-coff) obj_format=coff ;;