mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-26 11:33:45 +08:00
gas: mips: fix segfault with invalid default cpu strings
If you configure gas for a mips32el-* target, the default cpu calculation gets mangled, and we end up passing and invalid value as the default cpu. If you try executing gas after that, it segfaults. This is because it assumes that the default cpu value is always valid. $ ./gas/as-new Assembler messages: Error: Bad value (2) for default CPU Segmentation fault (core dumped) I'm not debating that the target tuple is valid, just that gas shouldn't crash. So add a friendly assert to avoid that. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
parent
99fd6accc4
commit
95bfe26e6b
@ -1,3 +1,8 @@
|
||||
2012-05-21 Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
* config/tc-mips.c (mips_after_parse_args): Assert that arch_info
|
||||
is non-NULL.
|
||||
|
||||
2012-05-19 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* config/obj-elf.c (obj_elf_section): Cater for TC_KEEP_OPERAND_SPACES
|
||||
|
@ -15005,7 +15005,10 @@ mips_after_parse_args (void)
|
||||
}
|
||||
|
||||
if (arch_info == 0)
|
||||
arch_info = mips_parse_cpu ("default CPU", MIPS_CPU_STRING_DEFAULT);
|
||||
{
|
||||
arch_info = mips_parse_cpu ("default CPU", MIPS_CPU_STRING_DEFAULT);
|
||||
gas_assert (arch_info);
|
||||
}
|
||||
|
||||
if (ABI_NEEDS_64BIT_REGS (mips_abi) && !ISA_HAS_64BIT_REGS (arch_info->isa))
|
||||
as_bad (_("-march=%s is not compatible with the selected ABI"),
|
||||
|
Loading…
Reference in New Issue
Block a user