From 76af86221f401d804b4625c309abf34596feb830 Mon Sep 17 00:00:00 2001 From: Peter Johnson Date: Wed, 11 Jul 2001 21:00:34 +0000 Subject: [PATCH] Move some previously seperate identifiers into general label handlers. svn path=/trunk/yasm/; revision=123 --- modules/parsers/nasm/token.l.in | 17 ++++++++++++----- src/parsers/nasm/token.l.in | 17 ++++++++++++----- src/token.l.in | 17 ++++++++++++----- 3 files changed, 36 insertions(+), 15 deletions(-) diff --git a/modules/parsers/nasm/token.l.in b/modules/parsers/nasm/token.l.in index 2a19cdc8..4a536b1e 100644 --- a/modules/parsers/nasm/token.l.in +++ b/modules/parsers/nasm/token.l.in @@ -1,4 +1,4 @@ -/* $Id: token.l.in,v 1.9 2001/07/05 08:37:59 mu Exp $ +/* $Id: token.l.in,v 1.10 2001/07/11 21:00:34 peter Exp $ * Main lexer * * Copyright (C) 2001 Peter Johnson @@ -224,13 +224,20 @@ gs { yylval.int_val = 5; return REG_GS; } ">>" { return RIGHT_OP; } "//" { return SIGNDIV; } "%%" { return SIGNMOD; } -"$$" { return START_SECTION_OFFSET; } -[-+|^&*/%~$():[\],] { return yytext[0]; } +[-+|^&*/%~():[\],] { return yytext[0]; } -\.\.start:? { return ENTRY_POINT; } + /* special labels like ..start */ +\.\.[a-z0-9_$#@~.?]+ { + /* For now, just treat like regular label */ + yylval.syminfo.name = strdup (yytext); + if (yylval.syminfo.name == NULL) Fatal (FATAL_NOMEM); + yylval.syminfo.line = line_number; + + return ID; +} /* special non-local ..@label */ -\.\.@[a-z0-9_$#@~.?]+ { +$$|$|\.\.@[a-z0-9_$#@~.?]+ { yylval.syminfo.name = strdup (yytext); if (yylval.syminfo.name == NULL) Fatal (FATAL_NOMEM); yylval.syminfo.line = line_number; diff --git a/src/parsers/nasm/token.l.in b/src/parsers/nasm/token.l.in index 2a19cdc8..4a536b1e 100644 --- a/src/parsers/nasm/token.l.in +++ b/src/parsers/nasm/token.l.in @@ -1,4 +1,4 @@ -/* $Id: token.l.in,v 1.9 2001/07/05 08:37:59 mu Exp $ +/* $Id: token.l.in,v 1.10 2001/07/11 21:00:34 peter Exp $ * Main lexer * * Copyright (C) 2001 Peter Johnson @@ -224,13 +224,20 @@ gs { yylval.int_val = 5; return REG_GS; } ">>" { return RIGHT_OP; } "//" { return SIGNDIV; } "%%" { return SIGNMOD; } -"$$" { return START_SECTION_OFFSET; } -[-+|^&*/%~$():[\],] { return yytext[0]; } +[-+|^&*/%~():[\],] { return yytext[0]; } -\.\.start:? { return ENTRY_POINT; } + /* special labels like ..start */ +\.\.[a-z0-9_$#@~.?]+ { + /* For now, just treat like regular label */ + yylval.syminfo.name = strdup (yytext); + if (yylval.syminfo.name == NULL) Fatal (FATAL_NOMEM); + yylval.syminfo.line = line_number; + + return ID; +} /* special non-local ..@label */ -\.\.@[a-z0-9_$#@~.?]+ { +$$|$|\.\.@[a-z0-9_$#@~.?]+ { yylval.syminfo.name = strdup (yytext); if (yylval.syminfo.name == NULL) Fatal (FATAL_NOMEM); yylval.syminfo.line = line_number; diff --git a/src/token.l.in b/src/token.l.in index 2a19cdc8..4a536b1e 100644 --- a/src/token.l.in +++ b/src/token.l.in @@ -1,4 +1,4 @@ -/* $Id: token.l.in,v 1.9 2001/07/05 08:37:59 mu Exp $ +/* $Id: token.l.in,v 1.10 2001/07/11 21:00:34 peter Exp $ * Main lexer * * Copyright (C) 2001 Peter Johnson @@ -224,13 +224,20 @@ gs { yylval.int_val = 5; return REG_GS; } ">>" { return RIGHT_OP; } "//" { return SIGNDIV; } "%%" { return SIGNMOD; } -"$$" { return START_SECTION_OFFSET; } -[-+|^&*/%~$():[\],] { return yytext[0]; } +[-+|^&*/%~():[\],] { return yytext[0]; } -\.\.start:? { return ENTRY_POINT; } + /* special labels like ..start */ +\.\.[a-z0-9_$#@~.?]+ { + /* For now, just treat like regular label */ + yylval.syminfo.name = strdup (yytext); + if (yylval.syminfo.name == NULL) Fatal (FATAL_NOMEM); + yylval.syminfo.line = line_number; + + return ID; +} /* special non-local ..@label */ -\.\.@[a-z0-9_$#@~.?]+ { +$$|$|\.\.@[a-z0-9_$#@~.?]+ { yylval.syminfo.name = strdup (yytext); if (yylval.syminfo.name == NULL) Fatal (FATAL_NOMEM); yylval.syminfo.line = line_number;