Simplify (trunc)MAX/MIN((extend)a, (extend)b) to MAX/MIN(a,b)
authorliuhongt <hongtao.liu@intel.com>
Thu, 4 Nov 2021 08:05:45 +0000 (16:05 +0800)
committerliuhongt <hongtao.liu@intel.com>
Wed, 10 Nov 2021 06:31:22 +0000 (14:31 +0800)
commitb879d40a17ec0409f1a2cd9ab6134bb28f53eea8
tree3e6147d13fafee3f77e5642c32dc7583f63431b8
parent52fa771758635d9c53cddb9116e5a66fae592230
Simplify (trunc)MAX/MIN((extend)a, (extend)b) to MAX/MIN(a,b)

a and b are same type as trunc type and has less precision than
extend type.

gcc/ChangeLog:

PR target/102464
* match.pd: Simplify (trunc)fmax/fmin((extend)a, (extend)b) to
MAX/MIN(a,b)

gcc/testsuite/ChangeLog:

* gcc.target/i386/pr102464-maxmin.c: New test.
gcc/match.pd
gcc/testsuite/gcc.target/i386/pr102464-maxmin.c [new file with mode: 0644]