aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-patterns.cc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2023-06-23 10:15:27 +0200
committerRichard Biener <rguenther@suse.de>2023-06-23 11:22:38 +0200
commit6b32400e19a702137fd11571d199f725add0daf6 (patch)
treefb06add493b48a8bbe7d67bb6c649739cb5d18c5 /gcc/tree-vect-patterns.cc
parentefc7fadff587b675552cd130cffe8c96c0feb4fc (diff)
downloadgcc-6b32400e19a702137fd11571d199f725add0daf6.zip
gcc-6b32400e19a702137fd11571d199f725add0daf6.tar.gz
gcc-6b32400e19a702137fd11571d199f725add0daf6.tar.bz2
Bogus and missed folding on vector compares
fold_binary tries to transform (double)float1 CMP (double)float2 into float1 CMP float2 but ends up using TYPE_PRECISION on the argument types. For vector types that compares the number of lanes which should be always equal (so it's harmless as to not generating wrong code). The following instead properly uses element_precision. The same happens in the corresponding match.pd pattern. * fold-const.cc (fold_binary_loc): Use element_precision when trying (double)float1 CMP (double)float2 to float1 CMP float2 simplification. * match.pd: Likewise.
Diffstat (limited to 'gcc/tree-vect-patterns.cc')
0 files changed, 0 insertions, 0 deletions