参照元

説明

  • パス: gcc-8.3/gcc/gimple-pretty-print.c?
  • FIXME: これは何?
    • 説明

引数

  • pretty_printer *buffer
    • gcc-8.3/gcc/pretty_printer?
  • gimple *gs
  • int spc
  • dump_flags_t flags
    • gcc-8.3/gcc/dump_flags_t?

返り値

  • なし

参考

実装

/* Print the gimple statement GS on the pretty printer BUFFER, SPC
   spaces of indent.  FLAGS specifies details to show in the dump (see
   TDF_* in dumpfile.h).  The caller is responsible for calling
   pp_flush on BUFFER to finalize the pretty printer.  */

void
pp_gimple_stmt_1 (pretty_printer *buffer, gimple *gs, int spc,
		  dump_flags_t flags)
{
  if (!gs)
    return;

  if (flags & TDF_STMTADDR)
    pp_printf (buffer, "<&%p> ", (void *) gs);
    • gcc-8.3/gcc/pp_printf()?
  if ((flags & TDF_LINENO) && gimple_has_location (gs))
    dump_location (buffer, gimple_location (gs));
    • gcc-8.3/gcc/gimple_has_location()?
    • gcc-8.3/gcc/dump_location()?
    • gcc-8.3/gcc/gimple_location()?
  if (flags & TDF_EH)
    {
      int lp_nr = lookup_stmt_eh_lp (gs);
      if (lp_nr > 0)
	pp_printf (buffer, "[LP %d] ", lp_nr);
      else if (lp_nr < 0)
	pp_printf (buffer, "[MNT %d] ", -lp_nr);
    }
    • gcc-8.3/gcc/lookup_stmt_eh_lp()?
  if ((flags & (TDF_VOPS|TDF_MEMSYMS))
      && gimple_has_mem_ops (gs))
    dump_gimple_mem_ops (buffer, gs, spc, flags);
    • gcc-8.3/gcc/gimple_has_mem_ops()?
    • gcc-8.3/gcc/dump_gimple_mem_ops()?
  if (gimple_has_lhs (gs)
      && (flags & TDF_ALIAS))
    dump_ssaname_info (buffer, gimple_get_lhs (gs), spc);
    • gcc-8.3/gcc/gimple_has_lhs()?
    • gcc-8.3/gcc/dump_ssaname_info()?
    • gcc-8.3/gcc/gimple_get_lhs()?
  switch (gimple_code (gs))
    {
    case GIMPLE_ASM:
      dump_gimple_asm (buffer, as_a <gasm *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gasm?
    • gcc-8.3/gcc/dump_gimple_asm()?
    case GIMPLE_ASSIGN:
      dump_gimple_assign (buffer, as_a <gassign *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gassign?
    • gcc-8.3/gcc/dump_gimple_assign()?
    case GIMPLE_BIND:
      dump_gimple_bind (buffer, as_a <gbind *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gbind?
    • gcc-8.3/gcc/dump_gimple_bind()?
    case GIMPLE_CALL:
      dump_gimple_call (buffer, as_a <gcall *> (gs), spc, flags);
      break;
    case GIMPLE_COND:
      dump_gimple_cond (buffer, as_a <gcond *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gcond?
    • gcc-8.3/gcc/dump_gimple_cond()?
    case GIMPLE_LABEL:
      dump_gimple_label (buffer, as_a <glabel *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/glabel?
    • gcc-8.3/gcc/dump_gimple_label()?
    case GIMPLE_GOTO:
      dump_gimple_goto (buffer, as_a <ggoto *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/ggoto?
    • gcc-8.3/gcc/dump_gimple_goto()?
    case GIMPLE_NOP:
      pp_string (buffer, "GIMPLE_NOP");
      break;

    case GIMPLE_RETURN:
      dump_gimple_return (buffer, as_a <greturn *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/greturn?
    • gcc-8.3/gcc/dump_gimple_return()?
    case GIMPLE_SWITCH:
      dump_gimple_switch (buffer, as_a <gswitch *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gswitch?
    • gcc-8.3/gcc/dump_gimple_switch()?
    case GIMPLE_TRY:
      dump_gimple_try (buffer, as_a <gtry *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gtry?
    • gcc-8.3/gcc/dump_gimple_try()?
    case GIMPLE_PHI:
      dump_gimple_phi (buffer, as_a <gphi *> (gs), spc, false, flags);
      break;
    • gcc-8.3/gcc/gphi?
    • gcc-8.3/gcc/dump_gimple_phi()?
    case GIMPLE_OMP_PARALLEL:
      dump_gimple_omp_parallel (buffer, as_a <gomp_parallel *> (gs), spc,
				flags);
      break;
    • gcc-8.3/gcc/gomp_parallel?
    • gcc-8.3/gcc/dump_gimple_omp_parallel()?
    case GIMPLE_OMP_TASK:
      dump_gimple_omp_task (buffer, as_a <gomp_task *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gomp_task?
    • gcc-8.3/gcc/dump_gimple_omp_task()?
    case GIMPLE_OMP_ATOMIC_LOAD:
      dump_gimple_omp_atomic_load (buffer, as_a <gomp_atomic_load *> (gs),
				   spc, flags);
      break;
    • gcc-8.3/gcc/gomp_atomic_load?
    • gcc-8.3/gcc/dump_gimple_omp_atomic_load()?
    case GIMPLE_OMP_ATOMIC_STORE:
      dump_gimple_omp_atomic_store (buffer,
				    as_a <gomp_atomic_store *> (gs),
				    spc, flags);
      break;
    • gcc-8.3/gcc/gomp_atomic_store?
    • gcc-8.3/gcc/dump_gimple_omp_atomic_store()?
    case GIMPLE_OMP_FOR:
      dump_gimple_omp_for (buffer, as_a <gomp_for *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gomp_for?
    • gcc-8.3/gcc/dump_gimple_omp_for()?
    case GIMPLE_OMP_CONTINUE:
      dump_gimple_omp_continue (buffer, as_a <gomp_continue *> (gs), spc,
				flags);
      break;
    • gcc-8.3/gcc/gomp_continue?
    • gcc-8.3/gcc/dump_gimple_omp_continue()?
    case GIMPLE_OMP_SINGLE:
      dump_gimple_omp_single (buffer, as_a <gomp_single *> (gs), spc,
			      flags);
      break;
    • gcc-8.3/gcc/gomp_single?
    • gcc-8.3/gcc/dump_gimple_omp_single()?
    case GIMPLE_OMP_TARGET:
      dump_gimple_omp_target (buffer, as_a <gomp_target *> (gs), spc,
			      flags);
      break;
    • gcc-8.3/gcc/gomp_target?
    • gcc-8.3/gcc/dump_gimple_omp_target()?
    case GIMPLE_OMP_TEAMS:
      dump_gimple_omp_teams (buffer, as_a <gomp_teams *> (gs), spc,
			     flags);
      break;
    • gcc-8.3/gcc/gomp_teams?
    • gcc-8.3/gcc/dump_gimple_omp_teams()?
    case GIMPLE_OMP_RETURN:
      dump_gimple_omp_return (buffer, gs, spc, flags);
      break;
    • gcc-8.3/gcc/gomp_return?
    • gcc-8.3/gcc/dump_gimple_omp_return()?
    case GIMPLE_OMP_SECTIONS:
      dump_gimple_omp_sections (buffer, as_a <gomp_sections *> (gs),
				spc, flags);
      break;
    • gcc-8.3/gcc/gomp_sections?
    • gcc-8.3/gcc/dump_gimple_omp_sections()?
    case GIMPLE_OMP_SECTIONS_SWITCH:
      pp_string (buffer, "GIMPLE_SECTIONS_SWITCH");
      break;

    case GIMPLE_OMP_MASTER:
    case GIMPLE_OMP_TASKGROUP:
    case GIMPLE_OMP_SECTION:
    case GIMPLE_OMP_GRID_BODY:
      dump_gimple_omp_block (buffer, gs, spc, flags);
      break;
    • gcc-8.3/gcc/dump_gimple_omp_block()?
    case GIMPLE_OMP_ORDERED:
      dump_gimple_omp_ordered (buffer, as_a <gomp_ordered *> (gs), spc,
			       flags);
      break;
    • gcc-8.3/gcc/gomp_ordered?
    • gcc-8.3/gcc/dump_gimple_omp_ordered()?
    case GIMPLE_OMP_CRITICAL:
      dump_gimple_omp_critical (buffer, as_a <gomp_critical *> (gs), spc,
				flags);
      break;
    • gcc-8.3/gcc/gomp_critical?
    • gcc-8.3/gcc/dump_gimple_omp_critical()?
    case GIMPLE_CATCH:
      dump_gimple_catch (buffer, as_a <gcatch *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gcatch?
    • gcc-8.3/gcc/dump_gimple_catch()?
    case GIMPLE_EH_FILTER:
      dump_gimple_eh_filter (buffer, as_a <geh_filter *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/geh_filter?
    • gcc-8.3/gcc/dump_gimple_eh_filter()?
    case GIMPLE_EH_MUST_NOT_THROW:
      dump_gimple_eh_must_not_throw (buffer,
				     as_a <geh_mnt *> (gs),
				     spc, flags);
      break;
    • gcc-8.3/gcc/geh_mnt?
    • gcc-8.3/gcc/dump_gimple_eh_must_not_throw()?
    case GIMPLE_EH_ELSE:
      dump_gimple_eh_else (buffer, as_a <geh_else *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/geh_else?
    • gcc-8.3/gcc/dump_gimple_eh_else()?
    case GIMPLE_RESX:
      dump_gimple_resx (buffer, as_a <gresx *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gresx?
    • gcc-8.3/gcc/dump_gimple_resx()?
    case GIMPLE_EH_DISPATCH:
      dump_gimple_eh_dispatch (buffer, as_a <geh_dispatch *> (gs), spc,
			       flags);
      break;
    • gcc-8.3/gcc/geh_dispatch?
    • gcc-8.3/gcc/dump_gimple_eh_dispatch()?
    case GIMPLE_DEBUG:
      dump_gimple_debug (buffer, as_a <gdebug *> (gs), spc, flags);
      break;
    • gcc-8.3/gcc/gdebug?
    • gcc-8.3/gcc/dump_gimple_debug()?
    case GIMPLE_PREDICT:
      pp_string (buffer, "// predicted ");
      if (gimple_predict_outcome (gs))
	pp_string (buffer, "likely by ");
      else
	pp_string (buffer, "unlikely by ");
      pp_string (buffer, predictor_name (gimple_predict_predictor (gs)));
      pp_string (buffer, " predictor.");
      break;
    • gcc-8.3/gcc/gimple_predict_outcome()?
    • gcc-8.3/gcc/predictor_name()?
    • gcc-8.3/gcc/gimple_predict_predictor()?
    case GIMPLE_TRANSACTION:
      dump_gimple_transaction (buffer, as_a <gtransaction *> (gs), spc,
			       flags);
      break;
    • gcc-8.3/gcc/gtransaction?
    • gcc-8.3/gcc/dump_gimple_transaction()?
    default:
      GIMPLE_NIY;
    }
}

コメント


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-03-22 (月) 16:40:18 (187d)