diff options
author | Andrew Pinski <quic_apinski@quicinc.com> | 2024-11-25 16:04:21 -0800 |
---|---|---|
committer | Andrew Pinski <quic_apinski@quicinc.com> | 2024-11-27 10:21:46 -0800 |
commit | bca515ff1893fe4ca1a9042364af3c43f93a397c (patch) | |
tree | 86ffedb01624d69c5d98183cbed1bbd0aa862b9f /gcc/rust | |
parent | 56029c91dcadcfd1800614b7484d3dc82ca16dde (diff) | |
download | gcc-bca515ff1893fe4ca1a9042364af3c43f93a397c.zip gcc-bca515ff1893fe4ca1a9042364af3c43f93a397c.tar.gz gcc-bca515ff1893fe4ca1a9042364af3c43f93a397c.tar.bz2 |
match: Improve handling of double convert [PR117776]
For a double conversion, we will simplify it into a conversion
with an and if the outer type and inside precision matches and
the intra precision is smaller and unsigned. We should be able
to extend this to where the outer precision is larger too.
This is a good canonicalization too.
Bootstrapped and tested on x86_64-linux-gnu.
PR tree-optimization/117776
gcc/ChangeLog:
* match.pd (nested int casts): Allow for the case
where the final prec is greater than the original
prec.
gcc/testsuite/ChangeLog:
* g++.dg/vect/pr117776.cc: New test.
* gcc.dg/tree-ssa/cast-3.c: New test.
Signed-off-by: Andrew Pinski <quic_apinski@quicinc.com>
Diffstat (limited to 'gcc/rust')
0 files changed, 0 insertions, 0 deletions