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

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to rguent...@suse.de from comment #3)
> On Sat, 3 Feb 2024, jakub at gcc dot gnu.org wrote:
> > Bitint lowering changes here
> >   MEM <<address-space-2> _BitInt(768)> [(<address-space-2> struct T 
> > *)p_2(D)] =
> > s_4(D);
> > to
> >   VIEW_CONVERT_EXPR<unsigned long[12]>(MEM <<address-space-2> _BitInt(768)>
> > [(<address-space-2> struct T *)p_2(D)])[_5] = s_7(D);
> > accesses in a loop.  Is that invalid and should have <address-space-2> also 
> > in
> > the VCE type?  Or is this just a vectorizer bug?
> 
> I think that's OK, I will have a look.

I stand corrected - it isn't correct.  The address-space needs to be on
all types involved in a memory reference (RTL expansion is later quite
forgiving though).

This needs better documentation and maybe even IL checking I guess.

Reply via email to