From 23ed5e7ab73a2b5dc1ca09362d4815a643a2d187 Mon Sep 17 00:00:00 2001 From: nagaraju Date: Tue, 19 Mar 2013 17:18:23 +0530 Subject: [PATCH 02/52] Add mlittle-endian and mbig-endian flags Added support in gas for mlittle-endian and mbig-endian flags as options. Updated show usage for MicroBlaze specific assembler options to include new entries. Signed-off-by:nagaraju Signed-off-by: David Holsgrove --- gas/config/tc-microblaze.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c index ae5d36dc9c..34eeb97235 100644 --- a/gas/config/tc-microblaze.c +++ b/gas/config/tc-microblaze.c @@ -37,6 +37,8 @@ #define OPTION_EB (OPTION_MD_BASE + 0) #define OPTION_EL (OPTION_MD_BASE + 1) +#define OPTION_LITTLE (OPTION_MD_BASE + 2) +#define OPTION_BIG (OPTION_MD_BASE + 3) void microblaze_generate_symbol (char *sym); static bfd_boolean check_spl_reg (unsigned *); @@ -1842,6 +1844,8 @@ struct option md_longopts[] = { {"EB", no_argument, NULL, OPTION_EB}, {"EL", no_argument, NULL, OPTION_EL}, + {"mlittle-endian", no_argument, NULL, OPTION_LITTLE}, + {"mbig-endian", no_argument, NULL, OPTION_BIG}, { NULL, no_argument, NULL, 0} }; @@ -2494,9 +2498,11 @@ md_parse_option (int c, const char * arg ATTRIBUTE_UNUSED) switch (c) { case OPTION_EB: + case OPTION_BIG: target_big_endian = 1; break; case OPTION_EL: + case OPTION_LITTLE: target_big_endian = 0; break; default: @@ -2511,6 +2517,9 @@ md_show_usage (FILE * stream ATTRIBUTE_UNUSED) /* fprintf(stream, _("\ MicroBlaze options:\n\ -noSmall Data in the comm and data sections do not go into the small data section\n")); */ + fprintf (stream, _(" MicroBlaze specific assembler options:\n")); + fprintf (stream, " -%-23s%s\n", "mbig-endian", N_("assemble for a big endian cpu")); + fprintf (stream, " -%-23s%s\n", "mlittle-endian", N_("assemble for a little endian cpu")); } -- 2.17.1