sim: always enable support for the --endian option
authorMike Frysinger <vapier@gentoo.org>
Mon, 22 Mar 2010 23:10:39 +0000 (23:10 +0000)
committerMike Frysinger <vapier@gentoo.org>
Mon, 22 Mar 2010 23:10:39 +0000 (23:10 +0000)
The gdb code always passes down -E <little|big> to the sim core when using
the sim target.  But the sim core only recognizes this option when the sim
supports big endian systems.  So for little endian simulators, any attempt
to use the sim target fails with:

(gdb) target sim
gdbsim: invalid option -- 'E'
unable to create simulator instance

Since always respecting the option doesn't cause any problems, do just
that.  If someone tries to use an invalid endian, they'll get an error
anyways.

sim/common/ChangeLog
sim/common/sim-options.c

index 32f4dc3..1b1bd3b 100644 (file)
@@ -1,3 +1,9 @@
+2010-03-22  Mike Frysinger  <vapier@gentoo.org>
+
+       * sim/common/sim-options.c (enum): Remove SIM_HAVE_BIENDIAN ifdef.
+       (standard_options): Likewise.
+       (standard_option_handler): Likewise.
+
 2010-03-16  Mike Frysinger  <vapier@gentoo.org>
 
        * hw-ports.c (TRACE): Delete.
index 82a502e..3369ca2 100644 (file)
@@ -100,9 +100,7 @@ typedef enum {
   OPTION_ENVIRONMENT,
   OPTION_ALIGNMENT,
   OPTION_VERBOSE,
-#if defined (SIM_HAVE_BIENDIAN)
   OPTION_ENDIAN,
-#endif
   OPTION_DEBUG,
 #ifdef SIM_HAVE_FLATMEM
   OPTION_MEM_SIZE,
@@ -124,11 +122,9 @@ static const OPTION standard_options[] =
       'v', NULL, "Verbose output",
       standard_option_handler },
 
-#if defined (SIM_HAVE_BIENDIAN) /* ??? && WITH_TARGET_BYTE_ORDER == 0 */
   { {"endian", required_argument, NULL, OPTION_ENDIAN},
       'E', "big|little", "Set endianness",
       standard_option_handler },
-#endif
 
 #ifdef SIM_HAVE_ENVIRONMENT
   /* This option isn't supported unless all choices are supported in keeping
@@ -226,7 +222,6 @@ standard_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
       STATE_VERBOSE_P (sd) = 1;
       break;
 
-#ifdef SIM_HAVE_BIENDIAN
     case OPTION_ENDIAN:
       if (strcmp (arg, "big") == 0)
        {
@@ -254,7 +249,6 @@ standard_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
          return SIM_RC_FAIL;
        }
       break;
-#endif
 
     case OPTION_ENVIRONMENT:
       if (strcmp (arg, "user") == 0)