diff options
author | Richard Biener <rguenther@suse.de> | 2022-07-25 12:10:48 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2022-07-25 13:24:47 +0200 |
commit | 613e3b86955ea3b4977490625328708e82bea6fa (patch) | |
tree | 3c1f2304fa01fa140a1e128ce7c2709ec5e360ad /gcc/gimple-array-bounds.cc | |
parent | eb966d393dfdfd2c80994e4bfcc0dddf85828a73 (diff) | |
download | gcc-613e3b86955ea3b4977490625328708e82bea6fa.zip gcc-613e3b86955ea3b4977490625328708e82bea6fa.tar.gz gcc-613e3b86955ea3b4977490625328708e82bea6fa.tar.bz2 |
middle-end/106414 - fix mistake in ~(x ^ y) -> x == y pattern
When compares are integer typed the inversion with ~ isn't properly
preserved by the equality comparison even when converting the
result properly. The following fixes this by restricting the
input precisions accordingly.
PR middle-end/106414
* match.pd (~(x ^ y) -> x == y): Restrict to single bit
precision types.
* gcc.dg/torture/pr106414-1.c: New testcase.
* gcc.dg/torture/pr106414-2.c: Likewise.
Diffstat (limited to 'gcc/gimple-array-bounds.cc')
0 files changed, 0 insertions, 0 deletions