This is the mail archive of the
mailing list for the binutils project.
Re: [PATCH] GAS: Add ECOFF `.aent' pseudo-op support
> > Assembly language documentation available describes the pseudo-op
> > respectively as follows:
> > "
> > .aent name, symno Sets an alternate entry point for the current
> > procedure. Use this information when you want
> > to generate information for the debugger. It must
> > appear inside an .ent/.end pair."
> > and:
> > "
> > .aent name [,symno]
> > Sets an alternate entry point for the current procedure. Use this
> > information when you want to generate information for the debugger.
> > This directive must appear between a pair of .ent and .end directives.
> > (The optional symno is for compiler use only. It refers to a dense
> > number in a .T file (symbol table).)"
> Should this documentation be added to gas/doc/as.texinfo ? Or failing that
> maybe names of the pseudo ops could be added along with the URLs in  and  ?
We don't have a chapter covering the ECOFF/PDR set of directives for the
MIPS target, and therefore I think adding `.aent' alone would make no
sense without the context. I'll try to cook up something, especially as
we have a suitable chapter already for the Alpha target, which can be used
as a starting point.
Overall I think I'll have to review all MIPS pseudo-ops and document any
that are missing; there are ones beyond the ECOFF/PDR set, such as all the
PIC stuff. People ask about them sometimes, so it would be good to have
documentation included so that they don't have to be referred to old SGI
books (which, BTW I'm told, have been regrettably taken offline recently).
I'll have to properly document `-mdebug' too (already noted here
> > gas/
> > * ecoff.c (ecoff_directive_ent, add_procedure): Handle `.aent'.
> > * config/obj-ecoff.c (obj_pseudo_table): Add "aent" entry.
> > * config/obj-elf.c (ecoff_debug_pseudo_table): Likewise.
> > * testsuite/gas/mips/aent-2.d: New test.
> > * testsuite/gas/mips/aent-mdebug.d: New test.
> > * testsuite/gas/mips/aent-mdebug-2.d: New test.
> > * testsuite/gas/mips/mips.exp: Run the new tests.
> Approved - please apply.
Done, thanks for your review.
> Is this feature worth an entry in the gas/NEWS file ? I am not an aficionado of
> the ECOFF format, so I am not sure of the significance of the feat
Well, nobody noticed the breakage in ~15 years, so I wouldn't bother.
The use of `.aent' is not frequent and even less so is `.mdebug'. I only
came across this issue by chance, in making a test case for another
problem (just posted), which in turn I discovered by seeing yet another
test case, for an R_MIPS_JALR relocation corner case, fail for IRIX.
NB, I've missed it somehow that Alpha actually handles `.aent' already,
with `s_ignore'. I suspect it may make sense to do the same as with MIPS
then, that is to set BSF_FUNCTION for the symbol requested, if for example
the disassembler cares. I'll defer it to another occasion though. I seem
to be the only to care as even the original MIPS part was done by myself:
Author: Maciej W. Rozycki <email@example.com>
Date: Sat Dec 19 00:21:29 2009 +0000
("MIPS/GAS: Make .aent set function symbol type", reviewed: