| H A D | linearize.c | 26 static pseudo_t linearize_statement(struct entrypoint *ep, struct statement *stmt); 27 static pseudo_t linearize_expression(struct entrypoint *ep, struct expression *expr); 29 static pseudo_t add_cast(struct entrypoint *ep, struct symbol *to, struct symbol *from, int op, pseudo_t src); 30 static pseudo_t add_binary_op(struct entrypoint *ep, struct symbol *ctype, int op, pseudo_t left, pseudo_t right); 31 static pseudo_t linearize_one_symbol(struct entrypoint *ep, struct symbol *sym); 33 static pseudo_t cast_pseudo(struct entrypoint *ep, pseudo_t src, struct symbol *from, struct symbol *to); 67 static struct basic_block *alloc_basic_block(struct entrypoint *ep, struct position pos) in alloc_basic_block() argument 72 bb->ep = ep; in alloc_basic_block() 584 void show_entry(struct entrypoint *ep) in show_entry() argument 636 get_bound_block(struct entrypoint *ep, struct symbol *label) get_bound_block() argument 647 finish_block(struct entrypoint *ep) finish_block() argument 654 add_goto(struct entrypoint *ep, struct basic_block *dst) add_goto() argument 668 add_one_insn(struct entrypoint *ep, struct instruction *insn) add_one_insn() argument 678 add_unreachable(struct entrypoint *ep) add_unreachable() argument 685 set_activeblock(struct entrypoint *ep, struct basic_block *bb) set_activeblock() argument 722 add_label(struct entrypoint *ep, struct symbol *label) add_label() argument 739 add_branch(struct entrypoint *ep, pseudo_t cond, struct basic_block *bb_true, struct basic_block *bb_false) add_branch() argument 767 symbol_pseudo(struct entrypoint *ep, struct symbol *sym) symbol_pseudo() argument 817 argument_pseudo(struct entrypoint *ep, int nr) argument_pseudo() argument 907 linearize_simple_address(struct entrypoint *ep, struct expression *addr, struct access_data *ad) linearize_simple_address() argument 950 linearize_address_gen(struct entrypoint *ep, struct expression *expr, struct access_data *ad) linearize_address_gen() argument 966 add_load(struct entrypoint *ep, struct access_data *ad) add_load() argument 985 add_store(struct entrypoint *ep, struct access_data *ad, pseudo_t value) add_store() argument 1001 linearize_bitfield_insert(struct entrypoint *ep, pseudo_t ori, pseudo_t val, struct symbol *ctype, struct symbol *btype) linearize_bitfield_insert() argument 1020 linearize_store_gen(struct entrypoint *ep, pseudo_t value, struct access_data *ad) linearize_store_gen() argument 1057 add_binary_op(struct entrypoint *ep, struct symbol *ctype, int op, pseudo_t left, pseudo_t right) add_binary_op() argument 1068 add_cmp_op(struct entrypoint *ep, struct symbol *ctype, int op, struct symbol *itype, pseudo_t left, pseudo_t right) add_cmp_op() argument 1075 add_setval(struct entrypoint *ep, struct symbol *ctype, struct expression *val) add_setval() argument 1085 add_setfval(struct entrypoint *ep, struct symbol *ctype, long double fval) add_setfval() argument 1095 add_symbol_address(struct entrypoint *ep, struct expression *expr) add_symbol_address() argument 1106 linearize_bitfield_extract(struct entrypoint *ep, pseudo_t val, struct symbol *ctype, struct symbol *btype) linearize_bitfield_extract() argument 1119 linearize_load_gen(struct entrypoint *ep, struct access_data *ad) linearize_load_gen() argument 1135 linearize_access(struct entrypoint *ep, struct expression *expr) linearize_access() argument 1146 linearize_inc_dec(struct entrypoint *ep, struct expression *expr, int postop) linearize_inc_dec() argument 1170 add_unop(struct entrypoint *ep, struct symbol *ctype, int op, pseudo_t src) add_unop() argument 1181 add_cast(struct entrypoint *ep, struct symbol *to, struct symbol *from, int op, pseudo_t src) add_cast() argument 1189 linearize_slice(struct entrypoint *ep, struct expression *expr) linearize_slice() argument 1203 linearize_regular_preop(struct entrypoint *ep, struct expression *expr) linearize_regular_preop() argument 1222 linearize_preop(struct entrypoint *ep, struct expression *expr) linearize_preop() argument 1236 linearize_postop(struct entrypoint *ep, struct expression *expr) linearize_postop() argument 1360 cast_pseudo(struct entrypoint *ep, pseudo_t src, struct symbol *from, struct symbol *to) cast_pseudo() argument 1421 add_convert_to_bool(struct entrypoint *ep, pseudo_t src, struct symbol *type) add_convert_to_bool() argument 1442 linearize_expression_to_bool(struct entrypoint *ep, struct expression *expr) linearize_expression_to_bool() argument 1450 linearize_assignment(struct entrypoint *ep, struct expression *expr) linearize_assignment() argument 1492 linearize_call_expression(struct entrypoint *ep, struct expression *expr) linearize_call_expression() argument 1570 linearize_binop_bool(struct entrypoint *ep, struct expression *expr) linearize_binop_bool() argument 1583 linearize_binop(struct entrypoint *ep, struct expression *expr) linearize_binop() argument 1608 linearize_select(struct entrypoint *ep, struct expression *expr) linearize_select() argument 1630 add_join_conditional(struct entrypoint *ep, struct expression *expr, pseudo_t phi1, pseudo_t phi2) add_join_conditional() argument 1649 linearize_short_conditional(struct entrypoint *ep, struct expression *expr, struct expression *cond, struct expression *expr_false) linearize_short_conditional() argument 1676 linearize_conditional(struct entrypoint *ep, struct expression *expr, struct expression *cond, struct expression *expr_true, struct expression *expr_false) linearize_conditional() argument 1718 linearize_logical(struct entrypoint *ep, struct expression *expr) linearize_logical() argument 1755 linearize_compare(struct entrypoint *ep, struct expression *expr) linearize_compare() argument 1777 linearize_cond_branch(struct entrypoint *ep, struct expression *expr, struct basic_block *bb_true, struct basic_block *bb_false) linearize_cond_branch() argument 1813 linearize_logical_branch(struct entrypoint *ep, struct expression *expr, struct basic_block *bb_true, struct basic_block *bb_false) linearize_logical_branch() argument 1826 linearize_cast(struct entrypoint *ep, struct expression *expr) linearize_cast() argument 1838 linearize_initializer(struct entrypoint *ep, struct expression *initializer, struct access_data *ad) linearize_initializer() argument 1863 linearize_argument(struct entrypoint *ep, struct symbol *arg, int nr) linearize_argument() argument 1872 linearize_expression(struct entrypoint *ep, struct expression *expr) linearize_expression() argument 1952 linearize_one_symbol(struct entrypoint *ep, struct symbol *sym) linearize_one_symbol() argument 1982 linearize_compound_statement(struct entrypoint *ep, struct statement *stmt) linearize_compound_statement() argument 1995 add_return(struct entrypoint *ep, struct basic_block *bb, struct symbol *ctype, pseudo_t src) add_return() argument 2010 linearize_fn_statement(struct entrypoint *ep, struct statement *stmt) linearize_fn_statement() argument 2032 linearize_inlined_call(struct entrypoint *ep, struct statement *stmt) linearize_inlined_call() argument 2060 linearize_context(struct entrypoint *ep, struct statement *stmt) linearize_context() argument 2071 linearize_range(struct entrypoint *ep, struct statement *stmt) linearize_range() argument 2095 add_asm_input(struct entrypoint *ep, struct instruction *insn, struct asm_operand *op) add_asm_input() argument 2102 add_asm_output_address(struct entrypoint *ep, struct instruction *insn, struct asm_operand *op) add_asm_output_address() argument 2114 add_asm_output(struct entrypoint *ep, struct instruction *insn, struct asm_operand *op) add_asm_output() argument 2130 linearize_asm_statement(struct entrypoint *ep, struct statement *stmt) linearize_asm_statement() argument 2200 linearize_declaration(struct entrypoint *ep, struct statement *stmt) linearize_declaration() argument 2212 linearize_return(struct entrypoint *ep, struct statement *stmt) linearize_return() argument 2227 linearize_switch(struct entrypoint *ep, struct statement *stmt) linearize_switch() argument 2297 linearize_iterator(struct entrypoint *ep, struct statement *stmt) linearize_iterator() argument 2344 linearize_statement(struct entrypoint *ep, struct statement *stmt) linearize_statement() argument 2512 late_warnings(struct entrypoint *ep) late_warnings() argument 2535 struct entrypoint *ep; linearize_fn() local 2601 linearize_fma(struct entrypoint *ep, struct expression *expr) linearize_fma() argument 2618 linearize_isdigit(struct entrypoint *ep, struct expression *expr) linearize_isdigit() argument 2640 linearize_unreachable(struct entrypoint *ep, struct expression *exp) linearize_unreachable() argument [all...] |