http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59992

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 31990
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31990&action=edit
gcc49-pr59992.patch

Untested fix.  On the E(1) E(2) testcase in -O0 built --enable-checking=yes
cc1 it improves:
 variable tracking       :1099.23 (91%) usr   0.10 ( 3%) sys1102.71 (91%) wall 
102786 kB (13%) ggc
 var-tracking dataflow   :   2.04 ( 0%) usr   0.05 ( 2%) sys   2.09 ( 0%) wall 
     0 kB ( 0%) ggc
 var-tracking emit       :   0.23 ( 0%) usr   0.00 ( 0%) sys   0.22 ( 0%) wall 
  4999 kB ( 1%) ggc
to:
 variable tracking       :   2.84 ( 2%) usr   0.03 ( 1%) sys   2.88 ( 2%) wall 
109819 kB (13%) ggc
 var-tracking dataflow   :   2.08 ( 2%) usr   0.05 ( 2%) sys   2.13 ( 2%) wall 
     0 kB ( 0%) ggc
 var-tracking emit       :   0.22 ( 0%) usr   0.00 ( 0%) sys   0.22 ( 0%) wall 
  4999 kB ( 1%) ggc
and on the slightly reduced testcase in the patch (just E(1), i.e. half the
number of basic blocks):
 variable tracking       : 265.96 (85%) usr   0.16 (14%) sys 267.11 (84%) wall 
 51380 kB (12%) ggc
 var-tracking dataflow   :   1.93 ( 1%) usr   0.03 ( 3%) sys   1.98 ( 1%) wall 
     0 kB ( 0%) ggc
 var-tracking emit       :   0.11 ( 0%) usr   0.00 ( 0%) sys   0.11 ( 0%) wall 
  2499 kB ( 1%) ggc
to:
 variable tracking       :   1.55 ( 3%) usr   0.02 ( 2%) sys   1.56 ( 3%) wall 
 54897 kB (13%) ggc
 var-tracking dataflow   :   2.00 ( 4%) usr   0.05 ( 5%) sys   2.05 ( 4%) wall 
     0 kB ( 0%) ggc
 var-tracking emit       :   0.11 ( 0%) usr   0.00 ( 0%) sys   0.12 ( 0%) wall 
  2499 kB ( 1%) ggc

Reply via email to