GCC Middle and Back End API Reference
|
Data Structures | |
class | id_tab |
Public Types | |
enum | op_type { OP_PREDICATE , OP_EXPR , OP_CAPTURE , OP_C_EXPR , OP_IF , OP_WITH } |
Public Member Functions | |
c_expr (cpp_reader *r_, location_t loc, vec< cpp_token > code_, unsigned nr_stmts_, vec< id_tab > ids_, cid_map_t *capture_ids_) | |
void | gen_transform (FILE *f, int, const char *, bool, int, const char *, capture_info *, dt_operand **=0, int=0) final override |
Data Fields | |
cpp_reader * | r |
vec< cpp_token > | code |
cid_map_t * | capture_ids |
unsigned | nr_stmts |
vec< id_tab > | ids |
enum op_type | type |
location_t | location |
An operator that is represented by native C code. This is always a leaf operand in the AST. This class is also used to represent the code to be generated for 'if' and 'with' expressions.
|
inherited |
|
inline |
Referenced by parser::parse_c_expr(), and replace_id().
|
finaloverridevirtual |
Generate code for a c_expr which is either the expression inside an if statement or a sequence of statements which computes a result to be stored to DEST.
Reimplemented from operand.
References capture_ids, code, fatal_at(), fprintf_indent(), fputc(), hash_map< KeyId, Value, Traits >::get(), i, ids, line_table, map, nr_stmts, and r.
cid_map_t* c_expr::capture_ids |
vec<cpp_token> c_expr::code |
Referenced by gen_transform(), parser::parse_c_expr(), and capture_info::walk_c_expr().
Referenced by gen_transform(), lower_for(), and replace_id().
|
inherited |
unsigned c_expr::nr_stmts |
Referenced by gen_transform(), parser::parse_c_expr(), and parser::parse_result().
cpp_reader* c_expr::r |
Referenced by gen_transform(), main(), parser::next(), parser::parse_c_expr(), parser::parser(), and parser::peek().
|
inherited |