On 8/28/2021 1:08 AM, Xi Ruoyao wrote:
On Fri, 2021-08-27 at 15:36 -0600, Jeff Law wrote:
It's easier when someone has to debug the code later.
enums show up in debug output by default, while #defines do not.
switch (mips_isa)
{
case MIPS_ISA_MIPS1: return "mips1";
// ...
}
It looks better, and (maybe) generates better code. Just my 2 cents
though.
Coding standards would have that as
switch (mips_isa)
{
case MIPS_ISA_MIPS_1:
return "mips1";
...
}
There is some existing code using "case ... : return ..." in one line in
mips.c, so I thought it was standard :(.
Presumably .module is supported by all reasonably modern versions of
GAS?
It's added by the commit in binutils-gdb:
commit 919731affbef19fcad8dddb0a595bb05755cb345
Author: mfortune <matthew.fort...@imgtec.com>
Date: Tue May 20 13:28:20 2014 +0100
Add MIPS .module directive
So it should be supported since binutils-2.25.
If we want to support old binutils we'll need something like "-fno-mips-
module-directive" and "--without-mips-module-directive". My suggestion
is just bumping the binutils requirement for mips*-*-*.
That's old enough that I'm not going to worry about it :-) By the time
gcc-12 hits the streets, binutils-2.25 will be roughly 8 years old.
Jeff