OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [binutils-2.20.1/] [binutils/] [syslex.l] - Diff between revs 816 and 818

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 816 Rev 818
%{
%{
/* Copyright 2001, 2003, 2005, 2007 Free Software Foundation, Inc.
/* Copyright 2001, 2003, 2005, 2007 Free Software Foundation, Inc.
   This file is part of GNU Binutils.
   This file is part of GNU Binutils.
   This program is free software; you can redistribute it and/or modify
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3, or (at your option)
   the Free Software Foundation; either version 3, or (at your option)
   any later version.
   any later version.
   This program is distributed in the hope that it will be useful,
   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
   GNU General Public License for more details.
   You should have received a copy of the GNU General Public License
   You should have received a copy of the GNU General Public License
   along with GLD; see the file COPYING.  If not, write to the Free
   along with GLD; see the file COPYING.  If not, write to the Free
   Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
   Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
   02110-1301, USA.  */
   02110-1301, USA.  */
#include "config.h"
#include "config.h"
#ifdef HAVE_STRING_H
#ifdef HAVE_STRING_H
#include 
#include 
#else
#else
#ifdef HAVE_STRINGS_H
#ifdef HAVE_STRINGS_H
#include 
#include 
#endif
#endif
#endif
#endif
#include "sysinfo.h"
#include "sysinfo.h"
#define YY_NO_UNPUT
#define YY_NO_UNPUT
#ifndef yywrap
#ifndef yywrap
static int yywrap (void) { return 1; }
static int yywrap (void) { return 1; }
#endif
#endif
extern int yylex (void);
extern int yylex (void);
%}
%}
%%
%%
"(" { return '(';}
"(" { return '(';}
")" { return ')';}
")" { return ')';}
"[" { return '[';}
"[" { return '[';}
"]" { return ']';}
"]" { return ']';}
" " { ; }
" " { ; }
";".* { ; }
";".* { ; }
"\t" { ; }
"\t" { ; }
"\n" { ; }
"\n" { ; }
"\""[^\"]*"\"" {
"\""[^\"]*"\"" {
        yylval.s = malloc (yyleng - 1);
        yylval.s = malloc (yyleng - 1);
        memcpy (yylval.s, yytext + 1, yyleng - 2);
        memcpy (yylval.s, yytext + 1, yyleng - 2);
        yylval.s[yyleng - 2] = '\0';
        yylval.s[yyleng - 2] = '\0';
        return NAME;
        return NAME;
        }
        }
0x[0-9a-f]+ {
0x[0-9a-f]+ {
        yylval.i = strtol(yytext,0,16);
        yylval.i = strtol(yytext,0,16);
        return  NUMBER;
        return  NUMBER;
        }
        }
[0-9]+ {
[0-9]+ {
        yylval.i = atoi(yytext);
        yylval.i = atoi(yytext);
        return  NUMBER;
        return  NUMBER;
        }
        }
"bits" { yylval.i =1 ;return UNIT;}
"bits" { yylval.i =1 ;return UNIT;}
"bit" { yylval.i = 1; return UNIT;}
"bit" { yylval.i = 1; return UNIT;}
"bytes" { yylval.i= 8; return UNIT;}
"bytes" { yylval.i= 8; return UNIT;}
"byte" { yylval.i = 8; return UNIT;}
"byte" { yylval.i = 8; return UNIT;}
"int" { yylval.s = "INT"; return TYPE;}
"int" { yylval.s = "INT"; return TYPE;}
"barray" { yylval.s = "BARRAY"; return TYPE;}
"barray" { yylval.s = "BARRAY"; return TYPE;}
"chars" { yylval.s = "CHARS"; return TYPE;}
"chars" { yylval.s = "CHARS"; return TYPE;}
"variable" { yylval.i = 0; return NUMBER;}
"variable" { yylval.i = 0; return NUMBER;}
"counted" { yylval.i = -4; return NUMBER;}
"counted" { yylval.i = -4; return NUMBER;}
"addrsize" { yylval.i = -2; return NUMBER; }
"addrsize" { yylval.i = -2; return NUMBER; }
"segsize" { yylval.i = -1; return NUMBER; }
"segsize" { yylval.i = -1; return NUMBER; }
"cond" { return COND;}
"cond" { return COND;}
"repeat" { return REPEAT;}
"repeat" { return REPEAT;}
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.