From ioi.lam at oracle.com Fri Mar 1 04:33:29 2019 From: ioi.lam at oracle.com (Ioi Lam) Date: Thu, 28 Feb 2019 20:33:29 -0800 Subject: RFR 8218615 [lworld] C1 intrinsic support for System.arraycopy Message-ID: <2baf69c1-9fa3-e6a5-8463-b60cf444353a@oracle.com> https://bugs.openjdk.java.net/browse/JDK-8218615 http://cr.openjdk.java.net/~iklam/valhalla/8218615-c1-arraycopy-intrinsics.v01/ + If at compile time, we know that at least one of src or dst is a flattened array, ? always take the slow path (normal method invocation of System.arraycopy). + If src and/or dst may be a flattened array, at runtime, we check if they are ? actually flattened. If so, take the slow path. Note: unlike C2, C1 never deoptimizes arraycopy. I updated TestArrays.java accordingly. Thanks - Ioi From frederic.parain at oracle.com Fri Mar 1 20:13:29 2019 From: frederic.parain at oracle.com (Frederic Parain) Date: Fri, 1 Mar 2019 15:13:29 -0500 Subject: RFR 8218615 [lworld] C1 intrinsic support for System.arraycopy In-Reply-To: <2baf69c1-9fa3-e6a5-8463-b60cf444353a@oracle.com> References: <2baf69c1-9fa3-e6a5-8463-b60cf444353a@oracle.com> Message-ID: Looks good to me. Fred > On Feb 28, 2019, at 23:33, Ioi Lam wrote: > > https://bugs.openjdk.java.net/browse/JDK-8218615 > http://cr.openjdk.java.net/~iklam/valhalla/8218615-c1-arraycopy-intrinsics.v01/ > > + If at compile time, we know that at least one of src or dst is a flattened array, > always take the slow path (normal method invocation of System.arraycopy). > > + If src and/or dst may be a flattened array, at runtime, we check if they are > actually flattened. If so, take the slow path. > > Note: unlike C2, C1 never deoptimizes arraycopy. I updated TestArrays.java > accordingly. > > Thanks > - Ioi > From ioi.lam at oracle.com Mon Mar 4 06:11:20 2019 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Mon, 04 Mar 2019 06:11:20 +0000 Subject: hg: valhalla/valhalla: 8218615: [lworld] C1 intrinsic support for System.arraycopy Message-ID: <201903040611.x246BKWs019328@aojmv0008.oracle.com> Changeset: a1bdb6bccfdd Author: iklam Date: 2019-03-03 22:09 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/a1bdb6bccfdd 8218615: [lworld] C1 intrinsic support for System.arraycopy Reviewed-by: fparain ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.hpp ! src/hotspot/share/c1/c1_Compiler.cpp ! src/hotspot/share/c1/c1_Instruction.cpp ! src/hotspot/share/c1/c1_LIR.hpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestArrays.java From frederic.parain at oracle.com Tue Mar 5 14:53:15 2019 From: frederic.parain at oracle.com (Frederic Parain) Date: Tue, 5 Mar 2019 09:53:15 -0500 Subject: it's a value! it's a reference!, was Substitutability, was Re: Finding the spirit of L-World In-Reply-To: References: <1c4374be-99ea-850b-1a1c-3535e0b440fb@oracle.com> <4259E8F8-DD5A-4FB2-98B1-3372479CC2F6@oracle.com> <8f543923-a98d-1c19-8e15-02152eb88ce2@oracle.com> <9f2470af-570b-a9d6-1d89-4c7fcdd84ff7@oracle.com> <916D93DE-DC11-49B7-B437-4568847D4F96@oracle.com> Message-ID: <59A2649A-601E-4D29-809C-0436487C507D@oracle.com> To add some fuel to the fire, JLS and JVMS are not the only specifications of the Java platform. Looking at the JNI spec, the term ?Value Type? is already defined: https://docs.oracle.com/javase/8/docs/technotes/guides/jni/spec/types.html#the_value_type Fred > On Feb 23, 2019, at 19:53, John Rose wrote: > > In the same vein, here's another challenging text from the JLS: > >> 4.3.1. Objects > >> An object is a class instance or an array. > > OK, nice start, but then it gets harder. > >> The reference values (often just references) are pointers to >> these objects, and a special null reference, which refers to no object. > > Back to "the reference values" mentioned earlier. Those include > references to value* objects, right. (And, oh dear, what's a pointer? > Close your eyes, my friends!) Perhaps it should say: > > "The reference values (often just references) [are pointers]{.del} > [refer]{.ins} to these objects, and [also include]{.ins} a special > null reference, which refers to no object." > > Maybe the JLS could also fly the value* vs. reference* flag more > clearly at this point: > > "A class instance can be either a value* class instance or a > reference* class instance. These can be referred to briefly > as value* instances, or reference* instances, or also value* > objects, or reference* objects, as the case may be. The > bare terms value* or reference* are unsuitably ambiguous > to use as terms for objects." > >> A class instance is explicitly created by a class instance creation expression (?15.9). > > OK, that's fine for value* objects also. Most of the operator > definitions are fine for value* objects. > >> ... >> The operators on references to objects are: >> ? >> ? The reference equality operators == and != (?15.21.3) > > This one is scary, but read on. We can fix 15.21.3 later. > >> ... >> >> There may be many references to the same object. > > Here we see the value-ness of references peek out. > > We also encounter the undefined term "same" and are > taught that many variables can refer to the same object. > In fact that's true of primitives too: There can be many > variables which refer to the same primitive value, where > same-ness is based solely on content, not on the history > of the value's storage in the heap. Let's try it on value* > instances: > > "There may be many references to the same value* object." > > When are two instances of the same value* class the same? > There's only one answer, I think: When the two instances > are substitutable for each other. Maybe we should just adopt > the word "same*" for "substitutably equal", as in "System.isSame", > "System.samenessHashCode", etc. So I'll add a star to "same*". > > This points out a key (*the* key?) difference between > reference* objects and value* objects: Two references can > be the same* reference* object only if they are derived > from a common definition (some "new C") executed in > the past and connected by dataflow to both references. > > Two references can be the same* value* object even if > that value* object was created twice, from unrelated > construction operations (vdefault, withfield) on field > inputs that also happen to be the same* (pairwise). > > Maybe "value*" should be spelled "unfettered by data > flow from historical instance construction"? Quick, > release the Thesaurus! > > Back to the JLS: > >> Most objects have state, stored in the fields of objects >> that are instances of classes or in the variables that >> are the components of an array object. > > Here we may learn that both Value Based(tm) classes > and proper value* classes have state, despite the fact > that their fields are final and/or immutable. I guess > that's fine, since we also learn from the JLS that every > variable has state (aka. its value, assigned in that > variable's storage) as well as type. > > (Note to self: Hold off on bets that "stateless" will > supplant "value*" in the terminology sweepstakes.) > > The other classy terminology?object, field, instance, > class?imports cleanly into Valhalla. "Codes like a class" > is our core mantra, and it saves a lot of trouble. > >> If two variables contain references to the same object, >> the state of the object can be modified using one variable's >> reference to the object, and then the altered state can be >> observed through the reference in the other variable. > > This means well, but conflicts not only with value* classes > but also with immutables. We just learned that a VBC > like java.lang.Integer (not quite a VBC but maybe someday) > has something called "state", in form of its "value" field of > type "int". And now we are promised that, given any > two variables of type Integer, if they both point to the > same instance (say, Integer.valueOf(42)) we can modify > the "value" field of that instance to 43. Surely someone > is teasing us! > > Actually, the JLS seems to be further defining the term > "same" here by appealing to state which is *modifiable* > (though not all state is modifiable, surely). Let's fix > that and also make sure that value* objects fulfill the > quoted specification: > >> If two variables contain references to the same* object, >> [and if]{.ins} the state of the object can be modified using one variable's >> reference to the object, [and]{.del} then the altered state can be >> observed through the reference in the other variable. > > Hmm, that wasn't so bad. So the moral of this story is > that value* objects can have state. (Generally speaking, > even primitives can have state. So: Objects have state.) > Also, two value* objects with the same* state (as determined > by examining their fields pairwise) are actually the same* > value. > > The JLS should probably say something about VBCs at this > point, because they *don't* have mutable state but *do* have > same*-ness distinctions. Ultimately, the identity of a reference* > object depends on data flow of references through a program. > > Two object references which derive from the same instance > creation expression are always the same*, whether or not > the object is a value* or a reference* object. But two > object references which derive from distinct instance > creation expressions *must not* be the same* if the > object is a reference* object, and *may be* the same if > the object is a value* object, provided the two distinct > instance creation expressions provided the same* field > values to the two value* instances. Say that ten times > fast. > > Flushed by a sense of success, let's try a bit of 15.21.3: > >> At run time, the result of == is true if the operand values are both null or both refer to the same object or array; otherwise, the result is false. >> >> The result of != is false if the operand values are both null or both refer to the same object or array; otherwise, the result is true. > > Hey, all we need to do is add the star to "same*" and we're done. > > There's a bonus section right here in the JLS, which I will annotate with > a star: > >> While == may be used to compare references of type String, >> such an equality test determines whether or not the two operands >> refer to the same* String object. > >> The result is false if the operands are distinct [(i.e., not the same*)]{.ins} >> String objects, even if they contain the same sequence >> of characters (?3.10.5). > >> The contents of two strings s and t can be tested for equality >> by the method invocation s.equals(t). > > What we have here is that word same* again, and also the different > though related concept of "same sequence". The JLS admits frankly > two not-the-same* strings might have the same (no star!!) contents. > > Perhaps that means this elusive term "value*" is really short for > "same if contents are the same", and the term "reference*" means > "same only if they have the same instance creation event". > Roget himself couldn't boil all that down to a snappy pair of terms. > > The best I can do is "content*" vs. "identity*": "content class Foo{}" > vs. "identity class Bar{}". A content* class depends only on content, > while an identity* class cares about where it came from. (The JLS > makes only sparing use of the terms "content" and "identity"; see > Example 4.3.1-2 for the latter.) > > Let's try a trip to the JVMS. > > All the above about same* means the definition of "acmp" we have been > talking about is somehow related to same*-ness as derived from the > language of the JLS, and modified to suit values. > > And Brian's argument (which I agree with) is that "acmp" should just do > a same*-ness test, without further clever optimizations. > > Let's see that that does to the JVM spec in Chapter 6: > >> Both value1 and value2 must be of type reference. They are both popped from the operand stack and compared. The results of the comparison are as follows: >> ? if_acmpeq succeeds if and only if value1 = value2 >> ? if_acmpne succeeds if and only if value1 ? value2 > > Here's same-ness under another guise, the deceptively simple > looking (in-)equality operator. Perhaps it should just read: > >> ? if_acmpeq succeeds if and only if value1 and value2 are the same* >> ? if_acmpne succeeds if and only if value1 and value2 are not the same* > > > Again, HTH. > > ? John From john.r.rose at oracle.com Tue Mar 5 15:42:19 2019 From: john.r.rose at oracle.com (John Rose) Date: Tue, 5 Mar 2019 09:42:19 -0600 Subject: it's a value! it's a reference!, was Substitutability, was Re: Finding the spirit of L-World In-Reply-To: <59A2649A-601E-4D29-809C-0436487C507D@oracle.com> References: <1c4374be-99ea-850b-1a1c-3535e0b440fb@oracle.com> <4259E8F8-DD5A-4FB2-98B1-3372479CC2F6@oracle.com> <8f543923-a98d-1c19-8e15-02152eb88ce2@oracle.com> <9f2470af-570b-a9d6-1d89-4c7fcdd84ff7@oracle.com> <916D93DE-DC11-49B7-B437-4568847D4F96@oracle.com> <59A2649A-601E-4D29-809C-0436487C507D@oracle.com> Message-ID: <331FE13C-B6AD-4D9C-8324-40302A6697E2@oracle.com> On Mar 5, 2019, at 8:53 AM, Frederic Parain wrote: > > To add some fuel to the fire, JLS and JVMS are not the > only specifications of the Java platform. Looking at the JNI spec, the > term ?Value Type? is already defined: > > https://docs.oracle.com/javase/8/docs/technotes/guides/jni/spec/types.html#the_value_type Even worse, it defines "The Value Type". I guess that's it, we can't define any more? :-) ? John From forax at univ-mlv.fr Tue Mar 5 16:40:57 2019 From: forax at univ-mlv.fr (Remi Forax) Date: Tue, 05 Mar 2019 16:40:57 +0000 Subject: it's a value! it's a reference!, was Substitutability, was Re: Finding the spirit of L-World In-Reply-To: <331FE13C-B6AD-4D9C-8324-40302A6697E2@oracle.com> References: <1c4374be-99ea-850b-1a1c-3535e0b440fb@oracle.com> <4259E8F8-DD5A-4FB2-98B1-3372479CC2F6@oracle.com> <8f543923-a98d-1c19-8e15-02152eb88ce2@oracle.com> <9f2470af-570b-a9d6-1d89-4c7fcdd84ff7@oracle.com> <916D93DE-DC11-49B7-B437-4568847D4F96@oracle.com> <59A2649A-601E-4D29-809C-0436487C507D@oracle.com> <331FE13C-B6AD-4D9C-8324-40302A6697E2@oracle.com> Message-ID: I hope we can still define "The other Value Type" :) Remi On March 5, 2019 3:42:19 PM UTC, John Rose wrote: >On Mar 5, 2019, at 8:53 AM, Frederic Parain > wrote: >> >> To add some fuel to the fire, JLS and JVMS are not the >> only specifications of the Java platform. Looking at the JNI spec, >the >> term ?Value Type? is already defined: >> >> >https://docs.oracle.com/javase/8/docs/technotes/guides/jni/spec/types.html#the_value_type > >Even worse, it defines "The Value Type". I guess that's it, >we can't define any more? :-) > >? John -- Sent from my Android device with K-9 Mail. Please excuse my brevity. From ioi.lam at oracle.com Tue Mar 5 20:06:42 2019 From: ioi.lam at oracle.com (Ioi Lam) Date: Tue, 5 Mar 2019 12:06:42 -0800 Subject: RFR 8220118 [lworld] Fix C1 handling of unloaded Q classes Message-ID: https://bugs.openjdk.java.net/browse/JDK-8220118 http://cr.openjdk.java.net/~iklam/valhalla/8220118-fix-unloaded-q-class-handling.v01/ JDK-8214689 [1] introduced unloaded ciValueKlass for cases like: ????? anewarray #3 // class "QV;" ... where the class V has not yet been loaded. However, ciObjectFactory stores unloaded classes using their unadorned (?) names -- i.e., any leading "L" or "Q" are stripped. This leads to confusion when both "Q" and "L" references are made to the same unloaded class: ??? static Object[] test5(int n) { ??????? if (n == 0) { ??????????? return null; ??????? } else if (n == 1) { ??????????? MyValue5.box[] arr = new MyValue5.box[10]; ??????????? arr[1] = MyValue5.make(22345); ??????????? return arr; ??????? } else { ??????????? MyValue5[] arr = new MyValue5[10]; ??????????? arr[1] = MyValue5.make(12345); ??????????? return arr; ??????? } ??? } The above method would cause C1 to assert. A proper fix would be to revert the JDK-8214689 changes in unloaded classes handling. Instead, we should determine the Q-ness using ciBytecodeStream::is_klass_never_null(). I also fixes some minor bugs discovered by the new test cases. (a) improper assertions with runtime_call new_object_array (b) runtime_call store_flattened_array? would corrupt RAX Thanks - Ioi [1] http://hg.openjdk.java.net/valhalla/valhalla/rev/b890823b8dc6 https://bugs.openjdk.java.net/browse/JDK-8214689 From tobias.hartmann at oracle.com Wed Mar 6 12:59:50 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 6 Mar 2019 13:59:50 +0100 Subject: RFR 8220118 [lworld] Fix C1 handling of unloaded Q classes In-Reply-To: References: Message-ID: Hi Ioi, this looks good to me. Best regards, Tobias On 05.03.19 21:06, Ioi Lam wrote: > https://bugs.openjdk.java.net/browse/JDK-8220118 > http://cr.openjdk.java.net/~iklam/valhalla/8220118-fix-unloaded-q-class-handling.v01/ > > JDK-8214689 [1] introduced unloaded ciValueKlass for cases like: > > ????? anewarray #3 // class "QV;" > > ... where the class V has not yet been loaded. However, ciObjectFactory stores > unloaded classes using their unadorned (?) names -- i.e., any leading "L" or "Q" are > stripped. This leads to confusion when both "Q" and "L" references are made to the same > unloaded class: > > ??? static Object[] test5(int n) { > ??????? if (n == 0) { > ??????????? return null; > ??????? } else if (n == 1) { > ??????????? MyValue5.box[] arr = new MyValue5.box[10]; > ??????????? arr[1] = MyValue5.make(22345); > ??????????? return arr; > ??????? } else { > ??????????? MyValue5[] arr = new MyValue5[10]; > ??????????? arr[1] = MyValue5.make(12345); > ??????????? return arr; > ??????? } > ??? } > > The above method would cause C1 to assert. > > A proper fix would be to revert the JDK-8214689 changes in unloaded > classes handling. Instead, we should determine the Q-ness using > ciBytecodeStream::is_klass_never_null(). > > I also fixes some minor bugs discovered by the new test cases. > > (a) improper assertions with runtime_call new_object_array > (b) runtime_call store_flattened_array? would corrupt RAX > > Thanks > - Ioi > > > [1] http://hg.openjdk.java.net/valhalla/valhalla/rev/b890823b8dc6 > https://bugs.openjdk.java.net/browse/JDK-8214689 From ioi.lam at oracle.com Thu Mar 7 05:32:51 2019 From: ioi.lam at oracle.com (Ioi Lam) Date: Wed, 6 Mar 2019 21:32:51 -0800 Subject: RFR 8220269 [lworld] C1 should return default value for uninitialized non-static Q fields Message-ID: https://bugs.openjdk.java.net/browse/JDK-8220269 http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v01/ For the following bytecode ??? getfield Holder.f:"QJumboValue" If the field is too big to be flattened (e.g., ciField::is_flattened() returns false), we should load the field as an oop, test for null, and replace with JumboValue.default. --- I also refactored the handling of unloaded classes by getfield/getstatic into a new function LIRGenerator::non_nullable_load_field_prolog(). I needed to add a new method: ? bool ciField::is_never_null() const { ??? // Cannot use (type()->basic_type() == T_VALUETYPE) -- if the class is ? ? // not loaded, type() is an unloaded ciInstanceKlass! ??? return signature()->char_at(0) == 'Q'; ? } I think putfield also need to be fixed, because it currently rely on ciField::type(), which essentially changes "Q" to "L" for unloaded value classes. But I will do that in a separate JBS issue. Thanks - Ioi From ioi.lam at oracle.com Thu Mar 7 05:45:42 2019 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Thu, 07 Mar 2019 05:45:42 +0000 Subject: hg: valhalla/valhalla: 8220118: [lworld] Fix C1 handling of unloaded Q classes Message-ID: <201903070545.x275jhj5022878@aojmv0008.oracle.com> Changeset: cf9a8e7a0094 Author: iklam Date: 2019-03-06 21:30 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/cf9a8e7a0094 8220118: [lworld] Fix C1 handling of unloaded Q classes Reviewed-by: thartmann ! src/hotspot/cpu/x86/c1_CodeStubs_x86.cpp ! src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp ! src/hotspot/cpu/x86/c1_Runtime1_x86.cpp ! src/hotspot/share/c1/c1_CodeStubs.hpp ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/c1/c1_Instruction.cpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciEnv.hpp ! src/hotspot/share/ci/ciObjectFactory.cpp ! src/hotspot/share/ci/ciObjectFactory.hpp ! src/hotspot/share/ci/ciValueArrayKlass.cpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestUnloadedValueTypeArray.java From ioi.lam at oracle.com Fri Mar 8 03:57:24 2019 From: ioi.lam at oracle.com (Ioi Lam) Date: Thu, 7 Mar 2019 19:57:24 -0800 Subject: RFR 8220269 [lworld] C1 should return default value for uninitialized non-static Q fields In-Reply-To: References: Message-ID: <334d161e-57db-e03a-8718-f4ca79c38cc0@oracle.com> On 3/6/19 9:32 PM, Ioi Lam wrote: > https://bugs.openjdk.java.net/browse/JDK-8220269 > http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v01/ > > > For the following bytecode > > ??? getfield Holder.f:"QJumboValue" > > If the field is too big to be flattened (e.g., ciField::is_flattened() > returns false), we should load the field as an oop, test for null, and > replace with JumboValue.default. > > --- > > I also refactored the handling of unloaded classes by getfield/getstatic > into a new function LIRGenerator::non_nullable_load_field_prolog(). I > needed to > add a new method: > > ? bool ciField::is_never_null() const { > ??? // Cannot use (type()->basic_type() == T_VALUETYPE) -- if the > class is > ? ? // not loaded, type() is an unloaded ciInstanceKlass! > ??? return signature()->char_at(0) == 'Q'; > ? } > Per John Rose's comments (offline), I renamed this function to ciField::is_q_type(), as there's a chance in the future that "Q" doesn't necessary mean "not nullable". > I think putfield also need to be fixed, because it currently rely on > ciField::type(), which essentially changes "Q" to "L" for unloaded > value classes. > > But I will do that in a separate JBS issue. > I double checked the code and the tests, and we already correctly handle the case where putfield is used with an unloaded valuetype. The test cases are TestUnloadedValueTypeField::test{4,5}. I corrected the comments and and added an assert in LIRGenerator::do_StoreField(). Delta from the last webrev http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v02-delta/ Thanks - Ioi From tobias.hartmann at oracle.com Fri Mar 8 09:32:34 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 8 Mar 2019 10:32:34 +0100 Subject: RFR 8220269 [lworld] C1 should return default value for uninitialized non-static Q fields In-Reply-To: <334d161e-57db-e03a-8718-f4ca79c38cc0@oracle.com> References: <334d161e-57db-e03a-8718-f4ca79c38cc0@oracle.com> Message-ID: <98e959f1-1330-f41f-fad1-811149649201@oracle.com> Hi Ioi, overall look good, here are some comments: - Why do you specify -XX:+Inline in the test? That should be the default. I think the test should also be executed with -XX:ValueFieldMaxFlatSize=0. - The comment in c1_LIRGenerator.cpp:1893 is a bit confusing because there is no check. Maybe add an assert? - c1_LIRGenerator.cpp:1901: "don't whether" -> "don't know whether" - c1_LIRGenerator.cpp:1909: This assert can be simplified and moved into the first if branch (1912) - There is a difference between flattened and flattenable (see corresponding ciField methods). It seems like you are using the terms interchangeably in the comments/code. - Can you use is_flattenable() instead of is_q_type() or does that not work for unloaded klasses? Thanks, Tobias On 08.03.19 04:57, Ioi Lam wrote: > > > On 3/6/19 9:32 PM, Ioi Lam wrote: >> https://bugs.openjdk.java.net/browse/JDK-8220269 >> http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v01/ >> >> For the following bytecode >> >> ??? getfield Holder.f:"QJumboValue" >> >> If the field is too big to be flattened (e.g., ciField::is_flattened() >> returns false), we should load the field as an oop, test for null, and >> replace with JumboValue.default. >> >> --- >> >> I also refactored the handling of unloaded classes by getfield/getstatic >> into a new function LIRGenerator::non_nullable_load_field_prolog(). I needed to >> add a new method: >> >> ? bool ciField::is_never_null() const { >> ??? // Cannot use (type()->basic_type() == T_VALUETYPE) -- if the class is >> ? ? // not loaded, type() is an unloaded ciInstanceKlass! >> ??? return signature()->char_at(0) == 'Q'; >> ? } >> > > Per John Rose's comments (offline), I renamed this function to ciField::is_q_type(), as there's a > chance in the future that "Q" doesn't necessary mean "not nullable". > > >> I think putfield also need to be fixed, because it currently rely on >> ciField::type(), which essentially changes "Q" to "L" for unloaded value classes. >> >> But I will do that in a separate JBS issue. >> > > I double checked the code and the tests, and we already correctly handle the case where putfield is > used with an unloaded valuetype. The test cases are TestUnloadedValueTypeField::test{4,5}. I > corrected the comments and and added an assert in LIRGenerator::do_StoreField(). > > Delta from the last webrev > > http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v02-delta/ > > Thanks > - Ioi > From ioi.lam at oracle.com Tue Mar 12 05:31:23 2019 From: ioi.lam at oracle.com (Ioi Lam) Date: Mon, 11 Mar 2019 22:31:23 -0700 Subject: RFR 8220269 [lworld] C1 should return default value for uninitialized non-static Q fields In-Reply-To: <98e959f1-1330-f41f-fad1-811149649201@oracle.com> References: <334d161e-57db-e03a-8718-f4ca79c38cc0@oracle.com> <98e959f1-1330-f41f-fad1-811149649201@oracle.com> Message-ID: On 3/8/19 1:32 AM, Tobias Hartmann wrote: > Hi Ioi, > > overall look good, here are some comments: > - Why do you specify -XX:+Inline in the test? That should be the default. I think the test should > also be executed with -XX:ValueFieldMaxFlatSize=0. I thought some of the methods need to be forced to be inlined, so I added -XX:+Inline. But as you said, that's not the right way to do it. The correct way is to convert the test to be a subclass of compiler.valhalla.valuetypes.ValueTypeTest and use the @ForceInline annotation. So I converted the test, and also added a scenario with -XX:ValueFieldMaxFlatSize=0. Both C1 and C2 passed. (It turned out I didn't need the @ForceInline annotations). > - The comment in c1_LIRGenerator.cpp:1893 is a bit confusing because there is no check. Maybe add an > assert? I wanted to enumerate all 4 possibilities to make sure we checked all the corner cases: ? (0) static field or not ? (1) is holder class loaded ? (2) is field type loaded ? (3) is field flattened That's why I left (1) and (3) under the "if (field->is_static())" branch. To clarify, I added another comment "// No check needed here." > - c1_LIRGenerator.cpp:1901: "don't whether" -> "don't know whether" > - c1_LIRGenerator.cpp:1909: This assert can be simplified and moved into the first if branch (1912) Fixed. > - There is a difference between flattened and flattenable (see corresponding ciField methods). It > seems like you are using the terms interchangeably in the comments/code. I changed "flattenable" in the comments to "flattened", which is what the code needs. > - Can you use is_flattenable() instead of is_q_type() or does that not work for unloaded klasses? I changed the code to use is_flattenable(), and removed is_q_type(). I had to fix a bug where ciField::_is_flattenable is uninitialized for unloaded classes. http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v03/ http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v03-delta/ Thanks - Ioi > Thanks, > Tobias > > On 08.03.19 04:57, Ioi Lam wrote: >> >> On 3/6/19 9:32 PM, Ioi Lam wrote: >>> https://bugs.openjdk.java.net/browse/JDK-8220269 >>> http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v01/ >>> >>> For the following bytecode >>> >>> ??? getfield Holder.f:"QJumboValue" >>> >>> If the field is too big to be flattened (e.g., ciField::is_flattened() >>> returns false), we should load the field as an oop, test for null, and >>> replace with JumboValue.default. >>> >>> --- >>> >>> I also refactored the handling of unloaded classes by getfield/getstatic >>> into a new function LIRGenerator::non_nullable_load_field_prolog(). I needed to >>> add a new method: >>> >>> ? bool ciField::is_never_null() const { >>> ??? // Cannot use (type()->basic_type() == T_VALUETYPE) -- if the class is >>> ? ? // not loaded, type() is an unloaded ciInstanceKlass! >>> ??? return signature()->char_at(0) == 'Q'; >>> ? } >>> >> Per John Rose's comments (offline), I renamed this function to ciField::is_q_type(), as there's a >> chance in the future that "Q" doesn't necessary mean "not nullable". >> >> >>> I think putfield also need to be fixed, because it currently rely on >>> ciField::type(), which essentially changes "Q" to "L" for unloaded value classes. >>> >>> But I will do that in a separate JBS issue. >>> >> I double checked the code and the tests, and we already correctly handle the case where putfield is >> used with an unloaded valuetype. The test cases are TestUnloadedValueTypeField::test{4,5}. I >> corrected the comments and and added an assert in LIRGenerator::do_StoreField(). >> >> Delta from the last webrev >> >> http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v02-delta/ >> >> Thanks >> - Ioi >> From tobias.hartmann at oracle.com Tue Mar 12 13:09:08 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Tue, 12 Mar 2019 14:09:08 +0100 Subject: RFR 8220269 [lworld] C1 should return default value for uninitialized non-static Q fields In-Reply-To: References: <334d161e-57db-e03a-8718-f4ca79c38cc0@oracle.com> <98e959f1-1330-f41f-fad1-811149649201@oracle.com> Message-ID: <23feab24-f5f3-ca32-21f0-a9ce2c5d8109@oracle.com> Hi Ioi, thanks for making these changes, the new webrev looks good to me. Best regards, Tobias On 12.03.19 06:31, Ioi Lam wrote: > > > On 3/8/19 1:32 AM, Tobias Hartmann wrote: >> Hi Ioi, >> >> overall look good, here are some comments: >> - Why do you specify -XX:+Inline in the test? That should be the default. I think the test should >> also be executed with -XX:ValueFieldMaxFlatSize=0. > I thought some of the methods need to be forced to be inlined, so I added -XX:+Inline. But as you > said, that's not the right way to do it. The correct way is to convert the test to be a subclass of > compiler.valhalla.valuetypes.ValueTypeTest and use the @ForceInline annotation. > > So I converted the test, and also added a scenario with -XX:ValueFieldMaxFlatSize=0. Both C1 and C2 > passed. > > (It turned out I didn't need the @ForceInline annotations). > >> - The comment in c1_LIRGenerator.cpp:1893 is a bit confusing because there is no check. Maybe add an >> assert? > > I wanted to enumerate all 4 possibilities to make sure we checked all the corner cases: > > ? (0) static field or not > ? (1) is holder class loaded > ? (2) is field type loaded > ? (3) is field flattened > > That's why I left (1) and (3) under the "if (field->is_static())" branch. To clarify, I added > another comment "// No check needed here." > >> - c1_LIRGenerator.cpp:1901: "don't whether" -> "don't know whether" >> - c1_LIRGenerator.cpp:1909: This assert can be simplified and moved into the first if branch (1912) > Fixed. >> - There is a difference between flattened and flattenable (see corresponding ciField methods). It >> seems like you are using the terms interchangeably in the comments/code. > I changed "flattenable" in the comments to "flattened", which is what the code needs. > >> - Can you use is_flattenable() instead of is_q_type() or does that not work for unloaded klasses? > I changed the code to use is_flattenable(), and removed is_q_type(). I had to fix a bug where > ciField::_is_flattenable is uninitialized for unloaded classes. > > http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v03/ > http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v03-delta/ > > > Thanks > - Ioi > >> Thanks, >> Tobias >> >> On 08.03.19 04:57, Ioi Lam wrote: >>> >>> On 3/6/19 9:32 PM, Ioi Lam wrote: >>>> https://bugs.openjdk.java.net/browse/JDK-8220269 >>>> http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v01/ >>>> >>>> For the following bytecode >>>> >>>> ???? getfield Holder.f:"QJumboValue" >>>> >>>> If the field is too big to be flattened (e.g., ciField::is_flattened() >>>> returns false), we should load the field as an oop, test for null, and >>>> replace with JumboValue.default. >>>> >>>> --- >>>> >>>> I also refactored the handling of unloaded classes by getfield/getstatic >>>> into a new function LIRGenerator::non_nullable_load_field_prolog(). I needed to >>>> add a new method: >>>> >>>> ?? bool ciField::is_never_null() const { >>>> ???? // Cannot use (type()->basic_type() == T_VALUETYPE) -- if the class is >>>> ?? ? // not loaded, type() is an unloaded ciInstanceKlass! >>>> ???? return signature()->char_at(0) == 'Q'; >>>> ?? } >>>> >>> Per John Rose's comments (offline), I renamed this function to ciField::is_q_type(), as there's a >>> chance in the future that "Q" doesn't necessary mean "not nullable". >>> >>> >>>> I think putfield also need to be fixed, because it currently rely on >>>> ciField::type(), which essentially changes "Q" to "L" for unloaded value classes. >>>> >>>> But I will do that in a separate JBS issue. >>>> >>> I double checked the code and the tests, and we already correctly handle the case where putfield is >>> used with an unloaded valuetype. The test cases are TestUnloadedValueTypeField::test{4,5}. I >>> corrected the comments and and added an assert in LIRGenerator::do_StoreField(). >>> >>> Delta from the last webrev >>> >>> http://cr.openjdk.java.net/~iklam/valhalla/8220269-getfield-uninited-jumbo-qfield.v02-delta/ >>> >>> Thanks >>> - Ioi >>> > From rwestrel at redhat.com Wed Mar 13 10:02:04 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 13 Mar 2019 11:02:04 +0100 Subject: RFR: 8215560: [lworld] Investigate if method handle calls can be further optimized Message-ID: <87bm2fum77.fsf@redhat.com> http://cr.openjdk.java.net/~roland/8215560/webrev.00/ Code patterns with a merge of 2 method handle invokes, one inlined and of known return value and one not inlined of unknown return value used to be optimized before Lworld. They are harder (if at all possible) to optimize in Lworld and that use case seems a lot less important now. So I chose to remove IR verification for those tests. Other than that I found that return with the new calling convention would sometimes keep some useless value buffering alive. I added a pass to find those. Also, I noticed that sometimes, with incremental inlining, some useless CheckCastPP would be left in the IR. I added a point fix for that. Roland. From tobias.hartmann at oracle.com Wed Mar 13 13:11:11 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 13 Mar 2019 14:11:11 +0100 Subject: Calling Convention microbenchmark Message-ID: Hi, I wrote a simple benchmark to measure the impact of the calling/return convention optimization in the optimal case when inlining fails due to a megamorphic interface call: http://cr.openjdk.java.net/~thartmann/valhalla/cc_benchmark/ With default flags the throughput is 36.615 (? 2.668) ops/us on my machine and without the calling and return convention optimizations it is 24.105 (? 0.899) ops/us. So with this benchmark, the calling convention optimization improves throughput by 34%. Of course it's just a microbenchmark so please take this with a grain of salt (one can probably design a microbenchmark that shows the reverse). If there are no objections, I'll push this. Best regards, Tobias From tobias.hartmann at oracle.com Wed Mar 13 13:44:44 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 13 Mar 2019 14:44:44 +0100 Subject: RFR: 8215560: [lworld] Investigate if method handle calls can be further optimized In-Reply-To: <87bm2fum77.fsf@redhat.com> References: <87bm2fum77.fsf@redhat.com> Message-ID: <49ecb8d7-a181-1a56-e005-616ac485979a@oracle.com> Hi Roland, On 13.03.19 11:02, Roland Westrelin wrote: > http://cr.openjdk.java.net/~roland/8215560/webrev.00/ > > Code patterns with a merge of 2 method handle invokes, one inlined and > of known return value and one not inlined of unknown return value used > to be optimized before Lworld. They are harder (if at all possible) to > optimize in Lworld and that use case seems a lot less important now. So > I chose to remove IR verification for those tests. That seems reasonable to me. Please remove the -DVerifyIR=true in the test, it's enabled by default. > Other than that I found that return with the new calling convention > would sometimes keep some useless value buffering alive. I added a pass > to find those. How can it happen that ret_val->outcnt() != 0 but return_val_keeps_allocations_alive() returns true? Small typo: "return value keeps otherwise" -> "return value keep otherwise" Please close JDK-8220357 as duplicate. Thanks, Tobias From rwestrel at redhat.com Wed Mar 13 14:55:52 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 13 Mar 2019 15:55:52 +0100 Subject: RFR: 8215560: [lworld] Investigate if method handle calls can be further optimized In-Reply-To: <49ecb8d7-a181-1a56-e005-616ac485979a@oracle.com> References: <87bm2fum77.fsf@redhat.com> <49ecb8d7-a181-1a56-e005-616ac485979a@oracle.com> Message-ID: <875zsmvn5z.fsf@redhat.com> Thanks for looking at this, Tobias. > That seems reasonable to me. Please remove the -DVerifyIR=true in the > test, it's enabled by default. Really? For some subtests in the method handle test, we still have IR patterns that are verified. We still want them to be executed, right? > How can it happen that ret_val->outcnt() != 0 but return_val_keeps_allocations_alive() returns true? Right. I will change that to an assert. > Small typo: "return value keeps otherwise" -> "return value keep otherwise" Right. > Please close JDK-8220357 as duplicate. Ok. Roland. From ioi.lam at oracle.com Wed Mar 13 16:23:11 2019 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Wed, 13 Mar 2019 16:23:11 +0000 Subject: hg: valhalla/valhalla: 8220269: [lworld] C1 should return default value for uninitialized non-static Q fields Message-ID: <201903131623.x2DGNC63004281@aojmv0008.oracle.com> Changeset: 42adc57b994f Author: iklam Date: 2019-03-13 09:22 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/42adc57b994f 8220269: [lworld] C1 should return default value for uninitialized non-static Q fields Reviewed-by: thartmann ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/c1/c1_Instruction.hpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/c1/c1_LIRGenerator.hpp ! src/hotspot/share/ci/ciField.hpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestUnloadedValueTypeField.java From ioi.lam at oracle.com Wed Mar 13 16:33:32 2019 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Wed, 13 Mar 2019 16:33:32 +0000 Subject: hg: valhalla/valhalla: The previous changeset (42adc57b994f) for 8220269 is incomplete. This is the remaining fix. Message-ID: <201903131633.x2DGXXij008823@aojmv0008.oracle.com> Changeset: 9426a1461e9d Author: iklam Date: 2019-03-13 09:28 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9426a1461e9d The previous changeset (42adc57b994f) for 8220269 is incomplete. This is the remaining fix. Reviewed-by: thartmann ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/c1/c1_LIRGenerator.hpp ! src/hotspot/share/ci/ciField.cpp ! src/hotspot/share/ci/ciField.hpp ! src/hotspot/share/ci/ciSymbol.cpp ! src/hotspot/share/ci/ciSymbol.hpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestUnloadedValueTypeField.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/hack/GetUnresolvedValueFieldWrongSignature.java From ioi.lam at oracle.com Wed Mar 13 16:39:52 2019 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Wed, 13 Mar 2019 16:39:52 +0000 Subject: hg: valhalla/valhalla: 8220330: [lworld] C1 asserts basic_type() <= T_ARRAY in ShortLoopOptimizer Message-ID: <201903131639.x2DGdr87013235@aojmv0008.oracle.com> Changeset: 70c8dbdaa8c5 Author: iklam Date: 2019-03-13 09:36 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/70c8dbdaa8c5 8220330: [lworld] C1 asserts basic_type() <= T_ARRAY in ShortLoopOptimizer ! src/hotspot/share/c1/c1_ValueMap.cpp From tobias.hartmann at oracle.com Thu Mar 14 08:35:48 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 14 Mar 2019 09:35:48 +0100 Subject: RFR: 8215560: [lworld] Investigate if method handle calls can be further optimized In-Reply-To: <875zsmvn5z.fsf@redhat.com> References: <87bm2fum77.fsf@redhat.com> <49ecb8d7-a181-1a56-e005-616ac485979a@oracle.com> <875zsmvn5z.fsf@redhat.com> Message-ID: <2a2165cd-f731-1708-a7e6-4cf73fde3360@oracle.com> Hi Roland, On 13.03.19 15:55, Roland Westrelin wrote: >> That seems reasonable to me. Please remove the -DVerifyIR=true in the >> test, it's enabled by default. > > Really? For some subtests in the method handle test, we still have IR > patterns that are verified. We still want them to be executed, right? Sure, I'm just saying that you don't need to explicitly set -DVerifyIR=true because it's true by default for ValueTypeTests: http://hg.openjdk.java.net/valhalla/valhalla/file/70c8dbdaa8c5/test/hotspot/jtreg/compiler/valhalla/valuetypes/ValueTypeTest.java#l101 I've disabled it with: http://hg.openjdk.java.net/valhalla/valhalla/rev/29b97940a7fb#l62.7 Best regards, Tobias From david.simms at oracle.com Thu Mar 14 09:41:31 2019 From: david.simms at oracle.com (david.simms at oracle.com) Date: Thu, 14 Mar 2019 09:41:31 +0000 Subject: hg: valhalla/valhalla: 167 new changesets Message-ID: <201903140941.x2E9fhrg013067@aojmv0008.oracle.com> Changeset: cf47efcf7771 Author: pli Date: 2019-02-28 16:37 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/cf47efcf7771 8216259: AArch64: Vectorize Adler32 intrinsics Reviewed-by: aph ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/stubRoutines_aarch64.cpp ! src/hotspot/cpu/aarch64/stubRoutines_aarch64.hpp Changeset: 56089cf6152c Author: rschmelter Date: 2019-02-26 05:46 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/56089cf6152c 8219712: code_size2 (defined in stub_routines_x86.hpp) is too small on new Skylake CPUs Reviewed-by: mbaesken, dholmes, kvn ! src/hotspot/cpu/x86/stubRoutines_x86.hpp Changeset: 3ccf7e10ba07 Author: goetz Date: 2019-02-28 13:53 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/3ccf7e10ba07 8219714: [testbug] com/sun/jdi/RedefineNestmateAttr/TestNestmateAttr.java must pass classpath to subprocess Reviewed-by: dholmes, dcubed ! test/jdk/com/sun/jdi/RedefineNestmateAttr/TestNestmateAttr.java Changeset: 235b0e817c32 Author: zgu Date: 2019-02-28 08:44 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/235b0e817c32 8219857: Shenandoah GC may initialize thread's gclab twice Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahThreadLocalData.hpp Changeset: b5f4a8477a20 Author: gziemski Date: 2019-02-28 10:55 -0600 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b5f4a8477a20 8219789: [TESTBUG] TestOptionsWithRanges.java produces hs_err_pidXXXXX.log file for VMThreadStackSize=9007199254740991 Summary: Excluded test of mac range for VMThreadStackSize Reviewed-by: coleenp, mseledtsov ! test/hotspot/jtreg/runtime/CommandLine/OptionsValidation/TestOptionsWithRanges.java Changeset: d15d4d610de4 Author: gziemski Date: 2019-02-28 11:04 -0600 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d15d4d610de4 8212932: [TESTBUG] Clean up TestVirtualSpaceNode test Summary: Remove test/hotspot/gtest/memory/test_virtualSpaceNode.cpp Reviewed-by: stuefe, coleenp - test/hotspot/gtest/memory/test_virtualSpaceNode.cpp Changeset: d5bd4d5483e4 Author: iignatyev Date: 2019-02-28 09:10 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d5bd4d5483e4 8219565: [deadcode] remove share/utilities/intHisto.* Reviewed-by: dholmes ! src/hotspot/share/gc/g1/g1RemSet.cpp - src/hotspot/share/utilities/intHisto.cpp - src/hotspot/share/utilities/intHisto.hpp Changeset: 8b886d62ddc7 Author: iignatyev Date: 2019-02-28 09:10 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/8b886d62ddc7 8219798: [deadcode] remove src/hotspot/share/prims/evmCompat.cpp Reviewed-by: dholmes - src/hotspot/share/prims/evmCompat.cpp Changeset: 196ab0abc685 Author: xuelei Date: 2019-02-28 10:04 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/196ab0abc685 8219658: Deadlock in sun.security.ssl.SSLSocketImpl Reviewed-by: jnimeh ! src/java.base/share/classes/sun/security/ssl/SSLSocketImpl.java Changeset: 1542e63eb537 Author: bpb Date: 2019-02-28 12:05 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1542e63eb537 5071718: (bf) Add ByteBuffer.slice(int offset, int length) Reviewed-by: alanb, bchristi, darcy, rriggs ! src/java.base/share/classes/java/nio/Buffer.java ! src/java.base/share/classes/java/nio/ByteBufferAs-X-Buffer.java.template ! src/java.base/share/classes/java/nio/Direct-X-Buffer.java.template ! src/java.base/share/classes/java/nio/Heap-X-Buffer.java.template ! src/java.base/share/classes/java/nio/StringCharBuffer.java ! src/java.base/share/classes/java/nio/X-Buffer.java.template ! test/jdk/java/nio/Buffer/Basic-X.java.template ! test/jdk/java/nio/Buffer/Basic.java ! test/jdk/java/nio/Buffer/BasicByte.java ! test/jdk/java/nio/Buffer/BasicChar.java ! test/jdk/java/nio/Buffer/BasicDouble.java ! test/jdk/java/nio/Buffer/BasicFloat.java ! test/jdk/java/nio/Buffer/BasicInt.java ! test/jdk/java/nio/Buffer/BasicLong.java ! test/jdk/java/nio/Buffer/BasicShort.java ! test/jdk/java/nio/Buffer/ByteBufferViews.java ! test/jdk/java/nio/Buffer/StringCharBufferSliceTest.java Changeset: 6c3fd94de35a Author: dtitov Date: 2019-02-28 13:12 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6c3fd94de35a 8207367: 10 vmTestbase/nsk/jdi tests timed out when running with jtreg Reviewed-by: sspitsyn, cjplummer ! test/hotspot/jtreg/vmTestbase/nsk/jdi/ClassUnloadRequest/addClassExclusionFilter/exclfilter001.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/ClassUnloadRequest/addClassFilter/filter001.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/Event/_itself_/event001.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/EventQueue/remove/remove004.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/EventQueue/remove/remove004a.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/EventQueue/remove_l/remove_l004.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/EventQueue/remove_l/remove_l004a.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/ThreadReference/suspend/suspend001.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/VirtualMachine/dispose/dispose002.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/VirtualMachine/dispose/dispose002a.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/VirtualMachine/dispose/dispose003.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/VirtualMachine/dispose/dispose003a.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/VirtualMachine/dispose/dispose004.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/VirtualMachine/dispose/dispose004a.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/VirtualMachine/suspend/suspend001.java Changeset: e5b461681b88 Author: redestad Date: 2019-02-28 22:11 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e5b461681b88 8219922: Simplify and optimize IndexSetIterator::next using count_trailing_zeros Reviewed-by: kvn, neliasso ! src/hotspot/share/opto/indexSet.cpp ! src/hotspot/share/opto/indexSet.hpp Changeset: 2653e078b057 Author: coleenp Date: 2019-02-28 16:30 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/2653e078b057 8218266: G1 crash in AccessInternal::PostRuntimeDispatch Summary: protection_domains can be unloaded in the dictionary pd_set. Reviewed-by: zgu, hseigel ! src/hotspot/share/classfile/dictionary.cpp ! src/hotspot/share/classfile/dictionary.hpp - src/hotspot/share/classfile/dictionary.inline.hpp ! src/hotspot/share/classfile/protectionDomainCache.cpp ! src/hotspot/share/runtime/mutexLocker.cpp ! src/hotspot/share/runtime/mutexLocker.hpp ! test/hotspot/jtreg/runtime/Dictionary/ProtectionDomainCacheTest.java ! test/hotspot/jtreg/runtime/Dictionary/test.policy Changeset: 7f01a85f2710 Author: naoto Date: 2019-02-28 14:03 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/7f01a85f2710 8219890: Calendar.getDisplayName() returns empty string for new Japanese Era on some locales Reviewed-by: lancea ! src/java.base/share/classes/java/util/JapaneseImperialCalendar.java ! test/jdk/java/util/Calendar/JapaneseEraNameTest.java Changeset: 393348e562c1 Author: naoto Date: 2019-02-28 14:05 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/393348e562c1 Merge - src/hotspot/share/classfile/dictionary.inline.hpp Changeset: 86ee52ca11e3 Author: dholmes Date: 2019-02-28 18:28 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/86ee52ca11e3 8219492: Restore static callsite resolution for the current class Reviewed-by: redestad, lfoltan, vlivanov ! src/hotspot/share/interpreter/interpreterRuntime.cpp ! src/hotspot/share/oops/cpCache.cpp ! src/hotspot/share/oops/cpCache.hpp ! src/hotspot/share/runtime/sharedRuntime.cpp Changeset: b378fc877045 Author: kvn Date: 2019-02-28 17:16 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b378fc877045 8219951: Build failure on Mac and Windows after JDK-8219922 Summary: Add missing parentheses. Reviewed-by: dholmes ! src/hotspot/share/opto/indexSet.hpp Changeset: 2bd3e05d4c6f Author: ngasson Date: 2019-02-19 14:11 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/2bd3e05d4c6f 8209413: AArch64: NPE in clhsdb jstack command Reviewed-by: aph ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/aarch64/AARCH64CurrentFrameGuess.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/aarch64/AARCH64Frame.java Changeset: 6862a1997fbb Author: mbaesken Date: 2019-02-28 10:28 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6862a1997fbb 8219746: Provide virtualization related info in the hs_error file on linux ppc64 / ppc64le Reviewed-by: dholmes, lucy, mdoerr ! src/hotspot/os/linux/os_linux.cpp Changeset: b342deab639f Author: clanger Date: 2019-03-01 10:15 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b342deab639f 8219915: [TESTBUG] Fix test langtools/tools/javac/processing/model/completionfailure/SymbolsDontCumulate.java in Standalone mode Reviewed-by: jlahoda ! test/langtools/tools/javac/processing/model/completionfailure/SymbolsDontCumulate.java Changeset: 1ad7c590a6e7 Author: stuefe Date: 2019-02-10 09:10 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1ad7c590a6e7 8218988: Improve metaspace verifications Reviewed-by: zgu, coleenp ! src/hotspot/share/memory/metaspace.cpp ! src/hotspot/share/memory/metaspace/chunkManager.cpp ! src/hotspot/share/memory/metaspace/chunkManager.hpp ! src/hotspot/share/memory/metaspace/metaDebug.hpp ! src/hotspot/share/memory/metaspace/metaspaceCommon.hpp ! src/hotspot/share/memory/metaspace/spaceManager.cpp ! src/hotspot/share/memory/metaspace/virtualSpaceList.cpp ! src/hotspot/share/memory/metaspace/virtualSpaceNode.cpp ! src/hotspot/share/memory/metaspace/virtualSpaceNode.hpp ! src/hotspot/share/runtime/globals.hpp Changeset: 1019c97e1bde Author: dholmes Date: 2019-03-01 08:14 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1019c97e1bde 8219969: Backout JDK-8219492 Reviewed-by: goetz, hseigel, tschatzl ! src/hotspot/share/interpreter/interpreterRuntime.cpp ! src/hotspot/share/oops/cpCache.cpp ! src/hotspot/share/oops/cpCache.hpp ! src/hotspot/share/runtime/sharedRuntime.cpp Changeset: 43c2ab1bdfd3 Author: xuelei Date: 2019-03-01 08:35 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/43c2ab1bdfd3 8215430: Remove the internal package com.sun.net.ssl Reviewed-by: chegar, mullan, wetmore - src/java.base/share/classes/com/sun/net/ssl/HostnameVerifier.java - src/java.base/share/classes/com/sun/net/ssl/HttpsURLConnection.java - src/java.base/share/classes/com/sun/net/ssl/KeyManager.java - src/java.base/share/classes/com/sun/net/ssl/KeyManagerFactory.java - src/java.base/share/classes/com/sun/net/ssl/KeyManagerFactorySpi.java - src/java.base/share/classes/com/sun/net/ssl/SSLContext.java - src/java.base/share/classes/com/sun/net/ssl/SSLContextSpi.java - src/java.base/share/classes/com/sun/net/ssl/SSLPermission.java - src/java.base/share/classes/com/sun/net/ssl/SSLSecurity.java - src/java.base/share/classes/com/sun/net/ssl/TrustManager.java - src/java.base/share/classes/com/sun/net/ssl/TrustManagerFactory.java - src/java.base/share/classes/com/sun/net/ssl/TrustManagerFactorySpi.java - src/java.base/share/classes/com/sun/net/ssl/X509KeyManager.java - src/java.base/share/classes/com/sun/net/ssl/X509TrustManager.java - src/java.base/share/classes/com/sun/net/ssl/internal/ssl/Provider.java - src/java.base/share/classes/com/sun/net/ssl/internal/ssl/X509ExtendedTrustManager.java - src/java.base/share/classes/com/sun/net/ssl/internal/www/protocol/https/DelegateHttpsURLConnection.java - src/java.base/share/classes/com/sun/net/ssl/internal/www/protocol/https/Handler.java - src/java.base/share/classes/com/sun/net/ssl/internal/www/protocol/https/HttpsURLConnectionOldImpl.java - src/java.base/share/classes/com/sun/net/ssl/package-info.java ! src/java.base/share/classes/java/security/Security.java ! src/java.base/share/classes/java/security/Signature.java ! src/java.base/share/classes/sun/net/www/protocol/https/AbstractDelegateHttpsURLConnection.java ! src/java.base/share/classes/sun/net/www/protocol/https/HttpsURLConnectionImpl.java ! src/java.base/share/classes/sun/security/jca/ProviderConfig.java ! src/java.base/share/classes/sun/security/ssl/SunJSSE.java ! test/jdk/TEST.groups - test/jdk/com/sun/net/ssl/SSLSecurity/ComKeyManagerFactoryImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/ComSSLContextImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/ComTrustManagerFactoryImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/JavaxKeyManagerFactoryImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/JavaxSSLContextImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/JavaxTrustManagerFactoryImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/ProviderTest.java - test/jdk/com/sun/net/ssl/SSLSecurity/TruncateArray.java ! test/jdk/java/security/BasicPermission/Wildcard.java - test/jdk/javax/net/ssl/FixingJavadocs/ComURLNulls.java ! test/jdk/javax/net/ssl/GetInstance.java - test/jdk/javax/net/ssl/SSLSession/CheckMyTrustedKeystore.java ! test/jdk/sun/net/www/protocol/https/HttpsURLConnection/CheckMethods.java - test/jdk/sun/net/www/protocol/https/NewImpl/ComHTTPSConnection.java - test/jdk/sun/net/www/protocol/https/NewImpl/ComHostnameVerifier.java ! test/jdk/sun/security/ssl/X509TrustManagerImpl/CheckNullEntity.java - test/jdk/sun/security/ssl/X509TrustManagerImpl/ClientServer.java Changeset: db37ce5664e3 Author: mdoerr Date: 2019-03-01 17:48 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/db37ce5664e3 8219582: PPC: Crash after C1 checkcast patched and GC Reviewed-by: akozlov, goetz ! src/hotspot/cpu/ppc/c1_LIRAssembler_ppc.cpp Changeset: c9f2b71057c1 Author: xuelei Date: 2019-03-01 09:42 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c9f2b71057c1 8219990: Backout JDK-8219658 Reviewed-by: dfuchs ! src/java.base/share/classes/sun/security/ssl/SSLSocketImpl.java Changeset: b31780c0c4c9 Author: jiefu Date: 2019-03-01 10:00 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b31780c0c4c9 8219919: RuntimeStub name lost with PrintFrameConverterAssembly Reviewed-by: kvn ! src/hotspot/share/opto/output.cpp Changeset: 5d97784f08bf Author: jjg Date: 2019-03-01 11:01 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/5d97784f08bf 8219803: Nodeca Pako license text needs to be inserted in JSZip license text Reviewed-by: darcy ! src/jdk.javadoc/share/legal/jszip.md Changeset: 723f665d0596 Author: igerasim Date: 2019-03-01 12:47 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/723f665d0596 8218228: The constructor StringBuffer(CharSequence) violates spec for negatively sized argument Reviewed-by: rriggs, darcy ! src/java.base/share/classes/java/lang/AbstractStringBuilder.java ! src/java.base/share/classes/java/lang/StringBuffer.java ! test/jdk/java/lang/StringBuffer/AppendCharSequence.java Changeset: 581c2f4f82d3 Author: xuelei Date: 2019-03-01 13:08 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/581c2f4f82d3 8219994: CheckSecurityProvider.java fails with unexpected sun.security.ssl.SunJSSE Reviewed-by: mullan, wetmore ! test/jdk/java/lang/SecurityManager/CheckSecurityProvider.java Changeset: 70c7c4db9c9a Author: dchuyko Date: 2019-03-02 11:42 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/70c7c4db9c9a 8214854: JDWP: Unforseen output truncation in logging Reviewed-by: cjplummer, dholmes ! src/jdk.jdwp.agent/share/native/libjdwp/log_messages.c Changeset: f3fd73c3a077 Author: zgu Date: 2019-03-02 08:33 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f3fd73c3a077 8219976: GarbageCollectionNotificationInfo always says "No GC" when running Shenandoah Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahUtils.cpp Changeset: d489081c5650 Author: dholmes Date: 2019-03-02 18:09 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d489081c5650 8219619: Remove UseFakeTimers and related code Reviewed-by: zgu, redestad ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/share/runtime/globals.hpp Changeset: 05d35241e1e9 Author: jlahoda Date: 2019-03-04 10:19 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/05d35241e1e9 8217868: Crash for overlap between source path and patch module path Summary: When analyzing implicit files, do not look for containing module, but rather use the already known one. Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/JavadocTool.java ! test/langtools/tools/javac/modules/PatchModulesTest.java Changeset: 7935353a466a Author: tschatzl Date: 2019-03-04 11:49 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/7935353a466a 8218880: G1 crashes when issuing a periodic GC while the GCLocker is held Summary: Do not wait for the GC locker in the periodic GC thread as the GC locker being held is an indication for being busy anyway. Reviewed-by: kbarrett, shade ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1VMOperations.cpp ! src/hotspot/share/gc/g1/g1VMOperations.hpp ! src/hotspot/share/gc/g1/g1YoungRemSetSamplingThread.cpp + test/hotspot/jtreg/gc/g1/TestPeriodicCollectionJNI.java + test/hotspot/jtreg/gc/g1/libTestPeriodicCollectionJNI.c Changeset: 31884d19e945 Author: tschatzl Date: 2019-03-04 11:49 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/31884d19e945 8219369: Add named constants for iterating ExtRootScan phases Reviewed-by: kbarrett, sangheki ! src/hotspot/share/gc/g1/g1GCPhaseTimes.cpp ! src/hotspot/share/gc/g1/g1GCPhaseTimes.hpp Changeset: 0da5c17f5e43 Author: tschatzl Date: 2019-03-04 11:49 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/0da5c17f5e43 8219747: Remove g1_ prefix to g1_remset and g1_policy members in G1CollectedHeap Reviewed-by: shade, sangheki ! src/hotspot/share/gc/g1/g1Allocator.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1CollectorPolicy.cpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.cpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.inline.hpp ! src/hotspot/share/gc/g1/g1ConcurrentMarkThread.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.cpp ! src/hotspot/share/gc/g1/g1FullCollector.cpp ! src/hotspot/share/gc/g1/g1HeapTransition.cpp ! src/hotspot/share/gc/g1/g1HeapVerifier.cpp ! src/hotspot/share/gc/g1/g1HeterogeneousCollectorPolicy.cpp ! src/hotspot/share/gc/g1/g1MonitoringSupport.cpp ! src/hotspot/share/gc/g1/g1ParScanThreadState.cpp ! src/hotspot/share/gc/g1/g1RemSet.cpp ! src/hotspot/share/gc/g1/g1RootProcessor.cpp ! src/hotspot/share/gc/g1/g1VMOperations.cpp ! src/hotspot/share/gc/g1/g1YoungGenSizer.cpp ! src/hotspot/share/gc/g1/g1YoungRemSetSamplingThread.cpp ! src/hotspot/share/gc/g1/heapRegion.cpp ! src/hotspot/share/gc/g1/heapRegionManager.cpp ! src/hotspot/share/gc/shared/gcVMOperations.cpp ! src/hotspot/share/prims/whitebox.cpp Changeset: 9ad20fd52b19 Author: tschatzl Date: 2019-03-04 11:49 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9ad20fd52b19 8219748: Add and use getter for the timing object in G1 Reviewed-by: shade, kbarrett ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1CollectedHeap.inline.hpp ! src/hotspot/share/gc/g1/g1HeapVerifier.cpp ! src/hotspot/share/gc/g1/g1ParScanThreadState.cpp ! src/hotspot/share/gc/g1/g1RemSet.cpp ! src/hotspot/share/gc/g1/g1RootProcessor.cpp Changeset: e1f707ed0757 Author: tschatzl Date: 2019-03-04 11:49 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e1f707ed0757 8219856: Spell out G1CollectorPolicy::is_hetero_heap Reviewed-by: sangheki, kbarrett ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1CollectorPolicy.cpp ! src/hotspot/share/gc/g1/g1CollectorPolicy.hpp ! src/hotspot/share/gc/g1/g1HeterogeneousCollectorPolicy.cpp ! src/hotspot/share/gc/g1/g1HeterogeneousCollectorPolicy.hpp ! src/hotspot/share/gc/g1/g1Policy.cpp ! src/hotspot/share/gc/g1/g1YoungGenSizer.cpp ! src/hotspot/share/gc/g1/heapRegionManager.cpp ! src/hotspot/share/prims/whitebox.cpp Changeset: efa9bc147d50 Author: gadams Date: 2019-03-04 08:45 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/efa9bc147d50 4903717: nsk/jdi/ThreadReference/isSuspended/issuspended002 failing Reviewed-by: amenkov, sspitsyn ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/vmTestbase/nsk/jdi/ThreadReference/isSuspended/issuspended002a.java Changeset: 247f1a85d736 Author: fyang Date: 2019-03-01 14:38 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/247f1a85d736 8219888: aarch64: add CPU detection code for HiSilicon TSV110 Reviewed-by: aph, drwhite, pzhang Contributed-by: dongbo4 at huawei.com ! src/hotspot/cpu/aarch64/vm_version_aarch64.cpp ! src/hotspot/cpu/aarch64/vm_version_aarch64.hpp Changeset: 8c82412da698 Author: kevinw Date: 2019-03-01 04:34 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/8c82412da698 8219513: compiler/codegen/aes/TestCipherBlockChainingEncrypt.java timeout on Solaris-sparc Reviewed-by: kvn, iignatyev Contributed-by: fairoz.matte at oracle.com ! test/hotspot/jtreg/compiler/codegen/aes/TestCipherBlockChainingEncrypt.java Changeset: 786825220790 Author: jjg Date: 2019-03-04 11:19 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/786825220790 8219801: Pages do not have

