Stop if -march=XXX is invalid.
2010-06-10 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (update_code_flag): New. (set_code_flag): Use it. (i386_target_format): Replace set_code_flag with update_code_flag.
This commit is contained in:
parent
34017a41b3
commit
78f12dd3eb
|
@ -1,3 +1,9 @@
|
|||
2010-06-10 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* config/tc-i386.c (update_code_flag): New.
|
||||
(set_code_flag): Use it.
|
||||
(i386_target_format): Replace set_code_flag with update_code_flag.
|
||||
|
||||
2010-06-10 Tristan Gingold <gingold@adacore.com>
|
||||
|
||||
* config/obj-som.h: Includes som/reloc.h
|
||||
|
|
|
@ -135,6 +135,7 @@ typedef struct
|
|||
}
|
||||
arch_entry;
|
||||
|
||||
static void update_code_flag (int, int);
|
||||
static void set_code_flag (int);
|
||||
static void set_16bit_gcc_code_flag (int);
|
||||
static void set_intel_syntax (int);
|
||||
|
@ -1922,8 +1923,10 @@ add_prefix (unsigned int prefix)
|
|||
}
|
||||
|
||||
static void
|
||||
set_code_flag (int value)
|
||||
update_code_flag (int value, int check)
|
||||
{
|
||||
PRINTF_LIKE ((*as_error));
|
||||
|
||||
flag_code = (enum flag_code) value;
|
||||
if (flag_code == CODE_64BIT)
|
||||
{
|
||||
|
@ -1937,15 +1940,31 @@ set_code_flag (int value)
|
|||
}
|
||||
if (value == CODE_64BIT && !cpu_arch_flags.bitfield.cpulm )
|
||||
{
|
||||
as_bad (_("64bit mode not supported on this CPU."));
|
||||
if (check)
|
||||
as_error = as_fatal;
|
||||
else
|
||||
as_error = as_bad;
|
||||
(*as_error) (_("64bit mode not supported on `%s'."),
|
||||
cpu_arch_name ? cpu_arch_name : default_arch);
|
||||
}
|
||||
if (value == CODE_32BIT && !cpu_arch_flags.bitfield.cpui386)
|
||||
{
|
||||
as_bad (_("32bit mode not supported on this CPU."));
|
||||
if (check)
|
||||
as_error = as_fatal;
|
||||
else
|
||||
as_error = as_bad;
|
||||
(*as_error) (_("32bit mode not supported on `%s'."),
|
||||
cpu_arch_name ? cpu_arch_name : default_arch);
|
||||
}
|
||||
stackop_size = '\0';
|
||||
}
|
||||
|
||||
static void
|
||||
set_code_flag (int value)
|
||||
{
|
||||
update_code_flag (value, 0);
|
||||
}
|
||||
|
||||
static void
|
||||
set_16bit_gcc_code_flag (int new_code_flag)
|
||||
{
|
||||
|
@ -8437,9 +8456,9 @@ const char *
|
|||
i386_target_format (void)
|
||||
{
|
||||
if (!strcmp (default_arch, "x86_64"))
|
||||
set_code_flag (CODE_64BIT);
|
||||
update_code_flag (CODE_64BIT, 1);
|
||||
else if (!strcmp (default_arch, "i386"))
|
||||
set_code_flag (CODE_32BIT);
|
||||
update_code_flag (CODE_32BIT, 1);
|
||||
else
|
||||
as_fatal (_("Unknown architecture"));
|
||||
|
||||
|
|
Loading…
Reference in New Issue