summaryrefslogtreecommitdiff
path: root/gcc/config/microblaze/microblaze-c.c
diff options
context:
space:
mode:
authoreager <eager@138bc75d-0d04-0410-961f-82ee72b054a4>2013-02-08 16:02:47 +0000
committereager <eager@138bc75d-0d04-0410-961f-82ee72b054a4>2013-02-08 16:02:47 +0000
commite975e3457095a7c2f014c702085fc5a73bf3b92e (patch)
treee89c91d4a2ac443eb8452695e07233cfe95d791e /gcc/config/microblaze/microblaze-c.c
parent5ef30aea284c2a61df00aef66e08ffa578ff774c (diff)
downloadgcc-e975e3457095a7c2f014c702085fc5a73bf3b92e.tar.gz
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 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195893 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/microblaze/microblaze-c.c')
-rw-r--r--gcc/config/microblaze/microblaze-c.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/config/microblaze/microblaze-c.c b/gcc/config/microblaze/microblaze-c.c
index d22dc2afe2f..a1a20b74346 100644
--- a/gcc/config/microblaze/microblaze-c.c
+++ b/gcc/config/microblaze/microblaze-c.c
@@ -41,6 +41,19 @@ microblaze_cpp_define (cpp_reader *pfile)
builtin_assert ("cpu=microblaze");
builtin_assert ("machine=microblaze");
builtin_define ("__MICROBLAZE__");
+ builtin_define ("__microblaze__");
+ if (TARGET_LITTLE_ENDIAN)
+ {
+ builtin_define ("_LITTLE_ENDIAN");
+ builtin_define ("__LITTLE_ENDIAN__");
+ builtin_define ("__MICROBLAZEEL__");
+ }
+ else
+ {
+ builtin_define ("_BIG_ENDIAN");
+ builtin_define ("__BIG_ENDIAN__");
+ builtin_define ("__MICROBLAZEEB__");
+ }
if (!TARGET_SOFT_MUL)
{
if (!flag_iso)