tree-optimization/105629 - spaceship recognition regression
authorRichard Biener <rguenther@suse.de>
Mon, 23 May 2022 09:41:50 +0000 (11:41 +0200)
committerRichard Biener <rguenther@suse.de>
Tue, 24 May 2022 06:20:11 +0000 (08:20 +0200)
commitd918faea1217596877a35c4946500399731fbbd3
treef098124df1f68ecd2095ffa6fbc81ba6e696fb59
parent8fa8bca9f53fcfdedc2b4fa55093dbd1ab7abbd1
tree-optimization/105629 - spaceship recognition regression

With the extra GENERIC folding we now do to
(unsigned int) __v._M_value & 1 != (unsigned int) __v._M_value
we end up with a sign-extending conversion to unsigned int
rather than the sign-conversion to unsigned char we expect.
Relaxing that fixes the regression.

2022-05-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/105629
* tree-ssa-phiopt.cc (spaceship_replacement): Allow
a sign-extending conversion.
gcc/tree-ssa-phiopt.cc