svn commit: r1309 - in trunk/yasm/modules/parsers/gas: .

peter at tortall.net peter at tortall.net
Wed Nov 2 21:29:45 PST 2005


Author: peter
Date: Wed Nov  2 21:29:42 2005
New Revision: 1309

Added:
   trunk/yasm/modules/parsers/gas/tests/gas-instlabel.asm
   trunk/yasm/modules/parsers/gas/tests/gas-instlabel.errwarn
   trunk/yasm/modules/parsers/gas/tests/gas-instlabel.hex
Modified:
   trunk/yasm/modules/parsers/gas/gas-bison.y
   trunk/yasm/modules/parsers/gas/gas-parser.h
   trunk/yasm/modules/parsers/gas/gas-token.re
   trunk/yasm/modules/parsers/gas/tests/Makefile.inc
Changeset:
   http://www.tortall.net/projects/yasm/changeset/1309

Log:
Handle instruction and prefix identifiers properly when used in other
places in GAS input.  Do this by adding a tokenizer state that turns off
insn and prefix generation when inside an instruction or directive, AND
adding a special case for labels.

* gas-parser.h (state): Add INSTDIR.
* gas-token.re: Switch state back to INITIAL on ';' or newline; set state
when entering instruction or directive, add special case for labels.
* gas-bison.y: Remove non-working attempt at translating INSN and PREFIX
into string token; add special case for LABEL identifiers (generated from
special case for labels in tokenizer).



More information about the yasm-cvs mailing list