aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog6
-rw-r--r--gas/config/tc-arm.c15
2 files changed, 20 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 68714f0..9aa6b33 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,11 @@
2002-01-14 Richard Earnshaw <rearnsha@arm.com>
+ * tc-arm.c (md_longopts): On targets that aren't bi-endian, support
+ the -EL/-EB option that matches the target's endianness.
+ (md_parse_option): Likewise.
+
+2002-01-14 Richard Earnshaw <rearnsha@arm.com>
+
* tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option
is not dependent on ARM_BI_ENDIAN.
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
index a865b5c..386d63f 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -9293,6 +9293,16 @@ struct option md_longopts[] =
{"EB", no_argument, NULL, OPTION_EB},
#define OPTION_EL (OPTION_MD_BASE + 1)
{"EL", no_argument, NULL, OPTION_EL},
+#else
+ /* If the build isn't bi-endian, just support the flag that we are anyway.
+ This makes things more portable. */
+#if TARGET_BYTES_BIG_ENDIAN
+#define OPTION_EB (OPTION_MD_BASE + 0)
+ {"EB", no_argument, NULL, OPTION_EB},
+#else
+#define OPTION_EL (OPTION_MD_BASE + 1)
+ {"EL", no_argument, NULL, OPTION_EL},
+#endif
#endif
#ifdef OBJ_ELF
#define OPTION_OABI (OPTION_MD_BASE +2)
@@ -9312,10 +9322,13 @@ md_parse_option (c, arg)
switch (c)
{
-#ifdef ARM_BI_ENDIAN
+#ifdef OPTION_EB
case OPTION_EB:
target_big_endian = 1;
break;
+#endif
+
+#ifdef OPTION_EL
case OPTION_EL:
target_big_endian = 0;
break;