[Bug tree-optimization/77550] [6/7 Regression] std::deque with -O3 has infinite std::distance

pinskia at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sun Sep 11 18:36:00 GMT 2016


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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

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

--- Comment #10 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Bernd Edlinger from comment #9)
> I'm unable to reduce the test case...
> 
> 
> The deque_iterator has these members:
> 
>       _Elt_pointer _M_cur;
>       _Elt_pointer _M_first;
>       _Elt_pointer _M_last;
>       _Map_pointer _M_node;
> 
> the first 3 elements have alias set 12
> while _M_node has alias set 13.
> 
> when all 4 elements are assigned that becomes
> 2 vector statements, but all use alias set 12.

The vector stores should have become the aliasing set of the struct instead as
suggested on the store widening patch.


More information about the Gcc-bugs mailing list