These two patches add support for the XSMAXCQP, XSMINCQP, XSCMP{EQ,GT,GE}QP instructions in the Power10. These instructions allow the compiler to generate minimum, maxmimum, and conditional move support for IEEE 128-bit floating point type.
I have posted versions of these patches before, going back to at least the June time frame. Because I wanted to focus on getting support in the library to allow long double to be configured as IEEE 128-bit on little endian PowerPC server systems, I haven't reposted these patches in awhile. While the other patches are more important, it would be nice to get these patches into GCC 11. In these patches, I attempted to address various comments from the previous times I posted the patches. There are 2 patches in this set. The first adds the min/max support if -ffast-math is used. The second adds conditional move support, and it enables the min/max to be generated more often. I have done bootstrap compilers on both little endian power9 systems and big endian power8 system many time. I would like to commit these patches to the master branch. -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss...@linux.ibm.com, phone: +1 (978) 899-4797