*参照元 [#xf82442b]
#backlinks

*説明 [#c53d9915]
-パス: [[gcc-8.3/gcc/print-rtl.c]]

-FIXME: これは何?
--説明


**引数 [#b3939031]
-const_rtx in_rtx
--
--[[gcc-8.3/gcc/const_rtx]]


**返り値 [#la7c9579]
-なし


**参考 [#c9e620de]


*実装 [#tf2073a5]
 /* Subroutine of print_rtx_operand for handling code 'r'.  */
 
 void
 rtx_writer::print_rtx_operand_code_r (const_rtx in_rtx)
 {
   int is_insn = INSN_P (in_rtx);
   unsigned int regno = REGNO (in_rtx);
 
-
--[[gcc-8.3/gcc/INSN_P()]]
--[[gcc-8.3/gcc/REGNO()]]

 #ifndef GENERATOR_FILE
   /* For hard registers and virtuals, always print the
      regno, except in compact mode.  */
   if (regno <= LAST_VIRTUAL_REGISTER && !m_compact)
     fprintf (m_outfile, " %d", regno);
   if (regno < FIRST_PSEUDO_REGISTER)
     fprintf (m_outfile, " %s", reg_names[regno]);
-
--[[gcc-8.3/gcc/reg_names(global)]]

   else if (regno <= LAST_VIRTUAL_REGISTER)
     {
       if (regno == VIRTUAL_INCOMING_ARGS_REGNUM)
 	fprintf (m_outfile, " virtual-incoming-args");
       else if (regno == VIRTUAL_STACK_VARS_REGNUM)
 	fprintf (m_outfile, " virtual-stack-vars");
       else if (regno == VIRTUAL_STACK_DYNAMIC_REGNUM)
 	fprintf (m_outfile, " virtual-stack-dynamic");
       else if (regno == VIRTUAL_OUTGOING_ARGS_REGNUM)
 	fprintf (m_outfile, " virtual-outgoing-args");
       else if (regno == VIRTUAL_CFA_REGNUM)
 	fprintf (m_outfile, " virtual-cfa");
       else if (regno == VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM)
 	fprintf (m_outfile, " virtual-preferred-stack-boundary");
       else
 	fprintf (m_outfile, " virtual-reg-%d", regno-FIRST_VIRTUAL_REGISTER);
     }
   else
 #endif
     if (flag_dump_unnumbered && is_insn)
       fputc ('#', m_outfile);
     else if (m_compact)
       {
 	/* In compact mode, print pseudos with '< and '>' wrapping the regno,
 	   offseting it by (LAST_VIRTUAL_REGISTER + 1), so that the
 	   first non-virtual pseudo is dumped as "<0>".  */
 	gcc_assert (regno > LAST_VIRTUAL_REGISTER);
 	fprintf (m_outfile, " <%d>", regno - (LAST_VIRTUAL_REGISTER + 1));
       }
     else
       fprintf (m_outfile, " %d", regno);
 
-
--[[gcc-8.3/gcc/gcc_assert()]]

 #ifndef GENERATOR_FILE
   if (REG_ATTRS (in_rtx))
     {
       fputs (" [", m_outfile);
       if (regno != ORIGINAL_REGNO (in_rtx))
 	fprintf (m_outfile, "orig:%i", ORIGINAL_REGNO (in_rtx));
       if (REG_EXPR (in_rtx))
 	print_mem_expr (m_outfile, REG_EXPR (in_rtx));
 
       if (maybe_ne (REG_OFFSET (in_rtx), 0))
 	{
 	  fprintf (m_outfile, "+");
 	  print_poly_int (m_outfile, REG_OFFSET (in_rtx));
 	}
       fputs (" ]", m_outfile);
     }
   if (regno != ORIGINAL_REGNO (in_rtx))
     fprintf (m_outfile, " [%d]", ORIGINAL_REGNO (in_rtx));
 #endif
-
--[[gcc-8.3/gcc/REG_ATTRS()]]
--[[gcc-8.3/gcc/ORIGINAL_REGNO()]]
--[[gcc-8.3/gcc/REG_EXPR()]]
--[[gcc-8.3/gcc/REG_OFFSET()]]

 }


*コメント [#p3cd4812]


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS