@@ -205,6 +205,11 @@ static void InitLibcallNames(const char **Names, const TargetMachine &TM) {
205
205
Names[RTLIB::FLOOR_F80] = " floorl" ;
206
206
Names[RTLIB::FLOOR_F128] = " floorl" ;
207
207
Names[RTLIB::FLOOR_PPCF128] = " floorl" ;
208
+ Names[RTLIB::ROUND_F32] = " roundf" ;
209
+ Names[RTLIB::ROUND_F64] = " round" ;
210
+ Names[RTLIB::ROUND_F80] = " roundl" ;
211
+ Names[RTLIB::ROUND_F128] = " roundl" ;
212
+ Names[RTLIB::ROUND_PPCF128] = " roundl" ;
208
213
Names[RTLIB::COPYSIGN_F32] = " copysignf" ;
209
214
Names[RTLIB::COPYSIGN_F64] = " copysign" ;
210
215
Names[RTLIB::COPYSIGN_F80] = " copysignl" ;
@@ -760,6 +765,7 @@ void TargetLoweringBase::initActions() {
760
765
setOperationAction (ISD::FCEIL, MVT::f16 , Expand);
761
766
setOperationAction (ISD::FRINT, MVT::f16 , Expand);
762
767
setOperationAction (ISD::FTRUNC, MVT::f16 , Expand);
768
+ setOperationAction (ISD::FROUND, MVT::f16 , Expand);
763
769
setOperationAction (ISD::FLOG , MVT::f32 , Expand);
764
770
setOperationAction (ISD::FLOG2, MVT::f32 , Expand);
765
771
setOperationAction (ISD::FLOG10, MVT::f32 , Expand);
@@ -770,6 +776,7 @@ void TargetLoweringBase::initActions() {
770
776
setOperationAction (ISD::FCEIL, MVT::f32 , Expand);
771
777
setOperationAction (ISD::FRINT, MVT::f32 , Expand);
772
778
setOperationAction (ISD::FTRUNC, MVT::f32 , Expand);
779
+ setOperationAction (ISD::FROUND, MVT::f32 , Expand);
773
780
setOperationAction (ISD::FLOG , MVT::f64 , Expand);
774
781
setOperationAction (ISD::FLOG2, MVT::f64 , Expand);
775
782
setOperationAction (ISD::FLOG10, MVT::f64 , Expand);
@@ -780,6 +787,7 @@ void TargetLoweringBase::initActions() {
780
787
setOperationAction (ISD::FCEIL, MVT::f64 , Expand);
781
788
setOperationAction (ISD::FRINT, MVT::f64 , Expand);
782
789
setOperationAction (ISD::FTRUNC, MVT::f64 , Expand);
790
+ setOperationAction (ISD::FROUND, MVT::f64 , Expand);
783
791
setOperationAction (ISD::FLOG , MVT::f128 , Expand);
784
792
setOperationAction (ISD::FLOG2, MVT::f128 , Expand);
785
793
setOperationAction (ISD::FLOG10, MVT::f128 , Expand);
@@ -790,6 +798,7 @@ void TargetLoweringBase::initActions() {
790
798
setOperationAction (ISD::FCEIL, MVT::f128 , Expand);
791
799
setOperationAction (ISD::FRINT, MVT::f128 , Expand);
792
800
setOperationAction (ISD::FTRUNC, MVT::f128 , Expand);
801
+ setOperationAction (ISD::FROUND, MVT::f128 , Expand);
793
802
794
803
// Default ISD::TRAP to expand (which turns it into abort).
795
804
setOperationAction (ISD::TRAP, MVT::Other, Expand);
0 commit comments