From 36f35ece10c15dba701565bdbeda52add8a9f83b Mon Sep 17 00:00:00 2001 From: Theresa Mammarella Date: Thu, 27 Jun 2024 11:39:52 -0400 Subject: [PATCH] Remove remaining q uses Signed-off-by: Theresa Mammarella --- .../src/com/ibm/j9ddr/vm29/j9/SendSlot.java | 3 --- .../vm29/j9/stackwalker/JITStackWalker.java | 6 ----- .../vm29/pointer/helper/J9ClassHelper.java | 9 +------- .../helper/J9IndexableObjectHelper.java | 9 -------- .../commands/J9StaticsCommand.java | 3 --- .../J9ObjectStructureFormatter.java | 3 --- .../java/lang/invoke/MethodTypeHelper.java | 22 +++++-------------- runtime/codert_vm/thunkcrt.c | 8 +------ runtime/compiler/control/JITServerHelpers.cpp | 2 -- runtime/compiler/env/J2IThunk.cpp | 1 - runtime/compiler/env/J2IThunk.hpp | 3 +-- runtime/compiler/env/J9ClassEnv.cpp | 1 - runtime/compiler/env/J9ClassEnv.hpp | 4 ++-- runtime/compiler/env/VMJ9.cpp | 5 ++--- .../env/annotations/AnnotationBase.cpp | 4 ++-- runtime/compiler/env/j9fieldsInfo.cpp | 2 +- runtime/compiler/env/j9method.cpp | 22 +++++++------------ runtime/compiler/env/j9method.h | 2 +- runtime/compiler/il/J9SymbolReference.cpp | 2 +- runtime/compiler/ilgen/Walker.cpp | 1 - .../compiler/optimizer/InlinerTempForJ9.cpp | 2 +- .../compiler/optimizer/J9EstimateCodeSize.cpp | 2 +- .../compiler/optimizer/J9ValuePropagation.cpp | 2 +- runtime/compiler/runtime/JitRuntime.cpp | 1 - .../compiler/runtime/RuntimeAssumptions.cpp | 2 +- .../x/runtime/X86RelocationTarget.cpp | 1 - runtime/gc_check/CheckEngine.cpp | 2 +- runtime/jcl/common/reflecthelp.c | 1 - runtime/jit_vm/ctsupport.cpp | 5 +---- runtime/oti/j9.h | 3 +-- runtime/stackmap/stackmap.c | 2 +- runtime/verbose/errormessagehelper.c | 2 +- runtime/vm/ValueTypeHelpers.hpp | 4 ++-- runtime/vm/createramclass.cpp | 4 +--- .../com/ibm/oti/VMCPTool/FieldRef.java | 2 -- 35 files changed, 37 insertions(+), 110 deletions(-) diff --git a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/j9/SendSlot.java b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/j9/SendSlot.java index dc1c8d3d525..892d6bc0d31 100644 --- a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/j9/SendSlot.java +++ b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/j9/SendSlot.java @@ -55,9 +55,6 @@ public static UDATA getSendSlotsFromSignature(J9UTF8Pointer signature) throws Co break; } case 'L': - /*[IF INLINE-TYPES]*/ - case 'Q': - /*[ENDIF] INLINE-TYPES */ for (i++; J9UTF8Helper.stringValue(signature).charAt(i) != ';'; i++); sendArgs = sendArgs.add(1); break; diff --git a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/j9/stackwalker/JITStackWalker.java b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/j9/stackwalker/JITStackWalker.java index 63ecfd286f1..1c00313c6b9 100644 --- a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/j9/stackwalker/JITStackWalker.java +++ b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/j9/stackwalker/JITStackWalker.java @@ -553,9 +553,6 @@ private void jitWalkResolveMethodFrame(WalkState walkState) throws CorruptDataEx while ((sigChar = jitNextSigChar(signatureString)) != ')') { switch (sigChar) { case 'L': - /*[IF INLINE-TYPES]*/ - case 'Q': - /*[ENDIF] INLINE-TYPES */ if (J9SW_ARGUMENT_REGISTER_COUNT_DEFINED && !stackSpillCount.eq(0)) { if ((walkState.flags & J9_STACKWALK_ITERATE_O_SLOTS) != 0) { try { @@ -633,9 +630,6 @@ private char jitNextSigChar(String signatureString) throws CorruptDataException /* Fall through to consume type name, utfChar == 'L' for return value */ case 'L': - /*[IF INLINE-TYPES]*/ - case 'Q': - /*[ENDIF] INLINE-TYPES */ while (signatureString.charAt(charIndex++) != ';') ; } diff --git a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/pointer/helper/J9ClassHelper.java b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/pointer/helper/J9ClassHelper.java index be989c8d45a..33b7fb7f9b4 100644 --- a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/pointer/helper/J9ClassHelper.java +++ b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/pointer/helper/J9ClassHelper.java @@ -169,9 +169,6 @@ public static String getJavaName(J9ClassPointer clazz) throws CorruptDataExcepti case 'Z': return "boolean" + aritySuffix; case 'L': - /*[IF INLINE-TYPES]*/ - case 'Q': - /*[ENDIF] INLINE-TYPES */ return getName(arrayClass.leafComponentType()) + aritySuffix; } @@ -537,10 +534,6 @@ public static boolean isAnonymousClass(J9ClassPointer clazz) throws CorruptDataE * @return true if the character indicates the beginning of a reference or value signature, false otherwise */ public static boolean isRefOrValSignature(char firstChar) { - return firstChar == 'L' - /*[IF INLINE-TYPES]*/ - || (firstChar == 'Q') - /*[ENDIF] INLINE-TYPES */ - ; + return firstChar == 'L'; } } diff --git a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/pointer/helper/J9IndexableObjectHelper.java b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/pointer/helper/J9IndexableObjectHelper.java index 5f765d12aa2..fff2fe73574 100644 --- a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/pointer/helper/J9IndexableObjectHelper.java +++ b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/pointer/helper/J9IndexableObjectHelper.java @@ -397,9 +397,6 @@ public static void getData(J9IndexableObjectPointer objPointer, Object dst, int } case 'L': - /*[IF INLINE-TYPES]*/ - case 'Q': - /*[ENDIF] INLINE-TYPES */ case '[': { if (!(dst instanceof J9ObjectPointer[])) { @@ -570,9 +567,6 @@ public static Object getData(J9IndexableObjectPointer objPointer) throws Corrupt } case 'L': - /*[IF INLINE-TYPES]*/ - case 'Q': - /*[ENDIF] INLINE-TYPES */ case '[': { J9ObjectPointer[] data = new J9ObjectPointer[arraySize]; @@ -649,9 +643,6 @@ public static String getDataAsString(J9IndexableObjectPointer array, int dumpLim break; case 'L': - /*[IF INLINE-TYPES]*/ - case 'Q': - /*[ENDIF] INLINE-TYPES */ case '[': { J9ObjectPointer item = ((J9ObjectPointer[]) data)[i]; diff --git a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/tools/ddrinteractive/commands/J9StaticsCommand.java b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/tools/ddrinteractive/commands/J9StaticsCommand.java index 8bca942ed76..d41ddafcc9d 100644 --- a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/tools/ddrinteractive/commands/J9StaticsCommand.java +++ b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/tools/ddrinteractive/commands/J9StaticsCommand.java @@ -84,9 +84,6 @@ public void run(String command, String[] args, Context context, PrintStream out) switch (sig.charAt(0)) { case 'L': - /*[IF INLINE-TYPES]*/ - case 'Q': - /*[ENDIF] INLINE-TYPES */ case '[': CommandUtils.dbgPrint(out, "\t%s %s %s (!j9romstaticfieldshape %s) = !j9object %s\n", fieldAddress.getHexAddress(), name, sig, field.getHexAddress(), fieldAddress.at(0).getHexValue()); diff --git a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/tools/ddrinteractive/structureformat/extensions/J9ObjectStructureFormatter.java b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/tools/ddrinteractive/structureformat/extensions/J9ObjectStructureFormatter.java index d3bc281541f..d3a0df092b2 100644 --- a/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/tools/ddrinteractive/structureformat/extensions/J9ObjectStructureFormatter.java +++ b/debugtools/DDR_VM/src/com/ibm/j9ddr/vm29/tools/ddrinteractive/structureformat/extensions/J9ObjectStructureFormatter.java @@ -221,9 +221,6 @@ private void formatArrayObject(PrintStream out, J9ClassPointer localClazz, U8Poi } break; case 'L': - /*[IF INLINE-TYPES]*/ - case 'Q': - /*[ENDIF] INLINE-TYPES */ case '[': if (ValueTypeHelper.getValueTypeHelper().isJ9ClassIsFlattened(localClazz)) { formatFlattenedObjectArray(out, tabLevel, begin, finish, array); diff --git a/jcl/src/java.base/share/classes/java/lang/invoke/MethodTypeHelper.java b/jcl/src/java.base/share/classes/java/lang/invoke/MethodTypeHelper.java index 2d23f32919d..fdc1fe77a87 100644 --- a/jcl/src/java.base/share/classes/java/lang/invoke/MethodTypeHelper.java +++ b/jcl/src/java.base/share/classes/java/lang/invoke/MethodTypeHelper.java @@ -185,17 +185,13 @@ static String getBytecodeStringName(Class c) { /* * Convert the string from bytecode format to the format needed for ClassLoader#loadClass(). * Change all '/' to '.'. - * Remove the 'L', 'Q', and ';' from objects, unless they are array classes. + * Remove the 'L' and ';' from objects, unless they are array classes. */ private static final Class nonPrimitiveClassFromString(String name, ClassLoader classLoader) { try { name = name.replace('/', '.'); - if ((name.charAt(0) == 'L') - /*[IF INLINE-TYPES]*/ - || (name.charAt(0) == 'Q') - /*[ENDIF] INLINE-TYPES */ - ) { - // Remove the 'L'/'Q' and ';'. + if (name.charAt(0) == 'L') { + // Remove the 'L' and ';'. name = name.substring(1, name.length() - 1); } return Class.forName(name, false, classLoader); @@ -212,21 +208,13 @@ static final int parseIntoClass(char[] signature, int index, ArrayList> char current = signature[index]; Class c; - if ((current == 'L') || (current == '[') - /*[IF INLINE-TYPES]*/ - || (current == 'Q') - /*[ENDIF] INLINE-TYPES */ - ) { + if ((current == 'L') || (current == '[')) { int start = index; while(signature[index] == '[') { index++; } String name; - if ((signature[index] != 'L') - /*[IF INLINE-TYPES]*/ - && (signature[index] != 'Q') - /*[ENDIF] INLINE-TYPES */ - ) { + if (signature[index] != 'L') { name = descriptor.substring(start, index + 1); } else { int end = descriptor.indexOf(';', index); diff --git a/runtime/codert_vm/thunkcrt.c b/runtime/codert_vm/thunkcrt.c index c3623bbc813..7957a3e8813 100644 --- a/runtime/codert_vm/thunkcrt.c +++ b/runtime/codert_vm/thunkcrt.c @@ -361,9 +361,7 @@ j9ThunkIterateAndEncode(char ** signatureDataPtr, U_8 ** encodedTypesPtr, U_8 * while ((c = *signatureData++) == '[') ; /* intentional fall-through */ case 'L': - /* intentional fall-through */ - case 'Q': - if ((c == 'L') || (c == 'Q')) { + if (c == 'L') { while (*signatureData++ != ';') ; } #if defined(J9VM_ENV_DATA64) @@ -503,8 +501,6 @@ j9ThunkVMHelperFromSignature(void * jitConfig, UDATA signatureLength, char *sign case '[': /* intentional fall-through */ case 'L': - /* intentional fall-through */ - case 'Q': #if defined(J9VM_ENV_DATA64) helper = J9_BUILDER_SYMBOL(icallVMprJavaSendVirtualL); break; @@ -540,8 +536,6 @@ j9ThunkInvokeExactHelperFromSignature(void * jitConfig, UDATA signatureLength, c case '[': /* intentional fall-through */ case 'L': - /* intentional fall-through */ - case 'Q': helper = J9_BUILDER_SYMBOL(icallVMprJavaSendInvokeExactL); break; default: diff --git a/runtime/compiler/control/JITServerHelpers.cpp b/runtime/compiler/control/JITServerHelpers.cpp index 9f8691ef6bc..7623a49d951 100644 --- a/runtime/compiler/control/JITServerHelpers.cpp +++ b/runtime/compiler/control/JITServerHelpers.cpp @@ -1526,8 +1526,6 @@ JITServerHelpers::getFullClassName(uint8_t *name, uint32_t length, const J9ROMCl uint32_t baseNameLength = J9UTF8_LENGTH(baseName); // Build the array class signature that will be passed to jitGetClassInClassloaderFromUTF8() on the client. - // Note that for object arrays we can simply use the "L" type signature since the distinction with "Q" types - // is ignored during array class lookup by name (see internalFindArrayClass() in runtime/vm/classsupport.c). uint32_t i; for (i = 0; i < numDimensions; ++i) name[i] = '['; diff --git a/runtime/compiler/env/J2IThunk.cpp b/runtime/compiler/env/J2IThunk.cpp index 58b92b465cf..45aa8a6d7c9 100644 --- a/runtime/compiler/env/J2IThunk.cpp +++ b/runtime/compiler/env/J2IThunk.cpp @@ -111,7 +111,6 @@ char TR_MHJ2IThunkTable::terseTypeChar(char *type) { case '[': case 'L': - case 'Q': return TR::Compiler->target.is64Bit()? 'L' : 'I'; case 'Z': case 'B': diff --git a/runtime/compiler/env/J2IThunk.hpp b/runtime/compiler/env/J2IThunk.hpp index f8cd06cf942..418b3cb12f8 100644 --- a/runtime/compiler/env/J2IThunk.hpp +++ b/runtime/compiler/env/J2IThunk.hpp @@ -72,8 +72,7 @@ class TR_MHJ2IThunkTable case 'J': return TC_LONG; case 'F': return TC_FLOAT; case 'D': return TC_DOUBLE; - case 'L': - case 'Q': return TC_REFERENCE; + case 'L': return TC_REFERENCE; default: TR_ASSERT(0, "Unknown type char '%c'", typeChar); return -1; diff --git a/runtime/compiler/env/J9ClassEnv.cpp b/runtime/compiler/env/J9ClassEnv.cpp index 822584a6256..085ad90eebd 100644 --- a/runtime/compiler/env/J9ClassEnv.cpp +++ b/runtime/compiler/env/J9ClassEnv.cpp @@ -606,7 +606,6 @@ static void addEntryForFieldImpl(TR_VMField *field, TR::TypeLayoutBuilder &tlb, break; } case 'L': - case 'Q': case '[': { dataType = TR::Address; diff --git a/runtime/compiler/env/J9ClassEnv.hpp b/runtime/compiler/env/J9ClassEnv.hpp index a6462913562..739694b1304 100644 --- a/runtime/compiler/env/J9ClassEnv.hpp +++ b/runtime/compiler/env/J9ClassEnv.hpp @@ -128,8 +128,8 @@ class OMR_EXTENSIBLE ClassEnv : public OMR::ClassEnvConnector * Checks whether a class supports direct memory comparison if its fields meet * the criteria that NO field is of * - type double (D) or float (F) - * - nullable-class/interface type (L) - * - null-free class type (Q) that are not both flattened and recursively + * - nullable-class/interface type + * - null restricted class type that are not both flattened and recursively * compatible for direct memory comparison * * \param clazz diff --git a/runtime/compiler/env/VMJ9.cpp b/runtime/compiler/env/VMJ9.cpp index 7a1aa83bb7c..d0239d1a166 100644 --- a/runtime/compiler/env/VMJ9.cpp +++ b/runtime/compiler/env/VMJ9.cpp @@ -4564,7 +4564,6 @@ TR_J9VMBase::lookupMethodHandleThunkArchetype(uintptr_t methodHandle) { case '[': case 'L': - case 'Q': // The thunkable signature might return some other class, but archetypes // returning a reference are always declared to return Object. // @@ -7344,10 +7343,10 @@ TR_J9VM::getClassFromSignature(const char * sig, int32_t sigLength, J9ConstantPo J9Class * j9class = NULL; TR_OpaqueClassBlock * returnValue = NULL; - // For a non-array class type, strip off the first 'L' or 'Q' and last ';' of the + // For a non-array class type, strip off the first 'L' and last ';' of the // signature // - if ((*sig == 'L' || *sig == 'Q') && sigLength > 2) + if ((*sig == 'L') && sigLength > 2) { sig += 1; sigLength -= 2; diff --git a/runtime/compiler/env/annotations/AnnotationBase.cpp b/runtime/compiler/env/annotations/AnnotationBase.cpp index d797fdb53d8..7644d45a7f8 100644 --- a/runtime/compiler/env/annotations/AnnotationBase.cpp +++ b/runtime/compiler/env/annotations/AnnotationBase.cpp @@ -78,7 +78,7 @@ void TR_AnnotationBase::loadExpectedAnnotationClasses(J9VMThread * vmThread) acquireVMAccess(vmThread); // this is not the comp thread so suspension is possible for(i=0;i < kLastAnnotationSignature;++i) { - // Strip off 'L' prefix or 'Q' prefix and ';' suffix + // Strip off 'L' prefix and ';' suffix const char *name = recognizedAnnotations[i].name; int32_t nameLen = recognizedAnnotations[i].nameLen; TR_ASSERT(strlen(name) == nameLen,"Table entry for %s is %d but should be %d\n",name,nameLen,strlen(name)); @@ -251,7 +251,7 @@ TR_AnnotationBase::getDefaultAnnotationInfo(const char *annotationName) } } if(NULL == clazz) return NULL; - const char * className = annotationName+1; // strip off leading 'L' or 'Q'; + const char * className = annotationName+1; // strip off leading 'L'; int32_t classNameLength = strlen (className) -1; // strip off trailing ';' J9AnnotationInfoEntry *defaultEntry = intFunc->getAnnotationDefaultsForNamedAnnotation(vmThread, clazz, (char *)className, classNameLength, J9_FINDCLASS_FLAG_EXISTING_ONLY); diff --git a/runtime/compiler/env/j9fieldsInfo.cpp b/runtime/compiler/env/j9fieldsInfo.cpp index 1e4da7cec7e..d109508a965 100644 --- a/runtime/compiler/env/j9fieldsInfo.cpp +++ b/runtime/compiler/env/j9fieldsInfo.cpp @@ -36,7 +36,7 @@ static int isReferenceSignature(char *signature) { - return ( (signature[0] == 'L' ) || (signature[0] == '[') || (signature[0] == 'Q')); + return ( (signature[0] == 'L' ) || (signature[0] == '[')); } int TR_VMField::isReference() diff --git a/runtime/compiler/env/j9method.cpp b/runtime/compiler/env/j9method.cpp index d1538ebc2d3..dec5f66cf87 100644 --- a/runtime/compiler/env/j9method.cpp +++ b/runtime/compiler/env/j9method.cpp @@ -7489,9 +7489,9 @@ TR_ResolvedJ9Method::makeParameterList(TR::ResolvedMethodSymbol *methodSym) } // Walk to the end of the class name, if this is a class name - if (*end == 'L' || *end == 'Q') + if (*end == 'L') { - // Assume the form is L or Q; where is + // Assume the form is L; where is // at least 1 char and therefore skip the first 2 chars end += 2; end = (char *)memchr(end, ';', sigEnd - end); @@ -7670,7 +7670,7 @@ TR_J9MethodParameterIterator::TR_J9MethodParameterIterator(TR_J9MethodBase &j9Me TR::DataType TR_J9MethodParameterIterator::getDataType() { - if (*_sig == 'L' || *_sig == '[' || *_sig == 'Q') + if (*_sig == 'L' || *_sig == '[') { _nextIncrBy = 0; while (_sig[_nextIncrBy] == '[') @@ -7678,7 +7678,7 @@ TR::DataType TR_J9MethodParameterIterator::getDataType() ++_nextIncrBy; } - if (_sig[_nextIncrBy] != 'L' && _sig[_nextIncrBy] != 'Q') + if (_sig[_nextIncrBy] != 'L') { // Primitive array ++_nextIncrBy; @@ -7735,7 +7735,7 @@ TR::DataType TR_J9MethodParameterIterator::getDataType() TR_OpaqueClassBlock * TR_J9MethodParameterIterator::getOpaqueClass() { TR_J9VMBase *fej9 = (TR_J9VMBase *)(_comp.fe()); - TR_ASSERT(*_sig == '[' || *_sig == 'L' || *_sig == 'Q', "Asked for class of incorrect Java parameter."); + TR_ASSERT(*_sig == '[' || *_sig == 'L', "Asked for class of incorrect Java parameter."); if (_nextIncrBy == 0) getDataType(); return _resolvedMethod == NULL ? NULL : fej9->getClassFromSignature(_sig, _nextIncrBy, _resolvedMethod); @@ -7754,7 +7754,7 @@ bool TR_J9MethodParameterIterator::isArray() bool TR_J9MethodParameterIterator::isClass() { - return (*_sig == 'L' || *_sig == 'Q'); + return (*_sig == 'L'); } bool TR_J9MethodParameterIterator::atEnd() @@ -7804,7 +7804,6 @@ static TR::DataType typeFromSig(char sig) { case 'L': case '[': - case 'Q': return TR::Address; case 'I': case 'Z': @@ -8028,7 +8027,6 @@ TR_J9ByteCodeIlGenerator::runFEMacro(TR::SymbolReference *symRef) const char *targetName = targetBuf; const char *targetType = targetBuf; switch (sourceSig[0]) { - case 'Q': case 'L': case '[': sourceName = "object"; @@ -8040,7 +8038,6 @@ TR_J9ByteCodeIlGenerator::runFEMacro(TR::SymbolReference *symRef) } switch (targetSig[0]) { - case 'Q': case 'L': case '[': targetName = "object"; @@ -8056,7 +8053,7 @@ TR_J9ByteCodeIlGenerator::runFEMacro(TR::SymbolReference *symRef) if (strcmp(sourceType, targetType)) { char methodName[30], methodSignature[50]; - if ((sourceType[0] == 'L' || sourceType[0] == 'Q') && isExplicit) + if ((sourceType[0] == 'L') && isExplicit) sprintf(methodName, "explicitObject2%s", targetName); else sprintf(methodName, "%s2%s", sourceName, targetName); @@ -8077,7 +8074,7 @@ TR_J9ByteCodeIlGenerator::runFEMacro(TR::SymbolReference *symRef) // Address conversions need a downcast after the call // - if (targetType[0] == 'L' || targetType[0] == 'Q') + if (targetType[0] == 'L') { uintptr_t methodHandle; uintptr_t sourceArguments; @@ -8244,7 +8241,6 @@ TR_J9ByteCodeIlGenerator::runFEMacro(TR::SymbolReference *symRef) break; case 'L': case '[': - case 'Q': callOp = TR::acalli; break; case 'V': @@ -8382,7 +8378,6 @@ TR_J9ByteCodeIlGenerator::runFEMacro(TR::SymbolReference *symRef) { case 'L': case '[': - case 'Q': sprintf(extraName, "extra_L"); extraSignature = artificialSignature(stackAlloc, "(L" JSR292_ArgumentMoverHandle ";I)Ljava/lang/Object;"); break; @@ -8466,7 +8461,6 @@ TR_J9ByteCodeIlGenerator::runFEMacro(TR::SymbolReference *symRef) { case 'L': case '[': - case 'Q': sprintf(extraName, "extra_L"); extraSignature = artificialSignature(stackAlloc, "(L" JSR292_ArgumentMoverHandle ";I)Ljava/lang/Object;"); break; diff --git a/runtime/compiler/env/j9method.h b/runtime/compiler/env/j9method.h index b6a9fd6635d..f4eb531b351 100644 --- a/runtime/compiler/env/j9method.h +++ b/runtime/compiler/env/j9method.h @@ -72,7 +72,7 @@ inline const char *nextSignatureArgument(const char *currentArgument) const char *result = currentArgument; while (*result == '[') result++; - if (*result == 'L' || *result == 'Q') + if (*result == 'L') while (*result != ';') result++; return result+1; diff --git a/runtime/compiler/il/J9SymbolReference.cpp b/runtime/compiler/il/J9SymbolReference.cpp index f842f1c8ad8..d4b308d6bde 100644 --- a/runtime/compiler/il/J9SymbolReference.cpp +++ b/runtime/compiler/il/J9SymbolReference.cpp @@ -272,7 +272,7 @@ SymbolReference::getTypeSignature(int32_t & len, TR_AllocationKind allocKind, bo else { int32_t numParens = 0; - while (s && (s[0] == '[') && (s[1] == 'L' || s[1] == 'Q')) + while (s && (s[0] == '[') && (s[1] == 'L')) { numParens++; classOfObject = comp->fe()->getComponentClassFromArrayClass(classOfObject); diff --git a/runtime/compiler/ilgen/Walker.cpp b/runtime/compiler/ilgen/Walker.cpp index 0fecd027432..3d98941a416 100644 --- a/runtime/compiler/ilgen/Walker.cpp +++ b/runtime/compiler/ilgen/Walker.cpp @@ -5116,7 +5116,6 @@ TR_J9ByteCodeIlGenerator::runMacro(TR::SymbolReference * symRef) break; case 'L': case '[': - case 'Q': arrayElementDataType = TR::Address; break; default: diff --git a/runtime/compiler/optimizer/InlinerTempForJ9.cpp b/runtime/compiler/optimizer/InlinerTempForJ9.cpp index b31910d4e6b..5fead1ae8a1 100644 --- a/runtime/compiler/optimizer/InlinerTempForJ9.cpp +++ b/runtime/compiler/optimizer/InlinerTempForJ9.cpp @@ -5886,7 +5886,7 @@ TR_PrexArgInfo* TR_PrexArgInfo::buildPrexArgInfoForMethodSymbol(TR::ResolvedMeth int32_t len = 0; const char *sig = p->getTypeSignature(len); - if (*sig == 'L' || *sig == 'Q' || *sig == '[') + if (*sig == 'L' || *sig == '[') { TR_OpaqueClassBlock *clazz = (index == 0 && !methodSymbol->isStatic()) ? feMethod->containingClass() : comp->fe()->getClassFromSignature(sig, len, feMethod); if (clazz) diff --git a/runtime/compiler/optimizer/J9EstimateCodeSize.cpp b/runtime/compiler/optimizer/J9EstimateCodeSize.cpp index 1b824c60264..c1934a41f04 100644 --- a/runtime/compiler/optimizer/J9EstimateCodeSize.cpp +++ b/runtime/compiler/optimizer/J9EstimateCodeSize.cpp @@ -95,7 +95,7 @@ class NeedsPeekingHeuristic int32_t len; const char *sig = p->getTypeSignature(len); if (i >= argInfo->getNumArgs() || //not enough slots in argInfo - (*sig != 'L' && *sig != 'Q') || //primitive arg + (*sig != 'L') || //primitive arg !argInfo->get(i) || //no arg at the i-th slot !argInfo->get(i)->getClass() //no classInfo at the i-th slot ) diff --git a/runtime/compiler/optimizer/J9ValuePropagation.cpp b/runtime/compiler/optimizer/J9ValuePropagation.cpp index 7bca846bed1..744cefd7615 100644 --- a/runtime/compiler/optimizer/J9ValuePropagation.cpp +++ b/runtime/compiler/optimizer/J9ValuePropagation.cpp @@ -4151,7 +4151,7 @@ J9::ValuePropagation::innerConstrainAcall(TR::Node *node) if (sig == NULL) // helper return node; - TR_ASSERT(sig[0] == 'L' || sig[0] == '[' || sig[0] == 'Q', "Ref call return type is not a class"); + TR_ASSERT(sig[0] == 'L' || sig[0] == '[', "Ref call return type is not a class"); TR::MethodSymbol *symbol = node->getSymbol()->castToMethodSymbol(); TR_ResolvedMethod *owningMethod = symRef->getOwningMethod(comp()); diff --git a/runtime/compiler/runtime/JitRuntime.cpp b/runtime/compiler/runtime/JitRuntime.cpp index 097aaa4f484..0287e7ff97c 100644 --- a/runtime/compiler/runtime/JitRuntime.cpp +++ b/runtime/compiler/runtime/JitRuntime.cpp @@ -1492,7 +1492,6 @@ static void printMethodHandleArgs(j9object_t methodHandle, void **stack, J9VMThr break; case 'L': case '[': - case 'Q': TR_VerboseLog::writeLine(vlogTag, "%p arg " POINTER_PRINTF_FORMAT " %.*s", vmThread, (void*)(*(intptr_t*)stack), nextArg-curArg, curArg); stack -= 1; break; diff --git a/runtime/compiler/runtime/RuntimeAssumptions.cpp b/runtime/compiler/runtime/RuntimeAssumptions.cpp index 972b96abb47..05047ca1911 100644 --- a/runtime/compiler/runtime/RuntimeAssumptions.cpp +++ b/runtime/compiler/runtime/RuntimeAssumptions.cpp @@ -61,7 +61,7 @@ TR_PatchNOPedGuardSiteOnClassPreInitialize::hashCode(char *sig, uint32_t sigLen) bool skipFirstAndLastChars = false; if (sigLen > 0) { - if ((sig[0] == 'L' || sig[0] == 'Q') && (sig[sigLen-1] == ';')) + if ((sig[0] == 'L') && (sig[sigLen-1] == ';')) skipFirstAndLastChars = true; } diff --git a/runtime/compiler/x/runtime/X86RelocationTarget.cpp b/runtime/compiler/x/runtime/X86RelocationTarget.cpp index ea26bb9e409..dcd11d8fdc9 100644 --- a/runtime/compiler/x/runtime/X86RelocationTarget.cpp +++ b/runtime/compiler/x/runtime/X86RelocationTarget.cpp @@ -121,7 +121,6 @@ j9ThunkInvokeExactHelperFromTerseSignature(UDATA signatureLength, char *signatur case '[': /* intentional fall-through */ case 'L': - case 'Q': helper = TR_icallVMprJavaSendInvokeExactL; break; default: diff --git a/runtime/gc_check/CheckEngine.cpp b/runtime/gc_check/CheckEngine.cpp index 58a6963fef8..9c3e6263b7f 100644 --- a/runtime/gc_check/CheckEngine.cpp +++ b/runtime/gc_check/CheckEngine.cpp @@ -899,7 +899,7 @@ GC_CheckEngine::checkClassStatics(J9JavaVM* vm, J9Class* clazz) if (IS_REF_OR_VAL_SIGNATURE(toSearchString[0])) { /* Convert signature to class name: - * Entering 'L'/'Q' as well as closing ';' must be removed to get a proper class name + * Entering 'L' as well as closing ';' must be removed to get a proper class name */ toSearchString += 1; toSearchLength -= 2; diff --git a/runtime/jcl/common/reflecthelp.c b/runtime/jcl/common/reflecthelp.c index eb532992006..ee14f40bcdf 100644 --- a/runtime/jcl/common/reflecthelp.c +++ b/runtime/jcl/common/reflecthelp.c @@ -468,7 +468,6 @@ classForSignature(struct J9VMThread *vmThread, U_8 **sigDataPtr, struct J9ClassL /* Non-array case */ switch (c) { - case 'Q': case 'L': { /* object case */ U_8 *tempData = sigData; diff --git a/runtime/jit_vm/ctsupport.cpp b/runtime/jit_vm/ctsupport.cpp index 18ad1a59661..70633b7699d 100644 --- a/runtime/jit_vm/ctsupport.cpp +++ b/runtime/jit_vm/ctsupport.cpp @@ -202,9 +202,6 @@ jitParseSignature (const J9UTF8 *signature, U_8 *paramBuffer, UDATA *paramElemen state = returnValue; } else { switch (*sigChar) { - case 'Q': - /* VALHALLA_TODO: Need to return a J9_NATIVE_TYPE_VALUE for 'Q' in future */ - /* FALLTHROUGH */ case 'L': next = J9_NATIVE_TYPE_OBJECT; break; case '[': next = J9_NATIVE_TYPE_OBJECT; @@ -231,7 +228,7 @@ jitParseSignature (const J9UTF8 *signature, U_8 *paramBuffer, UDATA *paramElemen case 'V': next = J9_NATIVE_TYPE_VOID; break; } - if ('L' == *sigChar || 'Q' == *sigChar) { + if ('L' == *sigChar) { /* flush the name of the class */ while (';' != *sigChar) { ++sigChar; diff --git a/runtime/oti/j9.h b/runtime/oti/j9.h index ce098469b7b..0a472b748cc 100644 --- a/runtime/oti/j9.h +++ b/runtime/oti/j9.h @@ -348,7 +348,6 @@ static const struct { \ J9_IS_J9CLASS_FLATTENED(fieldClazz) && \ (J9_ARE_NO_BITS_SET((romFieldShape)->modifiers, J9AccVolatile) || (J9CLASS_UNPADDED_INSTANCE_SIZE(fieldClazz) <= sizeof(U_64)))) #define J9_VALUETYPE_FLATTENED_SIZE(clazz) (J9CLASS_HAS_4BYTE_PREPADDING((clazz)) ? ((clazz)->totalInstanceSize - sizeof(U_32)) : (clazz)->totalInstanceSize) -#define IS_REF_OR_VAL_SIGNATURE(firstChar) ('L' == (firstChar) || 'Q' == (firstChar)) #else /* defined(J9VM_OPT_VALHALLA_FLATTENABLE_VALUE_TYPES) */ #define J9CLASS_UNPADDED_INSTANCE_SIZE(clazz) ((clazz)->totalInstanceSize) #define J9_IS_J9CLASS_PRIMITIVE_VALUETYPE(clazz) FALSE @@ -357,8 +356,8 @@ static const struct { \ #define J9_IS_FIELD_FLATTENED(fieldClazz, romFieldShape) FALSE #define J9_IS_NULL_RESTRICTED_FIELD_FLATTENED(fieldClazz, romFieldShape) FALSE #define J9_VALUETYPE_FLATTENED_SIZE(clazz)((UDATA) 0) /* It is not possible for this macro to be used since we always check J9_IS_J9CLASS_FLATTENED before ever using it. */ -#define IS_REF_OR_VAL_SIGNATURE(firstChar) ('L' == (firstChar)) #endif /* defined(J9VM_OPT_VALHALLA_FLATTENABLE_VALUE_TYPES) */ +#define IS_REF_OR_VAL_SIGNATURE(firstChar) ('L' == (firstChar)) #if defined(J9VM_OPT_CRIU_SUPPORT) #define J9_IS_CRIU_OR_CRAC_CHECKPOINT_ENABLED(vm) (J9_ARE_ANY_BITS_SET(vm->checkpointState.flags, J9VM_CRAC_IS_CHECKPOINT_ENABLED | J9VM_CRIU_IS_CHECKPOINT_ENABLED)) diff --git a/runtime/stackmap/stackmap.c b/runtime/stackmap/stackmap.c index d556673232c..7ba9f45cab0 100644 --- a/runtime/stackmap/stackmap.c +++ b/runtime/stackmap/stackmap.c @@ -413,7 +413,7 @@ mapStack(UDATA *scratch, UDATA totalStack, U_8 * map, J9ROMClass * romClass, J9R J9ROMNAMEANDSIGNATURE_SIGNATURE(J9ROMFIELDREF_NAMEANDSIGNATURE ((J9ROMFieldRef *) (&(pool[index])))); signature = (U_8) J9UTF8_DATA(utf8Signature)[0]; - if ((signature == 'L') || (signature == 'Q') || (signature == '[')) { + if ((signature == 'L') || (signature == '[')) { PUSH(OBJ); } else { PUSH(INT); diff --git a/runtime/verbose/errormessagehelper.c b/runtime/verbose/errormessagehelper.c index 28d6c88c8f2..d7794b57d3b 100644 --- a/runtime/verbose/errormessagehelper.c +++ b/runtime/verbose/errormessagehelper.c @@ -881,7 +881,7 @@ mapDataTypeToUTF8String(J9UTF8Ref* dataType, StackMapFrame* stackMapFrame, Metho dataType->bytes = methodInfo->signature.bytes + typeValue; dataType->length = typeLength; - /* Ignore 'L', 'Q', and ';' to get the full string of argument in signature */ + /* Ignore 'L' and ';' to get the full string of argument in signature */ if (IS_REF_OR_VAL_SIGNATURE(*dataType->bytes)) { dataType->bytes += 1; dataType->length -= 2; diff --git a/runtime/vm/ValueTypeHelpers.hpp b/runtime/vm/ValueTypeHelpers.hpp index 1f40d880277..32490af20e6 100644 --- a/runtime/vm/ValueTypeHelpers.hpp +++ b/runtime/vm/ValueTypeHelpers.hpp @@ -205,7 +205,7 @@ class VM_ValueTypeHelpers { /** * Performs a getfield operation on an object. Handles flattened and non-flattened cases. - * This helper assumes that the cpIndex points to the fieldRef of a resolved Qtype. This helper + * This helper assumes that the cpIndex points to a resolved null-restricted fieldRef. This helper * also assumes that the cpIndex points to an instance field. * * @param currentThread thread token @@ -366,7 +366,7 @@ class VM_ValueTypeHelpers { /** * Performs a putfield operation on an object. Handles flattened and non-flattened cases. - * This helper assumes that the cpIndex points to the fieldRef of a resolved Qtype. This helper + * This helper assumes that the cpIndex points to a resolved null-restricted fieldRef. This helper * also assumes that the cpIndex points to an instance field. * * @param currentThread thread token diff --git a/runtime/vm/createramclass.cpp b/runtime/vm/createramclass.cpp index 5abdfcf4e42..0658398598f 100644 --- a/runtime/vm/createramclass.cpp +++ b/runtime/vm/createramclass.cpp @@ -2066,9 +2066,7 @@ checkFlattenableFieldValueClasses(J9VMThread *currentThread, J9ClassLoader *clas J9UTF8 *signature = J9ROMFIELDSHAPE_SIGNATURE(field); U_8 *signatureChars = J9UTF8_DATA(signature); if (J9_ARE_NO_BITS_SET(modifiers, J9AccStatic)) { - if ('Q' == signatureChars[0] - || J9_ARE_ALL_BITS_SET(modifiers, J9FieldFlagIsNullRestricted) - ) { + if (J9_ARE_ALL_BITS_SET(modifiers, J9FieldFlagIsNullRestricted)) { J9Class *valueClass = internalFindClassUTF8(currentThread, signatureChars + 1, J9UTF8_LENGTH(signature) - 2, classLoader, J9_FINDCLASS_FLAG_EXISTING_ONLY); Assert_VM_notNull(valueClass); J9ROMClass *valueROMClass = valueClass->romClass; diff --git a/sourcetools/j9constantpool/com/ibm/oti/VMCPTool/FieldRef.java b/sourcetools/j9constantpool/com/ibm/oti/VMCPTool/FieldRef.java index 0e13c871d41..e5c61905aa6 100644 --- a/sourcetools/j9constantpool/com/ibm/oti/VMCPTool/FieldRef.java +++ b/sourcetools/j9constantpool/com/ibm/oti/VMCPTool/FieldRef.java @@ -124,7 +124,6 @@ protected String fieldType() { switch (((Alias) primary).nas.signature.data.charAt(0)) { case '[': case 'L': - case 'Q': return "OBJECT"; default: // Do nothing @@ -154,7 +153,6 @@ protected String fieldType() { switch (((Alias) primary).nas.signature.data.charAt(0)) { case '[': case 'L': - case 'Q': return "OBJECT"; case 'J': return "I64";