Lines Matching refs:stmt
496 struct statement *stmt = type->stmt; in show_symbol() local
498 if (stmt) { in show_symbol()
500 val = show_statement(stmt); in show_symbol()
502 printf("\tmov.%d\t\tretval,%d\n", stmt->ret->bit_size, val); in show_symbol()
533 static void show_switch_statement(struct statement *stmt) in show_switch_statement() argument
535 int val = show_expression(stmt->switch_expression); in show_switch_statement()
548 FOR_EACH_PTR(stmt->switch_case->symbol_list, sym) { in show_switch_statement()
549 struct statement *case_stmt = sym->stmt; in show_switch_statement()
572 show_statement(stmt->switch_statement); in show_switch_statement()
574 if (stmt->switch_break->used) in show_switch_statement()
575 printf(".L%p:\n", stmt->switch_break); in show_switch_statement()
586 static int show_return_stmt(struct statement *stmt);
591 int show_statement(struct statement *stmt) in show_statement() argument
593 if (!stmt) in show_statement()
595 switch (stmt->type) { in show_statement()
597 show_symbol_decl(stmt->declaration); in show_statement()
600 return show_return_stmt(stmt); in show_statement()
605 if (stmt->inline_fn) { in show_statement()
606 show_statement(stmt->args); in show_statement()
607 printf("\tbegin_inline \t%s\n", show_ident(stmt->inline_fn->ident)); in show_statement()
609 FOR_EACH_PTR(stmt->stmts, s) { in show_statement()
612 if (stmt->ret) { in show_statement()
614 printf(".L%p:\n", stmt->ret); in show_statement()
615 addr = show_symbol_expr(stmt->ret); in show_statement()
616 bits = stmt->ret->bit_size; in show_statement()
620 if (stmt->inline_fn) in show_statement()
621 printf("\tend_inlined\t%s\n", show_ident(stmt->inline_fn->ident)); in show_statement()
626 return show_expression(stmt->expression); in show_statement()
629 struct expression *cond = stmt->if_conditional; in show_statement()
634 struct statement *s = stmt->if_true; in show_statement()
636 s = stmt->if_false; in show_statement()
644 show_statement(stmt->if_true); in show_statement()
645 if (stmt->if_false) { in show_statement()
650 show_statement(stmt->if_false); in show_statement()
656 show_switch_statement(stmt); in show_statement()
660 printf(".L%p:\n", stmt->case_label); in show_statement()
661 show_statement(stmt->case_statement); in show_statement()
665 struct statement *pre_statement = stmt->iterator_pre_statement; in show_statement()
666 struct expression *pre_condition = stmt->iterator_pre_condition; in show_statement()
667 struct statement *statement = stmt->iterator_statement; in show_statement()
668 struct statement *post_statement = stmt->iterator_post_statement; in show_statement()
669 struct expression *post_condition = stmt->iterator_post_condition; in show_statement()
672 show_symbol_decl(stmt->iterator_syms); in show_statement()
691 if (stmt->iterator_continue->used) in show_statement()
692 printf(".L%p:\n", stmt->iterator_continue); in show_statement()
703 if (stmt->iterator_break->used) in show_statement()
704 printf(".L%p:\n", stmt->iterator_break); in show_statement()
713 printf(".L%p:\n", stmt->label_identifier); in show_statement()
714 show_statement(stmt->label_statement); in show_statement()
718 if (stmt->goto_expression) { in show_statement()
719 int val = show_expression(stmt->goto_expression); in show_statement()
722 printf("\tgoto\t\t.L%p\n", stmt->goto_label); in show_statement()
729 int val = show_expression(stmt->expression); in show_statement()
734 int val = show_expression(stmt->range_expression); in show_statement()
735 int low = show_expression(stmt->range_low); in show_statement()
736 int high = show_expression(stmt->range_high); in show_statement()
882 static int show_return_stmt(struct statement *stmt) in show_return_stmt() argument
884 struct expression *expr = stmt->ret_value; in show_return_stmt()
885 struct symbol *target = stmt->ret_target; in show_return_stmt()