On Tue, 3 Dec 2019, Richard Biener wrote:
> On Mon, 2 Dec 2019, Richard Biener wrote:
>
> > On December 2, 2019 4:27:47 PM GMT+01:00, Alexander Monakov
> > wrote:
> > >On Mon, 2 Dec 2019, Richard Biener wrote:
> > >
> > >> +typedef long long v4di __attribute__((vector_size(32)));
> > >> +struct
On Mon, 2 Dec 2019, Richard Biener wrote:
> On December 2, 2019 4:27:47 PM GMT+01:00, Alexander Monakov
> wrote:
> >On Mon, 2 Dec 2019, Richard Biener wrote:
> >
> >> +typedef long long v4di __attribute__((vector_size(32)));
> >> +struct Vec
> >> +{
> >> + unsigned int v[8];
> >> +};
> >> +
> >
On December 2, 2019 4:27:47 PM GMT+01:00, Alexander Monakov
wrote:
>On Mon, 2 Dec 2019, Richard Biener wrote:
>
>> +typedef long long v4di __attribute__((vector_size(32)));
>> +struct Vec
>> +{
>> + unsigned int v[8];
>> +};
>> +
>> +v4di pun (struct Vec *s)
>> +{
>> + v4di tem;
>> + __builtin
On Mon, 2 Dec 2019, Richard Biener wrote:
> +typedef long long v4di __attribute__((vector_size(32)));
> +struct Vec
> +{
> + unsigned int v[8];
> +};
> +
> +v4di pun (struct Vec *s)
> +{
> + v4di tem;
> + __builtin_memcpy (&tem, s, 32);
> + return tem;
> +}
> +
> +/* We're expecting exactly tw
This recovers some of the nearly dead code in
gimple_fold_builtin_memory_op by allowing a rewrite of memcpy
with a properly aligned source or destination decl. In particular
this handles register typed vars to be tranformed (and later
rewritten into SSA form).
Together with 1/2 the testcase th