Lines Matching refs:stmt

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