X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=parser.h;h=51140be9781325ed369c37acfadad595575d7498;hb=827826b9f956605193cbbb4ff5d94a7969d38bfb;hp=b1c7a2085d298753f848deefc642aabca16df1e4;hpb=cc693705755f277d33bb2fb3c1a801491294dcd9;p=xonotic%2Fgmqcc.git diff --git a/parser.h b/parser.h index b1c7a20..51140be 100644 --- a/parser.h +++ b/parser.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2012, 2013 + * Copyright (C) 2012, 2013, 2014 * Wolfgang Bumiller * Dale Weiler * @@ -47,7 +47,8 @@ typedef struct { } intrin_func_t; struct intrin_s { - intrin_func_t *intrinsics; /* vector */ + intrin_func_t *intrinsics; /* vector */ + ast_expression **generated; /* vector */ parser_t *parser; fold_t *fold; }; @@ -133,7 +134,7 @@ bool fold_generate (fold_t *, ir_builder *); ast_expression *fold_op (fold_t *, const oper_info *, ast_expression **); ast_expression *fold_intrin (fold_t *, const char *, ast_expression **); -ast_expression *fold_superfluous (ast_expression *, ast_expression *, int); +ast_expression *fold_binary (lex_ctx_t ctx, int, ast_expression *, ast_expression *); int fold_cond_ifthen (ir_value *, ast_function *, ast_ifthen *); int fold_cond_ternary (ir_value *, ast_function *, ast_ternary *);