--- a/src/hotspot/share/runtime/sharedRuntime.cpp Mon Oct 21 09:26:14 2019 -0700
+++ b/src/hotspot/share/runtime/sharedRuntime.cpp Mon Oct 21 13:13:16 2019 -0400
@@ -2990,28 +2990,28 @@
sig_bt[cnt++] = T_OBJECT; // Receiver is argument 0; not in signature
}
- while (*s != ')') { // Find closing right paren
- switch (*s++) { // Switch on signature character
- case 'B': sig_bt[cnt++] = T_BYTE; break;
- case 'C': sig_bt[cnt++] = T_CHAR; break;
- case 'D': sig_bt[cnt++] = T_DOUBLE; sig_bt[cnt++] = T_VOID; break;
- case 'F': sig_bt[cnt++] = T_FLOAT; break;
- case 'I': sig_bt[cnt++] = T_INT; break;
- case 'J': sig_bt[cnt++] = T_LONG; sig_bt[cnt++] = T_VOID; break;
- case 'S': sig_bt[cnt++] = T_SHORT; break;
- case 'Z': sig_bt[cnt++] = T_BOOLEAN; break;
- case 'V': sig_bt[cnt++] = T_VOID; break;
- case 'L': // Oop
- while (*s++ != ';'); // Skip signature
+ while (*s != JVM_SIGNATURE_ENDFUNC) { // Find closing right paren
+ switch (*s++) { // Switch on signature character
+ case JVM_SIGNATURE_BYTE: sig_bt[cnt++] = T_BYTE; break;
+ case JVM_SIGNATURE_CHAR: sig_bt[cnt++] = T_CHAR; break;
+ case JVM_SIGNATURE_DOUBLE: sig_bt[cnt++] = T_DOUBLE; sig_bt[cnt++] = T_VOID; break;
+ case JVM_SIGNATURE_FLOAT: sig_bt[cnt++] = T_FLOAT; break;
+ case JVM_SIGNATURE_INT: sig_bt[cnt++] = T_INT; break;
+ case JVM_SIGNATURE_LONG: sig_bt[cnt++] = T_LONG; sig_bt[cnt++] = T_VOID; break;
+ case JVM_SIGNATURE_SHORT: sig_bt[cnt++] = T_SHORT; break;
+ case JVM_SIGNATURE_BOOLEAN: sig_bt[cnt++] = T_BOOLEAN; break;
+ case JVM_SIGNATURE_VOID: sig_bt[cnt++] = T_VOID; break;
+ case JVM_SIGNATURE_CLASS: // Oop
+ while (*s++ != JVM_SIGNATURE_ENDCLASS); // Skip signature
sig_bt[cnt++] = T_OBJECT;
break;
- case '[': { // Array
+ case JVM_SIGNATURE_ARRAY: { // Array
do { // Skip optional size
while (*s >= '0' && *s <= '9') s++;
- } while (*s++ == '['); // Nested arrays?
+ } while (*s++ == JVM_SIGNATURE_ARRAY); // Nested arrays?
// Skip element type
- if (s[-1] == 'L')
- while (*s++ != ';'); // Skip signature
+ if (s[-1] == JVM_SIGNATURE_CLASS)
+ while (*s++ != JVM_SIGNATURE_ENDCLASS); // Skip signature
sig_bt[cnt++] = T_ARRAY;
break;
}