From b6d373df1e5729606ff51f3947dd636eab6738b6 Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Mon, 26 Feb 2007 20:13:18 +0000 Subject: [PATCH] * arch-utils.c (selected_byte_order): New. * arch-utils.h (selected_byte_order): New prototype. * remote-sim.c (gdbsim_open): Use selected_byte_order. --- gdb/ChangeLog | 6 ++++++ gdb/arch-utils.c | 9 +++++++++ gdb/arch-utils.h | 4 ++++ gdb/remote-sim.c | 6 +++--- 4 files changed, 22 insertions(+), 3 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9a208d8ef5c..137cf704a0a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2007-02-26 Daniel Jacobowitz + + * arch-utils.c (selected_byte_order): New. + * arch-utils.h (selected_byte_order): New prototype. + * remote-sim.c (gdbsim_open): Use selected_byte_order. + 2007-02-26 Daniel Jacobowitz * symfile.c (place_section): Check SEC_ALLOC. Do not check VMA. diff --git a/gdb/arch-utils.c b/gdb/arch-utils.c index 1a987f34be9..1ec3c37ff45 100644 --- a/gdb/arch-utils.c +++ b/gdb/arch-utils.c @@ -287,6 +287,15 @@ static const char *endian_enum[] = }; static const char *set_endian_string; +enum bfd_endian +selected_byte_order (void) +{ + if (target_byte_order_user != BFD_ENDIAN_UNKNOWN) + return TARGET_BYTE_ORDER; + else + return BFD_ENDIAN_UNKNOWN; +} + /* Called by ``show endian''. */ static void diff --git a/gdb/arch-utils.h b/gdb/arch-utils.h index d995fcbe2f2..d528d67daf0 100644 --- a/gdb/arch-utils.h +++ b/gdb/arch-utils.h @@ -118,6 +118,10 @@ int default_remote_register_number (struct gdbarch *gdbarch, extern int legacy_register_sim_regno (int regnum); +/* Return the selected byte order, or BFD_ENDIAN_UNKNOWN if no byte + order was explicitly selected. */ +extern enum bfd_endian selected_byte_order (void); + /* Return the selected architecture's name, or NULL if no architecture was explicitly selected. */ extern const char *selected_architecture_name (void); diff --git a/gdb/remote-sim.c b/gdb/remote-sim.c index b4990661127..4ec63d51be5 100644 --- a/gdb/remote-sim.c +++ b/gdb/remote-sim.c @@ -504,9 +504,9 @@ gdbsim_open (char *args, int from_tty) + 50) /* slack */ ; arg_buf = (char *) alloca (len); strcpy (arg_buf, "gdbsim"); /* 7 */ - /* Specify the byte order for the target when it is both selectable - and explicitly specified by the user (not auto detected). */ - switch (TARGET_BYTE_ORDER) + /* Specify the byte order for the target when it is explicitly + specified by the user (not auto detected). */ + switch (selected_byte_order ()) { case BFD_ENDIAN_BIG: strcat (arg_buf, " -E big"); -- 2.30.2