-
- Downloads
s390: Implement isfinite and isnormal optabs
Merge new optabs with the existing implementations for signbit and isinf. gcc/ChangeLog: * config/s390/s390.h (S390_TDC_POSITIVE_ZERO): Remove. (S390_TDC_NEGATIVE_ZERO): Remove. (S390_TDC_POSITIVE_NORMALIZED_BFP_NUMBER): Remove. (S390_TDC_NEGATIVE_NORMALIZED_BFP_NUMBER): Remove. (S390_TDC_POSITIVE_DENORMALIZED_BFP_NUMBER): Remove. (S390_TDC_NEGATIVE_DENORMALIZED_BFP_NUMBER): Remove. (S390_TDC_POSITIVE_INFINITY): Remove. (S390_TDC_NEGATIVE_INFINITY): Remove. (S390_TDC_POSITIVE_QUIET_NAN): Remove. (S390_TDC_NEGATIVE_QUIET_NAN): Remove. (S390_TDC_POSITIVE_SIGNALING_NAN): Remove. (S390_TDC_NEGATIVE_SIGNALING_NAN): Remove. (S390_TDC_POSITIVE_DENORMALIZED_DFP_NUMBER): Remove. (S390_TDC_NEGATIVE_DENORMALIZED_DFP_NUMBER): Remove. (S390_TDC_POSITIVE_NORMALIZED_DFP_NUMBER): Remove. (S390_TDC_NEGATIVE_NORMALIZED_DFP_NUMBER): Remove. (S390_TDC_SIGNBIT_SET): Remove. (S390_TDC_INFINITY): Remove. * config/s390/s390.md (signbit<mode>2<tf_fpr>): Merge this one (isinf<mode>2<tf_fpr>): and this one into (<TDC_CLASS:tdc_insn><mode>2<tf_fpr>): new expander. (isnormal<mode>2<tf_fpr>): New BFP expander. (isnormal<mode>2): New DFP expander. * config/s390/vector.md (signbittf2_vr): Merge this one (isinftf2_vr): and this one into (<tdc_insn>tf2_vr): new expander. (signbittf2): Merge this one (isinftf2): and this one into (<tdc_insn>tf2): new expander. gcc/testsuite/ChangeLog: * gcc.target/s390/isfinite-isinf-isnormal-signbit-1.c: New test. * gcc.target/s390/isfinite-isinf-isnormal-signbit-2.c: New test. * gcc.target/s390/isfinite-isinf-isnormal-signbit-3.c: New test. * gcc.target/s390/isfinite-isinf-isnormal-signbit.h: New test.
Showing
- gcc/config/s390/s390.h 0 additions, 31 deletionsgcc/config/s390/s390.h
- gcc/config/s390/s390.md 96 additions, 18 deletionsgcc/config/s390/s390.md
- gcc/config/s390/vector.md 8 additions, 34 deletionsgcc/config/s390/vector.md
- gcc/testsuite/gcc.target/s390/isfinite-isinf-isnormal-signbit-1.c 62 additions, 0 deletions...suite/gcc.target/s390/isfinite-isinf-isnormal-signbit-1.c
- gcc/testsuite/gcc.target/s390/isfinite-isinf-isnormal-signbit-2.c 13 additions, 0 deletions...suite/gcc.target/s390/isfinite-isinf-isnormal-signbit-2.c
- gcc/testsuite/gcc.target/s390/isfinite-isinf-isnormal-signbit-3.c 13 additions, 0 deletions...suite/gcc.target/s390/isfinite-isinf-isnormal-signbit-3.c
- gcc/testsuite/gcc.target/s390/isfinite-isinf-isnormal-signbit.h 23 additions, 0 deletions...stsuite/gcc.target/s390/isfinite-isinf-isnormal-signbit.h
Loading
Please register or sign in to comment