PIPS
|
#include <stdio.h>
#include "genC.h"
#include "linear.h"
#include "ri.h"
#include "resources.h"
#include "misc.h"
#include "ri-util.h"
#include "sac.h"
#include "patterns.h"
#include <limits.h>
Go to the source code of this file.
Data Structures | |
union | yyalloc |
INFRINGES ON USER NAME SPACE. More... | |
Macros | |
#define | YYBISON 30802 |
A Bison parser, made by GNU Bison 3.8.2. More... | |
#define | YYBISON_VERSION "3.8.2" |
Bison version string. More... | |
#define | YYSKELETON_NAME "yacc.c" |
Skeleton name. More... | |
#define | YYPURE 0 |
Pure parsers. More... | |
#define | YYPUSH 0 |
Push parsers. More... | |
#define | YYPULL 1 |
Pull parsers. More... | |
#define | yyparse(void) patterns_yyparse |
------—. More... | |
#define | yylex patterns_yylex |
#define | yyerror patterns_yyerror |
#define | yydebug patterns_yydebug |
#define | yynerrs patterns_yynerrs |
#define | yylval patterns_yylval |
#define | yychar patterns_yychar |
#define | TOKEN_NEWGEN_DOMAIN (-1) |
fake helpers More... | |
#define | ARGUMENT_NEWGEN_DOMAIN (-1) |
#define | gen_TOKEN_cons(t, l) gen_cons(t,l) |
#define | gen_ARGUMENT_cons(a, l) gen_cons(a,l) |
#define | YY_CAST(Type, Val) ((Type) (Val)) |
#define | YY_REINTERPRET_CAST(Type, Val) ((Type) (Val)) |
#define | YY_NULLPTR ((void*)0) |
#define | YYPTRDIFF_T long |
#define | YYPTRDIFF_MAXIMUM LONG_MAX |
#define | YYSIZE_T unsigned |
#define | YYSIZE_MAXIMUM |
#define | YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X)) |
#define | YY_(Msgid) Msgid |
#define | YY_ATTRIBUTE_PURE |
#define | YY_ATTRIBUTE_UNUSED |
#define | YY_USE(E) ((void) (E)) |
Suppress unused-variable warnings by "using" E. More... | |
#define | YY_INITIAL_VALUE(Value) Value |
Suppress an incorrect diagnostic about yylval being uninitialized. More... | |
#define | YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN |
#define | YY_IGNORE_MAYBE_UNINITIALIZED_END |
#define | YY_IGNORE_USELESS_CAST_BEGIN |
#define | YY_IGNORE_USELESS_CAST_END |
#define | YY_ASSERT(E) ((void) (0 && (E))) |
#define | YYSTACK_ALLOC YYMALLOC |
The parser invokes alloca or malloc; define the necessary symbols. More... | |
#define | YYSTACK_FREE YYFREE |
#define | YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM |
#define | YYMALLOC malloc |
#define | YYFREE free |
INFRINGES ON USER NAME SPACE. More... | |
#define | YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1) |
The size of the maximum gap between one aligned stack and the next. More... | |
#define | YYSTACK_BYTES(N) |
The size of an array large to enough to hold all stacks, each with N elements. More... | |
#define | YYCOPY_NEEDED 1 |
#define | YYSTACK_RELOCATE(Stack_alloc, Stack) |
Relocate STACK from its old location to the new one. More... | |
#define | YYCOPY(Dst, Src, Count) |
Copy COUNT objects from SRC to DST. More... | |
#define | YYFINAL 3 |
!YYCOPY_NEEDED More... | |
#define | YYLAST 81 |
YYLAST – Last index in YYTABLE. More... | |
#define | YYNTOKENS 63 |
YYNTOKENS – Number of terminals. More... | |
#define | YYNNTS 17 |
YYNNTS – Number of nonterminals. More... | |
#define | YYNRULES 74 |
YYNRULES – Number of rules. More... | |
#define | YYNSTATES 99 |
YYNSTATES – Number of states. More... | |
#define | YYMAXUTOK 310 |
YYMAXUTOK – Last valid token kind. More... | |
#define | YYTRANSLATE(YYX) |
YYTRANSLATE(TOKEN-NUM) – Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking. More... | |
#define | YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State]) |
Accessing symbol of state STATE. More... | |
#define | YYPACT_NINF (-56) |
#define | yypact_value_is_default(Yyn) ((Yyn) == YYPACT_NINF) |
#define | YYTABLE_NINF (-1) |
#define | yytable_value_is_error(Yyn) 0 |
#define | yyerrok (yyerrstatus = 0) |
#define | yyclearin (yychar = YYEMPTY) |
#define | YYACCEPT goto yyacceptlab |
#define | YYABORT goto yyabortlab |
#define | YYERROR goto yyerrorlab |
#define | YYNOMEM goto yyexhaustedlab |
#define | YYRECOVERING() (!!yyerrstatus) |
#define | YYBACKUP(Token, Value) |
#define | YYERRCODE YYUNDEF |
Backward compatibility with an undocumented macro. More... | |
#define | YYDPRINTF(Args) ((void) 0) |
Enable debugging if requested. More... | |
#define | YY_SYMBOL_PRINT(Title, Kind, Value, Location) |
#define | YY_STACK_PRINT(Bottom, Top) |
#define | YY_REDUCE_PRINT(Rule) |
#define | YYINITDEPTH 200 |
!YYDEBUG More... | |
#define | YYMAXDEPTH 10000 |
YYMAXDEPTH – maximum size the stacks can grow to (effective only if the built-in stack extension method is used). More... | |
#define | YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) |
Typedefs | |
typedef enum yysymbol_kind_t | yysymbol_kind_t |
typedef signed char | yytype_int8 |
On compilers that do not define PTRDIFF_MAX etc., make sure <limits.h> and (if available) <stdint.h> are included so that the code can choose integer types of a good width. More... | |
typedef short | yytype_int16 |
typedef unsigned char | yytype_uint8 |
Work around bug in HP-UX 11.23, which defines these macros incorrectly for preprocessor constants. More... | |
typedef unsigned short | yytype_uint16 |
typedef yytype_int8 | yy_state_t |
Stored state numbers (used for stacks). More... | |
typedef int | yy_state_fast_t |
State numbers in computations. More... | |
Functions | |
void * | malloc (YYSIZE_T) |
void | free (void *) |
static void | yydestruct (const char *yymsg, yysymbol_kind_t yykind, YYSTYPE *yyvaluep) |
-------------------------------------------—. More... | |
int | patterns_yywrap (void) |
void | patterns_yyerror (const char *s) |
Variables | |
static size_t | opcode_argc =0 |
First part of user prologue. More... | |
size_t | sac_lineno = 0 |
patterns.c More... | |
static const yytype_int8 | yytranslate [] |
YYTRANSLATE[TOKEN-NUM] – Symbol number corresponding to TOKEN-NUM as returned by yylex. More... | |
static const yytype_int8 | yypact [] |
YYPACT[STATE-NUM] – Index in YYTABLE of the portion describing STATE-NUM. More... | |
static const yytype_int8 | yydefact [] |
YYDEFACT[STATE-NUM] – Default reduction number in state STATE-NUM. More... | |
static const yytype_int8 | yypgoto [] |
YYPGOTO[NTERM-NUM]. More... | |
static const yytype_int8 | yydefgoto [] |
YYDEFGOTO[NTERM-NUM]. More... | |
static const yytype_int8 | yytable [] |
YYTABLE[YYPACT[STATE-NUM]] – What to do in state STATE-NUM. More... | |
static const yytype_int8 | yycheck [] |
static const yytype_int8 | yystos [] |
YYSTOS[STATE-NUM] – The symbol kind of the accessing symbol of state STATE-NUM. More... | |
static const yytype_int8 | yyr1 [] |
YYR1[RULE-NUM] – Symbol kind of the left-hand side of rule RULE-NUM. More... | |
static const yytype_int8 | yyr2 [] |
YYR2[RULE-NUM] – Number of symbols on the right-hand side of rule RULE-NUM. More... | |
int | yychar |
Lookahead token kind. More... | |
YYSTYPE | yylval |
The semantic value of the lookahead symbol. More... | |
int | yynerrs |
Number of syntax errors so far. More... | |
#define ARGUMENT_NEWGEN_DOMAIN (-1) |
Definition at line 101 of file patterns.c.
#define gen_ARGUMENT_cons | ( | a, | |
l | |||
) | gen_cons(a,l) |
Definition at line 103 of file patterns.c.
#define gen_TOKEN_cons | ( | t, | |
l | |||
) | gen_cons(t,l) |
Definition at line 102 of file patterns.c.
#define TOKEN_NEWGEN_DOMAIN (-1) |
fake helpers
Definition at line 100 of file patterns.c.
#define YY_ | ( | Msgid | ) | Msgid |
Definition at line 344 of file patterns.c.
#define YY_ACCESSING_SYMBOL | ( | State | ) | YY_CAST (yysymbol_kind_t, yystos[State]) |
Definition at line 410 of file patterns.c.
#define YY_ATTRIBUTE_PURE |
Definition at line 353 of file patterns.c.
#define YY_ATTRIBUTE_UNUSED |
Definition at line 361 of file patterns.c.
Definition at line 114 of file patterns.c.
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN |
Definition at line 390 of file patterns.c.
#define YY_IGNORE_MAYBE_UNINITIALIZED_END |
Definition at line 391 of file patterns.c.
#define YY_IGNORE_USELESS_CAST_BEGIN |
Definition at line 405 of file patterns.c.
#define YY_IGNORE_USELESS_CAST_END |
Definition at line 406 of file patterns.c.
Suppress an incorrect diagnostic about yylval being uninitialized.
Definition at line 387 of file patterns.c.
#define YY_NULLPTR ((void*)0) |
Definition at line 126 of file patterns.c.
#define YY_REDUCE_PRINT | ( | Rule | ) |
Definition at line 947 of file patterns.c.
Definition at line 115 of file patterns.c.
#define YY_STACK_PRINT | ( | Bottom, | |
Top | |||
) |
Definition at line 946 of file patterns.c.
#define YY_SYMBOL_PRINT | ( | Title, | |
Kind, | |||
Value, | |||
Location | |||
) |
Definition at line 945 of file patterns.c.
#define YYABORT goto yyabortlab |
Definition at line 795 of file patterns.c.
#define YYACCEPT goto yyacceptlab |
Definition at line 794 of file patterns.c.
#define YYBACKUP | ( | Token, | |
Value | |||
) |
Definition at line 802 of file patterns.c.
#define YYBISON 30802 |
A Bison parser, made by GNU Bison 3.8.2.
Bison implementation for Yacc-like parsers in C
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation, Inc.
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 the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.
As a special exception, you may create a larger work that contains part or all of the Bison parser skeleton and distribute that work under terms of your choice, so long as that work isn't itself a parser generator using the skeleton or a modified version thereof as a parser skeleton. Alternatively, if you modify or redistribute the parser skeleton itself, you may (at your option) remove this special exception, which will cause the skeleton and the resulting Bison output files to be licensed under the GNU General Public License without this special exception.
This special exception was added by the Free Software Foundation in version 2.2 of Bison.
C LALR(1) parser skeleton written by Richard Stallman, by simplifying the original so-called "semantic" parser.
DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual, especially those whose name start with YY_ or yy_. They are private implementation details that can be changed or removed.
All symbols defined below should begin with yy or YY, to avoid infringing on user name space. This should be done even for local variables, as they might otherwise be expanded by user macros. There are some unavoidable exceptions within include files to define necessary library symbols; they are noted "INFRINGES ON
USER NAME SPACE" below.
Identify Bison output, and Bison version.
Definition at line 49 of file patterns.c.
#define YYBISON_VERSION "3.8.2" |
#define yychar patterns_yychar |
Definition at line 74 of file patterns.c.
Definition at line 792 of file patterns.c.
#define YYCOPY | ( | Dst, | |
Src, | |||
Count | |||
) |
Copy COUNT objects from SRC to DST.
The source and destination do not overlap.
Definition at line 527 of file patterns.c.
#define YYCOPY_NEEDED 1 |
Definition at line 499 of file patterns.c.
#define yydebug patterns_yydebug |
Definition at line 71 of file patterns.c.
#define YYDPRINTF | ( | Args | ) | ((void) 0) |
#define YYERRCODE YYUNDEF |
Backward compatibility with an undocumented macro.
Use YYerror or YYUNDEF.
Definition at line 821 of file patterns.c.
#define yyerrok (yyerrstatus = 0) |
Definition at line 791 of file patterns.c.
#define yyerror patterns_yyerror |
Definition at line 70 of file patterns.c.
#define YYERROR goto yyerrorlab |
Definition at line 796 of file patterns.c.
#define YYFINAL 3 |
!YYCOPY_NEEDED
YYFINAL – State number of the termination state.
Definition at line 540 of file patterns.c.
#define YYFREE free |
INFRINGES ON USER NAME SPACE.
Definition at line 471 of file patterns.c.
#define YYINITDEPTH 200 |
!YYDEBUG
YYINITDEPTH – initial size of the parser's stacks.
Definition at line 953 of file patterns.c.
#define YYLAST 81 |
#define yylex | ( | void | ) | patterns_yylex |
Definition at line 69 of file patterns.c.
#define yylval patterns_yylval |
Definition at line 73 of file patterns.c.
#define YYMALLOC malloc |
Definition at line 465 of file patterns.c.
#define YYMAXDEPTH 10000 |
YYMAXDEPTH – maximum size the stacks can grow to (effective only if the built-in stack extension method is used).
Do not make this value too large; the results are undefined if YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) evaluated with infinite-precision integer arithmetic.
Definition at line 964 of file patterns.c.
#define YYMAXUTOK 310 |
#define yynerrs patterns_yynerrs |
Definition at line 72 of file patterns.c.
#define YYNNTS 17 |
#define YYNOMEM goto yyexhaustedlab |
Definition at line 797 of file patterns.c.
#define YYNRULES 74 |
#define YYNSTATES 99 |
#define YYNTOKENS 63 |
#define YYPACT_NINF (-56) |
Definition at line 660 of file patterns.c.
#define yypact_value_is_default | ( | Yyn | ) | ((Yyn) == YYPACT_NINF) |
Definition at line 662 of file patterns.c.
#define yyparse | ( | void | ) | patterns_yyparse |
------—.
Substitute the variable and function names.
| yyparse. | `-------—
Number of tokens to shift before error messages enabled.
Refer to the stacks through separate pointers, to allow yyoverflow to reallocate them elsewhere.
Their size.
The state stack: array, bottom, top.
The semantic value stack: array, bottom, top.
The return value of yyparse.
Lookahead symbol kind.
The variables used to return semantic value and location from the action routines.
The number of symbols on the RHS of the reduced rule. Keep to zero when no symbol should be popped.
Cause a token to be read.
--------------------------------------------------------—. | yynewstate – push a new state, which is found in yystate. | `---------------------------------------------------------—
In all cases, when you get here, the value and location stacks have just been pushed. So pushing a state here evens the stacks.
----------------------------------------------------------------—. | yysetstate – set current state (the top of the stack) to yystate. | `-----------------------------------------------------------------—
Get the current used size of the three stacks, in elements.
defined YYSTACK_RELOCATE
Extend the stack our own way.
!defined yyoverflow && !defined YYSTACK_RELOCATE
-------—. | yybackup. | `--------—
Do appropriate processing given the current state. Read a lookahead token if we need one and don't already have one.
First try to decide what to do without reference to lookahead token.
Not known => get a lookahead token if don't already have one.
YYCHAR is either empty, or end-of-input, or a valid lookahead.
The scanner already issued an error message, process directly to error recovery. But do not keep the error token as lookahead, it is too special and may lead us to an endless loop in error recovery.
If the proper action on seeing token YYTOKEN is to reduce or to detect an error, take that action.
Count tokens shifted since error; after three, turn off error status.
Shift the lookahead token.
Discard the shifted token.
-------------------------------------------------------—. | yydefault – do the default action for the current state. | `--------------------------------------------------------—
-------------------------—. | yyreduce – do a reduction. | `--------------------------—
yyn is the number of a rule to reduce with.
If YYLEN is nonzero, implement the default value of the action: '$$ = $1'.
Otherwise, the following line sets YYVAL to garbage. This behavior is undocumented and Bison users should not rely upon it. Assigning to YYVAL unconditionally makes the parser a bit smaller, and it avoids a GCC warning that YYVAL may be used uninitialized.
operation: IDENTIFIER_TOK '{' opcodes_list '}'
opcodes_list: opcodes_list opcode
opcodes_list: empty
opcode: IDENTIFIER_TOK ':' types_list ',' INTEGER_TOK ';'
pattern: IDENTIFIER_TOK ':' tokens_list merge_arguments ';'
types_list: type types_list
types_list: empty
type: QI_REF_TOK
type: HI_REF_TOK
type: SI_REF_TOK
type: DI_REF_TOK
type: SF_REF_TOK
type: DF_REF_TOK
type: SC_REF_TOK
type: DC_REF_TOK
type: LOG_REF_TOK
tokens_list: token tokens_list
tokens_list: empty
token: REFERENCE_TOK
token: CONSTANT_TOK
token: ASSIGN_OPERATOR_TOK
token: PLUS_OPERATOR_TOK
token: MINUS_OPERATOR_TOK
token: UNARY_MINUS_OPERATOR_TOK
token: MULTIPLY_OPERATOR_TOK
token: MULADD_OPERATOR_TOK
token: DIVIDE_OPERATOR_TOK
token: INVERSE_OPERATOR_TOK
token: POWER_OPERATOR_TOK
token: MODULO_OPERATOR_TOK
token: MIN_OPERATOR_TOK
token: COS_OPERATOR_TOK
token: SIN_OPERATOR_TOK
token: MIN0_OPERATOR_TOK
token: AMIN1_OPERATOR_TOK
token: DMIN1_OPERATOR_TOK
token: MAX_OPERATOR_TOK
token: MAX0_OPERATOR_TOK
token: AMAX1_OPERATOR_TOK
token: DMAX1_OPERATOR_TOK
token: ABS_OPERATOR_TOK
token: IABS_OPERATOR_TOK
token: DABS_OPERATOR_TOK
token: CABS_OPERATOR_TOK
token: AND_OPERATOR_TOK
token: OR_OPERATOR_TOK
token: NOT_OPERATOR_TOK
token: NON_EQUAL_OPERATOR_TOK
token: EQUIV_OPERATOR_TOK
token: NON_EQUIV_OPERATOR_TOK
token: TRUE_OPERATOR_TOK
token: FALSE_OPERATOR_TOK
token: GREATER_OR_EQUAL_OPERATOR_TOK
token: GREATER_THAN_OPERATOR_TOK
token: LESS_OR_EQUAL_OPERATOR_TOK
token: LESS_THAN_OPERATOR_TOK
token: EQUAL_OPERATOR_TOK
token: PHI_TOK
merge_arguments: ':' arguments_list
merge_arguments: empty
arguments_list: arguments_list ',' argument
arguments_list: argument
argument: INTEGER_TOK
argument: empty
transformation: IDENTIFIER_TOK '[' INTEGER_TOK ',' INTEGER_TOK ',' INTEGER_TOK ',' INTEGER_TOK ',' INTEGER_TOK ']' '{' mappings '}'
mappings: mappings ',' INTEGER_TOK
mappings: INTEGER_TOK
User semantic actions sometimes alter yychar, and that requires that yytoken be updated with the new translation. We take the approach of translating immediately before every use of yytoken. One alternative is translating here after every semantic action, but that translation would be missed if the semantic action invokes YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an incorrect destructor might then be invoked immediately. In the case of YYERROR or YYBACKUP, subsequent parser actions might lead to an incorrect destructor call or verbose syntax error message before the lookahead is translated.
Now 'shift' the result of the reduction. Determine what state that goes to, based on the state we popped back to and the rule number reduced by.
----------------------------------—. | yyerrlab – here on detecting error. | `-----------------------------------—
Make sure we have latest lookahead translation. See comments at user semantic actions for why this is necessary.
If not already recovering from an error, report this error.
If just tried and failed to reuse lookahead token after an error, discard it.
Return failure if at end of input.
Else will try to reuse lookahead token after shifting the error token.
-----------------------------------------------—. | yyerrorlab – error raised explicitly by YYERROR. | `------------------------------------------------—
Pacify compilers when the user code never invokes YYERROR and the label yyerrorlab therefore never appears in user code.
Do not reclaim the symbols of the rule whose action triggered this YYERROR.
---------------------------------------------------------—. | yyerrlab1 – common code for both syntax error and YYERROR. | `----------------------------------------------------------—
Each real token shifted decrements this.
Pop stack until we find a state that shifts the error token.
Pop the current state because it cannot handle the error token.
Shift the error token.
---------------------------------—. | yyacceptlab – YYACCEPT comes here. | `----------------------------------—
-------------------------------—. | yyabortlab – YYABORT comes here. | `--------------------------------—
-------------------------------------------------------—. | yyexhaustedlab – YYNOMEM (memory exhaustion) comes here. | `--------------------------------------------------------—
------------------------------------------------------—. | yyreturnlab – parsing is finished, clean up and return. | `-------------------------------------------------------—
Make sure we have latest lookahead translation. See comments at user semantic actions for why this is necessary.
Do not reclaim the symbols of the rule whose action triggered this YYABORT or YYACCEPT.
Definition at line 68 of file patterns.c.
#define YYPOPSTACK | ( | N | ) | (yyvsp -= (N), yyssp -= (N)) |
#define YYPTRDIFF_MAXIMUM LONG_MAX |
Definition at line 304 of file patterns.c.
#define YYPTRDIFF_T long |
Definition at line 303 of file patterns.c.
#define YYPULL 1 |
#define YYPURE 0 |
#define YYPUSH 0 |
#define YYRECOVERING | ( | ) | (!!yyerrstatus) |
Definition at line 800 of file patterns.c.
#define YYSIZE_MAXIMUM |
Definition at line 321 of file patterns.c.
#define YYSIZE_T unsigned |
Definition at line 317 of file patterns.c.
#define YYSIZEOF | ( | X | ) | YY_CAST (YYPTRDIFF_T, sizeof (X)) |
Definition at line 327 of file patterns.c.
#define YYSKELETON_NAME "yacc.c" |
#define YYSTACK_ALLOC YYMALLOC |
The parser invokes alloca or malloc; define the necessary symbols.
Definition at line 451 of file patterns.c.
#define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM |
Definition at line 454 of file patterns.c.
#define YYSTACK_BYTES | ( | N | ) |
The size of an array large to enough to hold all stacks, each with N elements.
Definition at line 495 of file patterns.c.
#define YYSTACK_FREE YYFREE |
Definition at line 452 of file patterns.c.
The size of the maximum gap between one aligned stack and the next.
Definition at line 491 of file patterns.c.
#define YYSTACK_RELOCATE | ( | Stack_alloc, | |
Stack | |||
) |
Relocate STACK from its old location to the new one.
The local variables YYSIZE and YYSTACKSIZE give the old and new number of elements in the stack, and YYPTR gives the new location of the stack. Advance YYPTR to a properly aligned location for the next stack.
Definition at line 506 of file patterns.c.
#define YYTABLE_NINF (-1) |
Definition at line 665 of file patterns.c.
#define yytable_value_is_error | ( | Yyn | ) | 0 |
Definition at line 667 of file patterns.c.
#define YYTRANSLATE | ( | YYX | ) |
YYTRANSLATE(TOKEN-NUM) – Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking.
Definition at line 559 of file patterns.c.
typedef int yy_state_fast_t |
typedef yytype_int8 yy_state_t |
Stored state numbers (used for stacks).
Definition at line 331 of file patterns.c.
typedef enum yysymbol_kind_t yysymbol_kind_t |
Definition at line 97 of file patterns.c.
typedef short yytype_int16 |
Definition at line 255 of file patterns.c.
typedef signed char yytype_int8 |
On compilers that do not define PTRDIFF_MAX etc., make sure <limits.h> and (if available) <stdint.h> are included so that the code can choose integer types of a good width.
INFRINGES ON USER NAME SPACE Narrow types that promote to a signed type and that can represent a signed or unsigned integer of at least N bits. In tables they can save space and decrease cache pressure. Promoting to a signed type helps avoid bugs in integer arithmetic.
Definition at line 247 of file patterns.c.
typedef unsigned short yytype_uint16 |
Definition at line 287 of file patterns.c.
typedef unsigned char yytype_uint8 |
Work around bug in HP-UX 11.23, which defines these macros incorrectly for preprocessor constants.
This workaround can likely be removed in 2023, as HPE has promised support for HP-UX 11.23 (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of https://h20195.www2.hpe.com/V2/getpdf.aspx/4AA4-7673ENW.pdf.
Definition at line 276 of file patterns.c.
anonymous enum |
enum yysymbol_kind_t |
Symbol kind.
Definition at line 132 of file patterns.c.
void free | ( | void * | ) |
void* malloc | ( | YYSIZE_T | ) |
void patterns_yyerror | ( | const char * | s | ) |
int patterns_yywrap | ( | void | ) |
Definition at line 1858 of file patterns.c.
|
static |
-------------------------------------------—.
| Release the memory associated to this symbol. | `--------------------------------------------—
Definition at line 977 of file patterns.c.
References YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN, YY_IGNORE_MAYBE_UNINITIALIZED_END, YY_SYMBOL_PRINT, and YY_USE.
|
static |
size_t sac_lineno = 0 |
patterns.c
Definition at line 97 of file patterns.c.
Referenced by patterns_yyerror(), and simd_treematcher().
int yychar |
|
static |
Definition at line 733 of file patterns.c.
|
static |
YYDEFACT[STATE-NUM] – Default reduction number in state STATE-NUM.
Performed when YYTABLE does not specify something else to do. Zero means the default is an error.
Definition at line 689 of file patterns.c.
|
static |
YYDEFGOTO[NTERM-NUM].
Definition at line 711 of file patterns.c.
YYSTYPE yylval |
int yynerrs |
|
static |
YYPACT[STATE-NUM] – Index in YYTABLE of the portion describing STATE-NUM.
Definition at line 672 of file patterns.c.
|
static |
YYPGOTO[NTERM-NUM].
Definition at line 704 of file patterns.c.
|
static |
YYR1[RULE-NUM] – Symbol kind of the left-hand side of rule RULE-NUM.
Definition at line 763 of file patterns.c.
|
static |
YYR2[RULE-NUM] – Number of symbols on the right-hand side of rule RULE-NUM.
Definition at line 776 of file patterns.c.
|
static |
YYSTOS[STATE-NUM] – The symbol kind of the accessing symbol of state STATE-NUM.
Definition at line 748 of file patterns.c.
|
static |
YYTABLE[YYPACT[STATE-NUM]] – What to do in state STATE-NUM.
If positive, shift that token. If negative, reduce the rule whose number is the opposite. If YYTABLE_NINF, syntax error.
Definition at line 720 of file patterns.c.
|
static |
YYTRANSLATE[TOKEN-NUM] – Symbol number corresponding to TOKEN-NUM as returned by yylex.
Definition at line 566 of file patterns.c.