This is the mail archive of the gcc-bugs@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]
Other format: [Raw text]

[Bug target/80689] 128 loads generated for structure copying with gcc 7.1.0 and leads to STLF stalls in avx2 targets.


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80689

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |uros at gcc dot gnu.org

--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
That's interesting.  Most heavy lifting of block copying happens in the
middle-end, so doing member-wise copying would need to be implemented there
(generally GIMPLE is too lax to always allow this, it just requires same
object sizes on LHS and RHS for aggregate copies, but where types match
this could be a heuristic that will likely avoid STLF issues).  It would need
quite some benchmarking on when this is reasonable (factoring in store queue
size -- for large aggregates it's unlikely a win).

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