@@ -969,6 +969,7 @@ JITServerHelpers::cacheRemoteROMClass(ClientSessionData *clientSessionData, J9Cl
969
969
classInfoStruct._classNameIdentifyingLoader = std::get<22 >(classInfoTuple);
970
970
classInfoStruct._arrayElementSize = std::get<23 >(classInfoTuple);
971
971
classInfoStruct._defaultValueSlotAddress = std::get<24 >(classInfoTuple);
972
+ classInfoStruct._nullRestrictedArrayClass = std::get<26 >(classInfoTuple);
972
973
973
974
auto result = clientSessionData->getROMClassMap ().insert ({ clazz, classInfoStruct });
974
975
@@ -1031,6 +1032,7 @@ JITServerHelpers::packRemoteROMClassInfo(J9Class *clazz, J9VMThread *vmThread, T
1031
1032
TR_OpaqueClassBlock *hostClass = fe->convertClassPtrToClassOffset (clazz->hostClass );
1032
1033
TR_OpaqueClassBlock *componentClass = fe->getComponentClassFromArrayClass ((TR_OpaqueClassBlock *)clazz);
1033
1034
TR_OpaqueClassBlock *arrayClass = fe->getArrayClassFromComponentClass ((TR_OpaqueClassBlock *)clazz);
1035
+ TR_OpaqueClassBlock *nullRestrictedArrayClass = fe->getNullRestrictedArrayClassFromComponentClass ((TR_OpaqueClassBlock *)clazz);
1034
1036
uintptr_t totalInstanceSize = clazz->totalInstanceSize ;
1035
1037
uintptr_t cp = fe->getConstantPoolFromClass ((TR_OpaqueClassBlock *)clazz);
1036
1038
uintptr_t classFlags = fe->getClassFlagsValue ((TR_OpaqueClassBlock *)clazz);
@@ -1082,7 +1084,7 @@ JITServerHelpers::packRemoteROMClassInfo(J9Class *clazz, J9VMThread *vmThread, T
1082
1084
classHasFinalFields, classDepthAndFlags, classInitialized, byteOffsetToLockword, leafComponentClass,
1083
1085
classLoader, hostClass, componentClass, arrayClass, totalInstanceSize, clazz->romClass ,
1084
1086
cp, classFlags, classChainOffsetIdentifyingLoader, origROMMethods, classNameIdentifyingLoader, arrayElementSize,
1085
- defaultValueSlotAddress, romClassHash
1087
+ defaultValueSlotAddress, romClassHash, nullRestrictedArrayClass
1086
1088
);
1087
1089
}
1088
1090
@@ -1261,6 +1263,9 @@ JITServerHelpers::getROMClassData(const ClientSessionData::ClassInfo &classInfo,
1261
1263
case CLASSINFO_DEFAULT_VALUE_SLOT_ADDRESS:
1262
1264
*(j9object_t **)data = classInfo._defaultValueSlotAddress ;
1263
1265
break ;
1266
+ case CLASSINFO_NULLRESTRICTED_ARRAY_CLASS :
1267
+ *(TR_OpaqueClassBlock **)data = classInfo._nullRestrictedArrayClass ;
1268
+ break ;
1264
1269
default :
1265
1270
TR_ASSERT (false , " Class Info not supported %u\n " , dataType);
1266
1271
break ;
0 commit comments