#include "config.h"#include "system.h"#include "tree.h"#include "function.h"#include "splay-tree.h"#include "varray.h"#include "c-common.h"#include "except.h"#include "toplev.h"#include "flags.h"#include "ggc.h"#include "rtl.h"#include "expr.h"#include "output.h"#include "timevar.h"#include "predict.h"

Go to the source code of this file.
Definition at line 115 of file c-semantics.c.
References add_stmt(), and build_stmt().
Referenced by cp_finish_decl(), do_local_using_decl(), finish_anon_union(), finish_decl(), finish_handler_parms(), finish_label_decl(), get_temp_regvar(), and initialize_reference().
| tree add_scope_stmt | ( | int | begin_p, | |
| int | partial_p | |||
| ) |
Definition at line 136 of file c-semantics.c.
References add_stmt(), build_stmt(), current_scope_stmt_stack(), NULL_TREE, SCOPE_BEGIN_P, SCOPE_PARTIAL_P, ss, stack_ptr, top, TREE_CHAIN, tree_cons, and TREE_VALUE.
Referenced by do_poplevel(), do_pushlevel(), finish_cdtor(), maybe_push_cleanup_level(), poplevel(), and start_cdtor().
Definition at line 80 of file c-semantics.c.
Referenced by add_decl_expr(), add_decl_stmt(), add_scope_stmt(), add_stmt(), begin_compound_stmt(), begin_do_stmt(), begin_eh_spec_block(), begin_for_stmt(), begin_function_try_block(), begin_handler(), begin_if_stmt(), begin_switch_stmt(), begin_try_block(), begin_while_stmt(), build_asm_stmt(), c_add_case_label(), c_begin_compound_stmt(), c_expand_expr_stmt(), c_expand_return(), c_expand_start_cond(), c_finish_bc_stmt(), c_finish_expr_stmt(), c_finish_goto_label(), c_finish_goto_ptr(), c_finish_if_stmt(), c_finish_loop(), c_finish_omp_barrier(), c_finish_omp_critical(), c_finish_omp_flush(), c_finish_omp_for(), c_finish_omp_master(), c_finish_omp_ordered(), c_finish_omp_parallel(), c_finish_return(), c_parser_compound_statement_nostart(), c_parser_declaration_or_fndef(), c_parser_do_statement(), c_parser_for_statement(), c_parser_if_body(), c_parser_if_statement(), c_parser_label(), c_parser_objc_method_definition(), c_parser_omp_atomic(), c_parser_omp_for(), c_parser_omp_for_loop(), c_parser_omp_sections(), c_parser_omp_sections_scope(), c_parser_omp_single(), c_parser_statement_after_labels(), c_parser_switch_statement(), c_parser_typeof_specifier(), c_parser_while_statement(), c_start_case(), cp_finish_decl(), cp_parser_implicitly_scoped_statement(), cp_parser_omp_for(), cp_parser_omp_sections_scope(), cp_parser_omp_single(), do_using_directive(), finish_asm_stmt(), finish_break_stmt(), finish_case_label(), finish_compound_stmt(), finish_constructor_body(), finish_continue_stmt(), finish_decl(), finish_decl_cleanup(), finish_destructor_body(), finish_eh_cleanup(), finish_enum(), finish_expr_stmt(), finish_for_init_stmt(), finish_for_stmt(), finish_goto_stmt(), finish_if_stmt(), finish_if_stmt_cond(), finish_label_stmt(), finish_mem_initializers(), finish_named_return_value(), finish_omp_atomic(), finish_omp_for(), finish_omp_parallel(), finish_return_stmt(), finish_stmt_expr_expr(), finish_struct(), finish_switch_cond(), finish_switch_stmt(), handle_pragma_freq_hint(), poplevel(), push_cleanup(), simple_asm_stmt(), store_parm_decls(), and tsubst_expr().
Definition at line 65 of file c-semantics.c.
References build_nt(), input_filename, last_expr_filename, last_expr_type, last_tree, NULL_TREE, and void_zero_node.
Referenced by begin_global_stmt_expr(), begin_stmt_expr(), start_function(), and store_parm_decls().
Definition at line 679 of file c-semantics.c.
Referenced by c_add_case_label(), and finish_case_label().
Definition at line 487 of file c-semantics.c.
References build_stmt().
Referenced by c_expand_return().
Definition at line 273 of file c-semantics.c.
Referenced by c_expand_decl(), c_expand_expr(), genrtl_decl_stmt(), and genrtl_named_return_value().
Definition at line 222 of file c-semantics.c.
References expand_stmt(), TREE_CODE, TREE_PURPOSE, and TREE_VALUE.
Referenced by genrtl_do_stmt(), genrtl_for_stmt(), genrtl_if_stmt(), genrtl_switch_stmt(), and genrtl_while_stmt().
Definition at line 789 of file c-semantics.c.
References abort, ASM_CLOBBERS, ASM_CV_QUAL, ASM_INPUT_P, ASM_INPUTS, ASM_OUTPUTS, ASM_STRING, CASE_LABEL, current_stmt_tree(), emit_note(), error_mark_node, expand_label(), EXPR_STMT_EXPR, FILE_STMT_FILENAME, flag_guess_branch_prob, genrtl_asm_stmt(), genrtl_break_stmt(), genrtl_case_label(), genrtl_compound_stmt(), genrtl_continue_stmt(), genrtl_decl_cleanup(), genrtl_decl_stmt(), genrtl_do_stmt(), genrtl_expr_stmt_value(), genrtl_for_stmt(), genrtl_goto_stmt(), genrtl_if_stmt(), genrtl_return_stmt(), genrtl_scope_stmt(), genrtl_switch_stmt(), genrtl_while_stmt(), GOTO_DESTINATION, GOTO_FAKE_P, input_filename, LABEL_STMT_LABEL, NOT_TAKEN, NOTE_INSN_PREDICTION, NOTE_PREDICT, NOTE_PREDICTION, NULL, prep_stmt(), stmts_are_full_exprs_p(), TREE_ADDRESSABLE, TREE_CHAIN, and TREE_CODE.
Referenced by c_expand_body(), c_expand_expr(), expand_body(), expand_cond(), genrtl_compound_stmt(), genrtl_do_stmt(), genrtl_eh_spec_block(), genrtl_for_stmt(), genrtl_handler(), genrtl_if_stmt(), genrtl_switch_stmt(), genrtl_try_block(), and genrtl_while_stmt().
Definition at line 170 of file c-semantics.c.
References cfun, last_tree, lineno, NULL_TREE, STMT_LINENO, STMT_LINENO_FOR_FN_P, and TREE_CHAIN.
Referenced by finish_function(), finish_global_stmt_expr(), and finish_stmt_expr().
| void genrtl_asm_stmt | ( | tree | cv_qualifier, | |
| tree | string, | |||
| tree | output_operands, | |||
| tree | input_operands, | |||
| tree | clobbers, | |||
| int | asm_input_p | |||
| ) |
Definition at line 736 of file c-semantics.c.
References c_expand_asm_operands(), emit_line_note(), expand_asm(), IDENTIFIER_POINTER, input_filename, lineno, NULL_TREE, RID_VOLATILE, ridpointers, and warning.
Referenced by expand_stmt().
| void genrtl_break_stmt | ( | ) |
Definition at line 571 of file c-semantics.c.
References emit_line_note(), error(), expand_exit_something(), input_filename, and lineno.
Referenced by expand_stmt().
Definition at line 691 of file c-semantics.c.
References add_case_node(), CASE_HIGH, CASE_LABEL_DECL, CASE_LOW, cleanup(), duplicate, last_cleanup_this_contour(), TREE_PURPOSE, and warning.
Referenced by expand_stmt().
Definition at line 717 of file c-semantics.c.
References abort, COMPOUND_BODY, COMPOUND_STMT_NO_SCOPE, current_nesting_level(), expand_stmt(), and n.
Referenced by expand_stmt().
| void genrtl_continue_stmt | ( | ) |
Definition at line 602 of file c-semantics.c.
References emit_line_note(), error(), expand_continue_loop(), input_filename, and lineno.
Referenced by expand_stmt().
Definition at line 765 of file c-semantics.c.
References CLEANUP_DECL, CLEANUP_EH_ONLY, CLEANUP_EXPR, DECL_SIZE, error_mark_node, expand_decl_cleanup_eh(), and TREE_TYPE.
Referenced by expand_stmt().
Definition at line 374 of file c-semantics.c.
References anon_aggr_type_p(), C_DECLARED_LABEL_FLAG, DECL_ANON_UNION_ELEMS, DECL_EXTERNAL, DECL_STMT_DECL, declare_nonlocal_label(), emit_line_note(), emit_local_var(), expand_anon_union_decl(), input_filename, lineno, make_rtl_for_local_static(), NULL_TREE, TREE_CODE, TREE_STATIC, and TREE_TYPE.
Referenced by expand_stmt().
| void genrtl_do_pushlevel | ( | ) |
Definition at line 302 of file c-semantics.c.
References clear_last_expr(), emit_line_note(), input_filename, and lineno.
Referenced by genrtl_for_stmt(), genrtl_handler(), genrtl_if_stmt(), genrtl_switch_stmt(), and genrtl_while_stmt().
Definition at line 452 of file c-semantics.c.
References cond, DO_BODY, DO_COND, emit_line_note(), emit_nop(), expand_cond(), expand_end_loop(), expand_end_null_loop(), expand_exit_loop_if_false(), expand_loop_continue_here(), expand_start_loop_continue_elsewhere(), expand_start_null_loop(), expand_stmt(), input_filename, integer_zerop(), and lineno.
Referenced by expand_stmt().
Definition at line 338 of file c-semantics.c.
References genrtl_expr_stmt_value().
Referenced by build_vec_init(), expand_default_init(), and genrtl_for_stmt().
Definition at line 352 of file c-semantics.c.
References emit_line_note(), error_mark_node, expand_end_target_temps(), expand_expr_stmt_value(), expand_start_target_temps(), input_filename, lineno, NULL_TREE, and stmts_are_full_exprs_p().
Referenced by expand_stmt(), and genrtl_expr_stmt().
Definition at line 517 of file c-semantics.c.
References cond, emit_line_note(), emit_nop(), expand_cond(), expand_end_loop(), expand_exit_loop_top_cond(), expand_loop_continue_here(), expand_start_loop_continue_elsewhere(), expand_stmt(), FOR_BODY, FOR_COND, FOR_EXPR, FOR_INIT_STMT, genrtl_do_pushlevel(), genrtl_expr_stmt(), input_filename, lineno, and NEW_FOR_SCOPE_P.
Referenced by expand_stmt().
Definition at line 311 of file c-semantics.c.
References abort, emit_line_note(), expand_computed_goto(), expand_goto(), input_filename, label_rtx(), lineno, TREE_CODE, and TREE_USED.
Referenced by expand_stmt().
Definition at line 409 of file c-semantics.c.
References cond, ELSE_CLAUSE, emit_line_note(), expand_cond(), expand_end_cond(), expand_start_cond(), expand_start_else(), expand_stmt(), genrtl_do_pushlevel(), IF_COND, input_filename, lineno, and THEN_CLAUSE.
Referenced by expand_stmt().
Definition at line 496 of file c-semantics.c.
References emit_line_note(), expand_end_target_temps(), expand_null_return(), expand_return(), expand_start_target_temps(), input_filename, lineno, and RETURN_STMT_EXPR.
Referenced by expand_stmt().
Definition at line 612 of file c-semantics.c.
References BLOCK_VARS, current_function_decl, DECL_CONTEXT, DECL_SAVED_INSNS, emit_note(), expand_end_bindings(), expand_start_bindings_and_block(), NOTE_BLOCK, NOTE_INSN_BLOCK_BEG, NOTE_INSN_BLOCK_END, NULL, NULL_TREE, pop_function_context(), push_function_context(), SCOPE_BEGIN_P, SCOPE_END_P, SCOPE_NO_CLEANUPS_P, SCOPE_NULLIFIED_P, SCOPE_STMT_BLOCK, TREE_ADDRESSABLE, TREE_ASM_WRITTEN, TREE_CHAIN, and TREE_CODE.
Referenced by expand_stmt().
Definition at line 658 of file c-semantics.c.
References boolean_false_node, cond, emit_line_note(), error_mark_node, expand_cond(), expand_end_case_type(), expand_start_case(), expand_stmt(), genrtl_do_pushlevel(), input_filename, lineno, SWITCH_BODY, SWITCH_COND, SWITCH_TYPE, and TREE_TYPE.
Referenced by expand_stmt().
Definition at line 430 of file c-semantics.c.
References cond, emit_line_note(), emit_nop(), expand_cond(), expand_end_loop(), expand_exit_loop_top_cond(), expand_start_loop(), expand_stmt(), genrtl_do_pushlevel(), input_filename, lineno, WHILE_BODY, and WHILE_COND.
Referenced by expand_stmt().
Definition at line 237 of file c-semantics.c.
References DECL_ASSEMBLER_NAME, DECL_NAME, DECL_RTL_SET_P, IDENTIFIER_POINTER, NULL, rest_of_decl_compilation(), and TREE_ASM_WRITTEN.
Referenced by genrtl_decl_stmt().
Definition at line 777 of file c-semantics.c.
References current_stmt_tree(), lineno, STMT_IS_FULL_EXPR_P, STMT_LINENO, and STMT_LINENO_FOR_FN_P.
Referenced by expand_stmt(), and tsubst_expr().
Definition at line 196 of file c-semantics.c.
References i, length, lineno, make_node, p, STMT_LINENO, TREE_CODE_LENGTH, TREE_OPERAND, va_arg, VA_CLOSE, VA_FIXEDARG, and VA_OPEN.
1.5.6