AIX regression due to DFA scheduler merge

David Edelsohn dje@watson.ibm.com
Sun Jun 2 19:20:00 GMT 2002


>>>>> Vladimir N Makarov writes:

Vlad> You can send it to me.  I'll look at this tomorrow.  And please, some instructions how to reproduce it.  The scheduler uses
Vlad> forward dependencies in its work.  RTL contains only backward
Vlad> dependencies.  To get forward dependencies, please use 
Vlad> -fsched-verbose=5.

	Yes, I was looking at forward dependencies as well.  Without the
libcall patch, the relevant dependencies look like the following.  insn
2954 is the troublesome instruction.

;;     1713 NOTE_INSN_DELETED
;;     1716    -1     3     1    18     0    0 -  0   none      : 1794 1711
;;     1711   296     3     2    18     1    1 - 19   iu2       : 1794 2954 1715
;;     1715   153     3     2    18     1    1 - 19   iu2       : 1794 2954 1718
;;     1718   319     3     2    17     1    1 - 19   iu2       : 1794 1732 1720

;;     1790 NOTE_INSN_LOOP_CONT
;;     2954    36     3     2     2     1    1 - 19   iu2       : 1794 
;;     1793    36     3     2     2     1    1 - 19   iu2       : 1794 


With the libcall patch, the dependencies are below.  insn 2951 is the loop
counter increment on which the libcall no longer depends.

;;     1713 NOTE_INSN_DELETED
;;     1716    -1     3     0     0     0    0 -  0   none      : 
;;   + 1711   305     3     0     1     1    0 -  0   none      : 
;;   + 1715   162     3     0     1     1    0 -  0   none      : 
;;   + 1718   328     3     1    13     1    0 -  0   none      : 1794 1732 1720

;;     1790 NOTE_INSN_LOOP_CONT
;;     2951    36     3     0     2     1    0 -  0   none      : 1794 
;;     1793    36     3     2     2     1    0 -  0   none      : 1794 
;;     1794   509     3    32     1     1    0 -  0   none      : 

David



More information about the Gcc-patches mailing list