This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gas: should duplicate .macro directives be allowed?


My system assembler is binutils 2.15, and allows duplicate macros; the later
one wins.  GDB's testsuite relies on this; I built a combined tree and
dejagnu decided to use the in-tree assembler for asm-source.exp, which no
longer allows this.  Thus:

/nevyn/big/fsf/objects/commit-gdb/gdb/testsuite/gdb.asm/arch.inc: Assembler messages:
/nevyn/big/fsf/objects/commit-gdb/gdb/testsuite/gdb.asm/arch.inc:35: Error: Macro with this name was already defined

>From gdb.asm/common.inc:

comment "arch.inc is responsible for defining the following macros:"
comment "enter - subroutine prologue"
comment "leave - subroutine epilogue"
comment "call - call a named subroutine"
comment "several_nops - execute several (typically 4) nops"
comment "exit0 - exit (0)"

comment "arch.inc may also override the default definitions of:"
comment "datavar - define a data variable"
comment "declare - declare the start of a subroutine"
comment "end - end a subroutine"

Then an architecture-specific file is included, in this case i386.inc.


Was the change deliberate?  If so, it needs to be documented (I'd prefer to
revert it).  It appears to have come in here:

2005-01-31  Jan Beulich  <jbeulich@novell.com>

        * macro.c (do_formals): Adjust to no longer accept empty parameter
        names.
        (define_macro): Adjust to no longer accept empty macro name, garbage
        following the parameters, or macros that were previously defined.
        * read.c (s_bad_end): Declare.
        (potable): Add endm. Handler for endr and endm is s_bad_end.
        (s_bad_end): Rename from s_bad_endr. Adjust to handle both .endm
        and .endr.
        * read.h (s_bad_endr): Remove.


-- 
Daniel Jacobowitz
CodeSourcery, LLC


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]