diff -r ae0af9fb3dbb -r cba8afa5cfed src/hotspot/share/ci/ciEnv.cpp --- a/src/hotspot/share/ci/ciEnv.cpp Mon Oct 21 09:26:14 2019 -0700 +++ b/src/hotspot/share/ci/ciEnv.cpp Mon Oct 21 13:13:16 2019 -0400 @@ -413,8 +413,8 @@ // Now we need to check the SystemDictionary Symbol* sym = name->get_symbol(); - if (sym->char_at(0) == 'L' && - sym->char_at(sym->utf8_length()-1) == ';') { + if (sym->char_at(0) == JVM_SIGNATURE_CLASS && + sym->char_at(sym->utf8_length()-1) == JVM_SIGNATURE_ENDCLASS) { // This is a name from a signature. Strip off the trimmings. // Call recursive to keep scope of strippedsym. TempNewSymbol strippedsym = SymbolTable::new_symbol(sym->as_utf8()+1, @@ -440,7 +440,7 @@ // setup up the proper type to return on OOM ciKlass* fail_type; - if (sym->char_at(0) == '[') { + if (sym->char_at(0) == JVM_SIGNATURE_ARRAY) { fail_type = _unloaded_ciobjarrayklass; } else { fail_type = _unloaded_ciinstance_klass; @@ -466,8 +466,8 @@ // we must build an array type around it. The CI requires array klasses // to be loaded if their element klasses are loaded, except when memory // is exhausted. - if (sym->char_at(0) == '[' && - (sym->char_at(1) == '[' || sym->char_at(1) == 'L')) { + if (sym->char_at(0) == JVM_SIGNATURE_ARRAY && + (sym->char_at(1) == JVM_SIGNATURE_ARRAY || sym->char_at(1) == JVM_SIGNATURE_CLASS)) { // We have an unloaded array. // Build it on the fly if the element class exists. TempNewSymbol elem_sym = SymbolTable::new_symbol(sym->as_utf8()+1,