https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97786
Bug ID: 97786 Summary: rs6000 isinf etc. are pretty horrible Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: segher at gcc dot gnu.org Target Milestone: --- int isfinite(double x) { return __builtin_isfinite (x); } int isinf(double x) { return __builtin_isinf (x); } int isinf_sign(double x) { return __builtin_isinf_sign (x); } int isnan(double x) { return __builtin_isnan (x); } int isnormal(double x) { return __builtin_isnormal (x); } int fpclassify(double x) { return __builtin_fpclassify (5, 6, 7, 8, 9, x); } We can generate much better code for all these than the generic code we use now.