aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2010-06-11 15:07:53 +0000
committerJan Beulich <jbeulich@novell.com>2010-06-11 15:07:53 +0000
commit1ded5609983646a6dbddc25aa51f4695c3e64c2c (patch)
treecd12b3e2e7c726b41f28fc7365374033803042bd /gas
parent2bdf28a09db4376a2c1e6181ce282e96e54de6a3 (diff)
downloadgdb-1ded5609983646a6dbddc25aa51f4695c3e64c2c.zip
gdb-1ded5609983646a6dbddc25aa51f4695c3e64c2c.tar.gz
gdb-1ded5609983646a6dbddc25aa51f4695c3e64c2c.tar.bz2
gas/
2010-06-11 Jan Beulich <jbeulich@novell.com> * config/tc-i386.c (md_parse_option): Ignore impossible processor types. (show_arch): New parameter 'check'. (md_show_usage): Adjust calls to show_arch().
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog7
-rw-r--r--gas/config/tc-i386.c16
2 files changed, 19 insertions, 4 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 4b2a357..894b0ab 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+2010-06-11 Jan Beulich <jbeulich@novell.com>
+
+ * config/tc-i386.c (md_parse_option): Ignore impossible processor
+ types.
+ (show_arch): New parameter 'check'.
+ (md_show_usage): Adjust calls to show_arch().
+
2010-06-10 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (update_code_flag): New.
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index d62c3a1..f5c249a 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -8187,6 +8187,9 @@ md_parse_option (int c, char *arg)
if (strcmp (arch, cpu_arch [j].name) == 0)
{
/* Processor. */
+ if (! cpu_arch[j].flags.bitfield.cpui386)
+ continue;
+
cpu_arch_name = cpu_arch[j].name;
cpu_sub_arch_name = NULL;
cpu_arch_flags = cpu_arch[j].flags;
@@ -8318,7 +8321,7 @@ md_parse_option (int c, char *arg)
" "
static void
-show_arch (FILE *stream, int ext)
+show_arch (FILE *stream, int ext, int check)
{
static char message[] = MESSAGE_TEMPLATE;
char *start = message + 27;
@@ -8355,6 +8358,11 @@ show_arch (FILE *stream, int ext)
/* It is an processor. Skip if we show only extension. */
continue;
}
+ else if (check && ! cpu_arch[j].flags.bitfield.cpui386)
+ {
+ /* It is an impossible processor - skip. */
+ continue;
+ }
/* Reserve 2 spaces for ", " or ",\0" */
left -= len + 2;
@@ -8419,13 +8427,13 @@ md_show_usage (FILE *stream)
fprintf (stream, _("\
-march=CPU[,+EXTENSION...]\n\
generate code for CPU and EXTENSION, CPU is one of:\n"));
- show_arch (stream, 0);
+ show_arch (stream, 0, 1);
fprintf (stream, _("\
EXTENSION is combination of:\n"));
- show_arch (stream, 1);
+ show_arch (stream, 1, 0);
fprintf (stream, _("\
-mtune=CPU optimize for CPU, CPU is one of:\n"));
- show_arch (stream, 0);
+ show_arch (stream, 0, 0);
fprintf (stream, _("\
-msse2avx encode SSE instructions with VEX prefix\n"));
fprintf (stream, _("\