comparison src/share/vm/ci/ciMethod.cpp @ 10278:6f3fd5150b67

6934604: enable parts of EliminateAutoBox by default Summary: Resurrected autobox elimination code and enabled part of it by default. Reviewed-by: roland, twisti
author kvn
date Wed, 08 May 2013 15:08:01 -0700
parents aeaca88565e6
children 836a62f43af9 b2e698d2276c
comparison
equal deleted inserted replaced
10277:aabf54ccedb1 10278:6f3fd5150b67
1177 bool ciMethod::has_loops () const { FETCH_FLAG_FROM_VM(has_loops); } 1177 bool ciMethod::has_loops () const { FETCH_FLAG_FROM_VM(has_loops); }
1178 bool ciMethod::has_jsrs () const { FETCH_FLAG_FROM_VM(has_jsrs); } 1178 bool ciMethod::has_jsrs () const { FETCH_FLAG_FROM_VM(has_jsrs); }
1179 bool ciMethod::is_accessor () const { FETCH_FLAG_FROM_VM(is_accessor); } 1179 bool ciMethod::is_accessor () const { FETCH_FLAG_FROM_VM(is_accessor); }
1180 bool ciMethod::is_initializer () const { FETCH_FLAG_FROM_VM(is_initializer); } 1180 bool ciMethod::is_initializer () const { FETCH_FLAG_FROM_VM(is_initializer); }
1181 1181
1182 bool ciMethod::is_boxing_method() const {
1183 if (holder()->is_box_klass()) {
1184 switch (intrinsic_id()) {
1185 case vmIntrinsics::_Boolean_valueOf:
1186 case vmIntrinsics::_Byte_valueOf:
1187 case vmIntrinsics::_Character_valueOf:
1188 case vmIntrinsics::_Short_valueOf:
1189 case vmIntrinsics::_Integer_valueOf:
1190 case vmIntrinsics::_Long_valueOf:
1191 case vmIntrinsics::_Float_valueOf:
1192 case vmIntrinsics::_Double_valueOf:
1193 return true;
1194 default:
1195 return false;
1196 }
1197 }
1198 return false;
1199 }
1200
1201 bool ciMethod::is_unboxing_method() const {
1202 if (holder()->is_box_klass()) {
1203 switch (intrinsic_id()) {
1204 case vmIntrinsics::_booleanValue:
1205 case vmIntrinsics::_byteValue:
1206 case vmIntrinsics::_charValue:
1207 case vmIntrinsics::_shortValue:
1208 case vmIntrinsics::_intValue:
1209 case vmIntrinsics::_longValue:
1210 case vmIntrinsics::_floatValue:
1211 case vmIntrinsics::_doubleValue:
1212 return true;
1213 default:
1214 return false;
1215 }
1216 }
1217 return false;
1218 }
1219
1182 BCEscapeAnalyzer *ciMethod::get_bcea() { 1220 BCEscapeAnalyzer *ciMethod::get_bcea() {
1183 #ifdef COMPILER2 1221 #ifdef COMPILER2
1184 if (_bcea == NULL) { 1222 if (_bcea == NULL) {
1185 _bcea = new (CURRENT_ENV->arena()) BCEscapeAnalyzer(this, NULL); 1223 _bcea = new (CURRENT_ENV->arena()) BCEscapeAnalyzer(this, NULL);
1186 } 1224 }