This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

CALL_PLACEHOLDER display


I finally found somthing I liked: just output teh CALL_INSN from the
normal case, so that you can see which function is being called.

Wed Apr 12 08:47:38 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* print-rtl.c (print_rtx): For CALL_PLACEHOLDER, output the
	CALL_INSN from the normal case.

*** print-rtl.c	2000/04/07 09:24:06	1.46
--- print-rtl.c	2000/04/12 12:35:58
*************** print_rtx (in_rtx)
*** 73,76 ****
--- 73,77 ----
    register const char *format_ptr;
    register int is_insn;
+   rtx tem;
  
    if (sawclose)
*************** print_rtx (in_rtx)
*** 316,321 ****
  	    enum rtx_code subc = GET_CODE (sub);
  
! 	    if (GET_CODE (in_rtx) == LABEL_REF
! 		&& subc != CODE_LABEL)
  	      goto do_e;
  
--- 317,321 ----
  	    enum rtx_code subc = GET_CODE (sub);
  
! 	    if (GET_CODE (in_rtx) == LABEL_REF && subc != CODE_LABEL)
  	      goto do_e;
  
*************** print_rtx (in_rtx)
*** 369,377 ****
    if (GET_CODE (in_rtx) == CODE_LABEL)
      {
!       fprintf (outfile, " [num uses: %d]", LABEL_NUSES (in_rtx));
        if (LABEL_ALTERNATE_NAME (in_rtx))
!         fprintf (outfile, " [alternate name: %s]", LABEL_ALTERNATE_NAME (in_rtx));
      }
    
    if (dump_for_graph
        && (is_insn || GET_CODE (in_rtx) == NOTE
--- 369,387 ----
    if (GET_CODE (in_rtx) == CODE_LABEL)
      {
!       fprintf (outfile, " [%d uses]", LABEL_NUSES (in_rtx));
        if (LABEL_ALTERNATE_NAME (in_rtx))
!         fprintf (outfile, " [alternate name: %s]",
! 		 LABEL_ALTERNATE_NAME (in_rtx));
      }
    
+   if (GET_CODE (in_rtx) == CALL_PLACEHOLDER)
+     for (tem = XEXP (in_rtx, 0); tem != 0; tem = NEXT_INSN (tem))
+       if (GET_CODE (tem) == CALL_INSN)
+ 	{
+ 	  fprintf (outfile, " ");
+ 	  print_rtx (tem);
+ 	  break;
+ 	}
+ 
    if (dump_for_graph
        && (is_insn || GET_CODE (in_rtx) == NOTE
*************** print_rtl (outf, rtx_first)
*** 516,529 ****
        case CODE_LABEL:
        case BARRIER:
! 	for (tmp_rtx = rtx_first; NULL != tmp_rtx; tmp_rtx = NEXT_INSN (tmp_rtx))
! 	  {
! 	    if (! flag_dump_unnumbered
! 		|| GET_CODE (tmp_rtx) != NOTE
! 		|| NOTE_LINE_NUMBER (tmp_rtx) < 0)
! 	      {
! 		print_rtx (tmp_rtx);
! 		fprintf (outfile, "\n");
! 	      }
! 	  }
  	break;
  
--- 526,536 ----
        case CODE_LABEL:
        case BARRIER:
! 	for (tmp_rtx = rtx_first; tmp_rtx != 0; tmp_rtx = NEXT_INSN (tmp_rtx))
! 	  if (! flag_dump_unnumbered
! 	      || GET_CODE (tmp_rtx) != NOTE || NOTE_LINE_NUMBER (tmp_rtx) < 0)
! 	    {
! 	      print_rtx (tmp_rtx);
! 	      fprintf (outfile, "\n");
! 	    }
  	break;
  

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]