aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-loop.cc
diff options
context:
space:
mode:
authorRobin Dapp <rdapp@ventanamicro.com>2023-11-17 10:34:35 +0100
committerRobin Dapp <rdapp@ventanamicro.com>2023-11-20 10:21:58 +0100
commitf25a5b199a0ebd4695466e665e49041339f0c6a7 (patch)
tree2da9972bb2147ab80bc32d1c1e9147177102c861 /gcc/tree-vect-loop.cc
parent103a3966bc7b68f91b6cd3c5beb330c4b8570c90 (diff)
downloadgcc-f25a5b199a0ebd4695466e665e49041339f0c6a7.zip
gcc-f25a5b199a0ebd4695466e665e49041339f0c6a7.tar.gz
gcc-f25a5b199a0ebd4695466e665e49041339f0c6a7.tar.bz2
vect: Add bool pattern handling for COND_OPs.
In order to handle masks properly for conditional operations this patch teaches vect_recog_mask_conversion_pattern to also handle conditional operations. Now we convert e.g. _mask = *_6; _ifc123 = COND_OP (_mask, ...); into _mask = *_6; patt200 = (<signed-boolean:1>) _mask; patt201 = COND_OP (patt200, ...); This way the mask will be properly recognized as boolean mask and the correct vector mask will be generated. gcc/ChangeLog: PR middle-end/112406 * tree-vect-patterns.cc (vect_recog_mask_conversion_pattern): Convert masks for conditional operations as well. gcc/testsuite/ChangeLog: * gfortran.dg/pr112406.f90: New test.
Diffstat (limited to 'gcc/tree-vect-loop.cc')
0 files changed, 0 insertions, 0 deletions