3993 // raw pointers and int types are treated differently 3994 // when saving local & stack info for safepoints in 3995 // Output(). 3996 //if( strcmp(opType,"CastX2P")==0 ) 3997 // return 1; 3998 //if( strcmp(opType,"CastP2X")==0 ) 3999 // return 1; 4000 #endif 4001 } 4002 if( is_chain_rule(_AD.globalNames()) && 4003 _lChild && strncmp(_lChild->_opType,"stackSlot",9)==0 ) 4004 return 1; 4005 return 0; 4006 } 4007 4008 4009 int MatchRule::is_expensive() const { 4010 if( _rChild ) { 4011 const char *opType = _rChild->_opType; 4012 if( strcmp(opType,"AtanD")==0 || 4013 strcmp(opType,"CosD")==0 || 4014 strcmp(opType,"DivD")==0 || 4015 strcmp(opType,"DivF")==0 || 4016 strcmp(opType,"DivI")==0 || 4017 strcmp(opType,"Log10D")==0 || 4018 strcmp(opType,"ModD")==0 || 4019 strcmp(opType,"ModF")==0 || 4020 strcmp(opType,"ModI")==0 || 4021 strcmp(opType,"SinD")==0 || 4022 strcmp(opType,"SqrtD")==0 || 4023 strcmp(opType,"TanD")==0 || 4024 strcmp(opType,"ConvD2F")==0 || 4025 strcmp(opType,"ConvD2I")==0 || 4026 strcmp(opType,"ConvD2L")==0 || 4027 strcmp(opType,"ConvF2D")==0 || 4028 strcmp(opType,"ConvF2I")==0 || 4029 strcmp(opType,"ConvF2L")==0 || 4030 strcmp(opType,"ConvI2D")==0 || 4031 strcmp(opType,"ConvI2F")==0 || 4032 strcmp(opType,"ConvI2L")==0 || 4033 strcmp(opType,"ConvL2D")==0 || 4034 strcmp(opType,"ConvL2F")==0 || 4035 strcmp(opType,"ConvL2I")==0 || 4036 strcmp(opType,"DecodeN")==0 || 4037 strcmp(opType,"EncodeP")==0 || 4038 strcmp(opType,"EncodePKlass")==0 || 4039 strcmp(opType,"DecodeNKlass")==0 || 4040 strcmp(opType,"RoundDouble")==0 || 4041 strcmp(opType,"RoundFloat")==0 || | 3993 // raw pointers and int types are treated differently 3994 // when saving local & stack info for safepoints in 3995 // Output(). 3996 //if( strcmp(opType,"CastX2P")==0 ) 3997 // return 1; 3998 //if( strcmp(opType,"CastP2X")==0 ) 3999 // return 1; 4000 #endif 4001 } 4002 if( is_chain_rule(_AD.globalNames()) && 4003 _lChild && strncmp(_lChild->_opType,"stackSlot",9)==0 ) 4004 return 1; 4005 return 0; 4006 } 4007 4008 4009 int MatchRule::is_expensive() const { 4010 if( _rChild ) { 4011 const char *opType = _rChild->_opType; 4012 if( strcmp(opType,"AtanD")==0 || 4013 strcmp(opType,"DivD")==0 || 4014 strcmp(opType,"DivF")==0 || 4015 strcmp(opType,"DivI")==0 || 4016 strcmp(opType,"Log10D")==0 || 4017 strcmp(opType,"ModD")==0 || 4018 strcmp(opType,"ModF")==0 || 4019 strcmp(opType,"ModI")==0 || 4020 strcmp(opType,"SqrtD")==0 || 4021 strcmp(opType,"TanD")==0 || 4022 strcmp(opType,"ConvD2F")==0 || 4023 strcmp(opType,"ConvD2I")==0 || 4024 strcmp(opType,"ConvD2L")==0 || 4025 strcmp(opType,"ConvF2D")==0 || 4026 strcmp(opType,"ConvF2I")==0 || 4027 strcmp(opType,"ConvF2L")==0 || 4028 strcmp(opType,"ConvI2D")==0 || 4029 strcmp(opType,"ConvI2F")==0 || 4030 strcmp(opType,"ConvI2L")==0 || 4031 strcmp(opType,"ConvL2D")==0 || 4032 strcmp(opType,"ConvL2F")==0 || 4033 strcmp(opType,"ConvL2I")==0 || 4034 strcmp(opType,"DecodeN")==0 || 4035 strcmp(opType,"EncodeP")==0 || 4036 strcmp(opType,"EncodePKlass")==0 || 4037 strcmp(opType,"DecodeNKlass")==0 || 4038 strcmp(opType,"RoundDouble")==0 || 4039 strcmp(opType,"RoundFloat")==0 || |