From 8b733a61ab54ba4cedb234020562502d20eebcbb Mon Sep 17 00:00:00 2001 From: Nagaraju Mekala Date: Mon, 28 Aug 2017 19:53:53 -0700 Subject: [PATCH] MicroBlaze 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 Mekala Signed-off-by: David Holsgrove Signed-off-by: Manjukumar Matha Upstream-Status: Pending --- 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 0194cd9..42dd7ae 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 *); @@ -1837,6 +1839,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} }; @@ -2471,9 +2475,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: @@ -2488,6 +2494,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")); }