aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorEdgar E. Iglesias <edgar.iglesias@gmail.com>2013-02-08 16:02:47 +0000
committerMichael Eager <eager@gcc.gnu.org>2013-02-08 16:02:47 +0000
commit76ef61fbd9ed3f30a5553ddac1a1568fc52e6ab9 (patch)
treee89c91d4a2ac443eb8452695e07233cfe95d791e /gcc/config.gcc
parent5df813131d18e4db50fb4f9c940ff782b8496a94 (diff)
downloadgcc-76ef61fbd9ed3f30a5553ddac1a1568fc52e6ab9.zip
gcc-76ef61fbd9ed3f30a5553ddac1a1568fc52e6ab9.tar.gz
gcc-76ef61fbd9ed3f30a5553ddac1a1568fc52e6ab9.tar.bz2
config.gcc (microblaze*-linux*): Add TARGET_BIG_ENDIAN_DEFAULT
gcc: * config.gcc (microblaze*-linux*): Add TARGET_BIG_ENDIAN_DEFAULT (microblaze*-*-elf): Likewise * config/microblaze/linux.h: Add -mbig-endian / -mlittle-endian to LINK_SPEC * config/microblaze/microblaze-c.c: Add builtin defines for _LITTLE_ENDIAN and _BIG_ENDIAN * config/microblaze/microblaze.h: Add TARGET_ENDIAN_DEFAULT and add to TARGET_DEFAULT flags. Expand ASM_SPEC and LINK_SPEC. Update BYTES_BIG_ENDIAN and WORDS_BIG_ENDIAN * config/microblaze/microblaze.md: Update extendsidi2 and movdi_internal instructions to use low-order / high-order reg print_operands * config/microblaze/microblaze.opt: Add mbig-endian and mlittle-endian options and inversemask / mask of LITTLE_ENDIAN * config/microblaze/t-microblaze: Expand multilib options to include mlittle- endian (le) and update exceptions patterns gcc/testsuite: * 20101011-1.c: Add __MICROBLAZE__ exception to set DO_TEST 0 From-SVN: r195893
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc17
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index b6a6ad0..fce3796 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1737,11 +1737,20 @@ mep-*-*)
use_gcc_stdint=wrap
;;
microblaze*-linux*)
+ case $target in
+ microblazeel-*)
+ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=0"
+ ;;
+ microblaze-*)
+ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=4321"
+ ;;
+ esac
tm_file="${tm_file} dbxelf.h gnu-user.h linux.h microblaze/linux.h"
tm_file="${tm_file} glibc-stdint.h"
c_target_objs="${c_target_objs} microblaze-c.o"
cxx_target_objs="${cxx_target_objs} microblaze-c.o"
tmake_file="${tmake_file} microblaze/t-microblaze"
+ tmake_file="${tmake_file} microblaze/t-microblaze-linux"
;;
microblaze*-*-rtems*)
tm_file="${tm_file} dbxelf.h"
@@ -1752,6 +1761,14 @@ microblaze*-*-rtems*)
tmake_file="${tmake_file} t-rtems microblaze/t-rtems"
;;
microblaze*-*-elf)
+ case $target in
+ microblazeel-*)
+ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=0"
+ ;;
+ microblaze-*)
+ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=4321"
+ ;;
+ esac
tm_file="${tm_file} dbxelf.h newlib-stdint.h"
c_target_objs="${c_target_objs} microblaze-c.o"
cxx_target_objs="${cxx_target_objs} microblaze-c.o"