Skip to content

Commit 0cbd3a9

Browse files
authored
Merge pull request #24189 from IBMJimmyk/stringskipZeroInit
Removes unnecessary zero init on new arrays
2 parents aea138a + 277a032 commit 0cbd3a9

3 files changed

Lines changed: 314 additions & 164 deletions

File tree

runtime/compiler/codegen/J9RecognizedMethodsEnum.hpp

Lines changed: 112 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -74,43 +74,119 @@ FirstJ9Method = LastOMRMethod + 1,
7474
java_lang_Boolean_booleanValue, java_lang_Byte_byteValue, java_lang_Character_charValue, java_lang_Short_shortValue,
7575
java_lang_Integer_intValue, java_lang_Long_longValue, java_lang_Float_floatValue, java_lang_Double_doubleValue,
7676

77-
java_lang_String_charAt, java_lang_String_charAtInternal_I, java_lang_String_charAtInternal_IB,
78-
java_lang_String_checkBoundsBeginEnd, java_lang_String_checkIndex, java_lang_String_coder,
79-
java_lang_String_compareTo, java_lang_String_compareToIgnoreCase, java_lang_String_compressedArrayCopy_BIBII,
80-
java_lang_String_compressedArrayCopy_BICII, java_lang_String_compressedArrayCopy_CIBII,
81-
java_lang_String_compressedArrayCopy_CICII, java_lang_String_concat, java_lang_String_decodeUTF8_UTF16,
82-
java_lang_String_decompressedArrayCopy_BIBII, java_lang_String_decompressedArrayCopy_BICII,
83-
java_lang_String_decompressedArrayCopy_CIBII, java_lang_String_decompressedArrayCopy_CICII,
84-
java_lang_String_deduplicateStrings, java_lang_String_encodeASCII, java_lang_String_equalsIgnoreCase,
85-
java_lang_String_getBytes, java_lang_String_getBytes_subString, java_lang_String_getChars_byteArray,
86-
java_lang_String_getChars_charArray, java_lang_String_hashCode, java_lang_String_hashCodeImplCompressed,
87-
java_lang_String_hashCodeImplDecompressed, java_lang_String_indexOf_char, java_lang_String_indexOf_fast,
88-
java_lang_String_indexOf_native, java_lang_String_indexOf_String, java_lang_String_indexOf_String_int,
89-
java_lang_String_init_AbstractStringBuilder_Void, java_lang_String_init_int_int_char_boolean,
90-
java_lang_String_init_int_String_int_String_String, java_lang_String_init_String, java_lang_String_init_String_char,
91-
java_lang_String_init_StringBuilder, java_lang_String_isCompressed, java_lang_String_isLatin1,
92-
java_lang_String_lastIndexOf, java_lang_String_length, java_lang_String_lengthInternal,
93-
java_lang_String_regionMatches, java_lang_String_regionMatches_bool, java_lang_String_regionMatchesInternal,
94-
java_lang_String_replace, java_lang_String_split_str_int, java_lang_String_startsWith, java_lang_String_subString,
95-
java_lang_String_toCharArray, java_lang_String_toLowerCase, java_lang_String_toLowerCaseCore,
96-
java_lang_String_toUpperCase, java_lang_String_toUpperCaseCore, java_lang_String_trim,
97-
java_lang_String_unsafeCharAt, java_lang_String_valueOf_C,
98-
99-
java_lang_StringLatin1_charAt, java_lang_StringLatin1_compareTo_BBII, java_lang_StringLatin1_indexOf,
100-
java_lang_StringLatin1_indexOf_BB, java_lang_StringLatin1_indexOf_BIII, java_lang_StringLatin1_indexOfChar,
101-
java_lang_StringLatin1_inflate_BIBII, java_lang_StringLatin1_inflate_BICII, java_lang_StringLatin1_lastIndexOf,
102-
java_lang_StringLatin1_newString, java_lang_StringLatin1_replace_char, java_lang_StringLatin1_replace_CharSequence,
103-
java_lang_StringLatin1_toBytes, java_lang_StringLatin1_toChars, java_lang_StringLatin1_toLowerCase,
104-
java_lang_StringLatin1_toUpperCase, java_lang_StringLatin1_trim,
105-
106-
java_lang_StringUTF16_charAt, java_lang_StringUTF16_checkIndex, java_lang_StringUTF16_compareCodePointCI,
107-
java_lang_StringUTF16_compareToCIImpl, java_lang_StringUTF16_compareValues, java_lang_StringUTF16_getChar,
108-
java_lang_StringUTF16_getChars_ByteArray, java_lang_StringUTF16_getChars_Integer,
109-
java_lang_StringUTF16_getChars_Long, java_lang_StringUTF16_indexOf, java_lang_StringUTF16_indexOfCharUnsafe,
110-
java_lang_StringUTF16_indexOfUnsafe, java_lang_StringUTF16_length, java_lang_StringUTF16_newBytesFor,
111-
java_lang_StringUTF16_putChar, java_lang_StringUTF16_replace_char, java_lang_StringUTF16_replace_CharSequence,
112-
java_lang_StringUTF16_toBytes, java_lang_StringUTF16_toLowerCase, java_lang_StringUTF16_toUpperCase,
77+
// clang-format off
78+
java_lang_String_charAt,
79+
java_lang_String_charAtInternal_I,
80+
java_lang_String_charAtInternal_IB,
81+
java_lang_String_checkBoundsBeginEnd,
82+
java_lang_String_checkIndex,
83+
java_lang_String_coder,
84+
java_lang_String_compareTo,
85+
java_lang_String_compareToIgnoreCase,
86+
java_lang_String_compressedArrayCopy_BIBII,
87+
java_lang_String_compressedArrayCopy_BICII,
88+
java_lang_String_compressedArrayCopy_CIBII,
89+
java_lang_String_compressedArrayCopy_CICII,
90+
java_lang_String_concat,
91+
java_lang_String_decodeUTF8_UTF16,
92+
java_lang_String_decompressedArrayCopy_BIBII,
93+
java_lang_String_decompressedArrayCopy_BICII,
94+
java_lang_String_decompressedArrayCopy_CIBII,
95+
java_lang_String_decompressedArrayCopy_CICII,
96+
java_lang_String_deduplicateStrings,
97+
java_lang_String_encode8859_1,
98+
java_lang_String_encodeASCII,
99+
java_lang_String_encodeUTF8_UTF16,
100+
java_lang_String_equalsIgnoreCase,
101+
java_lang_String_getBytes,
102+
java_lang_String_getBytes_subString,
103+
java_lang_String_getChars_byteArray,
104+
java_lang_String_getChars_charArray,
105+
java_lang_String_hashCode,
106+
java_lang_String_hashCodeImplCompressed,
107+
java_lang_String_hashCodeImplDecompressed,
108+
java_lang_String_indexOf_char,
109+
java_lang_String_indexOf_fast,
110+
java_lang_String_indexOf_native,
111+
java_lang_String_indexOf_String,
112+
java_lang_String_indexOf_String_int,
113+
java_lang_String_init_AbstractStringBuilder_Void,
114+
java_lang_String_init_int_int_char_boolean,
115+
java_lang_String_init_int_String_int_String_String,
116+
java_lang_String_init_String,
117+
java_lang_String_init_String_char,
118+
java_lang_String_init_StringBuilder,
119+
java_lang_String_isCompressed,
120+
java_lang_String_isLatin1,
121+
java_lang_String_lastIndexOf,
122+
java_lang_String_length,
123+
java_lang_String_lengthInternal,
124+
java_lang_String_newStringUTF8NoRepl,
125+
java_lang_String_regionMatches,
126+
java_lang_String_regionMatches_bool,
127+
java_lang_String_regionMatchesInternal,
128+
java_lang_String_repeat,
129+
java_lang_String_replace,
130+
java_lang_String_split_CIZ,
131+
java_lang_String_split_str_int,
132+
java_lang_String_startsWith,
133+
java_lang_String_subString,
134+
java_lang_String_toCharArray,
135+
java_lang_String_toLowerCase,
136+
java_lang_String_toLowerCaseCore,
137+
java_lang_String_toUpperCase,
138+
java_lang_String_toUpperCaseCore,
139+
java_lang_String_trim,
140+
java_lang_String_unsafeCharAt,
141+
java_lang_String_valueOf_C,
142+
143+
java_lang_StringLatin1_charAt,
144+
java_lang_StringLatin1_compareTo_BBII,
145+
java_lang_StringLatin1_indexOf,
146+
java_lang_StringLatin1_indexOf_BB,
147+
java_lang_StringLatin1_indexOf_BIII,
148+
java_lang_StringLatin1_indexOfChar,
149+
java_lang_StringLatin1_inflate_BIBII,
150+
java_lang_StringLatin1_inflate_BICII,
151+
java_lang_StringLatin1_lastIndexOf,
152+
java_lang_StringLatin1_newString,
153+
java_lang_StringLatin1_replace_char,
154+
java_lang_StringLatin1_replace_CharSequence,
155+
java_lang_StringLatin1_toBytes,
156+
java_lang_StringLatin1_toBytes_III,
157+
java_lang_StringLatin1_toChars,
158+
java_lang_StringLatin1_toLowerCase,
159+
java_lang_StringLatin1_toUpperCase,
160+
java_lang_StringLatin1_trim,
161+
162+
java_lang_StringUTF16_charAt,
163+
java_lang_StringUTF16_checkIndex,
164+
java_lang_StringUTF16_compareCodePointCI,
165+
java_lang_StringUTF16_compareToCIImpl,
166+
java_lang_StringUTF16_compareValues,
167+
java_lang_StringUTF16_compress_BII,
168+
java_lang_StringUTF16_compress_CII,
169+
java_lang_StringUTF16_compress_III,
170+
java_lang_StringUTF16_getChar,
171+
java_lang_StringUTF16_getChars_ByteArray,
172+
java_lang_StringUTF16_getChars_Integer,
173+
java_lang_StringUTF16_getChars_Long,
174+
java_lang_StringUTF16_indexOf,
175+
java_lang_StringUTF16_indexOfCharUnsafe,
176+
java_lang_StringUTF16_indexOfUnsafe,
177+
java_lang_StringUTF16_length,
178+
java_lang_StringUTF16_newBytesFor,
179+
java_lang_StringUTF16_putChar,
180+
java_lang_StringUTF16_replace_char,
181+
java_lang_StringUTF16_replace_CharSequence,
182+
java_lang_StringUTF16_toBytes,
183+
java_lang_StringUTF16_toBytes_C,
184+
java_lang_StringUTF16_toBytesSup,
185+
java_lang_StringUTF16_toChars,
186+
java_lang_StringUTF16_toLowerCase,
187+
java_lang_StringUTF16_toUpperCase,
113188
java_lang_StringUTF16_trim,
189+
// clang-format on
114190

115191
java_lang_StringConcatHelper_newArray,
116192

0 commit comments

Comments
 (0)