]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
[aarch64] check for non-NULL vectype in aarch64_vector_costs::add_stmt_cost
authorRichard Biener <rguenther@suse.de>
Tue, 22 Jul 2025 13:04:16 +0000 (15:04 +0200)
committerRichard Biener <rguenth@gcc.gnu.org>
Wed, 23 Jul 2025 06:52:33 +0000 (08:52 +0200)
With a patch still in development we get NULL STMT_VINFO_VECTYPE.
One side-effect is that during scalar stmt testing we no longer
pass a vectype.  The following adjusts aarch64_vector_costs::add_stmt_cost
to check for a non-NULL vectype before accessing it, like all the
code surrounding it.  The other fix possibility would have been
to re-orderr the check with the vect_mem_access_type one, but that
one is not going to exist during scalar code costing either in the
future.

* config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost):
Check vectype is non-NULL before accessing it.

gcc/config/aarch64/aarch64.cc

index 72a691b8e2f24c2beeca2092517c4f886ff61f7f..9e4a37bcaff06f506e119498918799c3bbc7b89b 100644 (file)
@@ -17976,6 +17976,7 @@ aarch64_vector_costs::add_stmt_cost (int count, vect_cost_for_stmt kind,
 
       /* Check if we've seen an SVE gather/scatter operation and which size.  */
       if (kind == scalar_load
+         && vectype
          && aarch64_sve_mode_p (TYPE_MODE (vectype))
          && vect_mem_access_type (stmt_info, node) == VMAT_GATHER_SCATTER)
        {