Fix sparc bitness overrides in GAS. Noticed by Eric Botcazou.

gas/

	* config/tc-sparc.c (md_parse_option): Only certain arch
	specifications should override the object to be 32-bit
	or 64-bit.
This commit is contained in:
David S. Miller 2012-11-20 08:37:52 +00:00
parent bd0cfc4d46
commit 668b27eacf
2 changed files with 17 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2012-11-20 David S. Miller <davem@davemloft.net>
* config/tc-sparc.c (md_parse_option): Only certain arch
specifications should override the object to be 32-bit
or 64-bit.
2012-11-14 David Holsgrove <david.holsgrove@xilinx.com>
* config/tc-microblaze.c (md_assemble): Add support for INST_TYPE_IMM5

View File

@ -480,10 +480,18 @@ md_parse_option (int c, char *arg)
case OPTION_XARCH:
#ifdef OBJ_ELF
if (strncmp (arg, "v9", 2) != 0)
md_parse_option (OPTION_32, NULL);
else
if (!strncmp (arg, "v9", 2))
md_parse_option (OPTION_64, NULL);
else
{
if (!strncmp (arg, "v8", 2)
|| !strncmp (arg, "v7", 2)
|| !strncmp (arg, "v6", 2)
|| !strcmp (arg, "sparclet")
|| !strcmp (arg, "sparclite")
|| !strcmp (arg, "sparc86x"))
md_parse_option (OPTION_32, NULL);
}
#endif
/* Fall through. */