]> git.ipfire.org Git - thirdparty/gcc.git/commit
vect: remove cast to pointer for create_if in vect_create_data_ref_ptr
authorAlfie Richards <alfie.richards@arm.com>
Thu, 24 Jul 2025 08:16:30 +0000 (08:16 +0000)
committerAlfie Richards <alfie.richards@arm.com>
Thu, 24 Jul 2025 13:44:25 +0000 (13:44 +0000)
commit01da5644eaade772bc9eae5a219e381ada56b3a1
treecab255e526c30d9ede55533cc3f44da41f967703
parentbe6a864b25206dd85827c2960f38f36f49b38f31
vect: remove cast to pointer for create_if in vect_create_data_ref_ptr

Removes `fold_convert (aggr_ptr_type, iv_step)` when using create_iv.

This was previously constructing statements like:
```
unsigned int _49;
vector([4,4]) int * _50;
sizetype _51;
vector([4,4]) int * vectp_x.6;
...
_50 = (vector([4,4]) int *) _49;
_51 = (sizetype) _50;
...
vectp_x.6_48 = vectp_x.6_47 + _51;
```

And instead creates:
```
unsigned int _49;
sizetype _50;
vector([4,4]) int * vectp_x.6;
...
_50 = (sizetype) _49;
...
vectp_x.6_48 = vectp_x.6_47 + _50;
```

As create_iv already has the logic to handle a pointer mode base and an integer
mode var this seems a more natural expression of this.

gcc/ChangeLog:

* tree-vect-data-refs.cc (vect_create_data_ref_ptr): Remove unnecessary
casts to aggr_ptr_type.
gcc/tree-vect-data-refs.cc