------- Comment #2 from pinskia at gcc dot gnu dot org  2006-03-03 14:02 -------
Actually nope.  There are a couple of different issues here.
First is store_copyprop does not work:
  #   SFT.10_29 = V_MAY_DEF <SFT.10_10>;
  #   SFT.11_30 = V_MAY_DEF <SFT.11_11>;
  #   SFT.12_31 = V_MAY_DEF <SFT.12_12>;
  #   SFT.14_32 = V_MAY_DEF <SFT.14_14>;
  #   SFT.13_28 = V_MUST_DEF <SFT.13_13>;
  src.vec = D.5885_25;
  #   VUSE <SFT.10_29>;
  #   VUSE <SFT.11_30>;
  #   VUSE <SFT.12_31>;
  #   VUSE <SFT.13_28>;
  #   VUSE <SFT.14_32>;
  D.5880_33 = src.vec;
Which is PR 26135.

The second issue is no copyprop for aggregates:
  #   SFT.10_10 = V_MUST_DEF <SFT.10_5>;
  #   SFT.11_11 = V_MUST_DEF <SFT.11_6>;
  #   SFT.12_12 = V_MUST_DEF <SFT.12_7>;
  #   SFT.13_13 = V_MUST_DEF <SFT.13_8>;
  #   SFT.14_14 = V_MUST_DEF <SFT.14_9>;
  #   VUSE <b_4>;
  src = b;
  #   VUSE <SFT.10_10>;
  #   VUSE <SFT.11_11>;
  #   VUSE <SFT.12_12>;
  #   VUSE <SFT.13_13>;
  #   VUSE <SFT.14_14>;
  D.5880_15 = src.vec;

Which is PR 14295.
After those two are fixed, this should be fixed Also.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  BugsThisDependsOn|                            |14295, 26135
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
  GCC build triplet|x86_64-pc-linux-gnu         |
   GCC host triplet|x86_64-pc-linux-gnu         |
 GCC target triplet|x86_64-pc-linux-gnu         |
   Last reconfirmed|0000-00-00 00:00:00         |2006-03-03 14:02:47
               date|                            |
            Summary|Passing unions of _vector_  |[meta-bugs] couple of missed
                   |types and struct or array of|optimization with respect of
                   |the same size as value to   |vector and unions
                   |inline functions causes     |
                   |unecessary load/stores on   |
                   |the stack even if no members|
                   |except the _vector_ is      |
                   |accessed                    |


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

Reply via email to