Reviewed-by: hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractModuleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractPackageIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllClassesFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllClassesIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllPackagesIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeFieldWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassUseWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstantsSummaryWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstructorWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/EnumConstantWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FieldWriterImpl.java + src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Headings.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HelpWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlSerialFieldWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlSerialMethodWriter.java + src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MarkerComments.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MethodWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModulePackageIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NestedClassWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageUseWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PropertyWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SerializedFormWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SingleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SplitIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TreeWriter.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlConstants.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/Navigation.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/SerializedFormBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css ! test/langtools/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java ! test/langtools/jdk/javadoc/doclet/testHeadings/TestHeadings.java ! test/langtools/jdk/javadoc/doclet/testHiddenTag/TestHiddenTag.java ! test/langtools/jdk/javadoc/doclet/testHref/TestHref.java ! test/langtools/jdk/javadoc/doclet/testHtmlLandmarkRegions/TestHtmlLandmarkRegions.java ! test/langtools/jdk/javadoc/doclet/testHtmlVersion/TestHtmlVersion.java ! test/langtools/jdk/javadoc/doclet/testIndexTaglet/TestIndexTaglet.java ! test/langtools/jdk/javadoc/doclet/testInterface/TestInterface.java ! test/langtools/jdk/javadoc/doclet/testJavaFX/TestJavaFX.java ! test/langtools/jdk/javadoc/doclet/testModules/TestModuleServices.java ! test/langtools/jdk/javadoc/doclet/testModules/TestModules.java ! test/langtools/jdk/javadoc/doclet/testNewLanguageFeatures/TestNewLanguageFeatures.java ! test/langtools/jdk/javadoc/doclet/testOptions/TestOptions.java ! test/langtools/jdk/javadoc/doclet/testOrdering/TestOrdering.java ! test/langtools/jdk/javadoc/doclet/testOverriddenMethods/TestBadOverride.java ! test/langtools/jdk/javadoc/doclet/testSerializedForm/TestSerializedForm.java ! test/langtools/jdk/javadoc/doclet/testSummaryHeading/TestSummaryHeading.java ! test/langtools/jdk/javadoc/doclet/testSummaryTag/TestSummaryTag.java ! test/langtools/jdk/javadoc/doclet/testSystemPropertyTaglet/TestSystemPropertyTaglet.java ! test/langtools/jdk/javadoc/lib/javadoc/tester/A11yChecker.java ! test/langtools/jdk/javadoc/lib/javadoc/tester/JavadocTester.java + test/langtools/jdk/javadoc/lib/javadoc/tester/ShowHeadings.java Changeset: cf4c3a118d2b Author: erikj Date: 2019-03-04 11:30 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/cf4c3a118d2b 8219988: Change to Visual Studio 2017 15.9.6 for building on Windows at Oracle Reviewed-by: tbell ! make/conf/jib-profiles.js - make/devkit/createWindowsDevkit2013.sh - make/devkit/createWindowsDevkit2015.sh ! make/devkit/createWindowsDevkit2017.sh Changeset: 271f75d4b494 Author: erikj Date: 2019-03-04 11:28 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/271f75d4b494 8219986: Change to Xcode 10.1 for building on Macosx at Oracle Reviewed-by: tbell ! make/conf/jib-profiles.js + make/devkit/createMacosxDevkit.sh - make/devkit/createMacosxDevkit6.sh - make/devkit/createMacosxDevkit9.sh Changeset: 77343f5c85cb Author: dholmes Date: 2019-03-04 19:38 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/77343f5c85cb 8219974: REDO JDK-8219492: Restore static callsite resolution for the current class Reviewed-by: redestad, vlivanov, coleenp ! src/hotspot/share/interpreter/interpreterRuntime.cpp ! src/hotspot/share/oops/cpCache.cpp ! src/hotspot/share/oops/cpCache.hpp ! src/hotspot/share/runtime/sharedRuntime.cpp Changeset: ecc2bcc3beb0 Author: ihse Date: 2019-03-05 11:07 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ecc2bcc3beb0 8219971: Introduce SetupExecute in build system Reviewed-by: erikj ! make/CreateJmods.gmk ! make/Docs.gmk ! make/ExplodedImageOptimize.gmk ! make/Images.gmk ! make/Main.gmk ! make/UpdateX11Wrappers.gmk + make/common/Execute.gmk ! make/gensrc/GensrcCommonJdk.gmk ! make/gensrc/GensrcX11Wrappers.gmk ! make/hotspot/gensrc/GenerateSources.gmk ! make/hotspot/gensrc/GensrcAdlc.gmk ! make/hotspot/gensrc/GensrcDtrace.gmk ! make/hotspot/gensrc/GensrcJfr.gmk ! make/hotspot/gensrc/GensrcJvmti.gmk ! make/hotspot/ide/CreateVSProject.gmk Changeset: 35a30b432396 Author: aoqi Date: 2019-03-05 11:09 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/35a30b432396 8219906: Update test documentation with default test jobs settings Reviewed-by: ihse ! doc/testing.html ! doc/testing.md Changeset: 4ae746de6b86 Author: ihse Date: 2019-03-05 13:41 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/4ae746de6b86 8220155: JDK-8219971 broke hotspot build Reviewed-by: dholmes ! make/hotspot/gensrc/GensrcAdlc.gmk Changeset: d870bb08194a Author: mullan Date: 2019-03-05 08:24 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d870bb08194a 8217878: ENVELOPING XML signature no longer works in JDK 11 8218629: XML Digital Signature throws NAMESPACE_ERR exception on OpenJDK 11, works 8/9/10 Summary: Backout and restore previous XML signature marshalling implementation Reviewed-by: weijun ! src/java.xml.crypto/share/classes/com/sun/org/apache/xml/internal/security/utils/Base64.java ! src/java.xml.crypto/share/classes/com/sun/org/apache/xml/internal/security/utils/XMLUtils.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/AbstractDOMSignatureMethod.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/ApacheCanonicalizer.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/ApacheOctetStreamData.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/ApacheTransform.java - src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/BaseStructure.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMCanonicalXMLC14N11Method.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMCanonicalXMLC14NMethod.java + src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMCryptoBinary.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMDigestMethod.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMEnvelopedTransform.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMExcC14NMethod.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMHMACSignatureMethod.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMKeyInfo.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMKeyName.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMKeyValue.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMManifest.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMPGPData.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMReference.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMRetrievalMethod.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMSignatureMethod.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMSignatureProperties.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMSignatureProperty.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMSignedInfo.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMStructure.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMSubTreeData.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMTransform.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMURIDereferencer.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMUtils.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMX509Data.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMX509IssuerSerial.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMXMLObject.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMXMLSignature.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMXMLSignatureFactory.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMXPathFilter2Transform.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMXPathTransform.java ! src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/DOMXSLTTransform.java - src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/Marshaller.java - src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/XmlWriter.java - src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/XmlWriterToTree.java ! test/jdk/javax/xml/crypto/dsig/GenerationTests.java + test/jdk/javax/xml/crypto/dsig/data/envelope2.xml Changeset: d7852bb72332 Author: mbaesken Date: 2019-03-05 09:55 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d7852bb72332 8219920: dependency help output in configure-step : support zypper tool Reviewed-by: erikj, ihse ! make/autoconf/configure ! make/autoconf/help.m4 Changeset: 3158fae17e80 Author: zgu Date: 2019-03-05 12:30 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/3158fae17e80 8220161: Shenandoah does not need to initialize PLABs for safepoint workers Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp Changeset: b4e59fc5edd1 Author: simonis Date: 2019-03-05 18:53 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b4e59fc5edd1 8220164: Fix build instructions for AIX Reviewed-by: mdoerr, erikj, mbaesken ! doc/building.html ! doc/building.md Changeset: fb9541185457 Author: jjg Date: 2019-03-05 10:35 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/fb9541185457 8219946: Set class on body elements Reviewed-by: hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FrameOutputWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/IndexRedirectWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SourceToHTMLConverter.java ! test/langtools/jdk/javadoc/doclet/JavascriptWinTitle/JavascriptWinTitle.java ! test/langtools/jdk/javadoc/doclet/testFramesNoFrames/TestFramesNoFrames.java ! test/langtools/jdk/javadoc/doclet/testHtmlVersion/TestHtmlVersion.java ! test/langtools/jdk/javadoc/doclet/testJavascript/TestJavascript.java ! test/langtools/jdk/javadoc/doclet/testMetadata/TestMetadata.java Changeset: f3468c1bdf5f Author: cjplummer Date: 2019-03-05 13:40 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f3468c1bdf5f 8220030: JdbStopThreadidTest.java failed due to "Unexpected IO error while writing command 'quit' to jdb stdin stream" Summary: Use contToExit(1) for safer approach to test exit. Reviewed-by: gadams, amenkov ! test/jdk/com/sun/jdi/JdbStopThreadidTest.java Changeset: 465beebb1071 Author: dtitov Date: 2019-03-05 13:41 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/465beebb1071 8218167: nsk/jvmti/scenarios/sampling/SP02/sp02t003 fails Reviewed-by: dlong, cjplummer ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/sampling/SP02/sp02t003/sp02t003.cpp ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/sampling/SP06/sp06t003/sp06t003.cpp Changeset: 6ffb8d7fe1e4 Author: vdeshpande Date: 2019-03-05 14:07 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6ffb8d7fe1e4 8216580: Fix generation of VNNI vector code by allowing adjacent LoadS nodes to be isomorphic Reviewed-by: kvn, thartmann, rraghavan ! src/hotspot/share/opto/superword.cpp Changeset: a421bdf22394 Author: kbarrett Date: 2019-03-05 19:54 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/a421bdf22394 8219613: Use NonJavaThread PtrQueues Summary: Init and use NJT queues, remove shared SATB queue. Reviewed-by: shade, zgu, pliden, tschatzl Contributed-by: kim.barrett at oracle.com, shade at redhat.com ! src/hotspot/share/gc/g1/g1BarrierSet.cpp ! src/hotspot/share/gc/g1/g1BarrierSet.hpp ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.hpp ! src/hotspot/share/gc/g1/g1SATBMarkQueueSet.cpp ! src/hotspot/share/gc/g1/g1SATBMarkQueueSet.hpp ! src/hotspot/share/gc/shared/barrierSet.hpp ! src/hotspot/share/gc/shared/cardTableBarrierSet.cpp ! src/hotspot/share/gc/shared/cardTableBarrierSet.hpp ! src/hotspot/share/gc/shared/satbMarkQueue.cpp ! src/hotspot/share/gc/shared/satbMarkQueue.hpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.hpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahSATBMarkQueueSet.cpp ! src/hotspot/share/gc/shenandoah/shenandoahSATBMarkQueueSet.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.cpp ! src/hotspot/share/gc/z/zBarrierSet.cpp ! src/hotspot/share/gc/z/zBarrierSet.hpp ! src/hotspot/share/runtime/mutexLocker.cpp ! src/hotspot/share/runtime/mutexLocker.hpp ! src/hotspot/share/runtime/thread.cpp Changeset: b23068def105 Author: vdeshpande Date: 2019-03-05 21:26 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b23068def105 8220211: Small update to Fix generation of VNNI vector code by allowing adjacent LoadS nodes to be isomorphic (JDK-8216580) Reviewed-by: kvn ! src/hotspot/share/opto/superword.cpp Changeset: 8b341d6728fe Author: jiefu Date: 2019-02-28 09:43 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/8b341d6728fe 8219519: Remove linux_sparc.ad and linux_aarch64.ad Reviewed-by: thartmann, pli, adinn - src/hotspot/os_cpu/linux_aarch64/linux_aarch64.ad - src/hotspot/os_cpu/linux_sparc/linux_sparc.ad Changeset: 13acb4339895 Author: rehn Date: 2019-03-06 11:15 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/13acb4339895 8220151: SafepointTracing::end_of_last_safepoint_ms should return ms since epoch. Reviewed-by: dholmes, redestad ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/runtime/safepoint.hpp ! src/hotspot/share/runtime/tieredThresholdPolicy.cpp Changeset: 17fb726e6d8e Author: lucy Date: 2019-03-06 12:14 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/17fb726e6d8e 8219214: Infinite Loop in CodeSection::dump() Reviewed-by: kvn, thartmann ! src/hotspot/share/asm/codeBuffer.cpp ! src/hotspot/share/asm/codeBuffer.hpp Changeset: 21ea4076a275 Author: stuefe Date: 2019-02-28 14:22 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/21ea4076a275 8219650: [Testbug] Fix potential crashes in new test hotspot gtest "test_print_hex_dump" Reviewed-by: clanger, shade ! src/hotspot/share/runtime/os.cpp ! test/hotspot/gtest/runtime/test_os.cpp Changeset: 6684c75ab531 Author: dtitov Date: 2019-03-06 09:30 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6684c75ab531 8218464: vmTestbase/nsk/jdi/VirtualMachine/allThreads/allthreads001/TestDescription.java failed Reviewed-by: sspitsyn, gadams ! test/hotspot/jtreg/vmTestbase/nsk/jdi/VirtualMachine/allThreads/allthreads001.java Changeset: c5cf23055fcb Author: redestad Date: 2019-03-06 21:58 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c5cf23055fcb 8219713: Reduce work in DefaultMethods::generate_default_methods Reviewed-by: hseigel, dholmes, lfoltan, acorn ! src/hotspot/share/classfile/defaultMethods.cpp Changeset: 083d7a34bbfd Author: jwilhelm Date: 2019-03-07 00:23 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/083d7a34bbfd Added tag jdk-13+11 for changeset 21ea4076a275 ! .hgtags Changeset: cd701366fcf8 Author: thartmann Date: 2019-03-07 08:38 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/cd701366fcf8 8163511: Allocation of compile task fails with assert: "Leaking compilation tasks?" Summary: Use weak handles for compile tasks to allow unloading of referenced methods. Reviewed-by: kvn, coleenp, eosterlund ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/compiler/compileTask.cpp ! src/hotspot/share/compiler/compileTask.hpp ! src/hotspot/share/runtime/compilationPolicy.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/tieredThresholdPolicy.cpp + test/hotspot/jtreg/compiler/classUnloading/methodUnloading/TestOverloadCompileQueues.java Changeset: a7cccbdf73f3 Author: goetz Date: 2019-03-06 16:01 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/a7cccbdf73f3 8219651: compiler/ciReplay/TestServerVM.java is failing on windows Reviewed-by: thartmann, kvn ! test/hotspot/jtreg/compiler/ciReplay/CiReplayBase.java Changeset: 274361bd6915 Author: shade Date: 2019-03-07 10:22 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/274361bd6915 8220228: Improve Shenandoah pacing histogram message Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahPacer.cpp Changeset: 0f9a54a13803 Author: rehn Date: 2019-03-07 10:32 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/0f9a54a13803 8220050: Deprecate -XX:-ThreadLocalHandshakes Reviewed-by: dcubed, mdoerr ! src/hotspot/share/runtime/arguments.cpp ! test/hotspot/jtreg/runtime/CommandLine/VMDeprecatedOptions.java Changeset: 15595ecf9cf1 Author: shade Date: 2019-03-07 10:50 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/15595ecf9cf1 8215221: Serial GC misreports young GC time Reviewed-by: kbarrett, manc ! src/hotspot/share/gc/shared/genCollectedHeap.cpp ! src/hotspot/share/gc/shared/genCollectedHeap.hpp Changeset: c112c2d5a856 Author: gadams Date: 2019-03-07 07:19 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c112c2d5a856 8201252: unquarantine nsk/jdi/ThreadReference/resume/resume001 Reviewed-by: cjplummer ! test/hotspot/jtreg/ProblemList.txt Changeset: 6347ffe2c3c7 Author: redestad Date: 2019-03-05 16:39 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6347ffe2c3c7 8220159: Optimize various RegMask operations by introducing watermarks Reviewed-by: neliasso, thartmann ! src/hotspot/share/opto/chaitin.hpp ! src/hotspot/share/opto/regmask.cpp ! src/hotspot/share/opto/regmask.hpp Changeset: ff399127078a Author: bsrbnd Date: 2019-03-07 15:27 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ff399127078a 8217561: X86: Add floating-point Math.min/max intrinsics Summary: Implementation taking care of +/-0.0 and NaN which uses a specific pattern for reductions Reviewed-by: aph, kvn, neliasso, sviswanathan, adinn Contributed-by: Jatin Bhateja ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/x86.ad ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/loopTransform.cpp ! test/hotspot/jtreg/compiler/intrinsics/math/TestFpMinMaxIntrinsics.java + test/micro/org/openjdk/bench/vm/compiler/FpMinMaxIntrinsics.java Changeset: a764c49570c6 Author: henryjen Date: 2019-03-07 10:18 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/a764c49570c6 8217216: Launcher does not defend itself against LD_LIBRARY_PATH_64 (Solaris) Reviewed-by: rriggs ! src/java.base/unix/native/libjli/java_md_solinux.c ! test/jdk/tools/launcher/Test7029048.java Changeset: e445608fce9b Author: mullan Date: 2019-03-07 14:29 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e445608fce9b 8218618: Program fails when using JDK addressed by UNC path and using Security Manager Reviewed-by: weijun ! src/java.base/share/classes/sun/security/provider/PolicyFile.java Changeset: f0af7fd0c9ca Author: mseledtsov Date: 2019-03-07 12:15 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f0af7fd0c9ca 8213448: [TESTBUG] enhance jfr/jvm/TestDumpOnCrash Summary: added 2 more crash scenarios, removed dumponexit, and more Reviewed-by: egahlin ! test/jdk/jdk/jfr/jvm/TestDumpOnCrash.java Changeset: 3e7fd3fe8411 Author: naoto Date: 2019-03-07 12:56 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/3e7fd3fe8411 8218948: SimpleDateFormat :: format - Zone Names are not reflected correctly during run time Reviewed-by: lancea, rgoel ! src/java.base/share/classes/sun/util/cldr/CLDRTimeZoneNameProviderImpl.java ! src/java.base/share/classes/sun/util/locale/provider/LocaleResources.java + test/jdk/java/text/Format/DateFormat/SDFTCKZoneNamesTest.java Changeset: a37939761ff6 Author: neliasso Date: 2019-03-07 22:16 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/a37939761ff6 8219448: split-if update_uses accesses stale idom data Reviewed-by: thartmann, kvn ! src/hotspot/share/opto/split_if.cpp Changeset: dcaced4cbb83 Author: mseledtsov Date: 2019-03-07 13:20 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/dcaced4cbb83 8219997: [TESTBUG] Create test for JFR events in Docker container: CPU, Memory and Process Info Summary: Start docker with limits on CPU/Mem, verify JFR reports correct data Reviewed-by: egahlin + test/hotspot/jtreg/runtime/containers/docker/JfrReporter.java + test/hotspot/jtreg/runtime/containers/docker/TestJFREvents.java Changeset: 4ff6c8365b69 Author: ascarpino Date: 2019-03-07 19:35 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/4ff6c8365b69 8220165: Encryption using GCM results in RuntimeException- input length out of bound Reviewed-by: valeriep ! src/java.base/share/classes/com/sun/crypto/provider/GaloisCounterMode.java + test/jdk/com/sun/crypto/provider/Cipher/AEAD/GCMLargeDataKAT.java Changeset: 889dae20c4c4 Author: sgehwolf Date: 2019-03-07 16:15 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/889dae20c4c4 8220283: ZGC fails to build on GCC 4.4.7: ATTRIBUTE_ALIGNED compatibility issue Reviewed-by: shade, kbarrett ! src/hotspot/share/utilities/globalDefinitions_gcc.hpp Changeset: feea57b38a1c Author: mdoerr Date: 2019-03-08 11:23 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/feea57b38a1c 8219584: Try to dump error file by thread which causes safepoint timeout Reviewed-by: stuefe, dholmes, kvn ! src/hotspot/os/posix/os_posix.cpp ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/share/runtime/globals.hpp ! src/hotspot/share/runtime/os.hpp ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/utilities/vmError.cpp + test/hotspot/jtreg/runtime/Safepoint/TestAbortVMOnSafepointTimeout.java Changeset: ac09c2498c64 Author: shade Date: 2019-03-08 12:01 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ac09c2498c64 8220290: gc/arguments/TestSurvivorRatioFlag.java fails after JDK-8215221 with CMS Reviewed-by: kbarrett, tschatzl ! src/hotspot/share/gc/shared/genCollectedHeap.cpp Changeset: 07540197d0fd Author: rehn Date: 2019-03-08 12:51 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/07540197d0fd 8220173: assert(_handle_mark_nesting > 1) failed: memory leak: allocating handle outside HandleMark Reviewed-by: dcubed, redestad ! src/hotspot/share/runtime/handshake.cpp Changeset: fa9b16328e6a Author: hseigel Date: 2019-03-08 08:19 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/fa9b16328e6a 8220085: runtime/CompressedOops/UseCompressedOops.java times out on Windows intermittently Summary: Increase the test's timeout to 480 and move it from tier1 to tier3. Reviewed-by: lfoltan, mseledtsov ! test/hotspot/jtreg/TEST.groups ! test/hotspot/jtreg/runtime/CompressedOops/UseCompressedOops.java Changeset: 65a9f034954f Author: sgehwolf Date: 2019-03-08 13:56 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/65a9f034954f 8220353: [TESTBUG] TestRegisterRestoring uses SafepointALot without UnlockDiagnosticVMOptions Reviewed-by: thartmann, shade ! test/hotspot/jtreg/compiler/runtime/safepoints/TestRegisterRestoring.java Changeset: c70747878f6f Author: neliasso Date: 2019-03-08 15:27 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c70747878f6f 8219642: ciReplay loads wrong data when MethodData size changes Reviewed-by: kvn, thartmann ! src/hotspot/share/ci/ciReplay.cpp Changeset: e693e12250d3 Author: mseledtsov Date: 2019-03-08 11:08 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e693e12250d3 8220313: [TESTBUG] Update base image for Docker testing to OL 7.6 Summary: Updated the OL version in Dockerfile in FROM field Reviewed-by: dcubed ! test/hotspot/jtreg/runtime/containers/docker/Dockerfile-BasicTest ! test/jdk/jdk/internal/platform/docker/Dockerfile-BasicTest Changeset: 2915818a0237 Author: mseledtsov Date: 2019-03-08 11:09 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/2915818a0237 Merge Changeset: fd6c13481231 Author: cushon Date: 2019-03-08 09:41 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/fd6c13481231 8220377: Unused field SourceFileObject.flatname Reviewed-by: jjg Contributed-by: Ron Shapiro ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java Changeset: 56adab1e0edd Author: bobv Date: 2019-03-08 16:20 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/56adab1e0edd 8220323: Fix copyright header text Reviewed-by: lancea ! src/java.base/linux/classes/jdk/internal/platform/cgroupv1/Metrics.java Changeset: bba6644b6fe3 Author: bobv Date: 2019-03-08 16:21 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/bba6644b6fe3 8220334: Fix copyright header text Reviewed-by: lancea ! src/jdk.internal.jvmstat/share/classes/sun/jvmstat/perfdata/monitor/protocol/local/PerfDataFile.java Changeset: 6dd6f988b4e4 Author: redestad Date: 2019-03-08 23:02 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6dd6f988b4e4 8219860: Cleanup ClassFileParser::parse_linenumber_table Reviewed-by: rehn, lfoltan, hseigel ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/classfile/classFileParser.hpp ! src/hotspot/share/classfile/classFileStream.cpp ! src/hotspot/share/classfile/classFileStream.hpp ! src/hotspot/share/code/compressedStream.cpp ! src/hotspot/share/code/compressedStream.hpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/oops/method.inline.hpp ! src/hotspot/share/runtime/relocator.cpp Changeset: 0324b3756aa2 Author: ecaspole Date: 2019-03-08 17:45 -0500 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/0324b3756aa2 8220368: Update String.indexOf to test all the C2 intrinsics Summary: Add new micros for Latin1 and UTF-16 Reviewed-by: kvn, redestad ! test/micro/org/openjdk/bench/java/lang/StringIndexOf.java Changeset: d9853137aa28 Author: dholmes Date: 2019-03-10 18:53 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d9853137aa28 8219685: Startup failure: assert(!Universe::is_module_initialized()) failed: Incorrect java.lang.Module pre module system initialization Reviewed-by: lfoltan, redestad ! src/hotspot/share/classfile/javaClasses.cpp Changeset: c97c87e96897 Author: shade Date: 2019-03-11 00:06 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c97c87e96897 8220350: Refactor ShenandoahHeap::initialize Reviewed-by: rkennke, zgu ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.inline.hpp Changeset: f02c6b980c04 Author: shade Date: 2019-03-11 00:06 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f02c6b980c04 8220153: Shenandoah does not work with TransparentHugePages properly Reviewed-by: rkennke, zgu ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp Changeset: 0a9cb99a98a0 Author: shade Date: 2019-03-11 00:06 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/0a9cb99a98a0 8220162: Shenandoah should not commit HugeTLBFS memory Reviewed-by: rkennke, zgu ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.cpp Changeset: 744dc9c33676 Author: kbarrett Date: 2019-03-11 02:05 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/744dc9c33676 8217417: Decorator name typo: C2_TIGHLY_COUPLED_ALLOC Summary: Fixed typo in decorator name, variables, and comments. Reviewed-by: tschatzl ! src/hotspot/share/gc/shared/c2/barrierSetC2.hpp ! src/hotspot/share/gc/shared/c2/modRefBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp ! src/hotspot/share/opto/arraycopynode.cpp ! src/hotspot/share/opto/arraycopynode.hpp ! src/hotspot/share/opto/library_call.cpp Changeset: e4cc94318c37 Author: pmuthuswamy Date: 2019-03-11 14:17 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e4cc94318c37 8219632: Remove reference to com.sun.javadoc API in RemoveOldDoclet test Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java - test/langtools/jdk/javadoc/tool/removeOldDoclet/OldDoclet.jasm ! test/langtools/jdk/javadoc/tool/removeOldDoclet/RemoveOldDoclet.java Changeset: 95978e7e8da0 Author: nishjain Date: 2019-03-11 14:22 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/95978e7e8da0 8217254: CompactNumberFormat:: CompactNumberFormat?() constructor does not comply with spec. 8217721: CompactNumberFormat:: format?() method spec for IAEx is not complaint Reviewed-by: naoto ! src/java.base/share/classes/java/text/CompactNumberFormat.java ! test/jdk/java/text/Format/CompactNumberFormat/TestCompactNumber.java ! test/jdk/java/text/Format/CompactNumberFormat/TestCompactPatternsValidity.java Changeset: 9a1dd1203a4f Author: pmuthuswamy Date: 2019-03-11 14:57 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9a1dd1203a4f 8220087: Remove remnants of HTML4 support Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/DocType.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlTag.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlVersion.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/Links.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/WorkArounds.java ! test/langtools/jdk/javadoc/doclet/testNavigation/TestNavigation.java Changeset: a2d3ca8062b9 Author: thartmann Date: 2019-03-11 11:42 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/a2d3ca8062b9 8218201: Failures when vmIntrinsics::_getClass is not inlined Summary: Fix BCEscapeAnalyzer to correctly handle _getClass intrinsic. Reviewed-by: kvn, dlong, redestad, neliasso ! src/hotspot/share/ci/bcEscapeAnalyzer.cpp ! src/hotspot/share/ci/bcEscapeAnalyzer.hpp + test/hotspot/jtreg/compiler/escapeAnalysis/TestGetClass.java Changeset: ab7c5483df44 Author: shade Date: 2019-03-11 12:39 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ab7c5483df44 8074817: Resolve disabled warnings for libverify Reviewed-by: erikj, alanb ! make/lib/CoreLibraries.gmk ! src/java.base/share/native/libverify/check_code.c ! src/java.base/share/native/libverify/check_format.c Changeset: 1def2d745747 Author: rgoel Date: 2019-03-11 17:34 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1def2d745747 8220414: Correct copyright headers in Norm2AllModes.java and Normalizer2.java Summary: Updated copyright headers Reviewed-by: alanb ! src/java.base/share/classes/sun/text/normalizer/Norm2AllModes.java ! src/java.base/share/classes/sun/text/normalizer/Normalizer2.java Changeset: 289fd6cb7480 Author: clanger Date: 2019-03-11 15:34 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/289fd6cb7480 8220409: jdk/modules/scenarios/overlappingpackages/OverlappingPackagesTest.java - testOverlapWithBaseModule tests the wrong thing Reviewed-by: alanb ! test/jdk/jdk/modules/scenarios/overlappingpackages/OverlappingPackagesTest.java Changeset: 17a6681a5118 Author: redestad Date: 2019-03-11 17:33 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/17a6681a5118 8220420: Cleanup c1_LinearScan Reviewed-by: thartmann, neliasso ! src/hotspot/share/c1/c1_LinearScan.cpp ! src/hotspot/share/c1/c1_LinearScan.hpp Changeset: 687e10fefa11 Author: lancea Date: 2019-03-11 13:37 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/687e10fefa11 8220331: Remove extra spaces in copyright header Reviewed-by: naoto ! src/java.sql.rowset/share/classes/javax/sql/rowset/package-info.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/spi/package-info.java Changeset: be40860e8227 Author: zgu Date: 2019-03-11 14:06 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/be40860e8227 8220444: Shenandoah should use parallel version of WeakProcessor in root processor for weak roots Reviewed-by: rkennke, shade ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp Changeset: 1bc8513104f2 Author: darcy Date: 2019-03-11 11:23 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1bc8513104f2 8220346: Refactor java.lang.Throwable to use Objects.requireNonNull Reviewed-by: lancea, mchung, tvaleev, forax, martin, plevart ! src/java.base/share/classes/java/lang/Throwable.java Changeset: 53a95878619f Author: jjg Date: 2019-03-11 12:59 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/53a95878619f 8220202: Simplify/standardize method naming for HtmlTree Reviewed-by: hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractExecutableMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractModuleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractPackageIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllClassesFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllClassesIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllPackagesIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeFieldWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassUseWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstantsSummaryWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstructorWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Contents.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DocFilesHandlerImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/EnumConstantWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FieldWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FrameOutputWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HelpWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlSerialFieldWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlSerialMethodWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/IndexRedirectWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/LinkFactoryImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MethodWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModulePackageIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NestedClassWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageUseWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PropertyWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SerializedFormWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SingleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SourceToHTMLConverter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SplitIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SubWriterHolderWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TagletWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/Comment.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/ContentBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/FixedStringContent.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/Head.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlTree.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/Links.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/Navigation.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/RawHtml.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/Script.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/StringContent.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/Table.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/TableHeader.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Content.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeFieldBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeRequiredMemberBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ClassBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ConstructorBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/EnumConstantBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/FieldBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/MemberSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/MethodBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ModuleSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PackageSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PropertyBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/SerializedFormBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ParamTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/TagletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ThrowsTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/UserTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/links/LinkFactory.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/links/LinkInfo.java ! test/langtools/jdk/javadoc/doclet/testHtmlDocument/TestHtmlDocument.java Changeset: c5d0b3acab98 Author: joehw Date: 2019-03-11 15:51 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c5d0b3acab98 8219705: Wrong media-type for a given serialization method Reviewed-by: lancea ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java ! test/jaxp/TEST.ROOT + test/jaxp/javax/xml/jaxp/unittest/transform/OutputPropertiesTest.java Changeset: 62ab0859e7e5 Author: valeriep Date: 2019-03-11 23:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/62ab0859e7e5 8213008: Cipher with UNWRAP_MODE should support the generation of an AES key type Summary: Replaced CKK_GENERIC_SECRET with alorithm-specific key type in P11RSACipher unwrap impl Reviewed-by: ascarpino ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11RSACipher.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11SecretKeyFactory.java Changeset: b17caf731e27 Author: valeriep Date: 2019-03-11 23:51 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b17caf731e27 Merge Changeset: d3888a37ad03 Author: bsrbnd Date: 2019-03-12 02:13 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d3888a37ad03 8220407: compiler/intrinsics/math/TestFpMinMaxIntrinsics.java timedout Reviewed-by: kvn ! test/hotspot/jtreg/compiler/intrinsics/math/TestFpMinMaxIntrinsics.java Changeset: f984aca565c1 Author: dholmes Date: 2019-03-11 21:26 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f984aca565c1 8219721: jcmd from earlier release will hang attaching to VM with JDK-8215622 applied Summary: fix compatibility issue caused by jmap update of 8215622 Reviewed-by: dholmes, ysuenaga, phh, sspitsyn Contributed-by: zanglin5 at jd.com ! src/hotspot/share/services/attachListener.cpp ! src/hotspot/share/services/attachListener.hpp ! src/jdk.attach/aix/classes/sun/tools/attach/VirtualMachineImpl.java ! src/jdk.attach/linux/classes/sun/tools/attach/VirtualMachineImpl.java ! src/jdk.attach/macosx/classes/sun/tools/attach/VirtualMachineImpl.java ! src/jdk.attach/solaris/classes/sun/tools/attach/VirtualMachineImpl.java ! src/jdk.attach/windows/classes/sun/tools/attach/VirtualMachineImpl.java ! src/jdk.jcmd/share/classes/sun/tools/jmap/JMap.java ! test/jdk/java/util/logging/TestLoggerWeakRefLeak.java Changeset: 1dbe0c210134 Author: pli Date: 2019-03-07 02:39 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1dbe0c210134 8214922: Add vectorization support for fmin/fmax Reviewed-by: adinn, roland ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/share/adlc/formssel.cpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/opto/vectornode.hpp ! src/hotspot/share/runtime/vmStructs.cpp Changeset: 94d1e2c8fe01 Author: thartmann Date: 2019-03-12 10:09 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/94d1e2c8fe01 8220341: Class redefinition fails with assert(!is_unloaded()) failed: unloaded method on the stack Summary: Skip unloaded methods in compile queue during marking. Reviewed-by: kvn, neliasso, eosterlund, coleenp ! src/hotspot/share/compiler/compileTask.cpp Changeset: b067bd7edc26 Author: chegar Date: 2019-03-12 09:22 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b067bd7edc26 8184315: Typo in java.net.JarURLConnection.getCertificates() method documentation Reviewed-by: dfuchs ! src/java.base/share/classes/java/net/JarURLConnection.java Changeset: c4fb912f3085 Author: mdoerr Date: 2019-03-12 11:53 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c4fb912f3085 8220441: [PPC64] Clobber memory effect missing for memory barriers in atomics Reviewed-by: simonis, goetz ! src/hotspot/os_cpu/aix_ppc/atomic_aix_ppc.hpp ! src/hotspot/os_cpu/linux_ppc/atomic_linux_ppc.hpp Changeset: f9092c7d8677 Author: gadams Date: 2019-03-12 07:17 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f9092c7d8677 8013728: nsk/jdi/BScenarios/hotswap/tc10x001 Unrecognized Windows Sockets error: 0: recv failed Reviewed-by: cjplummer, amenkov ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/vmTestbase/nsk/jdi/BScenarios/hotswap/tc10x001.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/BScenarios/hotswap/tc10x001/newclass/tc10x001a.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/BScenarios/hotswap/tc10x001a.java Changeset: ab17708ec5c3 Author: sgehwolf Date: 2019-03-07 17:34 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ab17708ec5c3 8220294: ZGC fails to build on GCC 4.4.7: Type parameter issue Summary: Specify explicit type in the constructor Reviewed-by: shade, pliden ! src/hotspot/share/gc/z/zStat.cpp Changeset: 9911f18d6a40 Author: rschmelter Date: 2019-03-11 05:09 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9911f18d6a40 8220363: hotspot-ide project fails Reviewed-by: clanger, erikj ! make/hotspot/ide/CreateVSProject.gmk Changeset: ee53a278b9d8 Author: zgu Date: 2019-03-12 09:59 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ee53a278b9d8 8220344: Build failures when using --with-jvm-features=-g1gc,-jfr Reviewed-by: tschatzl, zgu Contributed-by: Ao Qi ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp Changeset: 9c6508806663 Author: redestad Date: 2019-03-12 15:29 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9c6508806663 8220501: Improve c1_ValueStack locks handling Reviewed-by: thartmann, neliasso ! src/hotspot/share/c1/c1_ValueStack.cpp ! src/hotspot/share/c1/c1_ValueStack.hpp Changeset: daec95ed6795 Author: dfuchs Date: 2019-03-12 14:35 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/daec95ed6795 8220262: fix headings in java.logging Reviewed-by: lancea ! src/java.logging/share/classes/java/util/logging/LogManager.java Changeset: 4b4745d185eb Author: erikj Date: 2019-03-12 08:04 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/4b4745d185eb 8220383: Incremental build is broken and inefficient Reviewed-by: tbell ! make/CompileJavaModules.gmk ! make/Images.gmk ! make/common/NativeCompilation.gmk ! make/common/ProcessMarkdown.gmk ! make/common/TestFilesCompilation.gmk ! make/hotspot/lib/CompileJvm.gmk ! make/test/JtregGraalUnit.gmk ! make/test/JtregNativeHotspot.gmk ! make/test/JtregNativeJdk.gmk Changeset: b4f4778cf3d9 Author: redestad Date: 2019-03-12 16:18 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b4f4778cf3d9 8220515: Revert removal of for_each_lock_value removal Reviewed-by: thartmann ! src/hotspot/share/c1/c1_ValueStack.hpp Changeset: 085309069d3c Author: kbarrett Date: 2019-03-12 11:13 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/085309069d3c 8217576: C1 atomic access handlers use incorrect decorators Summary: Fix decorator defaulting. Reviewed-by: tschatzl, eosterlund ! src/hotspot/share/c1/c1_LIRGenerator.cpp Changeset: 018217e30f5c Author: gadams Date: 2019-03-12 11:51 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/018217e30f5c 8220257: fix headings in java.instrument Reviewed-by: dfuchs ! src/java.instrument/share/classes/java/lang/instrument/package-info.java Changeset: 75268d993deb Author: gadams Date: 2019-03-12 11:53 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/75268d993deb 8220474: Incorrect GPL header in src/java.instrument/share/classes/java/lang/instrument/package-info.java Reviewed-by: dholmes ! src/java.instrument/share/classes/java/lang/instrument/package-info.java Changeset: da14083871bb Author: rriggs Date: 2019-03-12 12:48 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/da14083871bb 8220237: ProcessBuilder API documentation typo Reviewed-by: dfuchs ! src/java.base/share/classes/java/lang/ProcessBuilder.java Changeset: 6a15e411595e Author: lancea Date: 2019-03-12 14:56 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6a15e411595e 8220005: java/util/Arrays/TimSortStackSize2.java times out Reviewed-by: bchristi ! test/jdk/ProblemList.txt Changeset: d9bcf74fc56a Author: erikj Date: 2019-03-12 12:12 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d9bcf74fc56a 8220529: JDK-8220383 broke test image build Reviewed-by: tbell ! make/test/JtregNativeHotspot.gmk ! make/test/JtregNativeJdk.gmk Changeset: 84f10bbf993f Author: jwilhelm Date: 2019-03-12 19:17 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/84f10bbf993f 8218074: Update Graal Reviewed-by: kvn ! make/CompileJavaModules.gmk ! make/test/JtregGraalUnit.gmk ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/Linker.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/Main.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/collect/ClassSearch.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64/src/org/graalvm/compiler/asm/aarch64/AArch64Assembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64/src/org/graalvm/compiler/asm/aarch64/AArch64MacroAssembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.amd64/src/org/graalvm/compiler/asm/amd64/AMD64Assembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.amd64/src/org/graalvm/compiler/asm/amd64/AMD64BaseAssembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.sparc/src/org/graalvm/compiler/asm/sparc/SPARCAssembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.test/src/org/graalvm/compiler/asm/test/AssemblerTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/BranchTargetOutOfBoundsException.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.code/src/org/graalvm/compiler/code/CompilationResult.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.code/src/org/graalvm/compiler/code/HexCodeFileDisassemblerProvider.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64.test/src/org/graalvm/compiler/core/aarch64/test/AArch64CbzTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64.test/src/org/graalvm/compiler/core/aarch64/test/AArch64MembarOpTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64.test/src/org/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64LIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64NodeMatchRules.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64LIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/GraalOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/SpeculativeExecutionAttacksMitigations.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/cfg/AbstractBlockBase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/cfg/CFGVerifier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/cfg/Loop.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/doc-files/MitigateSpeculativeExecutionAttacksHelp.txt ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/AbstractObjectStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/AbstractPointerStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/IllegalStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/ObjectStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/PrimitiveStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/Stamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/StampPair.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/SymbolicJVMCIReference.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/VoidStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/UnsignedLong.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CheckGraalInvariants.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTestBase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CountedLoopTest2.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/DumpPathTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraalCompilerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraphEncoderTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardPrioritiesTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/IntegerDivRemConstantTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/MemoryScheduleTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/NestedLoopTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/SwitchCanonicalizerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyCallerSensitiveMethods.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyDebugUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/backend/BackendTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/deopt/RethrowDeoptMaterializeTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/EscapeAnalysisTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/GraalCompiler.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/gen/LIRCompilerBackend.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/gen/LIRGenerationProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/gen/NodeLIRBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/HighTier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/LowTier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/target/Backend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugContext.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/IgvDumpChannel.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/PathUtilities.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/doc-files/PrintGraphHelp.txt + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph.test/src/org/graalvm/compiler/graph/test/graphio/GraphOutputTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeClass.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotJumpToExceptionHandlerInCallerOp.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64.test/src/org/graalvm/compiler/hotspot/amd64/test/BinaryMathStubTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64.test/src/org/graalvm/compiler/hotspot/amd64/test/UnaryMathStubTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotAddressLowering.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotBackendFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotForeignCallsProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotJumpToExceptionHandlerInCallerOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotMaths.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64MathStub.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64X87MathIntrinsicNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64X87MathSnippets.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.jdk9.test/src/org/graalvm/compiler/hotspot/jdk9/test/StringUTF16ToBytesGetCharsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.lir.test/src/org/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotMove.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CheckGraalIntrinsics.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CompileTheWorld.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/EliminateRedundantInitializationPhaseTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/GraalOSRTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/JVMCIInfopointErrorTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/OptionsInFileTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/ReservedStackAccessTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/WriteBarrierVerificationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompilationTask.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfig.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotCompiledCodeBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotDataBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalCompilerFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalJVMCIServiceLocator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalOptionValues.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalRuntime.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotReplacementsImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotTTYStreamProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/JVMCIVersionCheck.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/SymbolicSnippetEncoder.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ArrayRangePostWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ArrayRangePreWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1BarrierSet.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1PostWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1PreWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ReferentFieldReadBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/ArrayRangeWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/BarrierSet.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/CardTableBarrierSet.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/ObjectWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/SerialArrayRangeWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/SerialWriteBarrier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotClassInitializationPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraalConstantFieldProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotHostForeignCallsProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotNodePlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotUnsafeSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotWordOperationPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/AllocaNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/ArrayRangeWriteBarrier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DimensionsNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1ArrayRangePostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1ArrayRangePreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1PostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1PreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1ReferentFieldReadBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/ObjectWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SerialArrayRangeWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SerialWriteBarrier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/KlassPointerStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/OnStackReplacementPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/WriteBarrierAdditionPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/WriteBarrierVerificationPhase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/ArraysSupportSubstitutions.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/CounterModeSubstitutions.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/DigestBaseSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HotSpotClassSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HotSpotReplacementsUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/NewObjectSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/SHA2Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/SHA5Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/SHASubstitutions.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/StringUTF16Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/OutOfBoundsExceptionStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/Stub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/IntegerExactOpSpeculation.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/optimize/IfNodeCanonicalizationsTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/optimize/SwitchHashTableTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64Call.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64ControlFlow.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64Move.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64ArrayEqualsOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64ControlFlow.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64HotSpotHelper.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64MathCosOp.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64MathExpOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64MathIntrinsicBinaryOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64MathLog10Op.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64MathLogOp.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64MathPowOp.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64MathSinOp.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64MathTanOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64Move.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.jtt/src/org/graalvm/compiler/lir/jtt/SPARCBranchBailoutTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIR.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIRValueUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/StandardOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/Variable.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/ssa/SSALinearScanLifetimeAnalysisPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/asm/CompilationResultBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/asm/DataBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/gen/ArithmeticLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/gen/LIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/gen/LIRGeneratorTool.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/hashing/HashFunction.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/hashing/Hasher.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssa/SSAUtil.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/ConvertDeoptimizeToGuardPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopTransformations.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/BasicInductionVariable.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/CountedLoopInfo.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/DefaultLoopPolicies.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/DerivedConvertedInductionVariable.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/DerivedOffsetInductionVariable.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/DerivedScaledInductionVariable.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/InductionVariable.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopEx.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopFragment.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopFragmentInside.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopFragmentWhole.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/MathUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.microbenchmarks/src/org/graalvm/compiler/microbenchmarks/lir/GraalCompilerState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/IfNodeCanonicalizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/AbstractFixedGuardNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/ComputeObjectAddressNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/ConstantNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/EncodedGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/FrameState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/GraphDecoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/GraphEncoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/IfNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/LogicNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/LoopBeginNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/LoopExitNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/PiNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/BinaryArithmeticNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/IntegerDivRemNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/IntegerEqualsNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/IntegerLessThanNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/IntegerMulHighNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/IsNullNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/RightShiftNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/SignedDivNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/SignedRemNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/UnsignedRightShiftNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/cfg/Block.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/cfg/ControlFlowGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/JavaReadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/GeneratedInvocationPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/MethodSubstitutionPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/NodePlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/NewArrayNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/address/IndexAddressNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/NodeLIRBuilderTool.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/Replacements.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/type/NarrowOopStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/util/GraphUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.processor/src/org/graalvm/compiler/options/processor/OptionProcessor.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionDescriptor.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionKey.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionValues.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionsParser.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ConvertDeoptimizeToGuardPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/FixReadsPhase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/OptimizeDivPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/RemoveValueProxyPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/graph/ReentrantBlockIterator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/util/GraphOrder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinterDumpHandler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.aarch64/src/org/graalvm/compiler/replacements/aarch64/AArch64GraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64GraphBuilderPlugins.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64MathSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringLatin1Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringUTF16Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.processor/src/org/graalvm/compiler/replacements/processor/GeneratedPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/DeoptimizeOnIntegerExactTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/IntegerExactFoldTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ReplacementsParseTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/StringCompareToTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/StringIndexOfTestBase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/classfile/ClassfileBytecodeProviderTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/CachingPEGraphDecoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/DefaultJavaLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/GraphKit.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/IntrinsicGraphBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/PEGraphDecoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/ReplacementsImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/SnippetCounter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/SnippetIntegerHistogram.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/SnippetTemplate.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/StandardGraphBuilderPlugins.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/StringUTF16Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/arraycopy/ArrayCopyCallNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/arraycopy/ArrayCopyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/arraycopy/ArrayCopySnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/ArrayCompareToNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/ArrayRegionEqualsNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/BasicArrayCopyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/BasicObjectCloneNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/BinaryMathIntrinsicNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/MacroNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerAddExactNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerAddExactOverflowNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerExactArithmeticNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerExactArithmeticSplitNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerExactOverflowNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerMulExactNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerMulExactOverflowNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerMulHighNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerSubExactNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerSubExactOverflowNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.serviceprovider/src/org/graalvm/compiler/serviceprovider/GraalServices.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.serviceprovider/src/org/graalvm/compiler/serviceprovider/JavaVersionUtil.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.serviceprovider/src/org/graalvm/compiler/serviceprovider/SpeculationReasonGroup.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/GraalTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/SubprocessUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/EffectsClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/GraphOutput.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/GraphProtocol.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/ProtocolImpl.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.util/src/org/graalvm/util/DirectAnnotationAccess.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.util/src/org/graalvm/util/GuardedAnnotationAccess.java ! test/hotspot/jtreg/ProblemList-graal.txt + test/hotspot/jtreg/compiler/graalunit/EA9Test.java + test/hotspot/jtreg/compiler/graalunit/HotspotJdk9Test.java ! test/hotspot/jtreg/compiler/graalunit/TestPackages.txt Changeset: ab87b06dfdc0 Author: manc Date: 2019-01-15 15:59 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ab87b06dfdc0 8212206: Refactor AdaptiveSizePolicy to separate out code related to GC overhead Summary: Move check_gc_overhead_limit() and related code to its own class Reviewed-by: tschatzl, pliden, jiangli ! src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp ! src/hotspot/share/gc/parallel/psGCAdaptivePolicyCounters.cpp ! src/hotspot/share/gc/parallel/psGCAdaptivePolicyCounters.hpp ! src/hotspot/share/gc/parallel/psMarkSweep.cpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psScavenge.cpp ! src/hotspot/share/gc/shared/adaptiveSizePolicy.cpp ! src/hotspot/share/gc/shared/adaptiveSizePolicy.hpp + src/hotspot/share/gc/shared/gcOverheadChecker.cpp + src/hotspot/share/gc/shared/gcOverheadChecker.hpp ! src/hotspot/share/gc/shared/gcPolicyCounters.cpp ! src/hotspot/share/gc/shared/gcPolicyCounters.hpp ! src/hotspot/share/gc/shared/gc_globals.hpp Changeset: ccb4a50bee06 Author: aeubanks Date: 2019-02-27 13:34 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ccb4a50bee06 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests Summary: Tests that hardcode "127.0.0.1" fail in an environment where only IPv6 is available and IPv4 is not. Reviewed-by: chegar, dfuchs, michaelm Contributed-by: aeubanks at google.com ! test/jdk/com/sun/net/httpserver/TestLogging.java ! test/jdk/com/sun/net/httpserver/bugs/6725892/Test.java ! test/jdk/com/sun/net/httpserver/bugs/B6361557.java ! test/jdk/com/sun/net/httpserver/bugs/TruncatedRequestBody.java ! test/jdk/com/sun/nio/sctp/SctpMultiChannel/SendFailed.java ! test/jdk/java/net/Authenticator/B6870935.java ! test/jdk/java/net/DatagramSocket/SendDatagramToBadAddress.java ! test/jdk/java/net/HttpURLConnection/SetAuthenticator/HTTPTestServer.java ! test/jdk/java/net/Socket/UrgentDataTest.java ! test/jdk/java/net/SocketOption/OptionsTest.java ! test/jdk/java/net/SocketOption/TcpKeepAliveTest.java ! test/jdk/java/net/httpclient/UnknownBodyLengthTest.java ! test/jdk/java/nio/channels/AsyncCloseAndInterrupt.java ! test/jdk/java/nio/channels/AsynchronousChannelGroup/bootlib/Attack.java ! test/jdk/java/nio/channels/Selector/LotsOfCancels.java ! test/jdk/java/nio/channels/SocketChannel/AsyncCloseChannel.java ! test/jdk/java/nio/channels/SocketChannel/CloseRegisteredChannel.java ! test/jdk/java/nio/channels/SocketChannel/CloseTimeoutChannel.java ! test/jdk/java/nio/channels/SocketChannel/SocketInheritance.java ! test/jdk/java/nio/channels/etc/AdaptorCloseAndInterrupt.java ! test/jdk/java/nio/channels/etc/Shadow.java ! test/jdk/java/nio/charset/coders/StreamTimeout.java ! test/jdk/java/rmi/transport/readTimeout/ReadTimeoutTest.java ! test/jdk/jdk/net/Sockets/QuickAckTest.java ! test/jdk/jdk/net/Sockets/Test.java ! test/jdk/sun/net/www/protocol/http/TunnelThroughProxy.java Changeset: 0bbff075bf41 Author: dtitov Date: 2019-03-12 17:55 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/0bbff075bf41 8220244: vmTestbase/nsk/jvmti/scenarios/sampling/SP06/sp06t003 hasn't been un-problemlisted Reviewed-by: dlong ! test/hotspot/jtreg/ProblemList-graal.txt Changeset: 1cef5fc16af8 Author: weijun Date: 2019-03-13 09:05 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1cef5fc16af8 8220256: fix headings in java.security.sasl Reviewed-by: mullan ! src/java.security.sasl/share/classes/javax/security/sasl/package-info.java Changeset: fc84d7c22132 Author: valeriep Date: 2019-03-13 02:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/fc84d7c22132 8220258: fix headings in java.smartcardio Summary: Replace h3 with h2 Reviewed-by: ascarpino ! src/java.smartcardio/share/classes/javax/smartcardio/package-info.java Changeset: 3086f9259e97 Author: aoqi Date: 2019-03-13 00:48 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/3086f9259e97 8170639: [Linux] jsig is limited to a maximum of 64 signals Reviewed-by: dholmes, iklam ! src/hotspot/os/aix/os_aix.cpp ! src/hotspot/os/aix/os_aix.hpp ! src/hotspot/os/bsd/os_bsd.cpp ! src/hotspot/os/bsd/os_bsd.hpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/linux/os_linux.hpp ! src/hotspot/os/posix/os_posix.cpp ! src/hotspot/os/posix/os_posix.hpp Changeset: efb8569c95d5 Author: clanger Date: 2019-03-13 11:08 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/efb8569c95d5 8220504: Move definition of JAVA_VERSION_INFO_RESOURCE to Launcher-java.base.gmk Reviewed-by: erikj ! make/launcher/Launcher-java.base.gmk ! make/launcher/LauncherCommon.gmk Changeset: 48a02303574e Author: pliden Date: 2019-03-13 11:31 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/48a02303574e 8219816: Add IsArray/RemoveExtent type traits utilities Reviewed-by: kbarrett, eosterlund + src/hotspot/share/metaprogramming/isArray.hpp + src/hotspot/share/metaprogramming/removeExtent.hpp + test/hotspot/gtest/metaprogramming/test_isArray.cpp + test/hotspot/gtest/metaprogramming/test_removeExtent.cpp Changeset: 9d02451b536e Author: pliden Date: 2019-03-13 11:31 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9d02451b536e 8219817: Remove unused CollectedHeap::block_size() Reviewed-by: shade, stefank ! src/hotspot/share/gc/epsilon/epsilonHeap.hpp ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/parallel/parallelScavengeHeap.cpp ! src/hotspot/share/gc/parallel/parallelScavengeHeap.hpp ! src/hotspot/share/gc/shared/collectedHeap.hpp ! src/hotspot/share/gc/shared/genCollectedHeap.cpp ! src/hotspot/share/gc/shared/genCollectedHeap.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp ! src/hotspot/share/gc/z/zCollectedHeap.cpp ! src/hotspot/share/gc/z/zCollectedHeap.hpp ! src/hotspot/share/gc/z/zHeap.cpp ! src/hotspot/share/gc/z/zHeap.hpp ! src/hotspot/share/gc/z/zPage.hpp ! src/hotspot/share/gc/z/zPage.inline.hpp Changeset: ed3c6f07faab Author: pliden Date: 2019-03-13 11:31 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ed3c6f07faab 8219633: ZGC: Rename ZPageSizeMin to ZGranuleSize Reviewed-by: eosterlund, stefank ! src/hotspot/os_cpu/linux_x86/gc/z/zGlobals_linux_x86.hpp ! src/hotspot/os_cpu/linux_x86/gc/z/zPhysicalMemoryBacking_linux_x86.cpp ! src/hotspot/os_cpu/linux_x86/gc/z/zPhysicalMemoryBacking_linux_x86.hpp ! src/hotspot/share/gc/z/vmStructs_z.hpp ! src/hotspot/share/gc/z/zCollectorPolicy.cpp ! src/hotspot/share/gc/z/zDebug.gdb ! src/hotspot/share/gc/z/zGlobals.hpp ! src/hotspot/share/gc/z/zHeap.cpp ! src/hotspot/share/gc/z/zHeapIterator.cpp ! src/hotspot/share/gc/z/zHeapIterator.hpp ! src/hotspot/share/gc/z/zObjectAllocator.cpp ! src/hotspot/share/gc/z/zPage.cpp ! src/hotspot/share/gc/z/zPageAllocator.cpp ! src/hotspot/share/gc/z/zPageTable.cpp ! src/hotspot/share/gc/z/zPageTable.hpp ! src/hotspot/share/gc/z/zPhysicalMemory.cpp ! src/hotspot/share/gc/z/zPhysicalMemory.hpp ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/z/ZAddressRangeMapForPageTable.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/z/ZGlobals.java ! test/hotspot/gtest/gc/z/test_zPhysicalMemory.cpp Changeset: 8b4a1177202d Author: pliden Date: 2019-03-13 11:31 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/8b4a1177202d 8219634: ZGC: Rename ZAddressRangeMap to ZGranuleMap Reviewed-by: eosterlund, stefank ! src/hotspot/share/gc/z/vmStructs_z.hpp - src/hotspot/share/gc/z/zAddressRangeMap.hpp - src/hotspot/share/gc/z/zAddressRangeMap.inline.hpp + src/hotspot/share/gc/z/zGranuleMap.hpp + src/hotspot/share/gc/z/zGranuleMap.inline.hpp ! src/hotspot/share/gc/z/zHeapIterator.cpp ! src/hotspot/share/gc/z/zHeapIterator.hpp ! src/hotspot/share/gc/z/zPageTable.cpp ! src/hotspot/share/gc/z/zPageTable.hpp ! src/hotspot/share/gc/z/zPageTable.inline.hpp ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/z/ZGranuleMapForPageTable.java < src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/z/ZAddressRangeMapForPageTable.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/z/ZPageTable.java Changeset: acf36e8d61c6 Author: chegar Date: 2019-03-13 12:02 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/acf36e8d61c6 8220480: Typo in java.net.http.HttpResponse.BodySubscriber documentation Reviewed-by: alanb ! src/java.net.http/share/classes/java/net/http/HttpResponse.java Changeset: 9fc262a75638 Author: tnakamura Date: 2019-03-13 13:05 +0900 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9fc262a75638 8220227: Host Locale Provider getDisplayCountry returns error message under non-English Win10 Summary: Adjusting to detect translated Unknown messages Reviewed-by: naoto ! src/java.base/windows/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java ! src/java.base/windows/native/libjava/HostLocaleProviderAdapter_md.c ! test/jdk/java/util/Locale/LocaleProviders.java ! test/jdk/java/util/Locale/LocaleProvidersRun.java Changeset: 6f75811126c3 Author: chegar Date: 2019-03-13 12:25 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6f75811126c3 8220475: Malformed copyright header in LinuxSocketOptions.java, MacOSXSocketOptions.java and MacOSXSocketOptions.c Reviewed-by: alanb, dfuchs ! src/jdk.net/linux/classes/jdk/net/LinuxSocketOptions.java ! src/jdk.net/macosx/classes/jdk/net/MacOSXSocketOptions.java ! src/jdk.net/macosx/native/libextnet/MacOSXSocketOptions.c Changeset: fd332722014c Author: xuelei Date: 2019-03-13 07:14 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/fd332722014c 8160247: Mark deprecated javax.security.cert APIs with forRemoval=true Reviewed-by: weijun ! src/java.base/share/classes/com/sun/security/cert/internal/x509/X509V1CertImpl.java ! src/java.base/share/classes/javax/net/ssl/HandshakeCompletedEvent.java ! src/java.base/share/classes/javax/net/ssl/SSLSession.java ! src/java.base/share/classes/javax/security/cert/Certificate.java ! src/java.base/share/classes/javax/security/cert/CertificateEncodingException.java ! src/java.base/share/classes/javax/security/cert/CertificateException.java ! src/java.base/share/classes/javax/security/cert/CertificateExpiredException.java ! src/java.base/share/classes/javax/security/cert/CertificateNotYetValidException.java ! src/java.base/share/classes/javax/security/cert/CertificateParsingException.java ! src/java.base/share/classes/javax/security/cert/X509Certificate.java ! src/java.base/share/classes/sun/security/ssl/SSLSessionImpl.java ! src/java.net.http/share/classes/jdk/internal/net/http/common/ImmutableExtendedSSLSession.java ! src/java.net.http/share/classes/jdk/internal/net/http/common/ImmutableSSLSession.java Changeset: 1a6a5a0260a7 Author: bpb Date: 2019-03-13 07:16 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1a6a5a0260a7 6504660: HPI panic callback is dead code Reviewed-by: dcubed, cjplummer, redestad ! src/jdk.jdwp.agent/unix/native/libjdwp/linker_md.c Changeset: 195309a6c7d5 Author: neliasso Date: 2019-03-13 15:22 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/195309a6c7d5 8219517: assert(false) failed: infinite loop in PhaseIterGVN::optimize Reviewed-by: kvn, thartmann ! src/hotspot/share/opto/memnode.cpp Changeset: fab8496eb541 Author: redestad Date: 2019-03-13 17:32 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/fab8496eb541 8220496: Race in java_lang_String::length() when deduplicating Reviewed-by: rkennke, pliden ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp ! src/hotspot/share/classfile/javaClasses.inline.hpp ! src/hotspot/share/gc/shared/stringdedup/stringDedupTable.cpp ! src/hotspot/share/gc/shared/stringdedup/stringDedupTable.hpp Changeset: 8b61a38be0c5 Author: zgu Date: 2019-03-13 13:33 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/8b61a38be0c5 8220546: Shenandoah Reports timing details for weak root processing Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahPhaseTimings.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp Changeset: 954399cb6959 Author: aeubanks Date: 2019-03-13 09:12 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/954399cb6959 8220585: Incorrect code in MulticastSocket sample code Summary: Sample code shows that String.length() can be passed to a DatagramPacket along with String.getBytes(), but is incorrect for non-ASCII Strings. Reviewed-by: martin, chegar Contributed-by: aeubanks at google.com ! src/java.base/share/classes/java/net/MulticastSocket.java Changeset: d58599c7cdef Author: jiangli Date: 2019-03-13 10:37 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d58599c7cdef Merge Changeset: 9a90236ab64c Author: lancea Date: 2019-03-13 14:10 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9a90236ab64c 8220253: Fix Headings in java.sql.rowset Reviewed-by: darcy ! src/java.sql.rowset/share/classes/com/sun/rowset/package-info.java ! src/java.sql.rowset/share/classes/com/sun/rowset/providers/RIOptimisticProvider.java ! src/java.sql.rowset/share/classes/com/sun/rowset/providers/RIXMLProvider.java ! src/java.sql.rowset/share/classes/com/sun/rowset/providers/package-info.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/BaseRowSet.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/CachedRowSet.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/FilteredRowSet.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/JdbcRowSet.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/JoinRowSet.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/Joinable.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/Predicate.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/WebRowSet.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialArray.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialBlob.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialClob.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialDatalink.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialJavaObject.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialRef.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialStruct.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/serial/package-info.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/spi/SyncFactory.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/spi/SyncProvider.java Changeset: 1d7aec80147a Author: bpb Date: 2019-03-13 11:12 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1d7aec80147a 8219597: (bf) Heap buffer state changes could provoke unexpected exceptions Reviewed-by: alanb, rriggs ! src/java.base/share/classes/java/nio/Heap-X-Buffer.java.template Changeset: 43a379369b0e Author: dfuchs Date: 2019-03-13 18:43 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/43a379369b0e 8219197: ThreadGroup.enumerate() may return wrong value Summary: ThreadGroup.enumerate(list,n,recurse) should never return a value that is less than n. Reviewed-by: clanger, chegar, prappo ! src/java.base/share/classes/java/lang/ThreadGroup.java + test/jdk/java/lang/ThreadGroup/Destroy.java Changeset: debb15cc04ee Author: epavlova Date: 2019-03-13 12:30 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/debb15cc04ee 8219882: [AOT] Develop regression test for 8218859 Reviewed-by: kvn + test/hotspot/jtreg/compiler/aot/cli/jaotc/CompileAbsoluteDirectoryTest.java ! test/hotspot/jtreg/compiler/aot/cli/jaotc/CompileDirectoryTest.java Changeset: f4f0dce5d0bb Author: tschatzl Date: 2019-03-13 21:01 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f4f0dce5d0bb 8220301: Remove jbyte use in CardTable Summary: Use CardTable::CardValue aliased to uint8_t instead. Reviewed-by: kbarrett, shade ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/gc/g1/g1BarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shared/cardTableBarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/arm/gc/g1/g1BarrierSetAssembler_arm.cpp ! src/hotspot/cpu/arm/gc/shared/cardTableBarrierSetAssembler_arm.cpp ! src/hotspot/cpu/ppc/gc/g1/g1BarrierSetAssembler_ppc.cpp ! src/hotspot/cpu/ppc/gc/shared/cardTableBarrierSetAssembler_ppc.cpp ! src/hotspot/cpu/ppc/gc/shared/cardTableBarrierSetAssembler_ppc.hpp ! src/hotspot/cpu/s390/gc/g1/g1BarrierSetAssembler_s390.cpp ! src/hotspot/cpu/s390/gc/shared/cardTableBarrierSetAssembler_s390.cpp ! src/hotspot/cpu/sparc/gc/g1/g1BarrierSetAssembler_sparc.cpp ! src/hotspot/cpu/sparc/gc/shared/cardTableBarrierSetAssembler_sparc.cpp ! src/hotspot/cpu/sparc/gc/shared/cardTableBarrierSetAssembler_sparc.hpp ! src/hotspot/cpu/x86/gc/g1/g1BarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/gc/shared/cardTableBarrierSetAssembler_x86.cpp ! src/hotspot/share/ci/ciUtilities.cpp ! src/hotspot/share/ci/ciUtilities.hpp ! src/hotspot/share/gc/cms/cmsCardTable.cpp ! src/hotspot/share/gc/cms/cmsCardTable.hpp ! src/hotspot/share/gc/g1/g1BarrierSet.cpp ! src/hotspot/share/gc/g1/g1BarrierSet.hpp ! src/hotspot/share/gc/g1/g1BarrierSet.inline.hpp ! src/hotspot/share/gc/g1/g1CardCounts.cpp ! src/hotspot/share/gc/g1/g1CardCounts.hpp ! src/hotspot/share/gc/g1/g1CardTable.cpp ! src/hotspot/share/gc/g1/g1CardTable.hpp ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.hpp ! src/hotspot/share/gc/g1/g1EvacFailure.cpp ! src/hotspot/share/gc/g1/g1HotCardCache.cpp ! src/hotspot/share/gc/g1/g1HotCardCache.hpp ! src/hotspot/share/gc/g1/g1ParScanThreadState.hpp ! src/hotspot/share/gc/g1/g1RemSet.cpp ! src/hotspot/share/gc/g1/g1RemSet.hpp ! src/hotspot/share/gc/parallel/psCardTable.cpp ! src/hotspot/share/gc/parallel/psCardTable.hpp ! src/hotspot/share/gc/shared/c1/cardTableBarrierSetC1.cpp ! src/hotspot/share/gc/shared/c2/cardTableBarrierSetC2.cpp ! src/hotspot/share/gc/shared/cardTable.cpp ! src/hotspot/share/gc/shared/cardTable.hpp ! src/hotspot/share/gc/shared/cardTableBarrierSet.cpp ! src/hotspot/share/gc/shared/cardTableBarrierSet.hpp ! src/hotspot/share/gc/shared/cardTableBarrierSet.inline.hpp ! src/hotspot/share/gc/shared/cardTableRS.cpp ! src/hotspot/share/gc/shared/cardTableRS.hpp ! src/hotspot/share/gc/shared/vmStructs_gc.hpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.hpp ! src/hotspot/share/jvmci/jvmciCompilerToVMInit.cpp Changeset: e8de5d46ecd4 Author: tschatzl Date: 2019-03-13 21:01 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e8de5d46ecd4 8220345: Use appropriate type for G1RemSetScanState::IsDirtyRegionState Reviewed-by: kbarrett, lkorinth ! src/hotspot/share/gc/g1/g1RemSet.cpp Changeset: db545bf94fbc Author: cjplummer Date: 2019-03-13 19:42 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/db545bf94fbc 8220352: Crash with assert(external_guard || result != __null) failed: Invalid JNI handle Summary: Don't delete globalrefs that might still be referenced Reviewed-by: gadams, jcbeyler, sspitsyn ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/MonitorWait/monitorwait001/monitorwait001.cpp ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/MonitorWaited/monitorwaited001/monitorwaited001.cpp Changeset: f7a745888a1e Author: jwilhelm Date: 2019-03-14 04:10 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f7a745888a1e Added tag jdk-13+12 for changeset 1d7aec80147a ! .hgtags Changeset: d295a7d2b933 Author: cushon Date: 2019-03-13 17:26 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d295a7d2b933 8220634: SymLinkArchiveTest should handle not being able to create symlinks Reviewed-by: jjg ! test/langtools/tools/javac/file/SymLinkArchiveTest.java Changeset: 17bf38efed0e Author: cushon Date: 2019-03-05 12:01 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/17bf38efed0e 8193277: SimpleFileObject inconsistency between getName and getShortName Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/tools/javac/file/PathFileObject.java + test/langtools/tools/javac/file/SymLinkShortNameTest.java Changeset: d066f85c2401 Author: dsimms Date: 2019-03-14 10:40 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d066f85c2401 Merge ! .hgtags ! make/CompileJavaModules.gmk ! make/Docs.gmk ! make/Images.gmk ! make/conf/jib-profiles.js - make/devkit/createMacosxDevkit6.sh - make/devkit/createMacosxDevkit9.sh - make/devkit/createWindowsDevkit2013.sh - make/devkit/createWindowsDevkit2015.sh ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/x86_64.ad - src/hotspot/os_cpu/linux_aarch64/linux_aarch64.ad - src/hotspot/os_cpu/linux_sparc/linux_sparc.ad ! src/hotspot/share/adlc/formssel.cpp ! src/hotspot/share/asm/codeBuffer.hpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/c1/c1_LinearScan.cpp ! src/hotspot/share/c1/c1_ValueStack.cpp ! src/hotspot/share/c1/c1_ValueStack.hpp ! src/hotspot/share/ci/bcEscapeAnalyzer.cpp ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciReplay.cpp ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/classfile/classFileParser.hpp - src/hotspot/share/classfile/dictionary.inline.hpp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/shared/c2/barrierSetC2.hpp ! src/hotspot/share/gc/shared/c2/cardTableBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp - src/hotspot/share/gc/z/zAddressRangeMap.hpp - src/hotspot/share/gc/z/zAddressRangeMap.inline.hpp ! src/hotspot/share/gc/z/zBarrierSet.cpp ! src/hotspot/share/interpreter/interpreterRuntime.cpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.hpp ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp ! src/hotspot/share/oops/cpCache.cpp ! src/hotspot/share/oops/cpCache.hpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/opto/arraycopynode.cpp ! src/hotspot/share/opto/arraycopynode.hpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/memnode.cpp ! src/hotspot/share/opto/output.cpp ! src/hotspot/share/opto/split_if.cpp - src/hotspot/share/prims/evmCompat.cpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/globals.hpp ! src/hotspot/share/runtime/mutexLocker.cpp ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/vmStructs.cpp - src/hotspot/share/utilities/intHisto.cpp - src/hotspot/share/utilities/intHisto.hpp - src/java.base/share/classes/com/sun/net/ssl/HostnameVerifier.java - src/java.base/share/classes/com/sun/net/ssl/HttpsURLConnection.java - src/java.base/share/classes/com/sun/net/ssl/KeyManager.java - src/java.base/share/classes/com/sun/net/ssl/KeyManagerFactory.java - src/java.base/share/classes/com/sun/net/ssl/KeyManagerFactorySpi.java - src/java.base/share/classes/com/sun/net/ssl/SSLContext.java - src/java.base/share/classes/com/sun/net/ssl/SSLContextSpi.java - src/java.base/share/classes/com/sun/net/ssl/SSLPermission.java - src/java.base/share/classes/com/sun/net/ssl/SSLSecurity.java - src/java.base/share/classes/com/sun/net/ssl/TrustManager.java - src/java.base/share/classes/com/sun/net/ssl/TrustManagerFactory.java - src/java.base/share/classes/com/sun/net/ssl/TrustManagerFactorySpi.java - src/java.base/share/classes/com/sun/net/ssl/X509KeyManager.java - src/java.base/share/classes/com/sun/net/ssl/X509TrustManager.java - src/java.base/share/classes/com/sun/net/ssl/internal/ssl/Provider.java - src/java.base/share/classes/com/sun/net/ssl/internal/ssl/X509ExtendedTrustManager.java - src/java.base/share/classes/com/sun/net/ssl/internal/www/protocol/https/DelegateHttpsURLConnection.java - src/java.base/share/classes/com/sun/net/ssl/internal/www/protocol/https/Handler.java - src/java.base/share/classes/com/sun/net/ssl/internal/www/protocol/https/HttpsURLConnectionOldImpl.java - src/java.base/share/classes/com/sun/net/ssl/package-info.java ! src/java.base/share/native/libverify/check_code.c ! src/java.base/share/native/libverify/check_format.c - src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/BaseStructure.java - src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/Marshaller.java - src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/XmlWriter.java - src/java.xml.crypto/share/classes/org/jcp/xml/dsig/internal/dom/XmlWriterToTree.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java - src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/z/ZAddressRangeMapForPageTable.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotMaths.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/ArrayRangeWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1ArrayRangePostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1ArrayRangePreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1PostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1PreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/G1ReferentFieldReadBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/ObjectWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SerialArrayRangeWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SerialWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/IntegerExactOpSpeculation.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ConvertDeoptimizeToGuardPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64MathSubstitutions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/arithmetic/IntegerMulHighNode.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlConstants.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlVersion.java - test/hotspot/gtest/memory/test_virtualSpaceNode.cpp ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/TEST.groups ! test/jdk/ProblemList.txt ! test/jdk/TEST.groups - test/jdk/com/sun/net/ssl/SSLSecurity/ComKeyManagerFactoryImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/ComSSLContextImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/ComTrustManagerFactoryImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/JavaxKeyManagerFactoryImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/JavaxSSLContextImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/JavaxTrustManagerFactoryImpl.java - test/jdk/com/sun/net/ssl/SSLSecurity/ProviderTest.java - test/jdk/com/sun/net/ssl/SSLSecurity/TruncateArray.java - test/jdk/javax/net/ssl/FixingJavadocs/ComURLNulls.java - test/jdk/javax/net/ssl/SSLSession/CheckMyTrustedKeystore.java - test/jdk/sun/net/www/protocol/https/NewImpl/ComHTTPSConnection.java - test/jdk/sun/net/www/protocol/https/NewImpl/ComHostnameVerifier.java - test/jdk/sun/security/ssl/X509TrustManagerImpl/ClientServer.java - test/langtools/jdk/javadoc/tool/removeOldDoclet/OldDoclet.jasm From rwestrel at redhat.com Thu Mar 14 12:04:11 2019 From: rwestrel at redhat.com (rwestrel at redhat.com) Date: Thu, 14 Mar 2019 12:04:11 +0000 Subject: hg: valhalla/valhalla: 8215560: [lworld] Investigate if method handle calls can be further optimized Message-ID: <201903141204.x2EC4CTV001238@aojmv0008.oracle.com> Changeset: 5979964785ae Author: roland Date: 2019-02-22 17:15 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/5979964785ae 8215560: [lworld] Investigate if method handle calls can be further optimized Reviewed-by: thartmann ! src/hotspot/share/opto/castnode.cpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/valuetypenode.cpp ! src/hotspot/share/opto/valuetypenode.hpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestMethodHandles.java From tobias.hartmann at oracle.com Thu Mar 14 13:07:11 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 14 Mar 2019 14:07:11 +0100 Subject: [lworld] RFR(S): 8220583: [lworld] Missing ValueTypeNode for value type receiver Message-ID: Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8220583 http://cr.openjdk.java.net/~thartmann/8220583/webrev.00/ GraphKit::set_arguments_for_java_call() sometimes sees unexpected oops for a value type receiver. We should scalarize after a value type receiver null check. The change also contains some refactoring and a small optimization when loading from a static, initialized value type field. Thanks, Tobias From tobias.hartmann at oracle.com Thu Mar 14 13:38:27 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 14 Mar 2019 14:38:27 +0100 Subject: [lworld] RFR(S): 8220666: [lworld] Nullability information is lost at checkcast in ciTypeFlow Message-ID: Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8220666 http://cr.openjdk.java.net/~thartmann/8220666/webrev.00/ When checkcasting from .box to .val and back .box we should keep track of the information that the value can never be null. Thanks, Tobias From tobias.hartmann at oracle.com Thu Mar 14 14:05:21 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 14 Mar 2019 15:05:21 +0100 Subject: [lworld] RFR(S): 8220666: [lworld] Nullability information is lost at checkcast in ciTypeFlow In-Reply-To: References: Message-ID: <78b1ac4e-5958-3413-6f8d-d6dfe165ff70@oracle.com> Found another problem when testing: In ciTypeFlow::StateVector::type_meet_internal(), we need to unwrap the type first before handling the constant NULL cases in line 287. Otherwise, meeting Value.val and NULL leads to Value.val instead of Value.box. Test11 of TestNullableValueTypes triggered this. I've updated the webrev in place: http://cr.openjdk.java.net/~thartmann/8220666/webrev.00/ Best regards, Tobias On 14.03.19 14:38, Tobias Hartmann wrote: > Hi, > > please review the following patch: > https://bugs.openjdk.java.net/browse/JDK-8220666 > http://cr.openjdk.java.net/~thartmann/8220666/webrev.00/ > > When checkcasting from .box to .val and back .box we should keep track of the information that the > value can never be null. > > Thanks, > Tobias > From mandy.chung at oracle.com Fri Mar 15 05:16:19 2019 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 15 Mar 2019 05:16:19 +0000 Subject: hg: valhalla/valhalla: [nestmates] Fixed tests with invalid nestmate membership. Message-ID: <201903150516.x2F5GJBT023426@aojmv0008.oracle.com> Changeset: 82995b3833f0 Author: mchung Date: 2019-03-14 22:16 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/82995b3833f0 [nestmates] Fixed tests with invalid nestmate membership. The outer class and the nested class are defined by two different class loaders and they should not be in the same package members. + test/langtools/jdk/javadoc/tool/DOption.java ! test/langtools/jdk/javadoc/tool/OptionSyntaxTest.java ! test/langtools/tools/javac/modules/AnnotationsOnModules.java + test/langtools/tools/javac/modules/ProxyTypeValidator.java + test/langtools/tools/javac/processing/model/element/ListMembersAP.java ! test/langtools/tools/javac/processing/model/element/TestOrigin.java From rwestrel at redhat.com Fri Mar 15 08:10:22 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 15 Mar 2019 09:10:22 +0100 Subject: [lworld] RFR(S): 8220583: [lworld] Missing ValueTypeNode for value type receiver In-Reply-To: References: Message-ID: <877ed0tv69.fsf@redhat.com> Hi Tobias, > http://cr.openjdk.java.net/~thartmann/8220583/webrev.00/ Isn't it a bug that we don't see a ValueTypeNode at the call? Roland. From rwestrel at redhat.com Fri Mar 15 08:11:34 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 15 Mar 2019 09:11:34 +0100 Subject: [lworld] RFR(S): 8220666: [lworld] Nullability information is lost at checkcast in ciTypeFlow In-Reply-To: <78b1ac4e-5958-3413-6f8d-d6dfe165ff70@oracle.com> References: <78b1ac4e-5958-3413-6f8d-d6dfe165ff70@oracle.com> Message-ID: <874l84tv49.fsf@redhat.com> > http://cr.openjdk.java.net/~thartmann/8220666/webrev.00/ Looks good to me. Roland. From tobias.hartmann at oracle.com Fri Mar 15 08:14:03 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 15 Mar 2019 09:14:03 +0100 Subject: [lworld] RFR(S): 8220583: [lworld] Missing ValueTypeNode for value type receiver In-Reply-To: <877ed0tv69.fsf@redhat.com> References: <877ed0tv69.fsf@redhat.com> Message-ID: Hi Roland, thanks for the review. On 15.03.19 09:10, Roland Westrelin wrote: > Isn't it a bug that we don't see a ValueTypeNode at the call? No, because the value type is nullable. It's only known to be non-null after the receiver null check and that's when we can/should create the ValueTypeNode. Thanks, Tobias From tobias.hartmann at oracle.com Fri Mar 15 08:14:14 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 15 Mar 2019 09:14:14 +0100 Subject: [lworld] RFR(S): 8220666: [lworld] Nullability information is lost at checkcast in ciTypeFlow In-Reply-To: <874l84tv49.fsf@redhat.com> References: <78b1ac4e-5958-3413-6f8d-d6dfe165ff70@oracle.com> <874l84tv49.fsf@redhat.com> Message-ID: <5ada7679-4e2a-7496-897b-b8cbf72ed233@oracle.com> Hi Roland, thanks for the review. Best regards, Tobias On 15.03.19 09:11, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/8220666/webrev.00/ > > Looks good to me. > > Roland. > From rwestrel at redhat.com Fri Mar 15 08:22:47 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 15 Mar 2019 09:22:47 +0100 Subject: [lworld] RFR(S): 8220583: [lworld] Missing ValueTypeNode for value type receiver In-Reply-To: References: <877ed0tv69.fsf@redhat.com> Message-ID: <87zhpwsg14.fsf@redhat.com> >> Isn't it a bug that we don't see a ValueTypeNode at the call? > > No, because the value type is nullable. It's only known to be non-null after the receiver null check > and that's when we can/should create the ValueTypeNode. That makes sense and the change looks to me. Roland. From tobias.hartmann at oracle.com Fri Mar 15 08:27:34 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 15 Mar 2019 09:27:34 +0100 Subject: [lworld] RFR(S): 8220583: [lworld] Missing ValueTypeNode for value type receiver In-Reply-To: <87zhpwsg14.fsf@redhat.com> References: <877ed0tv69.fsf@redhat.com> <87zhpwsg14.fsf@redhat.com> Message-ID: <6f72bdb3-9b7b-0c95-a381-c72e7df1dd79@oracle.com> Thanks Roland! Best regards, Tobias On 15.03.19 09:22, Roland Westrelin wrote: > >>> Isn't it a bug that we don't see a ValueTypeNode at the call? >> >> No, because the value type is nullable. It's only known to be non-null after the receiver null check >> and that's when we can/should create the ValueTypeNode. > > That makes sense and the change looks to me. > > Roland. > From tobias.hartmann at oracle.com Fri Mar 15 08:41:31 2019 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 15 Mar 2019 08:41:31 +0000 Subject: hg: valhalla/valhalla: 2 new changesets Message-ID: <201903150841.x2F8fWkZ001389@aojmv0008.oracle.com> Changeset: 034ed135254d Author: thartmann Date: 2019-03-15 09:40 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/034ed135254d 8220666: [lworld] Nullability information is lost at checkcast in ciTypeFlow Reviewed-by: roland ! src/hotspot/share/ci/ciTypeFlow.cpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestNullableValueTypes.java Changeset: 55456b503754 Author: thartmann Date: 2019-03-15 09:41 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/55456b503754 8220583: [lworld] Missing ValueTypeNode for value type receiver Reviewed-by: roland ! src/hotspot/share/opto/callGenerator.cpp ! src/hotspot/share/opto/graphKit.cpp ! src/hotspot/share/opto/graphKit.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/parse.hpp ! src/hotspot/share/opto/parse1.cpp ! src/hotspot/share/opto/parse3.cpp From ioi.lam at oracle.com Mon Mar 18 21:34:45 2019 From: ioi.lam at oracle.com (Ioi Lam) Date: Mon, 18 Mar 2019 14:34:45 -0700 Subject: RFR 8220701 [lworld] Remove ValueArrayFlatten command line flag Message-ID: https://bugs.openjdk.java.net/browse/JDK-8220701 http://cr.openjdk.java.net/~iklam/valhalla/8220701-remove-ValueArrayFlatten-flag.v01/ In the test cases, I've replaced all occurrence of ?? -XX:+ValueArrayFlatten -> -XX:ValueArrayElemMaxFlatSize=-1 ?? -XX:-ValueArrayFlatten -> -XX:ValueArrayElemMaxFlatSize=0 In the VM code, I just replaced ValueArrayFlatten with an #ifdef for now, ??? #define ValueArrayFlatten (EnableValhalla && (ValueArrayElemMaxFlatSize != 0)) ... because the affected VM code is likely to be changed soon by [1], or the follow-up fixes in C1/C2 to support [1]. Also, some of the compiler tests probably need to be updated after [1], as C1 (and I think C2 as well) can't really distinguish between 3 types of arrays (pojo, non-nullable/non-flattened, non-nullable/flattened). Testing: Passed all tests under ??? test/hotspot/jtreg/compiler/valhalla ??? test/hotspot/jtreg/runtime/valhalla ??? test/jdk/valhalla Thanks - Ioi --------- [1] https://bugs.openjdk.java.net/browse/JDK-8220790 ??? [lworld][lw2] improve support for value arrays From david.simms at oracle.com Tue Mar 19 08:02:37 2019 From: david.simms at oracle.com (David Simms) Date: Tue, 19 Mar 2019 09:02:37 +0100 Subject: RFR 8220701 [lworld] Remove ValueArrayFlatten command line flag In-Reply-To: References: Message-ID: globals.hpp: "<0 no limit", maybe add "==0 disabled". Looks good ! /D On 18/03/2019 10:34 PM, Ioi Lam wrote: > https://bugs.openjdk.java.net/browse/JDK-8220701 > http://cr.openjdk.java.net/~iklam/valhalla/8220701-remove-ValueArrayFlatten-flag.v01/ > > > In the test cases, I've replaced all occurrence of > > ?? -XX:+ValueArrayFlatten -> -XX:ValueArrayElemMaxFlatSize=-1 > ?? -XX:-ValueArrayFlatten -> -XX:ValueArrayElemMaxFlatSize=0 > > In the VM code, I just replaced ValueArrayFlatten with an #ifdef for now, > > ??? #define ValueArrayFlatten (EnableValhalla && > (ValueArrayElemMaxFlatSize != 0)) > > ... because the affected VM code is likely to be changed soon by [1], or > the follow-up fixes in C1/C2 to support [1]. > > Also, some of the compiler tests probably need to be updated after [1], > as C1 (and I think C2 as well) can't really distinguish between 3 > types of > arrays (pojo, non-nullable/non-flattened, non-nullable/flattened). > > Testing: Passed all tests under > > ??? test/hotspot/jtreg/compiler/valhalla > ??? test/hotspot/jtreg/runtime/valhalla > ??? test/jdk/valhalla > > > Thanks > - Ioi > > --------- > > [1] https://bugs.openjdk.java.net/browse/JDK-8220790 > ??? [lworld][lw2] improve support for value arrays > From ioi.lam at oracle.com Tue Mar 19 16:36:42 2019 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Tue, 19 Mar 2019 16:36:42 +0000 Subject: hg: valhalla/valhalla: 8220701: [lworld] Remove ValueArrayFlatten command line flag Message-ID: <201903191636.x2JGahsC018632@aojmv0008.oracle.com> Changeset: c5e3f6ae4c01 Author: iklam Date: 2019-03-19 09:32 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c5e3f6ae4c01 8220701: [lworld] Remove ValueArrayFlatten command line flag Reviewed-by: dsimms ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/globals.hpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestArrays.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestBasicFunctionality.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestCallingConvention.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestIntrinsics.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestLWorld.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestMethodHandles.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestNullableValueTypes.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestOnStackReplacement.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/ValueTypeTest.java ! test/hotspot/jtreg/runtime/valhalla/valuetypes/ValueTypeArray.java ! test/hotspot/jtreg/runtime/valhalla/valuetypes/ValueTypeDensity.java ! test/jdk/valhalla/valuetypes/ArrayElementVarHandleTest.java ! test/jdk/valhalla/valuetypes/ValueArray.java From david.simms at oracle.com Mon Mar 25 17:45:35 2019 From: david.simms at oracle.com (david.simms at oracle.com) Date: Mon, 25 Mar 2019 17:45:35 +0000 Subject: hg: valhalla/valhalla: JDK-8221330: [lworld] Javac adds InnerClass attribute without appropriate value flag Message-ID: <201903251745.x2PHjapd021146@aojmv0008.oracle.com> Changeset: e79550bd57fb Author: dsimms Date: 2019-03-25 18:35 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e79550bd57fb JDK-8221330: [lworld] Javac adds InnerClass attribute without appropriate value flag Author: sadayapalam ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassWriter.java From david.simms at oracle.com Tue Mar 26 13:26:54 2019 From: david.simms at oracle.com (david.simms at oracle.com) Date: Tue, 26 Mar 2019 13:26:54 +0000 Subject: hg: valhalla/valhalla: JDK-8221330: [lworld] Missed test add Message-ID: <201903261326.x2QDQtdI003624@aojmv0008.oracle.com> Changeset: ecfe9065f490 Author: dsimms Date: 2019-03-26 14:26 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ecfe9065f490 JDK-8221330: [lworld] Missed test add + test/langtools/tools/javac/valhalla/lworld-values/InnerClassAttributeValuenessTest.java From dms at samersoff.net Wed Mar 27 15:14:01 2019 From: dms at samersoff.net (Dmitry Samersoff) Date: Wed, 27 Mar 2019 18:14:01 +0300 Subject: RFR(L) Take 2 of Valhalla support for AArch64 In-Reply-To: References: Message-ID: Hello Everybody, Please, review the next version of the changes against lworld branch: http://cr.openjdk.java.net/~dsamersoff/valhalla_lworld_aarch64/webrev.04 *What is done:* * Shared interface changes are adopted. * 24 tests of 24 from runtime/valhalla/valuetypes are passed. * 11 of 14 tests from compiler/valhalla/valuetypes are passed with ValueTypePassFieldsAsArgs=Off, ValueTypeReturnedAsFields=Off * Support for ValueTypePassFieldsAsArgs and ValueTypeReturnedAsFields is implemented, but not complete. *Open points:* 1. Tests: compiler/valhalla/valuetypes/TestMethodHandles.java compiler/valhalla/valuetypes/TestBasicFunctionality.java (partially) Fails because the count of ALLOC doesn't match to the count expected by the test. I'm looking into it. 2. Support for ValueTypePassFieldsAsArgs and ValueTypeReturnedAsFields is implemented but there are some issues I'll send a separate letter about it. I'll be happy if someone with good C2 knowledge chimes in with thoughts on it Temporary, I forced these flags to OFF for AArch64 3. One test still fails compiler/valhalla/valuetypes/TestNewAcmp.java (one test within it) Fails with: Test failed: should return false 4. JNI tests doesn't run. Plan to address it on the next turn. Regards, -Dmitry From sergey.kuksenko at oracle.com Thu Mar 28 21:37:59 2019 From: sergey.kuksenko at oracle.com (Sergey Kuksenko) Date: Thu, 28 Mar 2019 14:37:59 -0700 Subject: C2 doesn't hoist out flattened value array guard out of loops Message-ID: <96c32050-5eca-fb67-f079-5ac29c47f140@oracle.com> Please, look into that issue https://bugs.openjdk.java.net/browse/JDK-8221647 That issue is real showstopper for any other valhalla performance evaluations. Large performance regression is observed on numerous legacy (non-value) code working with Object[] arrays comparing -XX:+EnableValhalla vs -XX:-EnableValhalla For example: - Arrays.hasCode(Object[]) - 60% slowdown - for loop Object[] to Object[] copying - 2x times slowdown - pass elements of Object[] - 90% slowdown. - etc.... Small set of simple benchmarks could be found herehttp://cr.openjdk.java.net/~skuksenko/valhalla/arrayloop/benchmarks/ The reason of that that check if arrays is flattened value array was not hoisted out of the loop and checked on each iteration. ?asm for check (e.g.): ?mov 0x8(%r10),%r8d ?sar $0x1d,%r8d ?cmp $0xfffffffd,%r8d ?jne 0x00007f4d008cc2ad From ioi.lam at oracle.com Fri Mar 29 04:27:59 2019 From: ioi.lam at oracle.com (Ioi Lam) Date: Thu, 28 Mar 2019 21:27:59 -0700 Subject: RFR: 8221653 [lworld] Calling convention - C1 to Interpreter Message-ID: <23bfda82-e1c3-c942-ad35-d481a2c976a7@oracle.com> https://bugs.openjdk.java.net/browse/JDK-8221653 http://cr.openjdk.java.net/~iklam/valhalla/8221653-c1-calls-interp.v01/ This is the first step of making C1/C2 work together. Since C1 doesn't scalarize outgoing parameters, I changed the method dispatch code to detect when a call is made by C1 code, and jump to Method::_from_compiled_value_entry (in contrast, C2 would jump to Method::_from_compiled_entry or Method::_from_compiled_value_ro_entry). I am not particularly proud of sprinkling caller_is_c1 all over the code. Does anyone have a better suggestion? For testing, I added TestCallingConventionC1.java. I also improved the @Test annotation in jtreg/compiler/valhalla/valuetypes/ValueTypeTest.java to specify whether C1 or C2 should be used. In addition, I changed the order of how the VM arguments are put together in ValueTypeTest::execute_vm(). This allows the individual tests to override arguments specified by ValueTypeTest.java. With this changeset, to test C1-only, the command-line has changed to ??????? cd test/hotspot/jtreg/compiler/valhalla/valuetypes ??????? jtreg -Dtest.c1=true \ ??????????? -vmoptions:-XX:+EnableValhallaC1 \ ??????????? -vmoptions:-XX:TieredStopAtLevel=1 \ ??????????? -vmoptions:-XX:-ValueTypePassFieldsAsArgs \ ??????????? -vmoptions:-XX:-ValueTypeReturnedAsFields \ ??????????? . Testing: + All */valhalla/* tests passed with default configuration (C2 only) + All jtreg/compiler/valhalla/* tests passed in C1-only mode Thanks - Ioi From ioi.lam at oracle.com Fri Mar 29 04:32:30 2019 From: ioi.lam at oracle.com (Ioi Lam) Date: Thu, 28 Mar 2019 21:32:30 -0700 Subject: RFR(L) Take 2 of Valhalla support for AArch64 In-Reply-To: References: Message-ID: Hi Dmitry, The C1 changes look OK to me. I guess they are like 80% similar to the x64 code. I wish we had better organization in the C1 code so we can avoid the duplication :-( BTW, (you may know this already) to validate C1 changes, you can do this: ??????? cd test/hotspot/jtreg/compiler/valhalla/valuetypes ??????? jtreg -Dtest.c1=true \ ??????????? -vmoptions:-XX:+EnableValhallaC1 \ ??????????? -vmoptions:-XX:TieredStopAtLevel=1 \ ??????????? -vmoptions:-XX:-ValueTypePassFieldsAsArgs \ ??????????? -vmoptions:-XX:-ValueTypeReturnedAsFields \ ??????????? . Currently all the tests passed on x64 in this mode. Thanks - Ioi On 3/27/19 8:14 AM, Dmitry Samersoff wrote: > Hello Everybody, > > Please, review the next version of the changes against lworld branch: > > http://cr.openjdk.java.net/~dsamersoff/valhalla_lworld_aarch64/webrev.04 > > *What is done:* > > * Shared interface changes are adopted. > > * 24 tests of 24 from runtime/valhalla/valuetypes are passed. > > * 11 of 14 tests from compiler/valhalla/valuetypes are passed with > ValueTypePassFieldsAsArgs=Off, ValueTypeReturnedAsFields=Off > > * Support for ValueTypePassFieldsAsArgs and ValueTypeReturnedAsFields > is implemented, but not complete. > > > *Open points:* > > 1. Tests: > > compiler/valhalla/valuetypes/TestMethodHandles.java > compiler/valhalla/valuetypes/TestBasicFunctionality.java (partially) > > Fails because the count of ALLOC doesn't match to the count expected > by the test. I'm looking into it. > > > 2. Support for ValueTypePassFieldsAsArgs and ValueTypeReturnedAsFields > is implemented but there are some issues > > I'll send a separate letter about it. I'll be happy if someone with > good C2 knowledge chimes in with thoughts on it > > Temporary, I forced these flags to OFF for AArch64 > > > 3. One test still fails > > compiler/valhalla/valuetypes/TestNewAcmp.java (one test within it) > > Fails with: > Test failed: should return false > > > 4. JNI tests doesn't run. > > Plan to address it on the next turn. > > > Regards, > -Dmitry > > From tobias.hartmann at oracle.com Fri Mar 29 07:28:27 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 29 Mar 2019 08:28:27 +0100 Subject: C2 doesn't hoist out flattened value array guard out of loops In-Reply-To: <96c32050-5eca-fb67-f079-5ac29c47f140@oracle.com> References: <96c32050-5eca-fb67-f079-5ac29c47f140@oracle.com> Message-ID: Hi Sergey, thanks for reporting. Is this a regression from LW1? I'm currently working on LW2 array support for C2 which will change how we detect the array layout: https://bugs.openjdk.java.net/browse/JDK-8220716 I'll investigate once the LW2 array changes are ready. Best regards, Tobias On 28.03.19 22:37, Sergey Kuksenko wrote: > Please, look into that issue https://bugs.openjdk.java.net/browse/JDK-8221647 > > That issue is real showstopper for any other valhalla performance evaluations. > > Large performance regression is observed on numerous legacy (non-value) code working with Object[] > arrays comparing -XX:+EnableValhalla vs -XX:-EnableValhalla > > For example: > - Arrays.hasCode(Object[]) - 60% slowdown > - for loop Object[] to Object[] copying - 2x times slowdown > - pass elements of Object[] - 90% slowdown. > - etc.... > > Small set of simple benchmarks could be found > herehttp://cr.openjdk.java.net/~skuksenko/valhalla/arrayloop/benchmarks/ > > The reason of that that check if arrays is flattened value array was not hoisted out of the loop and > checked on each iteration. > > ?asm for check (e.g.): > ?mov 0x8(%r10),%r8d > ?sar $0x1d,%r8d > ?cmp $0xfffffffd,%r8d > ?jne 0x00007f4d008cc2ad From tobias.hartmann at oracle.com Fri Mar 29 08:02:39 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 29 Mar 2019 09:02:39 +0100 Subject: RFR: 8221653 [lworld] Calling convention - C1 to Interpreter In-Reply-To: <23bfda82-e1c3-c942-ad35-d481a2c976a7@oracle.com> References: <23bfda82-e1c3-c942-ad35-d481a2c976a7@oracle.com> Message-ID: <2f9bed5e-1b11-29d2-7517-c5ece1bb04ad@oracle.com> Hi Ioi, this looks good to me, nice test refactoring! I also don't like all the 'caller_is_c1' arguments but can't think of a better way :( Thanks, Tobias On 29.03.19 05:27, Ioi Lam wrote: > https://bugs.openjdk.java.net/browse/JDK-8221653 > http://cr.openjdk.java.net/~iklam/valhalla/8221653-c1-calls-interp.v01/ > > This is the first step of making C1/C2 work together. Since C1 doesn't scalarize outgoing > parameters, I changed the method dispatch code to detect when a call is made by C1 code, and jump to > Method::_from_compiled_value_entry (in contrast, C2 would jump to Method::_from_compiled_entry or > Method::_from_compiled_value_ro_entry). > > I am not particularly proud of sprinkling caller_is_c1 all over the code. Does anyone have a better > suggestion? > > For testing, I added TestCallingConventionC1.java. I also improved the @Test annotation in > jtreg/compiler/valhalla/valuetypes/ValueTypeTest.java to specify whether C1 or C2 should be used. > > In addition, I changed the order of how the VM arguments are put together in > ValueTypeTest::execute_vm(). This allows the individual tests to override arguments specified by > ValueTypeTest.java. > > With this changeset, to test C1-only, the command-line has changed to > > ??????? cd test/hotspot/jtreg/compiler/valhalla/valuetypes > ??????? jtreg -Dtest.c1=true \ > ??????????? -vmoptions:-XX:+EnableValhallaC1 \ > ??????????? -vmoptions:-XX:TieredStopAtLevel=1 \ > ??????????? -vmoptions:-XX:-ValueTypePassFieldsAsArgs \ > ??????????? -vmoptions:-XX:-ValueTypeReturnedAsFields \ > ??????????? . > > Testing: > > + All */valhalla/* tests passed with default configuration (C2 only) > + All jtreg/compiler/valhalla/* tests passed in C1-only mode > > Thanks > - Ioi From tobias.hartmann at oracle.com Fri Mar 29 08:13:18 2019 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 29 Mar 2019 09:13:18 +0100 Subject: RFR(L) Take 2 of Valhalla support for AArch64 In-Reply-To: References: Message-ID: <1a9c9e52-7d94-e34a-23cb-69dde05d3d42@oracle.com> Hi Dmitry, this looks good to me but probably someone more familiar with the aarch64 architecture should have a look as well. Please don't completely remove the @requires os.simpleArch from the tests because we still don't want to run them on other architectures like Sparc or ppc. On 27.03.19 16:14, Dmitry Samersoff wrote: > 2. Support for ValueTypePassFieldsAsArgs and ValueTypeReturnedAsFields > is implemented but there are some issues > > I'll send a separate letter about it. I'll be happy if someone with > good C2 knowledge chimes in with thoughts on it I can help with that. Unfortunately, the implementation is quite complex and things might change depending on how we decide to handle null-ok value types in the feature. I also have some cleanup/refactoring related to the calling convention on my To-Do list. > 3. One test still fails > > compiler/valhalla/valuetypes/TestNewAcmp.java (one test within it) We also see failures in our testing that are due to the interpreter not yet implementing the substitutability test (only C2) does. Best regards, Tobias From ioi.lam at oracle.com Fri Mar 29 13:58:41 2019 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Fri, 29 Mar 2019 13:58:41 +0000 Subject: hg: valhalla/valhalla: 8221653: [lworld] Calling convention - C1 to Interpreter Message-ID: <201903291358.x2TDwgGH003579@aojmv0008.oracle.com> Changeset: 36bb56ff2a73 Author: iklam Date: 2019-03-29 06:58 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/36bb56ff2a73 8221653: [lworld] Calling convention - C1 to Interpreter Reviewed-by: thartmann ! src/hotspot/cpu/x86/vtableStubs_x86_64.cpp ! src/hotspot/share/code/compiledIC.cpp ! src/hotspot/share/code/compiledIC.hpp ! src/hotspot/share/code/compiledMethod.hpp ! src/hotspot/share/code/nmethod.hpp ! src/hotspot/share/code/vtableStubs.cpp ! src/hotspot/share/code/vtableStubs.hpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/sharedRuntime.hpp + test/hotspot/jtreg/compiler/valhalla/valuetypes/TestCallingConventionC1.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/ValueTypeTest.java From ioi.lam at oracle.com Fri Mar 29 14:08:14 2019 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Fri, 29 Mar 2019 14:08:14 +0000 Subject: hg: valhalla/valhalla: fixed gtest affected by previous change Message-ID: <201903291408.x2TE8ESS006444@aojmv0008.oracle.com> Changeset: 1a63ae9f50a9 Author: iklam Date: 2019-03-29 07:07 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1a63ae9f50a9 fixed gtest affected by previous change ! test/hotspot/gtest/code/test_vtableStub.cpp From rwestrel at redhat.com Fri Mar 29 16:21:25 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 29 Mar 2019 17:21:25 +0100 Subject: C2 doesn't hoist out flattened value array guard out of loops In-Reply-To: <96c32050-5eca-fb67-f079-5ac29c47f140@oracle.com> References: <96c32050-5eca-fb67-f079-5ac29c47f140@oracle.com> Message-ID: <87tvflr6re.fsf@redhat.com> Hi Sergey, > The reason of that that check if arrays is flattened value array was not > hoisted out of the loop and checked on each iteration. It used to be that we didn't support loading/storing elements of a flattened array if we didn't know the exact type of the elements. So generated code at aaload/aastore of an Object[] array checked for a flattened array and caused a deoptimization in that case. Those guards were easy for c2 to hoist. Now, we support loading/storing from a flattened array declared as Object[]. We compile a flattened array check as before but now both branches of the check are expected to be taken. The flattened array check cannot be hoisted anymore. Instead, we can use that test to unswitch loop and so make 2 copies of the loop. That doesn't happen with org.openjdk.array.Array.sum currently but I have a small change that enables it. With that patch org.openjdk.array.Array.sum performs the same with or without EnableValhalla. That's not sufficient for org.openjdk.array.Array.copyFor and org.openjdk.array.Array.hash and I'm trying to figure out what can be done for those 2. Roland. From john.r.rose at oracle.com Fri Mar 29 16:26:06 2019 From: john.r.rose at oracle.com (John Rose) Date: Fri, 29 Mar 2019 12:26:06 -0400 Subject: temporary alternative IDE-compatible annotation for "value" keyword Message-ID: <0A8FAE36-8204-4D76-AF97-8905759E2885@oracle.com> Mikael Vidstedt observed to me the other day that he had a nice time experimenting with the "codes like a class" aspect of value types. He noticed one thing that seems like a possible RFE to javac for the experimental phase: If the javac parser were to accept "@__value__" as a *temporary* alias for the "value" quasi-keyword, then various IDEs would be able to process the syntax more easily. Here's a tracking issue for this: https://bugs.openjdk.java.net/browse/JDK-8221699 ? John From michel.trudeau at oracle.com Fri Mar 29 16:29:41 2019 From: michel.trudeau at oracle.com (Michel Trudeau) Date: Fri, 29 Mar 2019 09:29:41 -0700 Subject: temporary alternative IDE-compatible annotation for "value" keyword In-Reply-To: <0A8FAE36-8204-4D76-AF97-8905759E2885@oracle.com> References: <0A8FAE36-8204-4D76-AF97-8905759E2885@oracle.com> Message-ID: <48F12422-27FE-4C35-8F25-0C7E7D475490@oracle.com> I?ve assigned this enhancement to Srikanth, for further triage. On Mar 29, 2019, at 9:26 AM, John Rose wrote: Mikael Vidstedt observed to me the other day that he had a nice time experimenting with the "codes like a class" aspect of value types. He noticed one thing that seems like a possible RFE to javac for the experimental phase: If the javac parser were to accept "@__value__" as a *temporary* alias for the "value" quasi-keyword, then various IDEs would be able to process the syntax more easily. Here's a tracking issue for this: https://bugs.openjdk.java.net/browse/JDK-8221699 ? John From forax at univ-mlv.fr Fri Mar 29 17:12:39 2019 From: forax at univ-mlv.fr (Remi Forax) Date: Fri, 29 Mar 2019 18:12:39 +0100 (CET) Subject: temporary alternative IDE-compatible annotation for "value" keyword In-Reply-To: <48F12422-27FE-4C35-8F25-0C7E7D475490@oracle.com> References: <0A8FAE36-8204-4D76-AF97-8905759E2885@oracle.com> <48F12422-27FE-4C35-8F25-0C7E7D475490@oracle.com> Message-ID: <633796275.1257142.1553879559707.JavaMail.zimbra@u-pem.fr> It's a fine idea. R?mi ----- Mail original ----- > De: "Michel Trudeau" > ?: "John Rose" > Cc: "Mikael Vidstedt" , "valhalla-dev" > Envoy?: Vendredi 29 Mars 2019 17:29:41 > Objet: Re: temporary alternative IDE-compatible annotation for "value" keyword > I?ve assigned this enhancement to Srikanth, for further triage. > > On Mar 29, 2019, at 9:26 AM, John Rose wrote: > > Mikael Vidstedt observed to me the other day that > he had a nice time experimenting with the "codes > like a class" aspect of value types. He noticed one > thing that seems like a possible RFE to javac for > the experimental phase: If the javac parser were > to accept "@__value__" as a *temporary* alias > for the "value" quasi-keyword, then various IDEs > would be able to process the syntax more easily. > > Here's a tracking issue for this: > https://bugs.openjdk.java.net/browse/JDK-8221699 > > ? John From aph at redhat.com Fri Mar 29 17:38:59 2019 From: aph at redhat.com (Andrew Haley) Date: Fri, 29 Mar 2019 17:38:59 +0000 Subject: [aarch64-port-dev ] RFR(L) Take 2 of Valhalla support for AArch64 In-Reply-To: References: Message-ID: <9fbdc45c-a5b0-fa02-a83a-7b7be6835a1d@redhat.com> On 3/27/19 3:14 PM, Dmitry Samersoff wrote: > Please, review the next version of the changes against lworld branch: > > http://cr.openjdk.java.net/~dsamersoff/valhalla_lworld_aarch64/webrev.04 + ins_encode %{ + if ($dst$$reg != $src$$reg) { + __ mov(as_Register($dst$$reg), as_Register($src$$reg)); + } + %} MacroAssembler::mov() doesn't generate any code if src == dst. + f.load_argument(1, r0); // rax,: array + f.load_argument(0, r1); // rbx,: index + int call_offset = __ call_RT(r0, noreg, CAST_FROM_FN_PTR(address, load_flattened_array), r0, r1); rax? Are you sure about that? :-) +void BarrierSetAssembler::nmethod_entry_barrier(MacroAssembler* masm) { +// DMS CHECK: 8210498: nmethod entry barriers, should we implement it? +#if 0 I think you should decide what to do here. +void MacroAssembler::test_field_is_flattenable(Register flags, Register temp_reg, Label& is_flattenable) { + (void) temp_reg; // keep signature uniform with x86 + tbnz(flags, ConstantPoolCacheEntry::is_flattenable_field_shift, is_flattenable); +} + Rather than casting to void, you can just say void MacroAssembler::test_field_is_flattenable(Register flags, Register, Label& is_flattenable) { + // Check if we need to extend the stack for unpacking + int sp_inc = (args_on_stack_cc - args_on_stack) * VMRegImpl::stack_slot_size; + if (sp_inc > 0) { + // Save the return address, adjust the stack (make sure it is properly + // 16-byte aligned) and copy the return address to the new top of the stack. + // pop(r13); + sp_inc = align_up(sp_inc, StackAlignmentInBytes); + // DMS CHECK: subptr(rsp, sp_inc); + sub(sp, sp, sp_inc); + // push(r13); + } else { + // The scalarized calling convention needs less stack space than the unscalarized one. + // No need to extend the stack, the caller will take care of these adjustments. + sp_inc = 0; Comments in here seem wrong: you're not saving the return address. I haven't tested any of this, but it all looks basically OK. Good work. -- Andrew Haley Java Platform Lead Engineer Red Hat UK Ltd. EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671 From sergey.kuksenko at oracle.com Fri Mar 29 18:23:33 2019 From: sergey.kuksenko at oracle.com (Sergey Kuksenko) Date: Fri, 29 Mar 2019 11:23:33 -0700 Subject: C2 doesn't hoist out flattened value array guard out of loops In-Reply-To: <87tvflr6re.fsf@redhat.com> References: <96c32050-5eca-fb67-f079-5ac29c47f140@oracle.com> <87tvflr6re.fsf@redhat.com> Message-ID: Fine. Notify me when it will be ready. Currently I am not care about flattened array performance, the key goal is to check that that legacy code will work as before. On 3/29/19 9:21 AM, Roland Westrelin wrote: > Hi Sergey, > >> The reason of that that check if arrays is flattened value array was not >> hoisted out of the loop and checked on each iteration. > It used to be that we didn't support loading/storing elements of a > flattened array if we didn't know the exact type of the elements. So > generated code at aaload/aastore of an Object[] array checked for a > flattened array and caused a deoptimization in that case. Those guards > were easy for c2 to hoist. Now, we support loading/storing from a > flattened array declared as Object[]. We compile a flattened array check > as before but now both branches of the check are expected to be > taken. The flattened array check cannot be hoisted anymore. Instead, we > can use that test to unswitch loop and so make 2 copies of the loop. > > That doesn't happen with org.openjdk.array.Array.sum currently but I > have a small change that enables it. With that patch > org.openjdk.array.Array.sum performs the same with or without > EnableValhalla. > > That's not sufficient for org.openjdk.array.Array.copyFor and > org.openjdk.array.Array.hash and I'm trying to figure out what can be > done for those 2. > > Roland. From ioi.lam at oracle.com Fri Mar 29 18:53:06 2019 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Fri, 29 Mar 2019 18:53:06 +0000 Subject: hg: valhalla/valhalla: Fixed test failures in product builds Message-ID: <201903291853.x2TIr7gV024587@aojmv0008.oracle.com> Changeset: 02d5567a6e5d Author: iklam Date: 2019-03-29 11:52 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/02d5567a6e5d Fixed test failures in product builds ! test/hotspot/jtreg/compiler/valhalla/valuetypes/ValueTypeTest.java