From jesper at selskabet.org Sun Feb 2 10:33:47 2020 From: jesper at selskabet.org (=?utf-8?Q?Jesper_Steen_M=C3=B8ller?=) Date: Sun, 2 Feb 2020 11:33:47 +0100 Subject: 8237074: Warning when obj.getClass() == SomeItf.class (from State-of-Valhalla) In-Reply-To: <898e1b69-2307-e023-dccd-8959b7e8a16f@oracle.com> References: <898e1b69-2307-e023-dccd-8959b7e8a16f@oracle.com> Message-ID: <339E7443-93C0-439B-8534-C91F4653FA97@selskabet.org> Hi list and Srikanth in particular Thanks for the thorough review. I?ve updated the patch according to the review comments: On 28 Jan 2020, at 15.06, Srikanth wrote: > Hello Jesper, > > (1) I think we may want to introduce a new lint category called "migration" (I am surprised that we don't have one such already !!!) as an umbrella under which all migration pain points related warnings could be emitted. I think introducing a full blown category called Interfaces to "warn about the use of interfaces which have previously been classes" may not be optimal. > Fixed. I explained it as "Warn about issues related to migration of JDK classes.?, but I?m sure a better wording can be written. > (2) While you have introduced a lint category, the corresponding warning is emitted as a plain warning. i.e I am not able to control it via -Xlint options. For comparison, see how the -Xlint:cast (Warn about use of unnecessary casts) option works in this test case: > [?] Fixed. > (3) The comment in the file examples.not-yet.txt i.e "# if this isn't listed here, CheckExamples.java will complain" can be dropped. > For every diagnostic key added, the SOP is to write a test that would cause that key to be emitted. Sometimes, it is too hard to devise a test case and the examples.not-yet.txt is a grab bag to "white list" all those property keys. > Ah, that explains it. Fixed. I took the liberty of explaining this in the comment inside CheckExamples, so the next person can stumble upon it (optional). > > (4) I think the diagnostic text is perhaps better worded as "return value of getClass() can never equal the class literal of an interface" > Fixed. > (5) CheckInterfaceComparison.java: the comment // key: compiler.warn.get.class.compared.with.interface can be dropped. Fixed. > (6) For completeness the test could also include != operator. Good catch. Fixed. > (7) Is the method com.sun.tools.javac.comp.Check#checkObjectIdentityComparison better named checkForSuspectClassLiteralComparison Fixed. > (ii) The diagnostic position need not be a parameter and could be computed on demand. Fixed. > (8) I think it would be better to tighten the check for getClass: For example, see that the following code triggers a warning when it > should not: (cf com.sun.tools.javac.comp.Attr#adjustMethodReturnType's check of getClass) > > class X { > > static Class getClass(int x) { > return null; > } > > public static void main(String [] args) { > if (getClass(0) == Runnable.class) {} > } > } > Fixed and a (negative) test expression added. > (9) Is the method isApplyGetClass better named as isInvocationOfGetClass() ?? Likewise is isClassOfSomeInterface better named as isClassLiteralOfSomeInterface > Fixed: I trust your taste-judgment here (as in, I don?t know why visitApply takes a JCMethodInvocation when visitTypeApply takes a JCTypeApply ?, but I?m guessing ?history?). isInvocationOfGetClass it is! > (10) Some of the methods in Check.java could be declared private. Javac has a coding convention to denote "local" methods > using a > > // where > > comment. You may want to use that too. > Fixed. I ad-libbed an ?//and" -Jesper ?? Patch below: diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java Sun Feb 02 11:32:49 2020 +0100 @@ -216,6 +216,11 @@ MODULE("module"), /** + * Warn about practices which need to change to remain supported om future versions + */ + MIGRATION("migration"), + + /** * Warn about issues regarding module opens. */ OPENS("opens"), diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Sun Feb 02 11:32:49 2020 +0100 @@ -3817,6 +3817,7 @@ if (!types.isCastable(left, right, new Warner(tree.pos()))) { log.error(tree.pos(), Errors.IncomparableTypes(left, right)); } + chk.checkForSuspectClassLiteralComparison(tree, left, right); } chk.checkDivZero(tree.rhs.pos(), operator, right); diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java Sun Feb 02 11:32:49 2020 +0100 @@ -1045,6 +1045,39 @@ return varType; } + public void checkForSuspectClassLiteralComparison( + final JCBinary tree, + final Type leftType, + final Type rightType) { + + if (lint.isEnabled(LintCategory.MIGRATION)) { + if (isInvocationOfGetClass(tree.lhs) && isClassOfSomeInterface(rightType) || + isInvocationOfGetClass(tree.rhs) && isClassOfSomeInterface(leftType)) { + log.warning(LintCategory.MIGRATION, tree.pos(), Warnings.GetClassComparedWithInterface); + } + } + } + //where + private boolean isClassOfSomeInterface(Type someClass) { + if (someClass.tsym.flatName() == names.java_lang_Class) { + List arguments = someClass.getTypeArguments(); + if (arguments.length() == 1) { + return arguments.head.isInterface(); + } + } + return false; + } + //where + private boolean isInvocationOfGetClass(JCExpression tree) { + tree = TreeInfo.skipParens(tree); + if (tree.hasTag(APPLY)) { + JCMethodInvocation apply = (JCMethodInvocation)tree; + Symbol sym = TreeInfo.symbol(apply.meth); + return sym.name == names.getClass && !sym.isStatic(); + } + return false; + } + Type checkMethod(final Type mtype, final Symbol sym, final Env env, diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties Sun Feb 02 11:32:49 2020 +0100 @@ -1778,6 +1778,9 @@ compiler.warn.incubating.modules=\ using incubating module(s): {0} +compiler.warn.get.class.compared.with.interface=\ + return value of getClass() can never equal the class literal of an interface + # 0: symbol, 1: symbol compiler.warn.has.been.deprecated=\ {0} in {1} has been deprecated diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties Sun Feb 02 11:32:49 2020 +0100 @@ -206,6 +206,9 @@ javac.opt.Xlint.desc.module=\ Warn about module system related issues. +javac.opt.Xlint.desc.migration=\ + Warn about issues related to migration of JDK classes. + javac.opt.Xlint.desc.opens=\ Warn about issues regarding module opens. diff -r e2f1c4d5f39e test/langtools/tools/javac/diags/CheckExamples.java --- a/test/langtools/tools/javac/diags/CheckExamples.java Tue Jan 28 17:12:01 2020 +0530 +++ b/test/langtools/tools/javac/diags/CheckExamples.java Sun Feb 02 11:32:49 2020 +0100 @@ -45,12 +45,22 @@ /** * Check invariants for a set of examples. + * + * READ THIS IF THIS TEST FAILS AFTER ADDING A NEW KEY TO 'compiler.properties': + * The 'examples' subdirectory contains a number of examples which provoke + * the reporting of most of the compiler message keys. + * * -- each example should exactly declare the keys that will be generated when * it is run. + * -- this is done by the "// key:"-comment in each fine. * -- together, the examples should cover the set of resource keys in the * compiler.properties bundle. A list of exceptions may be given in the * not-yet.txt file. Entries on the not-yet.txt list should not be * covered by examples. + * -- some keys are only reported by the compiler when specific options are + * supplied. For the purposes of this test, this can be specified by a + * comment e.g. like this: "// options: -Xlint:empty" + * * When new keys are added to the resource bundle, it is strongly recommended * that corresponding new examples be added here, if at all practical, instead * of simply and lazily being added to the not-yet.txt list. diff -r e2f1c4d5f39e test/langtools/tools/javac/diags/examples/CheckGetClassComparedWithInterfaceLiteral.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/diags/examples/CheckGetClassComparedWithInterfaceLiteral.java Sun Feb 02 11:32:49 2020 +0100 @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2020, Jesper Steen M\u00f8ller. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +// key: compiler.warn.get.class.compared.with.interface +// options: -Xlint:migration + +class CheckGetClassComparedWithInterfaceLiteral { + boolean checkObject(Object o) { + return o.getClass() == Iterable.class; + } +} diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.java Sun Feb 02 11:32:49 2020 +0100 @@ -0,0 +1,64 @@ +/* + * @test /nodynamiccopyright/ + * @bug 8237074 + * @summary Result of .getClass() should never be compared to an interface class literal + * + * @compile/ref=CheckInterfaceComparison.out -XDrawDiagnostics -Xlint:migration CheckInterfaceComparison.java + */ +public class CheckInterfaceComparison { + public boolean bogusCompareLeft(Object o) { // Should be warned against + return (o.getClass()) == Runnable.class; + } + + public boolean bogusCompareNELeft(Object o) { // Should be warned against + return (o.getClass()) != Runnable.class; + } + + public boolean bogusCompareRight(Object o) { // Should be warned against + return Iterable.class == o.getClass(); + } + + public boolean bogusCompareNERight(Object o) { // Should be warned against + return Iterable.class != o.getClass(); + } + + public boolean goodCompareLeft(Object o) { // Is fine, no warning required + return o.getClass() == Integer.class; + } + + public boolean goodCompareNELeft(Object o) { // Is fine, no warning required + return o.getClass() != Integer.class; + } + + public boolean goodCompareRight(Object o) { // Is fine, no warning required + return Long.class == o.getClass(); + } + + public boolean goodCompareNERight(Object o) { // Is fine, no warning required + return Long.class != o.getClass(); + } + + public boolean rawCompareLeft(Object o, Class clazz) { // Is fine, no warning required + return o.getClass() == clazz; + } + + public boolean rawCompareNELeft(Object o, Class clazz) { // Is fine, no warning required + return o.getClass() != clazz; + } + + public boolean rawCompareRight(Object o, Class clazz) { // Is fine, no warning required + return clazz == o.getClass(); + } + + public boolean rawCompareNERight(Object o, Class clazz) { // Is fine, no warning required + return clazz != o.getClass(); + } + + static Class getClass(int x) { + return null; + } + + public static boolean compare(Object o, Class clazz) { + return getClass(0) == Runnable.class; // No warning required for static getClass + } +} diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.out --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.out Sun Feb 02 11:32:49 2020 +0100 @@ -0,0 +1,5 @@ +CheckInterfaceComparison.java:10:31: compiler.warn.get.class.compared.with.interface +CheckInterfaceComparison.java:14:31: compiler.warn.get.class.compared.with.interface +CheckInterfaceComparison.java:18:31: compiler.warn.get.class.compared.with.interface +CheckInterfaceComparison.java:22:31: compiler.warn.get.class.compared.with.interface +4 warnings From srikanth.adayapalam at oracle.com Mon Feb 3 06:49:25 2020 From: srikanth.adayapalam at oracle.com (Srikanth) Date: Mon, 3 Feb 2020 12:19:25 +0530 Subject: 8237074: Warning when obj.getClass() == SomeItf.class (from State-of-Valhalla) In-Reply-To: <339E7443-93C0-439B-8534-C91F4653FA97@selskabet.org> References: <898e1b69-2307-e023-dccd-8959b7e8a16f@oracle.com> <339E7443-93C0-439B-8534-C91F4653FA97@selskabet.org> Message-ID: <56a22e31-df35-355c-e701-94d4bbed2a7d@oracle.com> Hi Jesper, Looks really close. Some comments: (1) There is a typo "supported om future versions" (2) I am surprised by "return sym.name == names.getClass && !sym.isStatic();" in isInvocationOfGetClass() The following code elicits a warning when it should not: class X { ??? Class getClass(int x) { ??????? return null; ??? } ??? boolean foo() { ??????? return getClass(0) == Runnable.class; ??? } } valhalla/build/linux-x86_64-server-release/images/jdk/bin/javac -g -Xlint:migration X.java X.java:8: warning: [migration] return value of getClass() can never equal the class literal of an interface ??????? return getClass(0) == Runnable.class; ?????????????????????????? ^ 1 warning (3) I am checking with the right folks on the copyright notice. My understanding is that it should not mention the individual's name. But I will confirm as soon as I have heard from the "horse's mouth" Thanks Srikanth On 02/02/20 4:03 pm, Jesper Steen M?ller wrote: > diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java > --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java Tue Jan 28 17:12:01 2020 +0530 > +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java Sun Feb 02 11:32:49 2020 +0100 > @@ -216,6 +216,11 @@ > MODULE("module"), > > /** > + * Warn about practices which need to change to remain supported om future versions > + */ > + MIGRATION("migration"), > + > + /** > * Warn about issues regarding module opens. > */ > OPENS("opens"), > diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java > --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Tue Jan 28 17:12:01 2020 +0530 > +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Sun Feb 02 11:32:49 2020 +0100 > @@ -3817,6 +3817,7 @@ > if (!types.isCastable(left, right, new Warner(tree.pos()))) { > log.error(tree.pos(), Errors.IncomparableTypes(left, right)); > } > + chk.checkForSuspectClassLiteralComparison(tree, left, right); > } > > chk.checkDivZero(tree.rhs.pos(), operator, right); > diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java > --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java Tue Jan 28 17:12:01 2020 +0530 > +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java Sun Feb 02 11:32:49 2020 +0100 > @@ -1045,6 +1045,39 @@ > return varType; > } > > + public void checkForSuspectClassLiteralComparison( > + final JCBinary tree, > + final Type leftType, > + final Type rightType) { > + > + if (lint.isEnabled(LintCategory.MIGRATION)) { > + if (isInvocationOfGetClass(tree.lhs) && isClassOfSomeInterface(rightType) || > + isInvocationOfGetClass(tree.rhs) && isClassOfSomeInterface(leftType)) { > + log.warning(LintCategory.MIGRATION, tree.pos(), Warnings.GetClassComparedWithInterface); > + } > + } > + } > + //where > + private boolean isClassOfSomeInterface(Type someClass) { > + if (someClass.tsym.flatName() == names.java_lang_Class) { > + List arguments = someClass.getTypeArguments(); > + if (arguments.length() == 1) { > + return arguments.head.isInterface(); > + } > + } > + return false; > + } > + //where > + private boolean isInvocationOfGetClass(JCExpression tree) { > + tree = TreeInfo.skipParens(tree); > + if (tree.hasTag(APPLY)) { > + JCMethodInvocation apply = (JCMethodInvocation)tree; > + Symbol sym = TreeInfo.symbol(apply.meth); > + return sym.name == names.getClass && !sym.isStatic(); > + } > + return false; > + } > + > Type checkMethod(final Type mtype, > final Symbol sym, > final Env env, > diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties > --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties Tue Jan 28 17:12:01 2020 +0530 > +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties Sun Feb 02 11:32:49 2020 +0100 > @@ -1778,6 +1778,9 @@ > compiler.warn.incubating.modules=\ > using incubating module(s): {0} > > +compiler.warn.get.class.compared.with.interface=\ > + return value of getClass() can never equal the class literal of an interface > + > # 0: symbol, 1: symbol > compiler.warn.has.been.deprecated=\ > {0} in {1} has been deprecated > diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties > --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties Tue Jan 28 17:12:01 2020 +0530 > +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties Sun Feb 02 11:32:49 2020 +0100 > @@ -206,6 +206,9 @@ > javac.opt.Xlint.desc.module=\ > Warn about module system related issues. > > +javac.opt.Xlint.desc.migration=\ > + Warn about issues related to migration of JDK classes. > + > javac.opt.Xlint.desc.opens=\ > Warn about issues regarding module opens. > > diff -r e2f1c4d5f39e test/langtools/tools/javac/diags/CheckExamples.java > --- a/test/langtools/tools/javac/diags/CheckExamples.java Tue Jan 28 17:12:01 2020 +0530 > +++ b/test/langtools/tools/javac/diags/CheckExamples.java Sun Feb 02 11:32:49 2020 +0100 > @@ -45,12 +45,22 @@ > > /** > * Check invariants for a set of examples. > + * > + * READ THIS IF THIS TEST FAILS AFTER ADDING A NEW KEY TO 'compiler.properties': > + * The 'examples' subdirectory contains a number of examples which provoke > + * the reporting of most of the compiler message keys. > + * > * -- each example should exactly declare the keys that will be generated when > * it is run. > + * -- this is done by the "// key:"-comment in each fine. > * -- together, the examples should cover the set of resource keys in the > * compiler.properties bundle. A list of exceptions may be given in the > * not-yet.txt file. Entries on the not-yet.txt list should not be > * covered by examples. > + * -- some keys are only reported by the compiler when specific options are > + * supplied. For the purposes of this test, this can be specified by a > + * comment e.g. like this: "// options: -Xlint:empty" > + * > * When new keys are added to the resource bundle, it is strongly recommended > * that corresponding new examples be added here, if at all practical, instead > * of simply and lazily being added to the not-yet.txt list. > diff -r e2f1c4d5f39e test/langtools/tools/javac/diags/examples/CheckGetClassComparedWithInterfaceLiteral.java > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/test/langtools/tools/javac/diags/examples/CheckGetClassComparedWithInterfaceLiteral.java Sun Feb 02 11:32:49 2020 +0100 > @@ -0,0 +1,31 @@ > +/* > + * Copyright (c) 2020, Jesper Steen M\u00f8ller. All rights reserved. > + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > + * > + * This code is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License version 2 only, as > + * published by the Free Software Foundation. > + * > + * This code is distributed in the hope that it will be useful, but WITHOUT > + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > + * version 2 for more details (a copy is included in the LICENSE file that > + * accompanied this code). > + * > + * You should have received a copy of the GNU General Public License version > + * 2 along with this work; if not, write to the Free Software Foundation, > + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > + * > + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA > + * or visitwww.oracle.com if you need additional information or have any > + * questions. > + */ > + > +// key: compiler.warn.get.class.compared.with.interface > +// options: -Xlint:migration > + > +class CheckGetClassComparedWithInterfaceLiteral { > + boolean checkObject(Object o) { > + return o.getClass() == Iterable.class; > + } > +} > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.java > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.java Sun Feb 02 11:32:49 2020 +0100 > @@ -0,0 +1,64 @@ > +/* > + * @test/nodynamiccopyright/ > + * @bug 8237074 > + * @summary Result of .getClass() should never be compared to an interface class literal > + * > + * @compile/ref=CheckInterfaceComparison.out -XDrawDiagnostics -Xlint:migration CheckInterfaceComparison.java > + */ > +public class CheckInterfaceComparison { > + public boolean bogusCompareLeft(Object o) { // Should be warned against > + return (o.getClass()) == Runnable.class; > + } > + > + public boolean bogusCompareNELeft(Object o) { // Should be warned against > + return (o.getClass()) != Runnable.class; > + } > + > + public boolean bogusCompareRight(Object o) { // Should be warned against > + return Iterable.class == o.getClass(); > + } > + > + public boolean bogusCompareNERight(Object o) { // Should be warned against > + return Iterable.class != o.getClass(); > + } > + > + public boolean goodCompareLeft(Object o) { // Is fine, no warning required > + return o.getClass() == Integer.class; > + } > + > + public boolean goodCompareNELeft(Object o) { // Is fine, no warning required > + return o.getClass() != Integer.class; > + } > + > + public boolean goodCompareRight(Object o) { // Is fine, no warning required > + return Long.class == o.getClass(); > + } > + > + public boolean goodCompareNERight(Object o) { // Is fine, no warning required > + return Long.class != o.getClass(); > + } > + > + public boolean rawCompareLeft(Object o, Class clazz) { // Is fine, no warning required > + return o.getClass() == clazz; > + } > + > + public boolean rawCompareNELeft(Object o, Class clazz) { // Is fine, no warning required > + return o.getClass() != clazz; > + } > + > + public boolean rawCompareRight(Object o, Class clazz) { // Is fine, no warning required > + return clazz == o.getClass(); > + } > + > + public boolean rawCompareNERight(Object o, Class clazz) { // Is fine, no warning required > + return clazz != o.getClass(); > + } > + > + static Class getClass(int x) { > + return null; > + } > + > + public static boolean compare(Object o, Class clazz) { > + return getClass(0) == Runnable.class; // No warning required for static getClass > + } > +} > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.out > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.out Sun Feb 02 11:32:49 2020 +0100 > @@ -0,0 +1,5 @@ > +CheckInterfaceComparison.java:10:31: compiler.warn.get.class.compared.with.interface > +CheckInterfaceComparison.java:14:31: compiler.warn.get.class.compared.with.interface > +CheckInterfaceComparison.java:18:31: compiler.warn.get.class.compared.with.interface > +CheckInterfaceComparison.java:22:31: compiler.warn.get.class.compared.with.interface > +4 warnings > > > > > From jesper at selskabet.org Mon Feb 3 08:09:07 2020 From: jesper at selskabet.org (=?utf-8?Q?Jesper_Steen_M=C3=B8ller?=) Date: Mon, 3 Feb 2020 09:09:07 +0100 Subject: 8237074: Warning when obj.getClass() == SomeItf.class (from State-of-Valhalla) In-Reply-To: <56a22e31-df35-355c-e701-94d4bbed2a7d@oracle.com> References: <898e1b69-2307-e023-dccd-8959b7e8a16f@oracle.com> <339E7443-93C0-439B-8534-C91F4653FA97@selskabet.org> <56a22e31-df35-355c-e701-94d4bbed2a7d@oracle.com> Message-ID: <640A6984-3040-4291-9E7A-A26C66FCAFCA@selskabet.org> Hi Srikanth On 3 Feb 2020, at 07.49, Srikanth wrote: > > > (1) There is a typo "supported om future versions" > Fixed, and made comment and lint option text identical > (2) I am surprised by "return sym.name == names.getClass && !sym.isStatic();" in isInvocationOfGetClass() > Fixed by querying the method?s symbol instead, and added your example as a negative test. This approach > > (3) I am checking with the right folks on the copyright notice. My understanding is that it should not mention the individual's name. > But I will confirm as soon as I have heard from the "horse's mouth" > No problem, fixed by assigning the copyright to Oracle, as Oracle is free to do under the OCA anyway. Patch attached. -Jesper diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java Mon Feb 03 09:03:11 2020 +0100 @@ -216,6 +216,11 @@ MODULE("module"), /** + * Warn about issues related to migration of JDK classes. + */ + MIGRATION("migration"), + + /** * Warn about issues regarding module opens. */ OPENS("opens"), diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Mon Feb 03 09:03:11 2020 +0100 @@ -3817,6 +3817,7 @@ if (!types.isCastable(left, right, new Warner(tree.pos()))) { log.error(tree.pos(), Errors.IncomparableTypes(left, right)); } + chk.checkForSuspectClassLiteralComparison(tree, left, right); } chk.checkDivZero(tree.rhs.pos(), operator, right); diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java Mon Feb 03 09:03:11 2020 +0100 @@ -1045,6 +1045,39 @@ return varType; } + public void checkForSuspectClassLiteralComparison( + final JCBinary tree, + final Type leftType, + final Type rightType) { + + if (lint.isEnabled(LintCategory.MIGRATION)) { + if (isInvocationOfGetClass(tree.lhs) && isClassOfSomeInterface(rightType) || + isInvocationOfGetClass(tree.rhs) && isClassOfSomeInterface(leftType)) { + log.warning(LintCategory.MIGRATION, tree.pos(), Warnings.GetClassComparedWithInterface); + } + } + } + //where + private boolean isClassOfSomeInterface(Type someClass) { + if (someClass.tsym.flatName() == names.java_lang_Class) { + List arguments = someClass.getTypeArguments(); + if (arguments.length() == 1) { + return arguments.head.isInterface(); + } + } + return false; + } + //where + private boolean isInvocationOfGetClass(JCExpression tree) { + tree = TreeInfo.skipParens(tree); + if (tree.hasTag(APPLY)) { + JCMethodInvocation apply = (JCMethodInvocation)tree; + MethodSymbol msym = (MethodSymbol)TreeInfo.symbol(apply.meth); + return msym.name == names.getClass && msym.implementedIn(syms.objectType.tsym, types) != null; + } + return false; + } + Type checkMethod(final Type mtype, final Symbol sym, final Env env, diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties Mon Feb 03 09:03:11 2020 +0100 @@ -1778,6 +1778,9 @@ compiler.warn.incubating.modules=\ using incubating module(s): {0} +compiler.warn.get.class.compared.with.interface=\ + return value of getClass() can never equal the class literal of an interface + # 0: symbol, 1: symbol compiler.warn.has.been.deprecated=\ {0} in {1} has been deprecated diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties Mon Feb 03 09:03:11 2020 +0100 @@ -206,6 +206,9 @@ javac.opt.Xlint.desc.module=\ Warn about module system related issues. +javac.opt.Xlint.desc.migration=\ + Warn about issues related to migration of JDK classes. + javac.opt.Xlint.desc.opens=\ Warn about issues regarding module opens. diff -r e2f1c4d5f39e test/langtools/tools/javac/diags/CheckExamples.java --- a/test/langtools/tools/javac/diags/CheckExamples.java Tue Jan 28 17:12:01 2020 +0530 +++ b/test/langtools/tools/javac/diags/CheckExamples.java Mon Feb 03 09:03:11 2020 +0100 @@ -45,12 +45,22 @@ /** * Check invariants for a set of examples. + * + * READ THIS IF THIS TEST FAILS AFTER ADDING A NEW KEY TO 'compiler.properties': + * The 'examples' subdirectory contains a number of examples which provoke + * the reporting of most of the compiler message keys. + * * -- each example should exactly declare the keys that will be generated when * it is run. + * -- this is done by the "// key:"-comment in each fine. * -- together, the examples should cover the set of resource keys in the * compiler.properties bundle. A list of exceptions may be given in the * not-yet.txt file. Entries on the not-yet.txt list should not be * covered by examples. + * -- some keys are only reported by the compiler when specific options are + * supplied. For the purposes of this test, this can be specified by a + * comment e.g. like this: "// options: -Xlint:empty" + * * When new keys are added to the resource bundle, it is strongly recommended * that corresponding new examples be added here, if at all practical, instead * of simply and lazily being added to the not-yet.txt list. diff -r e2f1c4d5f39e test/langtools/tools/javac/diags/examples/CheckGetClassComparedWithInterfaceLiteral.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/diags/examples/CheckGetClassComparedWithInterfaceLiteral.java Mon Feb 03 09:03:11 2020 +0100 @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +// key: compiler.warn.get.class.compared.with.interface +// options: -Xlint:migration + +class CheckGetClassComparedWithInterfaceLiteral { + boolean checkObject(Object o) { + return o.getClass() == Iterable.class; + } +} diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.java Mon Feb 03 09:03:11 2020 +0100 @@ -0,0 +1,72 @@ +/* + * @test /nodynamiccopyright/ + * @bug 8237074 + * @summary Result of .getClass() should never be compared to an interface class literal + * + * @compile/ref=CheckInterfaceComparison.out -XDrawDiagnostics -Xlint:migration CheckInterfaceComparison.java + */ +public class CheckInterfaceComparison { + public boolean bogusCompareLeft(Object o) { // Should be warned against + return (o.getClass()) == Runnable.class; + } + + public boolean bogusCompareNELeft(Object o) { // Should be warned against + return (o.getClass()) != Runnable.class; + } + + public boolean bogusCompareRight(Object o) { // Should be warned against + return Iterable.class == o.getClass(); + } + + public boolean bogusCompareNERight(Object o) { // Should be warned against + return Iterable.class != o.getClass(); + } + + public boolean goodCompareLeft(Object o) { // Is fine, no warning required + return o.getClass() == Integer.class; + } + + public boolean goodCompareNELeft(Object o) { // Is fine, no warning required + return o.getClass() != Integer.class; + } + + public boolean goodCompareRight(Object o) { // Is fine, no warning required + return Long.class == o.getClass(); + } + + public boolean goodCompareNERight(Object o) { // Is fine, no warning required + return Long.class != o.getClass(); + } + + public boolean rawCompareLeft(Object o, Class clazz) { // Is fine, no warning required + return o.getClass() == clazz; + } + + public boolean rawCompareNELeft(Object o, Class clazz) { // Is fine, no warning required + return o.getClass() != clazz; + } + + public boolean rawCompareRight(Object o, Class clazz) { // Is fine, no warning required + return clazz == o.getClass(); + } + + public boolean rawCompareNERight(Object o, Class clazz) { // Is fine, no warning required + return clazz != o.getClass(); + } + + static Class getClass(int x) { + return null; + } + + public static boolean compare(Object o, Class clazz) { + return getClass(0) == Runnable.class; // No warning required for static getClass + } + + public Class getClass(String x) { + return null; + } + + public boolean compare(Object o, String arg, Class clazz) { + return getClass(arg) == Runnable.class; // No warning required for non-object.getClass() + } +} diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.out --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.out Mon Feb 03 09:03:11 2020 +0100 @@ -0,0 +1,5 @@ +CheckInterfaceComparison.java:10:31: compiler.warn.get.class.compared.with.interface +CheckInterfaceComparison.java:14:31: compiler.warn.get.class.compared.with.interface +CheckInterfaceComparison.java:18:31: compiler.warn.get.class.compared.with.interface +CheckInterfaceComparison.java:22:31: compiler.warn.get.class.compared.with.interface +4 warnings From jesper at selskabet.org Mon Feb 3 08:40:06 2020 From: jesper at selskabet.org (=?utf-8?Q?Jesper_Steen_M=C3=B8ller?=) Date: Mon, 3 Feb 2020 09:40:06 +0100 Subject: 8237067: Implementation of .default - (lworld branch) In-Reply-To: <7b0c1885-686a-9a92-7f7d-a33f38a482ee@oracle.com> References: <31D74973-9A5B-4970-8A60-A301304D0E34@selskabet.org> <013C63F6-314D-40D9-9449-428ACD56646E@selskabet.org> <448250cc-7ea7-a58d-289a-1dad14964e6a@oracle.com> <1F4F52CA-F8CB-4325-BC32-C13226053D3E@selskabet.org> <7b0c1885-686a-9a92-7f7d-a33f38a482ee@oracle.com> Message-ID: <7E1920C1-3A7C-4A48-8FF9-2F60AE52FB0A@selskabet.org> Hi list and Srikanth Here?s a second version of the patch. > (1) The change in LocaleProvidersRun.java seems unconnected to the fix. I am able to back it out and the test still passes. Removed. > (2) CheckBadSelector.java: it is customary to include the bug number with a @bug xxxxxxxx tag Fixed. > (3) CheckMakeDefault.java: I apologize for having left stale identifiers in this file. But now that we are changing it, > could you (a) remove the comments "// NO: Sinner is not a value class." in line 13, (b) drop the "// OK" from line 19 (c) Drop the comment "// Allowed in the new 'State of Valhalla'" in line 41 (it was allowed already, the name badFactory was stale) Fixed, I removed the badFactory as it wasn?t testing anything by itself. > (4) DefaultNonInlines.java: (a) Copyright mentions 2018. (b) I am curious - why are the statements using while instead if ?? (c) The SOP is to throw new AssertionError rather than just Exception. (d) The second "// Array type - differnt syntactically" is inappropriate. (d) '\0' shows up highlit in red in Vim - (why ?) It accepts '\u0000' without gripes. > a) Fixed b) By using while, we (implicitly) test that the .default is not a Constant Expression as per the spec. The reachability-analysis will detect that a ?while () { }? does not terminate if evaluates to true and doesn?t contain a break or return. So implicitly, this way, we test that the .default does not produce a constant expression. I?ve added a comment mentioning this. c) Fixed. d) Vim must somehow not understand octal escapes in character. In my reading of JLS ?3.10.4 (Character Literals) and ?3.10.6 (Escape Sequences for Character and String Literals), single octal digits are just fine as EscapeSequences. In this case, the code unit lies within the supported range for octals (\u0000 through \u00FF), so all is legal Java. > (5) Gen.java: Can we factor out the common code result = items.makeStackItem(tree.type); from the 3 paths ?? > Fixed > (6) JavacParser.java: 1345 - Just curious - what necessitates this change ?? > The token?s end position must be recorded for the produced node, otherwise the postion information will be incomplete. This is tested in tools/javac/tree/TreePosTest.java which will fail without this change. > > (7) I think the changes to allow Type.default should be keyed off of Feature.INLINE_TYPES (see com.sun.tools.javac.code.Source.Feature#allowedInSource). Earlier code changes done by me may have missed checking for this. Sorry about that! We can take the present opportunity to fix that. It may be cleaner to always allow this in the parser and report an error in Attr. > > As of now > > class X { > X x = X.default; > } > > compiles fine with valhalla tip when javac is invoked as: valhalla/build/linux-x86_64-server-release/images/jdk/bin/javac --release 13 X.java Fixed in the parser in the three places, and a test (CheckFeatureGate) has been added to test all feature gating of inlines. -Jesper diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Mon Feb 03 09:38:20 2020 +0100 @@ -4042,10 +4042,15 @@ while (elt.hasTag(ARRAY)) elt = ((ArrayType)elt).elemtype; if (elt.hasTag(TYPEVAR)) { - log.error(tree.pos(), Errors.TypeVarCantBeDeref); - result = tree.type = types.createErrorType(tree.name, site.tsym, site); - tree.sym = tree.type.tsym; - return ; + if (tree.name == names._default) { + result = check(tree, litType(BOT).constType(null), + KindSelector.VAL, resultInfo); + } else { + log.error(tree.pos(), Errors.TypeVarCantBeDeref); + result = tree.type = types.createErrorType(tree.name, site.tsym, site); + tree.sym = tree.type.tsym; + return; + } } } @@ -4203,12 +4208,7 @@ // visitSelect that qualifier expression is a type. return syms.getClassField(site, types); } else if (name == names._default) { - if (!types.isValue(site)) { - log.error(pos, Errors.MakeDefaultWithNonvalue); - return syms.errSymbol; - } else { - return new VarSymbol(STATIC, names._default, site, site.tsym); - } + return new VarSymbol(STATIC, names._default, site, site.tsym); } else { // We are seeing a plain identifier as selector. Symbol sym = rs.findIdentInType(pos, env, site, name, resultInfo.pkind); @@ -4218,6 +4218,10 @@ case WILDCARD: throw new AssertionError(tree); case TYPEVAR: + if (name == names._default) { + // Be sure to return the default value before examining bounds + return new VarSymbol(STATIC, names._default, site, site.tsym); + } // Normally, site.getUpperBound() shouldn't be null. // It should only happen during memberEnter/attribBase // when determining the super type which *must* beac @@ -4242,11 +4246,13 @@ return types.createErrorType(name, site.tsym, site).tsym; default: // The qualifier expression is of a primitive type -- only - // .class is allowed for these. + // .class and .default is allowed for these. if (name == names._class) { // In this case, we have already made sure in Select that // qualifier expression is a type. return syms.getClassField(site, types); + } else if (name == names._default) { + return new VarSymbol(STATIC, names._default, site, site.tsym); } else { log.error(pos, Errors.CantDeref(site)); return syms.errSymbol; diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java Mon Feb 03 09:38:20 2020 +0100 @@ -2405,7 +2405,13 @@ result = items.makeStackItem(pt); return; } else if (tree.name == names._default) { - code.emitop2(defaultvalue, checkDimension(tree.pos(), tree.type), PoolWriter::putClass); + if (tree.type.asElement().isValue()) { + code.emitop2(defaultvalue, checkDimension(tree.pos(), tree.type), PoolWriter::putClass); + } else if (tree.type.isReference()) { + code.emitop0(aconst_null); + } else { + code.emitop0(zero(Code.typecode(tree.type))); + } result = items.makeStackItem(tree.type); return; } diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java Tue Jan 28 17:12:01 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java Mon Feb 03 09:38:20 2020 +0100 @@ -477,6 +477,22 @@ } } + /** If next input token matches one of the two given tokens, skip it, otherwise report + * an error. + * + * @return The actual token kind. + */ + public TokenKind accept2(TokenKind tk1, TokenKind tk2) { + TokenKind returnValue = token.kind; + if (token.kind == tk1 || token.kind == tk2) { + nextToken(); + } else { + setErrorEndPos(token.pos); + reportSyntaxError(S.prevToken().endPos, Errors.Expected2(tk1, tk2)); + } + return returnValue; + } + /** Report an illegal start of expression/type error at given position. */ JCExpression illegal(int pos) { @@ -1324,11 +1340,14 @@ if ((mode & EXPR) != 0) { switch (token.kind) { case DEFAULT: - if (typeArgs != null) return illegal(); - selectExprMode(); - t = F.at(pos).Select(t, names._default); - nextToken(); - break loop; + if (Feature.INLINE_TYPES.allowedInSource(source)) { + if (typeArgs != null) return illegal(); + selectExprMode(); + t = to(F.at(pos).Select(t, names._default)); + nextToken(); + break loop; + } + break; case CLASS: if (typeArgs != null) return illegal(); selectExprMode(); @@ -1395,7 +1414,7 @@ t = toP(F.at(pos1).TypeApply(t, args.toList())); while (token.kind == DOT) { nextToken(); - if (token.kind == DEFAULT) { + if (token.kind == DEFAULT && Feature.INLINE_TYPES.allowedInSource(source)) { t = toP(F.at(token.pos).Select(t, names._default)); nextToken(); selectExprMode(); @@ -2228,7 +2247,13 @@ selectExprMode(); int pos = token.pos; nextToken(); - accept(CLASS); + TokenKind selector; + if (Feature.INLINE_TYPES.allowedInSource(source)) { + selector = accept2(CLASS, DEFAULT); + } else { + accept(CLASS); + selector = CLASS; + } if (token.pos == endPosTable.errorEndPos) { // error recovery Name name; @@ -2246,7 +2271,7 @@ // taking care to handle some interior dimension(s) being annotated. if ((tag == TYPEARRAY && TreeInfo.containsTypeAnnotation(t)) || tag == ANNOTATED_TYPE) syntaxError(token.pos, Errors.NoAnnotationsOnDotClass); - t = toP(F.at(pos).Select(t, names._class)); + t = toP(F.at(pos).Select(t, selector == CLASS ? names._class : names._default)); } } else if ((mode & TYPE) != 0) { if (token.kind != COLCOL) { diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.java Mon Feb 03 09:38:20 2020 +0100 @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ +/* + * @test + * @bug 8237067 + * @summary [lworld] Check good and bad selectors on a type name + * @compile/fail/ref=CheckBadSelector.out -XDrawDiagnostics CheckBadSelector.java + */ + +inline final class Point { + + void badSelector() { + Class c = int.class; + int i = int.default; + int x = int.whatever; + } +} diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.out --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.out Mon Feb 03 09:38:20 2020 +0100 @@ -0,0 +1,2 @@ +CheckBadSelector.java:37:21: compiler.err.expected2: class, default +1 error diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate.java Mon Feb 03 09:38:20 2020 +0100 @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without eve + * + * n the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +/* + * @test + * @bug 8237067 + * @summary Check that feature gated constructs are not allowed in previous versions. + * @compile/fail/ref=CheckFeatureGate.out --release=13 -XDrawDiagnostics CheckFeatureGate.java + */ + +public class CheckFeatureGate { + + static inline class Val { + public int v = 42; + } + + static void checkDefaultT(Class clazz) throws Exception { + while (T.default != null) + throw new AssertionError("Generic object should default to null"); + } + + public static void main(String[] args) throws Exception { + int a = int.default; + String s = String.default; + int[] ia = int[].default; + checkDefaultT(Object.class); + } +} diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate.out --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate.out Mon Feb 03 09:38:20 2020 +0100 @@ -0,0 +1,12 @@ +CheckFeatureGate.java:37:12: compiler.err.feature.not.supported.in.source: (compiler.misc.feature.inline.type), 13, 14 +CheckFeatureGate.java:42:18: compiler.err.expected: token.identifier +CheckFeatureGate.java:42:25: compiler.err.expected2: :, -> +CheckFeatureGate.java:42:26: compiler.err.illegal.start.of.expr +CheckFeatureGate.java:42:33: compiler.err.expected: ';' +CheckFeatureGate.java:47:21: compiler.err.expected: class +CheckFeatureGate.java:47:28: compiler.err.expected2: :, -> +CheckFeatureGate.java:48:27: compiler.err.expected: token.identifier +CheckFeatureGate.java:48:34: compiler.err.expected2: :, -> +CheckFeatureGate.java:49:26: compiler.err.expected: class +CheckFeatureGate.java:49:33: compiler.err.expected2: :, -> +11 errors \ No newline at end of file diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java Tue Jan 28 17:12:01 2020 +0530 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java Mon Feb 03 09:38:20 2020 +0100 @@ -10,26 +10,33 @@ inline abstract class A { int x = 10; } // Error static final class Sinner { static Sinner make() { - return Sinner.default; // NO: Sinner is not a value class. + return Sinner.default; } } inline static final class SinnerValue { static SinnerValue make() { - return SinnerValue.default; // OK. + return SinnerValue.default; } int x = 10; } final int x; final int y; + final int nonbool = boolean.default; + final boolean nonbyte = byte.default; + final boolean nonchar = char.default; + final boolean nonint = int.default; + final boolean nonshort = short.default; + final boolean nonlong = long.default; + final boolean nonfloat = float.default; + final boolean nondouble = double.default; + final int nonString = String.default; + final int nonbyteArray = byte[].default; + Point() {} Point (int x, int y) {} - Point badFactory(int x, int y) { - return Point.default; - } - static Point make(int x, int y) { Point p = Point.default; String s = String.default; diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out Tue Jan 28 17:12:01 2020 +0530 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out Mon Feb 03 09:38:20 2020 +0100 @@ -1,5 +1,13 @@ CheckMakeDefault.java:9:12: compiler.err.illegal.combination.of.modifiers: interface, inline CheckMakeDefault.java:10:21: compiler.err.illegal.combination.of.modifiers: abstract, inline -CheckMakeDefault.java:13:26: compiler.err.make.default.with.nonvalue -CheckMakeDefault.java:35:25: compiler.err.make.default.with.nonvalue -4 errors +CheckMakeDefault.java:26:32: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: boolean, int) +CheckMakeDefault.java:27:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: byte, boolean) +CheckMakeDefault.java:28:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: char, boolean) +CheckMakeDefault.java:29:31: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: int, boolean) +CheckMakeDefault.java:30:35: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: short, boolean) +CheckMakeDefault.java:31:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: long, boolean) +CheckMakeDefault.java:32:35: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: float, boolean) +CheckMakeDefault.java:33:37: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: double, boolean) +CheckMakeDefault.java:34:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: java.lang.String, int) +CheckMakeDefault.java:35:36: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: byte[], int) +12 errors \ No newline at end of file diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.java --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.java Tue Jan 28 17:12:01 2020 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -/* - * @test /nodynamiccopyright/ - * @summary Do not allow mismatched instantiation syntax between value & reference types. - * - * @compile/fail/ref=CheckValueFactoryWithReference.out -XDrawDiagnostics CheckValueFactoryWithReference.java - */ - -final class CheckValueFactoryWithReference { - final Object o = Object.default; - inline final class Point { int x = 10; } - Point p = new Point(); -} diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.out --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.out Tue Jan 28 17:12:01 2020 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -CheckValueFactoryWithReference.java:9:28: compiler.err.make.default.with.nonvalue -1 error diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/DefaultNonInlines.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/DefaultNonInlines.java Mon Feb 03 09:38:20 2020 +0100 @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without eve + * + * n the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +/* + * @test Check default values for non-inline types + * @bug 8237067 + * @summary [lworld] Provide linguistic support to denote default values. + * @run main/othervm -Dtest.compiler.opts=-release=13 DefaultNonInlines + */ + +public class DefaultNonInlines { + + static inline class Val { + public int v = 42; + } + + static void checkDefaultT(Class clazz) throws Exception { + while (T.default != null) + throw new AssertionError("Generic object should default to null"); + } + + public static void main(String[] args) throws Exception { + // Default value is set by inline class constructor + while (Val.default.v != int.default) + throw new AssertionError("inline object fields should default to defaults"); + + while ((new Val()).v != 42) + throw new AssertionError("inline object fields should default to whatever constructor says"); + + // Simple reference default is just null + while (String.default != null) + throw new AssertionError("reference object should default to null"); + + // Reference default checked in method above + checkDefaultT(String.class); + + // Array type - different syntactically + while (int[].default != null) + throw new AssertionError("arrays should default to null"); + + while (boolean.default != false) + throw new AssertionError("boolean should default to false"); + + while (char.default != '\0') + throw new AssertionError("char should default to '\0'"); + + while (int.default != 0) + throw new AssertionError("int should default to 0"); + + while (byte.default != 0) + throw new AssertionError("byte should default to 0"); + + while (short.default != 0) + throw new AssertionError("short should default to 0"); + + while (long.default != 0L) + throw new AssertionError("long should default to 0L"); + + while (float.default != 0.0F) + throw new AssertionError("float should default to 0.0F"); + + while (double.default != 0.0D) + throw new AssertionError("double should default to 0.0D"); + + // Note: The while loops above implicitly test that the SomeType.default does not + // return a constant expression. + } +} From srikanth.adayapalam at oracle.com Mon Feb 3 08:51:34 2020 From: srikanth.adayapalam at oracle.com (srikanth.adayapalam at oracle.com) Date: Mon, 03 Feb 2020 08:51:34 +0000 Subject: hg: valhalla/valhalla: 8237071: [lworld] Totalize System.identityHashCode for inline types Message-ID: <202002030851.0138pYap022815@aojmv0008.oracle.com> Changeset: 8cbd40791397 Author: sadayapalam Date: 2020-02-03 14:21 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8cbd40791397 8237071: [lworld] Totalize System.identityHashCode for inline types ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java ! test/langtools/tools/javac/valhalla/lworld-values/CheckIdentityHash.java - test/langtools/tools/javac/valhalla/lworld-values/CheckIdentityHash.out ! test/langtools/tools/javac/valhalla/lworld-values/CheckIdentityHash01.java - test/langtools/tools/javac/valhalla/lworld-values/CheckIdentityHash01.out From srikanth.adayapalam at oracle.com Mon Feb 3 08:58:18 2020 From: srikanth.adayapalam at oracle.com (Srikanth) Date: Mon, 3 Feb 2020 14:28:18 +0530 Subject: hg: valhalla/valhalla: 8237071: [lworld] Totalize System.identityHashCode for inline types In-Reply-To: <202002030851.0138pYap022815@aojmv0008.oracle.com> References: <202002030851.0138pYap022815@aojmv0008.oracle.com> Message-ID: <304f4023-d404-6a87-a1f2-245a673cfe78@oracle.com> Notes: With this change, javac will not disallow anymore, attempts to compute System.identityHashCode on operands that are discernible at compile time to be of some inline type. I have raised https://bugs.openjdk.java.net/browse/JDK-8238382 for the library portion of the work. FYI, Thanks Srikanth On 03/02/20 2:21 pm, srikanth.adayapalam at oracle.com wrote: > Changeset: 8cbd40791397 > Author: sadayapalam > Date: 2020-02-03 14:21 +0530 > URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8cbd40791397 > > 8237071: [lworld] Totalize System.identityHashCode for inline types > > ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java > ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java > ! test/langtools/tools/javac/valhalla/lworld-values/CheckIdentityHash.java > - test/langtools/tools/javac/valhalla/lworld-values/CheckIdentityHash.out > ! test/langtools/tools/javac/valhalla/lworld-values/CheckIdentityHash01.java > - test/langtools/tools/javac/valhalla/lworld-values/CheckIdentityHash01.out > From srikanth.adayapalam at oracle.com Mon Feb 3 09:54:09 2020 From: srikanth.adayapalam at oracle.com (srikanth.adayapalam at oracle.com) Date: Mon, 03 Feb 2020 09:54:09 +0000 Subject: hg: valhalla/valhalla: 8237074: [lworld] Compiler should emit a warning if code compares the result of getClass() against the class literal for an interface Message-ID: <202002030954.0139s9jq024741@aojmv0008.oracle.com> Changeset: b4bf177bac61 Author: sadayapalam Date: 2020-02-03 15:23 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b4bf177bac61 8237074: [lworld] Compiler should emit a warning if code compares the result of getClass() against the class literal for an interface Reviewed-by: sadayapalam Contributed-by: jesper at selskabet.org ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties ! test/langtools/tools/javac/diags/CheckExamples.java + test/langtools/tools/javac/diags/examples/CheckGetClassComparedWithInterfaceLiteral.java + test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.java + test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.out From srikanth.adayapalam at oracle.com Mon Feb 3 09:58:37 2020 From: srikanth.adayapalam at oracle.com (Srikanth) Date: Mon, 3 Feb 2020 15:28:37 +0530 Subject: 8237074: Warning when obj.getClass() == SomeItf.class (from State-of-Valhalla) In-Reply-To: <640A6984-3040-4291-9E7A-A26C66FCAFCA@selskabet.org> References: <898e1b69-2307-e023-dccd-8959b7e8a16f@oracle.com> <339E7443-93C0-439B-8534-C91F4653FA97@selskabet.org> <56a22e31-df35-355c-e701-94d4bbed2a7d@oracle.com> <640A6984-3040-4291-9E7A-A26C66FCAFCA@selskabet.org> Message-ID: <02e12b72-f689-8d98-3999-dee25afbb9cf@oracle.com> Hi Jesper, Congratulations on your first contribution to Valhalla/Inline types project! Fix and tests pushed here: http://hg.openjdk.java.net/valhalla/valhalla/rev/b4bf177bac61 Look forward to many more contributions. Thanks and regards, Srikanth On 03/02/20 1:39 pm, Jesper Steen M?ller wrote: > Hi Srikanth > > On 3 Feb 2020, at 07.49, Srikanth > wrote: >> >> >> (1) There is a typo "supported om future versions" >> > > Fixed, and made comment and lint option text identical > > >> (2) I am surprised by "return sym.name == names.getClass && >> !sym.isStatic();" in isInvocationOfGetClass() >> > > Fixed by querying the method?s symbol instead, and added your example > as a negative test. This approach > >> >> (3) I am checking with the right folks on the copyright notice. My >> understanding is that it should not mention the individual's name. >> But I will confirm as soon as I have heard from the "horse's mouth" >> > > No problem, fixed by assigning the copyright to Oracle, as Oracle is > free to do under the OCA anyway. > > Patch attached. > > -Jesper > > > > > diff -r e2f1c4d5f39e > src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java > --- > a/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.javaTue > Jan 28 17:12:01 2020 +0530 > +++ > b/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.javaMon > Feb 03 09:03:11 2020 +0100 > @@ -216,6 +216,11 @@ > ? ? ? ? ?MODULE("module"), > ? ? ? ? ?/** > + ? ? ? ? * Warn about issues related to migration of JDK classes. > + ? ? ? ? */ > + ? ? ? ?MIGRATION("migration"), > + > + ? ? ? ?/** > ? ? ? ? ? * Warn about issues regarding module opens. > ? ? ? ? ? */ > ? ? ? ? ?OPENS("opens"), > diff -r e2f1c4d5f39e > src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java > --- > a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.javaTue > Jan 28 17:12:01 2020 +0530 > +++ > b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.javaMon > Feb 03 09:03:11 2020 +0100 > @@ -3817,6 +3817,7 @@ > ? ? ? ? ? ? ? ? ?if (!types.isCastable(left, right, new > Warner(tree.pos()))) { > ? ? ? ? ? ? ? ? ? ? ?log.error(tree.pos(), > Errors.IncomparableTypes(left, right)); > ? ? ? ? ? ? ? ? ?} > + ?chk.checkForSuspectClassLiteralComparison(tree, left, right); > ? ? ? ? ? ? ?} > ? ? ? ? ? ? ?chk.checkDivZero(tree.rhs.pos(), operator, right); > diff -r e2f1c4d5f39e > src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java > --- > a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.javaTue > Jan 28 17:12:01 2020 +0530 > +++ > b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.javaMon > Feb 03 09:03:11 2020 +0100 > @@ -1045,6 +1045,39 @@ > ? ? ? ? ?return varType; > ? ? ?} > + ? ?public void checkForSuspectClassLiteralComparison( > + ? ? ? ? ? ?final JCBinary tree, > + ? ? ? ? ? ?final Type leftType, > + ? ? ? ? ? ?final Type rightType) { > + > + ? ? ? ?if (lint.isEnabled(LintCategory.MIGRATION)) { > + ? ? ? ? ? ?if (isInvocationOfGetClass(tree.lhs) && > isClassOfSomeInterface(rightType) || > + ?isInvocationOfGetClass(tree.rhs) && isClassOfSomeInterface(leftType)) { > + ?log.warning(LintCategory.MIGRATION, tree.pos(), > Warnings.GetClassComparedWithInterface); > + ? ? ? ? ? ?} > + ? ? ? ?} > + ? ?} > + ? ?//where > + ? ?private boolean isClassOfSomeInterface(Type someClass) { > + ? ? ? ?if (someClass.tsym.flatName() == names.java_lang_Class) { > + ? ? ? ? ? ?List arguments = someClass.getTypeArguments(); > + ? ? ? ? ? ?if (arguments.length() == 1) { > + ? ? ? ? ? ? ? ?return arguments.head.isInterface(); > + ? ? ? ? ? ?} > + ? ? ? ?} > + ? ? ? ?return false; > + ? ?} > + ? ?//where > + ? ?private boolean isInvocationOfGetClass(JCExpression tree) { > + ? ? ? ?tree = TreeInfo.skipParens(tree); > + ? ? ? ?if (tree.hasTag(APPLY)) { > + ? ? ? ? ? ?JCMethodInvocation apply = (JCMethodInvocation)tree; > + ? ? ? ? ? ?MethodSymbol msym = > (MethodSymbol)TreeInfo.symbol(apply.meth); > + ? ? ? ? ? ?return msym.name == names.getClass && > msym.implementedIn(syms.objectType.tsym, types) != null; > + ? ? ? ?} > + ? ? ? ?return false; > + ? ?} > + > ? ? ?Type checkMethod(final Type mtype, > ? ? ? ? ? ? ?final Symbol sym, > ? ? ? ? ? ? ?final Env env, > diff -r e2f1c4d5f39e > src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties > --- > a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.propertiesTue > Jan 28 17:12:01 2020 +0530 > +++ > b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.propertiesMon > Feb 03 09:03:11 2020 +0100 > @@ -1778,6 +1778,9 @@ > ?compiler.warn.incubating.modules=\ > ? ? ?using incubating module(s): {0} > +compiler.warn.get.class.compared.with.interface=\ > + ? ?return value of getClass() can never equal the class literal of > an interface > + > ?# 0: symbol, 1: symbol > ?compiler.warn.has.been.deprecated=\ > ? ? ?{0} in {1} has been deprecated > diff -r e2f1c4d5f39e > src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties > --- > a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.propertiesTue > Jan 28 17:12:01 2020 +0530 > +++ > b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.propertiesMon > Feb 03 09:03:11 2020 +0100 > @@ -206,6 +206,9 @@ > ?javac.opt.Xlint.desc.module=\ > ? ? ?Warn about module system related issues. > +javac.opt.Xlint.desc.migration=\ > + ? ?Warn about issues related to migration of JDK classes. > + > ?javac.opt.Xlint.desc.opens=\ > ? ? ?Warn about issues regarding module opens. > diff -r e2f1c4d5f39e test/langtools/tools/javac/diags/CheckExamples.java > --- a/test/langtools/tools/javac/diags/CheckExamples.javaTue Jan 28 > 17:12:01 2020 +0530 > +++ b/test/langtools/tools/javac/diags/CheckExamples.javaMon Feb 03 > 09:03:11 2020 +0100 > @@ -45,12 +45,22 @@ > ?/** > ? * Check invariants for a set of examples. > + * > + * READ THIS IF THIS TEST FAILS AFTER ADDING A NEW KEY TO > 'compiler.properties': > + * The 'examples' subdirectory contains a number of examples which > provoke > + * the reporting of most of the compiler message keys. > + * > ? * -- each example should exactly declare the keys that will be > generated when > ? * ? ? ?it is run. > + * -- this is done by the "// key:"-comment in each fine. > ? * -- together, the examples should cover the set of resource keys in the > ? * ? ? ?compiler.properties bundle. A list of exceptions may be given > in the > ? * ? ? ?not-yet.txt file. Entries on the not-yet.txt list should not be > ? * ? ? ?covered by examples. > + * -- some keys are only reported by the compiler when specific > options are > + * ? ? ?supplied. For the purposes of this test, this can be > specified by a > + * ? ? ?comment e.g. like this: "// options: -Xlint:empty" > + * > ? * When new keys are added to the resource bundle, it is strongly > recommended > ? * that corresponding new examples be added here, if at all > practical, instead > ? * of simply and lazily being added to the not-yet.txt list. > diff -r e2f1c4d5f39e > test/langtools/tools/javac/diags/examples/CheckGetClassComparedWithInterfaceLiteral.java > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/diags/examples/CheckGetClassComparedWithInterfaceLiteral.javaMon > Feb 03 09:03:11 2020 +0100 > @@ -0,0 +1,31 @@ > +/* > + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. > + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > + * > + * This code is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License version 2 only, as > + * published by the Free Software Foundation. > + * > + * This code is distributed in the hope that it will be useful, but > WITHOUT > + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > + * FITNESS FOR A PARTICULAR PURPOSE. ?See the GNU General Public License > + * version 2 for more details (a copy is included in the LICENSE file > that > + * accompanied this code). > + * > + * You should have received a copy of the GNU General Public License > version > + * 2 along with this work; if not, write to the Free Software Foundation, > + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > + * > + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA > 94065 USA > + * or visit www.oracle.com if you need > additional information or have any > + * questions. > + */ > + > +// key: compiler.warn.get.class.compared.with.interface > +// options: -Xlint:migration > + > +class CheckGetClassComparedWithInterfaceLiteral { > + ? ?boolean checkObject(Object o) { > + ? ? ? ?return o.getClass() == Iterable.class; > + ? ?} > +} > diff -r e2f1c4d5f39e > test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.java > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.javaMon > Feb 03 09:03:11 2020 +0100 > @@ -0,0 +1,72 @@ > +/* > + * @test /nodynamiccopyright/ > + * @bug 8237074 > + * @summary Result of .getClass() should never be compared to an > interface class literal > + * > + * @compile/ref=CheckInterfaceComparison.out -XDrawDiagnostics > -Xlint:migration CheckInterfaceComparison.java > + */ > +public class CheckInterfaceComparison { > + ? ?public boolean bogusCompareLeft(Object o) { // Should be warned > against > + ? ? ? ?return (o.getClass()) == Runnable.class; > + ? ?} > + > + ? ?public boolean bogusCompareNELeft(Object o) { // Should be warned > against > + ? ? ? ?return (o.getClass()) != Runnable.class; > + ? ?} > + > + ? ?public boolean bogusCompareRight(Object o) { // Should be warned > against > + ? ? ? ?return Iterable.class == o.getClass(); > + ? ?} > + > + ? ?public boolean bogusCompareNERight(Object o) { // Should be > warned against > + ? ? ? ?return Iterable.class != o.getClass(); > + ? ?} > + > + ? ?public boolean goodCompareLeft(Object o) { // Is fine, no warning > required > + ? ? ? ?return o.getClass() == Integer.class; > + ? ?} > + > + ? ?public boolean goodCompareNELeft(Object o) { // Is fine, no > warning required > + ? ? ? ?return o.getClass() != Integer.class; > + ? ?} > + > + ? ?public boolean goodCompareRight(Object o) { // Is fine, no > warning required > + ? ? ? ?return Long.class == o.getClass(); > + ? ?} > + > + ? ?public boolean goodCompareNERight(Object o) { // Is fine, no > warning required > + ? ? ? ?return Long.class != o.getClass(); > + ? ?} > + > + ? ?public boolean rawCompareLeft(Object o, Class clazz) { // Is > fine, no warning required > + ? ? ? ?return o.getClass() == clazz; > + ? ?} > + > + ? ?public boolean rawCompareNELeft(Object o, Class clazz) { // Is > fine, no warning required > + ? ? ? ?return o.getClass() != clazz; > + ? ?} > + > + ? ?public boolean rawCompareRight(Object o, Class clazz) { // Is > fine, no warning required > + ? ? ? ?return clazz == o.getClass(); > + ? ?} > + > + ? ?public boolean rawCompareNERight(Object o, Class clazz) { // > Is fine, no warning required > + ? ? ? ?return clazz != o.getClass(); > + ? ?} > + > + ? ?static Class getClass(int x) { > + ? ? ? ?return null; > + ? ?} > + > + ? ?public static boolean compare(Object o, Class clazz) { > + ? ? ? ?return getClass(0) == Runnable.class; // No warning required > for static getClass > + ? ?} > + > + ? ?public Class getClass(String x) { > + ? ? ? ?return null; > + ? ?} > + > + ? ?public boolean compare(Object o, String arg, Class clazz) { > + ? ? ? ?return getClass(arg) == Runnable.class; // No warning > required for non-object.getClass() > + ? ?} > +} > diff -r e2f1c4d5f39e > test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.out > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckInterfaceComparison.outMon > Feb 03 09:03:11 2020 +0100 > @@ -0,0 +1,5 @@ > +CheckInterfaceComparison.java:10:31: > compiler.warn.get.class.compared.with.interface > +CheckInterfaceComparison.java:14:31: > compiler.warn.get.class.compared.with.interface > +CheckInterfaceComparison.java:18:31: > compiler.warn.get.class.compared.with.interface > +CheckInterfaceComparison.java:22:31: > compiler.warn.get.class.compared.with.interface > +4 warnings > From srikanth.adayapalam at oracle.com Mon Feb 3 11:01:25 2020 From: srikanth.adayapalam at oracle.com (Srikanth) Date: Mon, 3 Feb 2020 16:31:25 +0530 Subject: 8237067: Implementation of .default - (lworld branch) In-Reply-To: <7E1920C1-3A7C-4A48-8FF9-2F60AE52FB0A@selskabet.org> References: <31D74973-9A5B-4970-8A60-A301304D0E34@selskabet.org> <013C63F6-314D-40D9-9449-428ACD56646E@selskabet.org> <448250cc-7ea7-a58d-289a-1dad14964e6a@oracle.com> <1F4F52CA-F8CB-4325-BC32-C13226053D3E@selskabet.org> <7b0c1885-686a-9a92-7f7d-a33f38a482ee@oracle.com> <7E1920C1-3A7C-4A48-8FF9-2F60AE52FB0A@selskabet.org> Message-ID: On 03/02/20 2:10 pm, Jesper Steen M?ller wrote: > Hi list and Srikanth > > Here?s a second version of the patch. Thanks Jesper, This one looks close. We still need a few small changes: (1) The second version of the patch is missing the changes that were present in the first for compiler.properties and examples.not-yet.txt. These are not crucial to the functionality you are adding, but were still a good idea to include from a housekeeping/hygiene point of view. (2) CheckBadSelector.java: the copyright has mutated to the "other" version. We have two versions of copyright header - (a) one for negative tests that would trigger a compiler diagnostic and (b) a fuller one for tests that are meant to be run. The former would look like: /* * @test /nodynamiccopyright/ * @summary Check that syntax constraints still exist * * @compile/fail/ref=CheckBadSelector.out -XDrawDiagnostics CheckBadSelector.java */ While the latter is the usual full copyright. I believe mixing up the styles would create issues in some testing environments. See https://openjdk.java.net/groups/compiler/tests.html *10. Golden file tests* Also https://openjdk.java.net/jtreg/faq.html (search for nodynamic) (3) Same copyright related comment for CheckFeatureGate.java (4) On the feature gating changes to the parser: In general I find that it will result in fewer and cleaner errors if (a) the new constructs are tolerated in the parser but rejected in the attributor based on language level. or (b) if we check for feature level using statement like: checkSourceLevel(Feature.INLINE_TYPES); and continue to parse in 14 mode. (i.e parse T.default even in 13, BUT *after* having complained against it) As it is, many of the diagnostics in CheckFeatureGate.out don't add value. But we may not be consistent in our approach in this area, so we can leave your changes to the parser that check the feature level intact. i.e I am fine if you make a change as outlined. Or if the present approach is retained. Thanks Srikanth > >> (1) The change in LocaleProvidersRun.java seems unconnected to the fix. I am able to back it out and the test still passes. > Removed. > >> (2) CheckBadSelector.java: it is customary to include the bug number with a @bug xxxxxxxx tag > Fixed. > >> (3) CheckMakeDefault.java: I apologize for having left stale identifiers in this file. But now that we are changing it, >> could you (a) remove the comments "// NO: Sinner is not a value class." in line 13, (b) drop the "// OK" from line 19 (c) Drop the comment "// Allowed in the new 'State of Valhalla'" in line 41 (it was allowed already, the name badFactory was stale) > Fixed, I removed the badFactory as it wasn?t testing anything by itself. > >> (4) DefaultNonInlines.java: (a) Copyright mentions 2018. (b) I am curious - why are the statements using while instead if ?? (c) The SOP is to throw new AssertionError rather than just Exception. (d) The second "// Array type - differnt syntactically" is inappropriate. (d) '\0' shows up highlit in red in Vim - (why ?) It accepts '\u0000' without gripes. >> > a) Fixed > b) By using while, we (implicitly) test that the .default is not a Constant Expression as per the spec. The reachability-analysis will detect that a ?while () { }? does not terminate if evaluates to true and doesn?t contain a break or return. So implicitly, this way, we test that the .default does not produce a constant expression. I?ve added a comment mentioning this. > c) Fixed. > d) Vim must somehow not understand octal escapes in character. In my reading of JLS ?3.10.4 (Character Literals) and ?3.10.6 (Escape Sequences for Character and String Literals), single octal digits are just fine as EscapeSequences. In this case, the code unit lies within the supported range for octals (\u0000 through \u00FF), so all is legal Java. > >> (5) Gen.java: Can we factor out the common code result = items.makeStackItem(tree.type); from the 3 paths ?? >> > Fixed > >> (6) JavacParser.java: 1345 - Just curious - what necessitates this change ?? >> > The token?s end position must be recorded for the produced node, otherwise the postion information will be incomplete. This is tested in tools/javac/tree/TreePosTest.java which will fail without this change. > >> (7) I think the changes to allow Type.default should be keyed off of Feature.INLINE_TYPES (see com.sun.tools.javac.code.Source.Feature#allowedInSource). Earlier code changes done by me may have missed checking for this. Sorry about that! We can take the present opportunity to fix that. It may be cleaner to always allow this in the parser and report an error in Attr. >> >> As of now >> >> class X { >> X x = X.default; >> } >> >> compiles fine with valhalla tip when javac is invoked as: valhalla/build/linux-x86_64-server-release/images/jdk/bin/javac --release 13 X.java > > Fixed in the parser in the three places, and a test (CheckFeatureGate) has been added to test all feature gating of inlines. > > -Jesper > > diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java > --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Tue Jan 28 17:12:01 2020 +0530 > +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Mon Feb 03 09:38:20 2020 +0100 > @@ -4042,10 +4042,15 @@ > while (elt.hasTag(ARRAY)) > elt = ((ArrayType)elt).elemtype; > if (elt.hasTag(TYPEVAR)) { > - log.error(tree.pos(), Errors.TypeVarCantBeDeref); > - result = tree.type = types.createErrorType(tree.name, site.tsym, site); > - tree.sym = tree.type.tsym; > - return ; > + if (tree.name == names._default) { > + result = check(tree, litType(BOT).constType(null), > + KindSelector.VAL, resultInfo); > + } else { > + log.error(tree.pos(), Errors.TypeVarCantBeDeref); > + result = tree.type = types.createErrorType(tree.name, site.tsym, site); > + tree.sym = tree.type.tsym; > + return; > + } > } > } > > @@ -4203,12 +4208,7 @@ > // visitSelect that qualifier expression is a type. > return syms.getClassField(site, types); > } else if (name == names._default) { > - if (!types.isValue(site)) { > - log.error(pos, Errors.MakeDefaultWithNonvalue); > - return syms.errSymbol; > - } else { > - return new VarSymbol(STATIC, names._default, site, site.tsym); > - } > + return new VarSymbol(STATIC, names._default, site, site.tsym); > } else { > // We are seeing a plain identifier as selector. > Symbol sym = rs.findIdentInType(pos, env, site, name, resultInfo.pkind); > @@ -4218,6 +4218,10 @@ > case WILDCARD: > throw new AssertionError(tree); > case TYPEVAR: > + if (name == names._default) { > + // Be sure to return the default value before examining bounds > + return new VarSymbol(STATIC, names._default, site, site.tsym); > + } > // Normally, site.getUpperBound() shouldn't be null. > // It should only happen during memberEnter/attribBase > // when determining the super type which *must* beac > @@ -4242,11 +4246,13 @@ > return types.createErrorType(name, site.tsym, site).tsym; > default: > // The qualifier expression is of a primitive type -- only > - // .class is allowed for these. > + // .class and .default is allowed for these. > if (name == names._class) { > // In this case, we have already made sure in Select that > // qualifier expression is a type. > return syms.getClassField(site, types); > + } else if (name == names._default) { > + return new VarSymbol(STATIC, names._default, site, site.tsym); > } else { > log.error(pos, Errors.CantDeref(site)); > return syms.errSymbol; > diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java > --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java Tue Jan 28 17:12:01 2020 +0530 > +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java Mon Feb 03 09:38:20 2020 +0100 > @@ -2405,7 +2405,13 @@ > result = items.makeStackItem(pt); > return; > } else if (tree.name == names._default) { > - code.emitop2(defaultvalue, checkDimension(tree.pos(), tree.type), PoolWriter::putClass); > + if (tree.type.asElement().isValue()) { > + code.emitop2(defaultvalue, checkDimension(tree.pos(), tree.type), PoolWriter::putClass); > + } else if (tree.type.isReference()) { > + code.emitop0(aconst_null); > + } else { > + code.emitop0(zero(Code.typecode(tree.type))); > + } > result = items.makeStackItem(tree.type); > return; > } > diff -r e2f1c4d5f39e src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java > --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java Tue Jan 28 17:12:01 2020 +0530 > +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java Mon Feb 03 09:38:20 2020 +0100 > @@ -477,6 +477,22 @@ > } > } > > + /** If next input token matches one of the two given tokens, skip it, otherwise report > + * an error. > + * > + * @return The actual token kind. > + */ > + public TokenKind accept2(TokenKind tk1, TokenKind tk2) { > + TokenKind returnValue = token.kind; > + if (token.kind == tk1 || token.kind == tk2) { > + nextToken(); > + } else { > + setErrorEndPos(token.pos); > + reportSyntaxError(S.prevToken().endPos, Errors.Expected2(tk1, tk2)); > + } > + return returnValue; > + } > + > /** Report an illegal start of expression/type error at given position. > */ > JCExpression illegal(int pos) { > @@ -1324,11 +1340,14 @@ > if ((mode & EXPR) != 0) { > switch (token.kind) { > case DEFAULT: > - if (typeArgs != null) return illegal(); > - selectExprMode(); > - t = F.at(pos).Select(t, names._default); > - nextToken(); > - break loop; > + if (Feature.INLINE_TYPES.allowedInSource(source)) { > + if (typeArgs != null) return illegal(); > + selectExprMode(); > + t = to(F.at(pos).Select(t, names._default)); > + nextToken(); > + break loop; > + } > + break; > case CLASS: > if (typeArgs != null) return illegal(); > selectExprMode(); > @@ -1395,7 +1414,7 @@ > t = toP(F.at(pos1).TypeApply(t, args.toList())); > while (token.kind == DOT) { > nextToken(); > - if (token.kind == DEFAULT) { > + if (token.kind == DEFAULT && Feature.INLINE_TYPES.allowedInSource(source)) { > t = toP(F.at(token.pos).Select(t, names._default)); > nextToken(); > selectExprMode(); > @@ -2228,7 +2247,13 @@ > selectExprMode(); > int pos = token.pos; > nextToken(); > - accept(CLASS); > + TokenKind selector; > + if (Feature.INLINE_TYPES.allowedInSource(source)) { > + selector = accept2(CLASS, DEFAULT); > + } else { > + accept(CLASS); > + selector = CLASS; > + } > if (token.pos == endPosTable.errorEndPos) { > // error recovery > Name name; > @@ -2246,7 +2271,7 @@ > // taking care to handle some interior dimension(s) being annotated. > if ((tag == TYPEARRAY && TreeInfo.containsTypeAnnotation(t)) || tag == ANNOTATED_TYPE) > syntaxError(token.pos, Errors.NoAnnotationsOnDotClass); > - t = toP(F.at(pos).Select(t, names._class)); > + t = toP(F.at(pos).Select(t, selector == CLASS ? names._class : names._default)); > } > } else if ((mode & TYPE) != 0) { > if (token.kind != COLCOL) { > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.java > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.java Mon Feb 03 09:38:20 2020 +0100 > @@ -0,0 +1,39 @@ > +/* > + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. > + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > + * > + * This code is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License version 2 only, as > + * published by the Free Software Foundation. Oracle designates this > + * particular file as subject to the "Classpath" exception as provided > + * by Oracle in the LICENSE file that accompanied this code. > + * > + * This code is distributed in the hope that it will be useful, but WITHOUT > + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > + * version 2 for more details (a copy is included in the LICENSE file that > + * accompanied this code). > + * > + * You should have received a copy of the GNU General Public License version > + * 2 along with this work; if not, write to the Free Software Foundation, > + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > + * > + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA > + * or visit www.oracle.com if you need additional information or have any > + * questions. > + */ > +/* > + * @test > + * @bug 8237067 > + * @summary [lworld] Check good and bad selectors on a type name > + * @compile/fail/ref=CheckBadSelector.out -XDrawDiagnostics CheckBadSelector.java > + */ > + > +inline final class Point { > + > + void badSelector() { > + Class c = int.class; > + int i = int.default; > + int x = int.whatever; > + } > +} > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.out > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.out Mon Feb 03 09:38:20 2020 +0100 > @@ -0,0 +1,2 @@ > +CheckBadSelector.java:37:21: compiler.err.expected2: class, default > +1 error > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate.java > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate.java Mon Feb 03 09:38:20 2020 +0100 > @@ -0,0 +1,52 @@ > +/* > + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. > + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > + * > + * This code is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License version 2 only, as > + * published by the Free Software Foundation. Oracle designates this > + * particular file as subject to the "Classpath" exception as provided > + * by Oracle in the LICENSE file that accompanied this code. > + * > + * This code is distributed in the hope that it will be useful, but WITHOUT > + * ANY WARRANTY; without eve > + * > + * n the implied warranty of MERCHANTABILITY or > + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > + * version 2 for more details (a copy is included in the LICENSE file that > + * accompanied this code). > + * > + * You should have received a copy of the GNU General Public License version > + * 2 along with this work; if not, write to the Free Software Foundation, > + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > + * > + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA > + * or visit www.oracle.com if you need additional information or have any > + * questions. > + */ > + > +/* > + * @test > + * @bug 8237067 > + * @summary Check that feature gated constructs are not allowed in previous versions. > + * @compile/fail/ref=CheckFeatureGate.out --release=13 -XDrawDiagnostics CheckFeatureGate.java > + */ > + > +public class CheckFeatureGate { > + > + static inline class Val { > + public int v = 42; > + } > + > + static void checkDefaultT(Class clazz) throws Exception { > + while (T.default != null) > + throw new AssertionError("Generic object should default to null"); > + } > + > + public static void main(String[] args) throws Exception { > + int a = int.default; > + String s = String.default; > + int[] ia = int[].default; > + checkDefaultT(Object.class); > + } > +} > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate.out > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate.out Mon Feb 03 09:38:20 2020 +0100 > @@ -0,0 +1,12 @@ > +CheckFeatureGate.java:37:12: compiler.err.feature.not.supported.in.source: (compiler.misc.feature.inline.type), 13, 14 > +CheckFeatureGate.java:42:18: compiler.err.expected: token.identifier > +CheckFeatureGate.java:42:25: compiler.err.expected2: :, -> > +CheckFeatureGate.java:42:26: compiler.err.illegal.start.of.expr > +CheckFeatureGate.java:42:33: compiler.err.expected: ';' > +CheckFeatureGate.java:47:21: compiler.err.expected: class > +CheckFeatureGate.java:47:28: compiler.err.expected2: :, -> > +CheckFeatureGate.java:48:27: compiler.err.expected: token.identifier > +CheckFeatureGate.java:48:34: compiler.err.expected2: :, -> > +CheckFeatureGate.java:49:26: compiler.err.expected: class > +CheckFeatureGate.java:49:33: compiler.err.expected2: :, -> > +11 errors > \ No newline at end of file > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java > --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java Tue Jan 28 17:12:01 2020 +0530 > +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java Mon Feb 03 09:38:20 2020 +0100 > @@ -10,26 +10,33 @@ > inline abstract class A { int x = 10; } // Error > static final class Sinner { > static Sinner make() { > - return Sinner.default; // NO: Sinner is not a value class. > + return Sinner.default; > } > } > > inline static final class SinnerValue { > static SinnerValue make() { > - return SinnerValue.default; // OK. > + return SinnerValue.default; > } int x = 10; > } > > final int x; > final int y; > > + final int nonbool = boolean.default; > + final boolean nonbyte = byte.default; > + final boolean nonchar = char.default; > + final boolean nonint = int.default; > + final boolean nonshort = short.default; > + final boolean nonlong = long.default; > + final boolean nonfloat = float.default; > + final boolean nondouble = double.default; > + final int nonString = String.default; > + final int nonbyteArray = byte[].default; > + > Point() {} > Point (int x, int y) {} > > - Point badFactory(int x, int y) { > - return Point.default; > - } > - > static Point make(int x, int y) { > Point p = Point.default; > String s = String.default; > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out > --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out Tue Jan 28 17:12:01 2020 +0530 > +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out Mon Feb 03 09:38:20 2020 +0100 > @@ -1,5 +1,13 @@ > CheckMakeDefault.java:9:12: compiler.err.illegal.combination.of.modifiers: interface, inline > CheckMakeDefault.java:10:21: compiler.err.illegal.combination.of.modifiers: abstract, inline > -CheckMakeDefault.java:13:26: compiler.err.make.default.with.nonvalue > -CheckMakeDefault.java:35:25: compiler.err.make.default.with.nonvalue > -4 errors > +CheckMakeDefault.java:26:32: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: boolean, int) > +CheckMakeDefault.java:27:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: byte, boolean) > +CheckMakeDefault.java:28:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: char, boolean) > +CheckMakeDefault.java:29:31: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: int, boolean) > +CheckMakeDefault.java:30:35: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: short, boolean) > +CheckMakeDefault.java:31:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: long, boolean) > +CheckMakeDefault.java:32:35: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: float, boolean) > +CheckMakeDefault.java:33:37: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: double, boolean) > +CheckMakeDefault.java:34:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: java.lang.String, int) > +CheckMakeDefault.java:35:36: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: byte[], int) > +12 errors > \ No newline at end of file > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.java > --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.java Tue Jan 28 17:12:01 2020 +0530 > +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 > @@ -1,12 +0,0 @@ > -/* > - * @test /nodynamiccopyright/ > - * @summary Do not allow mismatched instantiation syntax between value & reference types. > - * > - * @compile/fail/ref=CheckValueFactoryWithReference.out -XDrawDiagnostics CheckValueFactoryWithReference.java > - */ > - > -final class CheckValueFactoryWithReference { > - final Object o = Object.default; > - inline final class Point { int x = 10; } > - Point p = new Point(); > -} > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.out > --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.out Tue Jan 28 17:12:01 2020 +0530 > +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 > @@ -1,2 +0,0 @@ > -CheckValueFactoryWithReference.java:9:28: compiler.err.make.default.with.nonvalue > -1 error > diff -r e2f1c4d5f39e test/langtools/tools/javac/valhalla/lworld-values/DefaultNonInlines.java > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/test/langtools/tools/javac/valhalla/lworld-values/DefaultNonInlines.java Mon Feb 03 09:38:20 2020 +0100 > @@ -0,0 +1,92 @@ > +/* > + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. > + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > + * > + * This code is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License version 2 only, as > + * published by the Free Software Foundation. Oracle designates this > + * particular file as subject to the "Classpath" exception as provided > + * by Oracle in the LICENSE file that accompanied this code. > + * > + * This code is distributed in the hope that it will be useful, but WITHOUT > + * ANY WARRANTY; without eve > + * > + * n the implied warranty of MERCHANTABILITY or > + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > + * version 2 for more details (a copy is included in the LICENSE file that > + * accompanied this code). > + * > + * You should have received a copy of the GNU General Public License version > + * 2 along with this work; if not, write to the Free Software Foundation, > + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > + * > + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA > + * or visit www.oracle.com if you need additional information or have any > + * questions. > + */ > + > +/* > + * @test Check default values for non-inline types > + * @bug 8237067 > + * @summary [lworld] Provide linguistic support to denote default values. > + * @run main/othervm -Dtest.compiler.opts=-release=13 DefaultNonInlines > + */ > + > +public class DefaultNonInlines { > + > + static inline class Val { > + public int v = 42; > + } > + > + static void checkDefaultT(Class clazz) throws Exception { > + while (T.default != null) > + throw new AssertionError("Generic object should default to null"); > + } > + > + public static void main(String[] args) throws Exception { > + // Default value is set by inline class constructor > + while (Val.default.v != int.default) > + throw new AssertionError("inline object fields should default to defaults"); > + > + while ((new Val()).v != 42) > + throw new AssertionError("inline object fields should default to whatever constructor says"); > + > + // Simple reference default is just null > + while (String.default != null) > + throw new AssertionError("reference object should default to null"); > + > + // Reference default checked in method above > + checkDefaultT(String.class); > + > + // Array type - different syntactically > + while (int[].default != null) > + throw new AssertionError("arrays should default to null"); > + > + while (boolean.default != false) > + throw new AssertionError("boolean should default to false"); > + > + while (char.default != '\0') > + throw new AssertionError("char should default to '\0'"); > + > + while (int.default != 0) > + throw new AssertionError("int should default to 0"); > + > + while (byte.default != 0) > + throw new AssertionError("byte should default to 0"); > + > + while (short.default != 0) > + throw new AssertionError("short should default to 0"); > + > + while (long.default != 0L) > + throw new AssertionError("long should default to 0L"); > + > + while (float.default != 0.0F) > + throw new AssertionError("float should default to 0.0F"); > + > + while (double.default != 0.0D) > + throw new AssertionError("double should default to 0.0D"); > + > + // Note: The while loops above implicitly test that the SomeType.default does not > + // return a constant expression. > + } > +} > > From srikanth.adayapalam at oracle.com Mon Feb 3 11:45:42 2020 From: srikanth.adayapalam at oracle.com (srikanth.adayapalam at oracle.com) Date: Mon, 03 Feb 2020 11:45:42 +0000 Subject: hg: valhalla/valhalla: [lworld]: Clean up reflection related test failures pending resolution of JDK-8237952 Message-ID: <202002031145.013Bjh7q026670@aojmv0008.oracle.com> Changeset: 590472eb3185 Author: sadayapalam Date: 2020-02-03 17:15 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/590472eb3185 [lworld]: Clean up reflection related test failures pending resolution of JDK-8237952 ! test/jdk/java/lang/annotation/TypeAnnotationReflection.java ! test/jdk/java/lang/annotation/typeAnnotations/GetAnnotatedInterfaces.java ! test/jdk/java/lang/reflect/Generics/TestC1.java ! test/jdk/java/lang/reflect/Generics/TestC2.java From srikanth.adayapalam at oracle.com Mon Feb 3 13:24:27 2020 From: srikanth.adayapalam at oracle.com (srikanth.adayapalam at oracle.com) Date: Mon, 03 Feb 2020 13:24:27 +0000 Subject: hg: valhalla/valhalla: [lworld]: Fix test failure due to constant pool overflow. Message-ID: <202002031324.013DOSQr015203@aojmv0008.oracle.com> Changeset: aba88f79b64e Author: sadayapalam Date: 2020-02-03 18:54 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/aba88f79b64e [lworld]: Fix test failure due to constant pool overflow. ! test/hotspot/jtreg/gc/TestBigObj.java From srikanth.adayapalam at oracle.com Mon Feb 3 13:48:32 2020 From: srikanth.adayapalam at oracle.com (srikanth.adayapalam at oracle.com) Date: Mon, 03 Feb 2020 13:48:32 +0000 Subject: hg: valhalla/valhalla: [lworld]: Fix test failure due to stale jasm encoding Message-ID: <202002031348.013DmWBd028066@aojmv0008.oracle.com> Changeset: e0e612ef5bc9 Author: sadayapalam Date: 2020-02-03 19:18 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e0e612ef5bc9 [lworld]: Fix test failure due to stale jasm encoding ! test/hotspot/jtreg/serviceability/jvmti/RedefineClasses/RedefineCondy.jasm From ioi.lam at oracle.com Mon Feb 3 20:40:37 2020 From: ioi.lam at oracle.com (Ioi Lam) Date: Mon, 3 Feb 2020 12:40:37 -0800 Subject: [lworld] CDS test failures with IdentityObject Message-ID: FYI, We have a bunch of CDS failures with the IdentityObject change, like this: ??? Class CustomLoadee implements the interface java.lang.IdentityObject, ??? but no interface has been specified in the input line I'll try to fix this so we can avoid noise in the test runs. Thanks - Ioi From jesper at selskabet.org Mon Feb 3 22:16:04 2020 From: jesper at selskabet.org (=?utf-8?Q?Jesper_Steen_M=C3=B8ller?=) Date: Mon, 3 Feb 2020 23:16:04 +0100 Subject: 8237067: Implementation of .default - (lworld branch) In-Reply-To: References: <31D74973-9A5B-4970-8A60-A301304D0E34@selskabet.org> <013C63F6-314D-40D9-9449-428ACD56646E@selskabet.org> <448250cc-7ea7-a58d-289a-1dad14964e6a@oracle.com> <1F4F52CA-F8CB-4325-BC32-C13226053D3E@selskabet.org> <7b0c1885-686a-9a92-7f7d-a33f38a482ee@oracle.com> <7E1920C1-3A7C-4A48-8FF9-2F60AE52FB0A@selskabet.org> Message-ID: <7DA6668F-67B5-409D-951E-74D067844382@selskabet.org> Hi again I?ve fixed the issues with the patch: > On 3 Feb 2020, at 12.01, Srikanth wrote: > > (1) The second version of the patch is missing the changes that were present in the first for compiler.properties and examples.not-yet.txt. These are not crucial to the functionality you are adding, but were still a good idea to include from a housekeeping/hygiene point of view. > Missing ?hg? foo there. Fixed. > (2) CheckBadSelector.java: the copyright has mutated to the "other" version. We have two versions of copyright header - (a) one for negative tests that would trigger a compiler diagnostic and (b) a fuller one for tests that are meant to be run. > > The former would look like: > > /* > * @test /nodynamiccopyright/ > * @summary Check that syntax constraints still exist > * > * @compile/fail/ref=CheckBadSelector.out -XDrawDiagnostics CheckBadSelector.java > */ > > While the latter is the usual full copyright. > > I believe mixing up the styles would create issues in some testing environments. > > See https://openjdk.java.net/groups/compiler/tests.html 10. Golden file tests <> > Also https://openjdk.java.net/jtreg/faq.html (search for nodynamic) > Fixed. > (3) Same copyright related comment for CheckFeatureGate.java > Fixed. > (4) On the feature gating changes to the parser: In general I find that it will result in fewer and cleaner errors if (a) the new constructs are tolerated in the parser but rejected in the attributor based on language level. or (b) if we check for feature level using statement > like: checkSourceLevel(Feature.INLINE_TYPES); and continue to parse in 14 mode. (i.e parse T.default even in 13, BUT *after* having complained against it) As it is, many of the diagnostics in CheckFeatureGate.out don't add value. > Fixed as you suggested. Now I see that you actually suggested as much in the first review. I?ve split the test to test both gates (both for the use of ?inline? and for ?default?). -Jesper Patch here: diff -r e0e612ef5bc9 src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Mon Feb 03 19:18:20 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Mon Feb 03 23:11:25 2020 +0100 @@ -165,6 +165,7 @@ allowLambda = Feature.LAMBDA.allowedInSource(source); allowDefaultMethods = Feature.DEFAULT_METHODS.allowedInSource(source); allowStaticInterfaceMethods = Feature.STATIC_INTERFACE_METHODS.allowedInSource(source); + allowInlineTypes = Feature.INLINE_TYPES.allowedInSource(source); allowReifiableTypesInInstanceof = Feature.REIFIABLE_TYPES_INSTANCEOF.allowedInSource(source) && (!preview.isPreview(Feature.REIFIABLE_TYPES_INSTANCEOF) || preview.isEnabled()); @@ -199,6 +200,10 @@ */ boolean allowDefaultMethods; + /** Switch: allow inline types? + */ + boolean allowInlineTypes; + /** Switch: static interface methods enabled? */ boolean allowStaticInterfaceMethods; @@ -4019,6 +4024,10 @@ if (tree.name == names._this || tree.name == names._super || tree.name == names._class || tree.name == names._default) { + if (tree.name == names._default && !allowInlineTypes) { + log.error(DiagnosticFlag.SOURCE_LEVEL, tree.pos(), + Feature.INLINE_TYPES.error(sourceName)); + } skind = KindSelector.TYP; } else { if (pkind().contains(KindSelector.PCK)) @@ -4040,10 +4049,15 @@ while (elt.hasTag(ARRAY)) elt = ((ArrayType)elt).elemtype; if (elt.hasTag(TYPEVAR)) { - log.error(tree.pos(), Errors.TypeVarCantBeDeref); - result = tree.type = types.createErrorType(tree.name, site.tsym, site); - tree.sym = tree.type.tsym; - return ; + if (tree.name == names._default) { + result = check(tree, litType(BOT).constType(null), + KindSelector.VAL, resultInfo); + } else { + log.error(tree.pos(), Errors.TypeVarCantBeDeref); + result = tree.type = types.createErrorType(tree.name, site.tsym, site); + tree.sym = tree.type.tsym; + return; + } } } @@ -4201,12 +4215,7 @@ // visitSelect that qualifier expression is a type. return syms.getClassField(site, types); } else if (name == names._default) { - if (!types.isValue(site)) { - log.error(pos, Errors.MakeDefaultWithNonvalue); - return syms.errSymbol; - } else { - return new VarSymbol(STATIC, names._default, site, site.tsym); - } + return new VarSymbol(STATIC, names._default, site, site.tsym); } else { // We are seeing a plain identifier as selector. Symbol sym = rs.findIdentInType(pos, env, site, name, resultInfo.pkind); @@ -4216,6 +4225,10 @@ case WILDCARD: throw new AssertionError(tree); case TYPEVAR: + if (name == names._default) { + // Be sure to return the default value before examining bounds + return new VarSymbol(STATIC, names._default, site, site.tsym); + } // Normally, site.getUpperBound() shouldn't be null. // It should only happen during memberEnter/attribBase // when determining the super type which *must* beac @@ -4240,11 +4253,13 @@ return types.createErrorType(name, site.tsym, site).tsym; default: // The qualifier expression is of a primitive type -- only - // .class is allowed for these. + // .class and .default is allowed for these. if (name == names._class) { // In this case, we have already made sure in Select that // qualifier expression is a type. return syms.getClassField(site, types); + } else if (name == names._default) { + return new VarSymbol(STATIC, names._default, site, site.tsym); } else { log.error(pos, Errors.CantDeref(site)); return syms.errSymbol; diff -r e0e612ef5bc9 src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java Mon Feb 03 19:18:20 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java Mon Feb 03 23:11:25 2020 +0100 @@ -2405,7 +2405,13 @@ result = items.makeStackItem(pt); return; } else if (tree.name == names._default) { - code.emitop2(defaultvalue, checkDimension(tree.pos(), tree.type), PoolWriter::putClass); + if (tree.type.asElement().isValue()) { + code.emitop2(defaultvalue, checkDimension(tree.pos(), tree.type), PoolWriter::putClass); + } else if (tree.type.isReference()) { + code.emitop0(aconst_null); + } else { + code.emitop0(zero(Code.typecode(tree.type))); + } result = items.makeStackItem(tree.type); return; } diff -r e0e612ef5bc9 src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java Mon Feb 03 19:18:20 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java Mon Feb 03 23:11:25 2020 +0100 @@ -477,6 +477,22 @@ } } + /** If next input token matches one of the two given tokens, skip it, otherwise report + * an error. + * + * @return The actual token kind. + */ + public TokenKind accept2(TokenKind tk1, TokenKind tk2) { + TokenKind returnValue = token.kind; + if (token.kind == tk1 || token.kind == tk2) { + nextToken(); + } else { + setErrorEndPos(token.pos); + reportSyntaxError(S.prevToken().endPos, Errors.Expected2(tk1, tk2)); + } + return returnValue; + } + /** Report an illegal start of expression/type error at given position. */ JCExpression illegal(int pos) { @@ -1326,7 +1342,7 @@ case DEFAULT: if (typeArgs != null) return illegal(); selectExprMode(); - t = F.at(pos).Select(t, names._default); + t = to(F.at(pos).Select(t, names._default)); nextToken(); break loop; case CLASS: @@ -2228,7 +2244,7 @@ selectExprMode(); int pos = token.pos; nextToken(); - accept(CLASS); + TokenKind selector = accept2(CLASS, DEFAULT); if (token.pos == endPosTable.errorEndPos) { // error recovery Name name; @@ -2246,7 +2262,7 @@ // taking care to handle some interior dimension(s) being annotated. if ((tag == TYPEARRAY && TreeInfo.containsTypeAnnotation(t)) || tag == ANNOTATED_TYPE) syntaxError(token.pos, Errors.NoAnnotationsOnDotClass); - t = toP(F.at(pos).Select(t, names._class)); + t = toP(F.at(pos).Select(t, selector == CLASS ? names._class : names._default)); } } else if ((mode & TYPE) != 0) { if (token.kind != COLCOL) { diff -r e0e612ef5bc9 src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties Mon Feb 03 19:18:20 2020 +0530 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties Mon Feb 03 23:11:25 2020 +0100 @@ -3565,9 +3565,6 @@ compiler.err.value.does.not.support=\ Inline types do not support {0} -compiler.err.make.default.with.nonvalue=\ - Default value creation requires an inline type - compiler.err.value.may.not.extend=\ Inline type may not extend another inline type or class diff -r e0e612ef5bc9 test/langtools/tools/javac/diags/examples.not-yet.txt --- a/test/langtools/tools/javac/diags/examples.not-yet.txt Mon Feb 03 19:18:20 2020 +0530 +++ b/test/langtools/tools/javac/diags/examples.not-yet.txt Mon Feb 03 23:11:25 2020 +0100 @@ -203,7 +203,6 @@ # Value types compiler.err.cyclic.value.type.membership compiler.err.value.does.not.support -compiler.err.make.default.with.nonvalue compiler.err.value.may.not.extend compiler.warn.potential.null.pollution compiler.err.empty.value.not.yet diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.java Mon Feb 03 23:11:25 2020 +0100 @@ -0,0 +1,15 @@ +/* + * @test /nodynamiccopyright/ + * @bug 8237067 + * @summary [lworld] Check good and bad selectors on a type name + * @compile/fail/ref=CheckBadSelector.out -XDrawDiagnostics CheckBadSelector.java + */ + +inline final class Point { + + void badSelector() { + Class c = int.class; + int i = int.default; + int x = int.whatever; + } +} diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.out --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.out Mon Feb 03 23:11:25 2020 +0100 @@ -0,0 +1,2 @@ +CheckBadSelector.java:13:21: compiler.err.expected2: class, default +1 error \ No newline at end of file diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.java Mon Feb 03 23:11:25 2020 +0100 @@ -0,0 +1,13 @@ +/* + * @test /nodynamiccopyright/ + * @bug 8237067 + * @summary Check that feature gated constructs are not allowed in previous versions. + * @compile/fail/ref=CheckFeatureGate1.out --release=13 -XDrawDiagnostics CheckFeatureGate1.java + */ + +public class CheckFeatureGate1 { + + static inline class Val { + public int v = 42; + } +} diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.out --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.out Mon Feb 03 23:11:25 2020 +0100 @@ -0,0 +1,2 @@ +CheckFeatureGate1.java:10:12: compiler.err.feature.not.supported.in.source: (compiler.misc.feature.inline.type), 13, 14 +1 error \ No newline at end of file diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.java Mon Feb 03 23:11:25 2020 +0100 @@ -0,0 +1,21 @@ +/* + * @test /nodynamiccopyright/ + * @bug 8237067 + * @summary Check that .default is not allowed in previous versions. + * @compile/fail/ref=CheckFeatureGate2.out --release=13 -XDrawDiagnostics CheckFeatureGate2.java + */ + +public class CheckFeatureGate2 { + + static void checkDefaultT(Class clazz) throws Exception { + while (T.default != null) + throw new AssertionError("Generic object should default to null"); + } + + public static void main(String[] args) throws Exception { + int a = int.default; + String s = String.default; + int[] ia = int[].default; + checkDefaultT(Object.class); + } +} diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.out --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.out Mon Feb 03 23:11:25 2020 +0100 @@ -0,0 +1,2 @@ +CheckFeatureGate2.java:11:17: compiler.err.feature.not.supported.in.source: (compiler.misc.feature.inline.type), 13, 14 +1 error \ No newline at end of file diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java Mon Feb 03 19:18:20 2020 +0530 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java Mon Feb 03 23:11:25 2020 +0100 @@ -10,26 +10,33 @@ inline abstract class A { int x = 10; } // Error static final class Sinner { static Sinner make() { - return Sinner.default; // NO: Sinner is not a value class. + return Sinner.default; } } inline static final class SinnerValue { static SinnerValue make() { - return SinnerValue.default; // OK. + return SinnerValue.default; } int x = 10; } final int x; final int y; + final int nonbool = boolean.default; + final boolean nonbyte = byte.default; + final boolean nonchar = char.default; + final boolean nonint = int.default; + final boolean nonshort = short.default; + final boolean nonlong = long.default; + final boolean nonfloat = float.default; + final boolean nondouble = double.default; + final int nonString = String.default; + final int nonbyteArray = byte[].default; + Point() {} Point (int x, int y) {} - Point badFactory(int x, int y) { - return Point.default; - } - static Point make(int x, int y) { Point p = Point.default; String s = String.default; diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out Mon Feb 03 19:18:20 2020 +0530 +++ b/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out Mon Feb 03 23:11:25 2020 +0100 @@ -1,5 +1,13 @@ CheckMakeDefault.java:9:12: compiler.err.illegal.combination.of.modifiers: interface, inline CheckMakeDefault.java:10:21: compiler.err.illegal.combination.of.modifiers: abstract, inline -CheckMakeDefault.java:13:26: compiler.err.make.default.with.nonvalue -CheckMakeDefault.java:35:25: compiler.err.make.default.with.nonvalue -4 errors +CheckMakeDefault.java:26:32: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: boolean, int) +CheckMakeDefault.java:27:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: byte, boolean) +CheckMakeDefault.java:28:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: char, boolean) +CheckMakeDefault.java:29:31: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: int, boolean) +CheckMakeDefault.java:30:35: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: short, boolean) +CheckMakeDefault.java:31:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: long, boolean) +CheckMakeDefault.java:32:35: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: float, boolean) +CheckMakeDefault.java:33:37: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: double, boolean) +CheckMakeDefault.java:34:33: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: java.lang.String, int) +CheckMakeDefault.java:35:36: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: byte[], int) +12 errors \ No newline at end of file diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.java --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.java Mon Feb 03 19:18:20 2020 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -/* - * @test /nodynamiccopyright/ - * @summary Do not allow mismatched instantiation syntax between value & reference types. - * - * @compile/fail/ref=CheckValueFactoryWithReference.out -XDrawDiagnostics CheckValueFactoryWithReference.java - */ - -final class CheckValueFactoryWithReference { - final Object o = Object.default; - inline final class Point { int x = 10; } - Point p = new Point(); -} diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.out --- a/test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.out Mon Feb 03 19:18:20 2020 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -CheckValueFactoryWithReference.java:9:28: compiler.err.make.default.with.nonvalue -1 error diff -r e0e612ef5bc9 test/langtools/tools/javac/valhalla/lworld-values/DefaultNonInlines.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/langtools/tools/javac/valhalla/lworld-values/DefaultNonInlines.java Mon Feb 03 23:11:25 2020 +0100 @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without eve + * + * n the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +/* + * @test Check default values for non-inline types + * @bug 8237067 + * @summary [lworld] Provide linguistic support to denote default values. + * @run main/othervm -Dtest.compiler.opts=-release=13 DefaultNonInlines + */ + +public class DefaultNonInlines { + + static inline class Val { + public int v = 42; + } + + static void checkDefaultT(Class clazz) throws Exception { + while (T.default != null) + throw new AssertionError("Generic object should default to null"); + } + + public static void main(String[] args) throws Exception { + // Default value is set by inline class constructor + while (Val.default.v != int.default) + throw new AssertionError("inline object fields should default to defaults"); + + while ((new Val()).v != 42) + throw new AssertionError("inline object fields should default to whatever constructor says"); + + // Simple reference default is just null + while (String.default != null) + throw new AssertionError("reference object should default to null"); + + // Reference default checked in method above + checkDefaultT(String.class); + + // Array type - different syntactically + while (int[].default != null) + throw new AssertionError("arrays should default to null"); + + while (boolean.default != false) + throw new AssertionError("boolean should default to false"); + + while (char.default != '\0') + throw new AssertionError("char should default to '\0'"); + + while (int.default != 0) + throw new AssertionError("int should default to 0"); + + while (byte.default != 0) + throw new AssertionError("byte should default to 0"); + + while (short.default != 0) + throw new AssertionError("short should default to 0"); + + while (long.default != 0L) + throw new AssertionError("long should default to 0L"); + + while (float.default != 0.0F) + throw new AssertionError("float should default to 0.0F"); + + while (double.default != 0.0D) + throw new AssertionError("double should default to 0.0D"); + + // Note: The while loops above implicitly test that the SomeType.default does not + // return a constant expression. + } +} From srikanth.adayapalam at oracle.com Tue Feb 4 04:14:56 2020 From: srikanth.adayapalam at oracle.com (Srikanth) Date: Tue, 4 Feb 2020 09:44:56 +0530 Subject: [lworld] CDS test failures with IdentityObject In-Reply-To: References: Message-ID: <4bbda449-2699-e968-b2a0-0b6a7de82783@oracle.com> Thanks a lot Ioi? for looking into this. I have also been cleaning up some of the failures in non-langtools tests (langtools were green at the time of pushing). (If absolutely needed you can suppress the top interface injection by using the javac command line -XDnoTopInterfaceInjection option as I had to do here http://hg.openjdk.java.net/valhalla/valhalla/rev/aba88f79b64e to avoid a constant pool overflow in a carefully handcrafted test case that maxes out constant pool indices - but in general the tests should evolve along with compiler behavior rather than revert to older behavior.) Thanks Srikanth On 04/02/20 2:10 am, Ioi Lam wrote: > FYI, > > We have a bunch of CDS failures with the IdentityObject change, like > this: > > ??? Class CustomLoadee implements the interface java.lang.IdentityObject, > ??? but no interface has been specified in the input line > > I'll try to fix this so we can avoid noise in the test runs. > > Thanks > - Ioi > From srikanth.adayapalam at oracle.com Tue Feb 4 05:47:53 2020 From: srikanth.adayapalam at oracle.com (srikanth.adayapalam at oracle.com) Date: Tue, 04 Feb 2020 05:47:53 +0000 Subject: hg: valhalla/valhalla: 8237067: [lworld] Provide linguistic support to denote default values. Message-ID: <202002040547.0145lsDp001802@aojmv0008.oracle.com> Changeset: 8a032af00c81 Author: sadayapalam Date: 2020-02-04 11:17 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8a032af00c81 8237067: [lworld] Provide linguistic support to denote default values. Reviewed-by: sadayapalam Contributed-by: jesper at selskabet.org ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! test/langtools/tools/javac/diags/examples.not-yet.txt + test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.java + test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.out + test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.java + test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.out + test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.java + test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.out ! test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java ! test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out - test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.java - test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.out + test/langtools/tools/javac/valhalla/lworld-values/DefaultNonInlines.java From srikanth.adayapalam at oracle.com Tue Feb 4 05:52:44 2020 From: srikanth.adayapalam at oracle.com (Srikanth) Date: Tue, 4 Feb 2020 11:22:44 +0530 Subject: 8237067: Implementation of .default - (lworld branch) In-Reply-To: <7DA6668F-67B5-409D-951E-74D067844382@selskabet.org> References: <31D74973-9A5B-4970-8A60-A301304D0E34@selskabet.org> <013C63F6-314D-40D9-9449-428ACD56646E@selskabet.org> <448250cc-7ea7-a58d-289a-1dad14964e6a@oracle.com> <1F4F52CA-F8CB-4325-BC32-C13226053D3E@selskabet.org> <7b0c1885-686a-9a92-7f7d-a33f38a482ee@oracle.com> <7E1920C1-3A7C-4A48-8FF9-2F60AE52FB0A@selskabet.org> <7DA6668F-67B5-409D-951E-74D067844382@selskabet.org> Message-ID: <1cdc9ce3-b34a-be50-f1cc-1e3e80f9cc41@oracle.com> Thanks Jesper. Looks good and I have pushed it here: http://hg.openjdk.java.net/valhalla/valhalla/rev/8a032af00c81 and resolved https://bugs.openjdk.java.net/browse/JDK-8237067 citing your contribution. (I think it it better to treat the .default notation orthogonally to inline type feature for error reporting, but what we have is good for now) Thanks Srikanth On 04/02/20 3:46 am, Jesper Steen M?ller wrote: > Hi again > > I?ve fixed the issues with the patch: > >> On 3 Feb 2020, at 12.01, Srikanth > > wrote: >> >> (1) The second version of the patch is missing the changes that were >> present in the first for compiler.properties and >> examples.not-yet.txt. These are not crucial to the functionality you >> are adding, but were still a good idea to include from a >> housekeeping/hygiene point of view. >> > > Missing ?hg? foo there. Fixed. > > >> (2) CheckBadSelector.java: the copyright has mutated to the "other" >> version. We have two versions of copyright header - (a) one for >> negative tests that would trigger a compiler diagnostic and (b) a >> fuller one for tests that are meant to be run. >> >> The former would look like: >> >> /* >> * @test /nodynamiccopyright/ >> * @summary Check that syntax constraints still exist >> * >> * @compile/fail/ref=CheckBadSelector.out -XDrawDiagnostics >> CheckBadSelector.java >> */ >> >> While the latter is the usual full copyright. >> >> I believe mixing up the styles would create issues in some testing >> environments. >> >> See https://openjdk.java.net/groups/compiler/tests.html *10. Golden >> file tests* >> Also https://openjdk.java.net/jtreg/faq.html (search for nodynamic) >> > > Fixed. > >> (3) Same copyright related comment for CheckFeatureGate.java >> > > Fixed. > >> (4) On the feature gating changes to the parser: In general I find >> that it will result in fewer and cleaner errors if (a) the new >> constructs are tolerated in the parser but rejected in the attributor >> based on language level. or (b) if we check for feature level using >> statement >> like: checkSourceLevel(Feature.INLINE_TYPES); and continue to parse >> in 14 mode. (i.e parse T.default even in 13, BUT *after* having >> complained against it) As it is, many of the diagnostics in >> CheckFeatureGate.out don't add value. >> > > Fixed as you suggested. Now I see that you actually suggested as much > in the first review. I?ve split the test to test both gates (both for > the use of ?inline? and for??default?). > > -Jesper > > Patch here: > > diff -r e0e612ef5bc9 > src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java > --- > a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.javaMon > Feb 03 19:18:20 2020 +0530 > +++ > b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.javaMon > Feb 03 23:11:25 2020 +0100 > @@ -165,6 +165,7 @@ > ? ? ? ? ?allowLambda = Feature.LAMBDA.allowedInSource(source); > ? ? ? ? ?allowDefaultMethods = > Feature.DEFAULT_METHODS.allowedInSource(source); > ? ? ? ? ?allowStaticInterfaceMethods = > Feature.STATIC_INTERFACE_METHODS.allowedInSource(source); > + ? ? ? ?allowInlineTypes = Feature.INLINE_TYPES.allowedInSource(source); > ? ? ? ? ?allowReifiableTypesInInstanceof = > ?Feature.REIFIABLE_TYPES_INSTANCEOF.allowedInSource(source) && > ?(!preview.isPreview(Feature.REIFIABLE_TYPES_INSTANCEOF) || > preview.isEnabled()); > @@ -199,6 +200,10 @@ > ? ? ? */ > ? ? ?boolean allowDefaultMethods; > + ? ?/** Switch: allow inline types? > + ? ? */ > + ? ?boolean allowInlineTypes; > + > ? ? ?/** Switch: static interface methods enabled? > ? ? ? */ > ? ? ?boolean allowStaticInterfaceMethods; > @@ -4019,6 +4024,10 @@ > ? ? ? ? ?if (tree.name == names._this || tree.name == names._super || > ? ? ? ? ? ? ? ? ?tree.name == names._class || tree.name == names._default) > ? ? ? ? ?{ > + ? ? ? ? ? ?if (tree.name == names._default && !allowInlineTypes) { > + ? ? ? ? ? ? ? ?log.error(DiagnosticFlag.SOURCE_LEVEL, tree.pos(), > + ?Feature.INLINE_TYPES.error(sourceName)); > + ? ? ? ? ? ?} > ? ? ? ? ? ? ?skind = KindSelector.TYP; > ? ? ? ? ?} else { > ? ? ? ? ? ? ?if (pkind().contains(KindSelector.PCK)) > @@ -4040,10 +4049,15 @@ > ? ? ? ? ? ? ?while (elt.hasTag(ARRAY)) > ? ? ? ? ? ? ? ? ?elt = ((ArrayType)elt).elemtype; > ? ? ? ? ? ? ?if (elt.hasTag(TYPEVAR)) { > - ? ? ? ? ? ? ? ?log.error(tree.pos(), Errors.TypeVarCantBeDeref); > - ? ? ? ? ? ? ? ?result = tree.type = types.createErrorType(tree.name, > site.tsym, site); > - ? ? ? ? ? ? ? ?tree.sym = tree.type.tsym; > - ? ? ? ? ? ? ? ?return ; > + ? ? ? ? ? ? ? ?if (tree.name == names._default) { > + ? ? ? ? ? ? ? ? ? ?result = check(tree, litType(BOT).constType(null), > + ? ? ? ? ? ? ? ? ? ? ? ? ? ?KindSelector.VAL, resultInfo); > + ? ? ? ? ? ? ? ?} else { > + ? ? ? ? ? ? ? ? ? ?log.error(tree.pos(), Errors.TypeVarCantBeDeref); > + ? ? ? ? ? ? ? ? ? ?result = tree.type = > types.createErrorType(tree.name, site.tsym, site); > + ? ? ? ? ? ? ? ? ? ?tree.sym = tree.type.tsym; > + ? ? ? ? ? ? ? ? ? ?return; > + ? ? ? ? ? ? ? ?} > ? ? ? ? ? ? ?} > ? ? ? ? ?} > @@ -4201,12 +4215,7 @@ > ? ? ? ? ? ? ? ? ? ? ?// visitSelect that qualifier expression is a type. > ? ? ? ? ? ? ? ? ? ? ?return syms.getClassField(site, types); > ? ? ? ? ? ? ? ? ?} else if (name == names._default) { > - ? ? ? ? ? ? ? ? ? ?if (!types.isValue(site)) { > - ? ? ? ? ? ? ? ? ? ? ? ?log.error(pos, Errors.MakeDefaultWithNonvalue); > - ? ? ? ? ? ? ? ? ? ? ? ?return syms.errSymbol; > - ? ? ? ? ? ? ? ? ? ?} else { > - ? ? ? ? ? ? ? ? ? ? ? ?return new VarSymbol(STATIC, names._default, > site, site.tsym); > - ? ? ? ? ? ? ? ? ? ?} > + ? ? ? ? ? ? ? ? ? ?return new VarSymbol(STATIC, names._default, > site, site.tsym); > ? ? ? ? ? ? ? ? ?} else { > ? ? ? ? ? ? ? ? ? ? ?// We are seeing a plain identifier as selector. > ? ? ? ? ? ? ? ? ? ? ?Symbol sym = rs.findIdentInType(pos, env, site, > name, resultInfo.pkind); > @@ -4216,6 +4225,10 @@ > ? ? ? ? ? ? ?case WILDCARD: > ? ? ? ? ? ? ? ? ?throw new AssertionError(tree); > ? ? ? ? ? ? ?case TYPEVAR: > + ? ? ? ? ? ? ? ?if (name == names._default) { > + ? ? ? ? ? ? ? ? ? ?// Be sure to return the default value before > examining bounds > + ? ? ? ? ? ? ? ? ? ?return new VarSymbol(STATIC, names._default, > site, site.tsym); > + ? ? ? ? ? ? ? ?} > ? ? ? ? ? ? ? ? ?// Normally, site.getUpperBound() shouldn't be null. > ? ? ? ? ? ? ? ? ?// It should only happen during memberEnter/attribBase > ? ? ? ? ? ? ? ? ?// when determining the super type which *must* beac > @@ -4240,11 +4253,13 @@ > ? ? ? ? ? ? ? ? ?return types.createErrorType(name, site.tsym, site).tsym; > ? ? ? ? ? ? ?default: > ? ? ? ? ? ? ? ? ?// The qualifier expression is of a primitive type -- > only > - ? ? ? ? ? ? ? ?// .class is allowed for these. > + ? ? ? ? ? ? ? ?// .class and .default is allowed for these. > ? ? ? ? ? ? ? ? ?if (name == names._class) { > ? ? ? ? ? ? ? ? ? ? ?// In this case, we have already made sure in > Select that > ? ? ? ? ? ? ? ? ? ? ?// qualifier expression is a type. > ? ? ? ? ? ? ? ? ? ? ?return syms.getClassField(site, types); > + ? ? ? ? ? ? ? ?} else if (name == names._default) { > + ? ? ? ? ? ? ? ? ? ?return new VarSymbol(STATIC, names._default, > site, site.tsym); > ? ? ? ? ? ? ? ? ?} else { > ? ? ? ? ? ? ? ? ? ? ?log.error(pos, Errors.CantDeref(site)); > ? ? ? ? ? ? ? ? ? ? ?return syms.errSymbol; > diff -r e0e612ef5bc9 > src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java > --- > a/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.javaMon > Feb 03 19:18:20 2020 +0530 > +++ > b/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.javaMon > Feb 03 23:11:25 2020 +0100 > @@ -2405,7 +2405,13 @@ > ? ? ? ? ? ? ?result = items.makeStackItem(pt); > ? ? ? ? ? ? ?return; > ? ? ? ? ?} else if (tree.name == names._default) { > - ? ? ? ? ? ?code.emitop2(defaultvalue, checkDimension(tree.pos(), > tree.type), PoolWriter::putClass); > + ? ? ? ? ? ?if (tree.type.asElement().isValue()) { > + ? ? ? ? ? ? ? ?code.emitop2(defaultvalue, checkDimension(tree.pos(), > tree.type), PoolWriter::putClass); > + ? ? ? ? ? ?} else if (tree.type.isReference()) { > + ? ? ? ? ? ? ? ?code.emitop0(aconst_null); > + ? ? ? ? ? ?} else { > + ?code.emitop0(zero(Code.typecode(tree.type))); > + ? ? ? ? ? ?} > ? ? ? ? ? ? ?result = items.makeStackItem(tree.type); > ? ? ? ? ? ? ?return; > ? ? ? ? ?} > diff -r e0e612ef5bc9 > src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java > --- > a/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.javaMon > Feb 03 19:18:20 2020 +0530 > +++ > b/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.javaMon > Feb 03 23:11:25 2020 +0100 > @@ -477,6 +477,22 @@ > ? ? ? ? ?} > ? ? ?} > + ? ?/** If next input token matches one of the two given tokens, skip > it, otherwise report > + ? ? * ?an error. > + ? ? * > + ? ? * @return The actual token kind. > + ? ? */ > + ? ?public TokenKind accept2(TokenKind tk1, TokenKind tk2) { > + ? ? ? ?TokenKind returnValue = token.kind; > + ? ? ? ?if (token.kind == tk1 || token.kind == tk2) { > + ? ? ? ? ? ?nextToken(); > + ? ? ? ?} else { > + ? ? ? ? ? ?setErrorEndPos(token.pos); > + ? ? ? ? ? ?reportSyntaxError(S.prevToken().endPos, > Errors.Expected2(tk1, tk2)); > + ? ? ? ?} > + ? ? ? ?return returnValue; > + ? ?} > + > ? ? ?/** Report an illegal start of expression/type error at given > position. > ? ? ? */ > ? ? ?JCExpression illegal(int pos) { > @@ -1326,7 +1342,7 @@ > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?case DEFAULT: > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?if (typeArgs != null) return illegal(); > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?selectExprMode(); > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?t = F.at (pos).Select(t, > names._default); > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?t = to(F.at > (pos).Select(t, names._default)); > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?nextToken(); > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?break loop; > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?case CLASS: > @@ -2228,7 +2244,7 @@ > ? ? ? ? ? ? ?selectExprMode(); > ? ? ? ? ? ? ?int pos = token.pos; > ? ? ? ? ? ? ?nextToken(); > - ? ? ? ? ? ?accept(CLASS); > + ? ? ? ? ? ?TokenKind selector = accept2(CLASS, DEFAULT); > ? ? ? ? ? ? ?if (token.pos == endPosTable.errorEndPos) { > ? ? ? ? ? ? ? ? ?// error recovery > ? ? ? ? ? ? ? ? ?Name name; > @@ -2246,7 +2262,7 @@ > ? ? ? ? ? ? ? ? ?// taking care to handle some interior dimension(s) > being annotated. > ? ? ? ? ? ? ? ? ?if ((tag == TYPEARRAY && > TreeInfo.containsTypeAnnotation(t)) || tag == ANNOTATED_TYPE) > ? ? ? ? ? ? ? ? ? ? ?syntaxError(token.pos, > Errors.NoAnnotationsOnDotClass); > - ? ? ? ? ? ? ? ?t = toP(F.at (pos).Select(t, names._class)); > + ? ? ? ? ? ? ? ?t = toP(F.at (pos).Select(t, selector == > CLASS ? names._class : names._default)); > ? ? ? ? ? ? ?} > ? ? ? ? ?} else if ((mode & TYPE) != 0) { > ? ? ? ? ? ? ?if (token.kind != COLCOL) { > diff -r e0e612ef5bc9 > src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties > --- > a/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.propertiesMon > Feb 03 19:18:20 2020 +0530 > +++ > b/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.propertiesMon > Feb 03 23:11:25 2020 +0100 > @@ -3565,9 +3565,6 @@ > ?compiler.err.value.does.not.support=\ > ? ? ?Inline types do not support {0} > -compiler.err.make.default.with.nonvalue=\ > - ? ?Default value creation requires an inline type > - > ?compiler.err.value.may.not.extend=\ > ? ? ?Inline type may not extend another inline type or class > diff -r e0e612ef5bc9 test/langtools/tools/javac/diags/examples.not-yet.txt > --- a/test/langtools/tools/javac/diags/examples.not-yet.txtMon Feb 03 > 19:18:20 2020 +0530 > +++ b/test/langtools/tools/javac/diags/examples.not-yet.txtMon Feb 03 > 23:11:25 2020 +0100 > @@ -203,7 +203,6 @@ > ?# Value types > ?compiler.err.cyclic.value.type.membership > ?compiler.err.value.does.not.support > -compiler.err.make.default.with.nonvalue > ?compiler.err.value.may.not.extend > ?compiler.warn.potential.null.pollution > ?compiler.err.empty.value.not.yet > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.java > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.javaMon > Feb 03 23:11:25 2020 +0100 > @@ -0,0 +1,15 @@ > +/* > + * @test /nodynamiccopyright/ > + * @bug 8237067 > + * @summary [lworld] Check good and bad selectors on a type name > + * @compile/fail/ref=CheckBadSelector.out -XDrawDiagnostics > CheckBadSelector.java > + */ > + > +inline final class Point { > + > + ? ?void badSelector() { > + ? ? ? ?Class c = int.class; > + ? ? ? ?int i = int.default; > + ? ? ? ?int x = int.whatever; > + ? ?} > +} > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.out > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckBadSelector.outMon > Feb 03 23:11:25 2020 +0100 > @@ -0,0 +1,2 @@ > +CheckBadSelector.java:13:21: compiler.err.expected2: class, default > +1 error > \ No newline at end of file > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.java > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.javaMon > Feb 03 23:11:25 2020 +0100 > @@ -0,0 +1,13 @@ > +/* > + * @test /nodynamiccopyright/ > + * @bug 8237067 > + * @summary Check that feature gated constructs are not allowed in > previous versions. > + * @compile/fail/ref=CheckFeatureGate1.out --release=13 > -XDrawDiagnostics CheckFeatureGate1.java > + */ > + > +public class CheckFeatureGate1 { > + > + ? ?static inline class Val { > + ? ? ? ?public int v = 42; > + ? ?} > +} > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.out > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate1.outMon > Feb 03 23:11:25 2020 +0100 > @@ -0,0 +1,2 @@ > +CheckFeatureGate1.java:10:12: > compiler.err.feature.not.supported.in.source: > (compiler.misc.feature.inline.type), 13, 14 > +1 error > \ No newline at end of file > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.java > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.javaMon > Feb 03 23:11:25 2020 +0100 > @@ -0,0 +1,21 @@ > +/* > + * @test /nodynamiccopyright/ > + * @bug 8237067 > + * @summary Check that .default is not allowed in previous versions. > + * @compile/fail/ref=CheckFeatureGate2.out --release=13 > -XDrawDiagnostics CheckFeatureGate2.java > + */ > + > +public class CheckFeatureGate2 { > + > + ? ?static void checkDefaultT(Class clazz) throws Exception { > + ? ? ? ?while (T.default != null) > + ? ? ? ? ? ?throw new AssertionError("Generic object should default > to null"); > + ? ?} > + > + ? ?public static void main(String[] args) throws Exception { > + ? ? ? ?int a = int.default; > + ? ? ? ?String s = String.default; > + ? ? ? ?int[] ia = int[].default; > + ? ? ? ?checkDefaultT(Object.class); > + ? ?} > +} > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.out > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckFeatureGate2.outMon > Feb 03 23:11:25 2020 +0100 > @@ -0,0 +1,2 @@ > +CheckFeatureGate2.java:11:17: > compiler.err.feature.not.supported.in.source: > (compiler.misc.feature.inline.type), 13, 14 > +1 error > \ No newline at end of file > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.java > --- > a/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.javaMon > Feb 03 19:18:20 2020 +0530 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.javaMon > Feb 03 23:11:25 2020 +0100 > @@ -10,26 +10,33 @@ > ? ? ?inline abstract class A { int x = 10; } // Error > ? ? ?static final class Sinner { > ? ? ? ? ?static Sinner make() { > - ? ? ? ? ? ?return Sinner.default; // NO: Sinner is not a value class. > + ? ? ? ? ? ?return Sinner.default; > ? ? ? ? ?} > ? ? ?} > ? ? ?inline static final class SinnerValue { > ? ? ? ? ?static SinnerValue make() { > - ? ? ? ? ? ?return SinnerValue.default; // OK. > + ? ? ? ? ? ?return SinnerValue.default; > ? ? ? ? ?} int x = 10; > ? ? ?} > ? ? ?final int x; > ? ? ?final int y; > + ? ?final int nonbool = boolean.default; > + ? ?final boolean nonbyte = byte.default; > + ? ?final boolean nonchar = char.default; > + ? ?final boolean nonint = int.default; > + ? ?final boolean nonshort = short.default; > + ? ?final boolean nonlong = long.default; > + ? ?final boolean nonfloat = float.default; > + ? ?final boolean nondouble = double.default; > + ? ?final int nonString = String.default; > + ? ?final int nonbyteArray = byte[].default; > + > ? ? ?Point() {} > ? ? ?Point (int x, int y) {} > - ? ?Point badFactory(int x, int y) { > - ? ? ? ?return Point.default; > - ? ?} > - > ? ? ?static Point make(int x, int y) { > ? ? ? ? Point p = Point.default; > ? ? ? ? String s = String.default; > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.out > --- > a/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.outMon > Feb 03 19:18:20 2020 +0530 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/CheckMakeDefault.outMon > Feb 03 23:11:25 2020 +0100 > @@ -1,5 +1,13 @@ > ?CheckMakeDefault.java:9:12: > compiler.err.illegal.combination.of.modifiers: interface, inline > ?CheckMakeDefault.java:10:21: > compiler.err.illegal.combination.of.modifiers: abstract, inline > -CheckMakeDefault.java:13:26: compiler.err.make.default.with.nonvalue > -CheckMakeDefault.java:35:25: compiler.err.make.default.with.nonvalue > -4 errors > +CheckMakeDefault.java:26:32: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: boolean, int) > +CheckMakeDefault.java:27:33: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: byte, boolean) > +CheckMakeDefault.java:28:33: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: char, boolean) > +CheckMakeDefault.java:29:31: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: int, boolean) > +CheckMakeDefault.java:30:35: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: short, boolean) > +CheckMakeDefault.java:31:33: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: long, boolean) > +CheckMakeDefault.java:32:35: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: float, boolean) > +CheckMakeDefault.java:33:37: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: double, boolean) > +CheckMakeDefault.java:34:33: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: java.lang.String, int) > +CheckMakeDefault.java:35:36: compiler.err.prob.found.req: > (compiler.misc.inconvertible.types: byte[], int) > +12 errors > \ No newline at end of file > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.java > --- > a/test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.javaMon > Feb 03 19:18:20 2020 +0530 > +++ /dev/nullThu Jan 01 00:00:00 1970 +0000 > @@ -1,12 +0,0 @@ > -/* > - * @test /nodynamiccopyright/ > - * @summary Do not allow mismatched instantiation syntax between > value & reference types. > - * > - * @compile/fail/ref=CheckValueFactoryWithReference.out > -XDrawDiagnostics CheckValueFactoryWithReference.java > - */ > - > -final class CheckValueFactoryWithReference { > - ? ?final Object o = Object.default; > - ? ?inline final class Point { int x = 10; } > - ? ?Point p = new Point(); > -} > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.out > --- > a/test/langtools/tools/javac/valhalla/lworld-values/CheckValueFactoryWithReference.outMon > Feb 03 19:18:20 2020 +0530 > +++ /dev/nullThu Jan 01 00:00:00 1970 +0000 > @@ -1,2 +0,0 @@ > -CheckValueFactoryWithReference.java:9:28: > compiler.err.make.default.with.nonvalue > -1 error > diff -r e0e612ef5bc9 > test/langtools/tools/javac/valhalla/lworld-values/DefaultNonInlines.java > --- /dev/nullThu Jan 01 00:00:00 1970 +0000 > +++ > b/test/langtools/tools/javac/valhalla/lworld-values/DefaultNonInlines.javaMon > Feb 03 23:11:25 2020 +0100 > @@ -0,0 +1,92 @@ > +/* > + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. > + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > + * > + * This code is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License version 2 only, as > + * published by the Free Software Foundation. ?Oracle designates this > + * particular file as subject to the "Classpath" exception as provided > + * by Oracle in the LICENSE file that accompanied this code. > + * > + * This code is distributed in the hope that it will be useful, but > WITHOUT > + * ANY WARRANTY; without eve > + * > + * n the implied warranty of MERCHANTABILITY or > + * FITNESS FOR A PARTICULAR PURPOSE. ?See the GNU General Public License > + * version 2 for more details (a copy is included in the LICENSE file > that > + * accompanied this code). > + * > + * You should have received a copy of the GNU General Public License > version > + * 2 along with this work; if not, write to the Free Software Foundation, > + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > + * > + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA > 94065 USA > + * or visit www.oracle.com if you need > additional information or have any > + * questions. > + */ > + > +/* > + * @test Check default values for non-inline types > + * @bug 8237067 > + * @summary [lworld] Provide linguistic support to denote default values. > + * @run main/othervm -Dtest.compiler.opts=-release=13 DefaultNonInlines > + */ > + > +public class DefaultNonInlines { > + > + ? ?static inline class Val { > + ? ? ? ?public int v = 42; > + ? ?} > + > + ? ?static void checkDefaultT(Class clazz) throws Exception { > + ? ? ? ?while (T.default != null) > + ? ? ? ? ? ?throw new AssertionError("Generic object should default > to null"); > + ? ?} > + > + ? ?public static void main(String[] args) throws Exception { > + ? ? ? ?// Default value is set by inline class constructor > + ? ? ? ?while (Val.default.v != int.default) > + ? ? ? ? ? ?throw new AssertionError("inline object fields should > default to defaults"); > + > + ? ? ? ?while ((new Val()).v != 42) > + ? ? ? ? ? ?throw new AssertionError("inline object fields should > default to whatever constructor says"); > + > + ? ? ? ?// Simple reference default is just null > + ? ? ? ?while (String.default != null) > + ? ? ? ? ? ?throw new AssertionError("reference object should default > to null"); > + > + ? ? ? ?// Reference default checked in method above > + ? ? ? ?checkDefaultT(String.class); > + > + ? ? ? ?// Array type - different syntactically > + ? ? ? ?while (int[].default != null) > + ? ? ? ? ? ?throw new AssertionError("arrays should default to null"); > + > + ? ? ? ?while (boolean.default != false) > + ? ? ? ? ? ?throw new AssertionError("boolean should default to false"); > + > + ? ? ? ?while (char.default != '\0') > + ? ? ? ? ? ?throw new AssertionError("char should default to '\0'"); > + > + ? ? ? ?while (int.default != 0) > + ? ? ? ? ? ?throw new AssertionError("int should default to 0"); > + > + ? ? ? ?while (byte.default != 0) > + ? ? ? ? ? ?throw new AssertionError("byte should default to 0"); > + > + ? ? ? ?while (short.default != 0) > + ? ? ? ? ? ?throw new AssertionError("short should default to 0"); > + > + ? ? ? ?while (long.default != 0L) > + ? ? ? ? ? ?throw new AssertionError("long should default to 0L"); > + > + ? ? ? ?while (float.default != 0.0F) > + ? ? ? ? ? ?throw new AssertionError("float should default to 0.0F"); > + > + ? ? ? ?while (double.default != 0.0D) > + ? ? ? ? ? ?throw new AssertionError("double should default to 0.0D"); > + > + ? ? ? ?// Note: The while loops above implicitly test that the > SomeType.default does not > + ? ? ? ?// return a constant expression. > + ? ?} > +} > > From ioi.lam at oracle.com Tue Feb 4 06:30:44 2020 From: ioi.lam at oracle.com (ioi.lam at oracle.com) Date: Tue, 04 Feb 2020 06:30:44 +0000 Subject: hg: valhalla/valhalla: 8238449: [lworld] CDS test failures after the introduction of java.lang.IdentityObject Message-ID: <202002040630.0146UjEm024336@aojmv0008.oracle.com> Changeset: a7649ce17266 Author: iklam Date: 2020-02-03 22:29 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a7649ce17266 8238449: [lworld] CDS test failures after the introduction of java.lang.IdentityObject ! src/hotspot/share/classfile/classListParser.cpp ! src/hotspot/share/classfile/systemDictionary.hpp ! src/hotspot/share/classfile/vmSymbols.hpp ! test/hotspot/jtreg/runtime/cds/appcds/customLoader/ClassListFormatE.java From srikanth.adayapalam at oracle.com Tue Feb 4 12:15:00 2020 From: srikanth.adayapalam at oracle.com (Srikanth) Date: Tue, 4 Feb 2020 17:45:00 +0530 Subject: hg: valhalla/valhalla: [lworld]: Fix test failure due to stale jasm encoding In-Reply-To: <202002031348.013DmWBd028066@aojmv0008.oracle.com> References: <202002031348.013DmWBd028066@aojmv0008.oracle.com> Message-ID: <454e52bb-c0b8-8f04-334c-c89a6cdcbea2@oracle.com> I have tweaked this test to manually encode the new top interface type. As Asmtools evolves to automatically inject the super interface, this change would become unnecessary, but still harmless in its explicit form. Srikanth On 03/02/20 7:18 pm, srikanth.adayapalam at oracle.com wrote: > Changeset: e0e612ef5bc9 > Author: sadayapalam > Date: 2020-02-03 19:18 +0530 > URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e0e612ef5bc9 > > [lworld]: Fix test failure due to stale jasm encoding > > ! test/hotspot/jtreg/serviceability/jvmti/RedefineClasses/RedefineCondy.jasm > From srikanth.adayapalam at oracle.com Tue Feb 4 12:18:02 2020 From: srikanth.adayapalam at oracle.com (Srikanth) Date: Tue, 4 Feb 2020 17:48:02 +0530 Subject: hg: valhalla/valhalla: [lworld]: Fix test failure due to constant pool overflow. In-Reply-To: <202002031324.013DOSQr015203@aojmv0008.oracle.com> References: <202002031324.013DOSQr015203@aojmv0008.oracle.com> Message-ID: This test appears to be carefully handcrafted to construct a "Big Object" with as many fields as the constant pool's size restrictions would allow. With the auto injection of new super interface top type, we run out of constant pool indices and the program does not compile anymore. I have modified the test so it is compiled with the option -XDnoTopInterfaceInjection to javac that short circuits the new super interface injection algorithm. Srikanth On 03/02/20 6:54 pm, srikanth.adayapalam at oracle.com wrote: > Changeset: aba88f79b64e > Author: sadayapalam > Date: 2020-02-03 18:54 +0530 > URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/aba88f79b64e > > [lworld]: Fix test failure due to constant pool overflow. > > ! test/hotspot/jtreg/gc/TestBigObj.java > From harold.seigel at oracle.com Wed Feb 5 18:23:25 2020 From: harold.seigel at oracle.com (harold.seigel at oracle.com) Date: Wed, 05 Feb 2020 18:23:25 +0000 Subject: hg: valhalla/valhalla: 8238550: verifier tries to load a hidden class causing unexpected exception Message-ID: <202002051823.015INPff004894@aojmv0008.oracle.com> Changeset: a1b0370d7f40 Author: hseigel Date: 2020-02-05 18:22 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a1b0370d7f40 8238550: verifier tries to load a hidden class causing unexpected exception Summary: Change verifier to check if class is the hidden class being verified before trying to load it Reviewed-by: mchung ! src/hotspot/share/classfile/verificationType.cpp + test/hotspot/jtreg/runtime/HiddenClasses/FieldInSuper.java + test/hotspot/jtreg/runtime/HiddenClasses/FieldInSuperSub.jasm From mandy.chung at oracle.com Thu Feb 6 23:01:15 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Thu, 06 Feb 2020 23:01:15 +0000 Subject: hg: valhalla/valhalla: 86 new changesets Message-ID: <202002062301.016N1Mjj013918@aojmv0008.oracle.com> Changeset: 369e969a0610 Author: zgu Date: 2020-01-28 15:47 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/369e969a0610 8237963: Shenandoah: Heap iteration should use concurrent version of string dedup roots Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp Changeset: 3233c22ea079 Author: egahlin Date: 2020-01-28 22:37 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3233c22ea079 8237887: CDSandJFR: assert(instance_klass->is_initialized() Reviewed-by: mgronlun ! src/hotspot/share/jfr/jni/jfrJavaSupport.cpp ! src/hotspot/share/jfr/jni/jfrJavaSupport.hpp Changeset: 7574d72eac00 Author: vromero Date: 2020-01-27 23:06 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/7574d72eac00 8235778: No compilation error reported when a record is declared in a local class Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! test/langtools/tools/javac/records/RecordCompilationTests.java Changeset: db294f18ccc2 Author: jwilhelm Date: 2020-01-28 22:42 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/db294f18ccc2 Merge ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! test/langtools/tools/javac/records/RecordCompilationTests.java Changeset: d37576456de2 Author: lkorinth Date: 2020-01-29 09:29 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d37576456de2 8232689: Remove ParCompactionManager::Action enum Reviewed-by: lkorinth, kbarrett, tschatzl Contributed-by: Ivan Walulya ! src/hotspot/share/gc/parallel/psCompactionManager.cpp ! src/hotspot/share/gc/parallel/psCompactionManager.hpp Changeset: 2a46b7b81e78 Author: jlahoda Date: 2020-01-29 10:37 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2a46b7b81e78 8237528: Inefficient compilation of Pattern Matching for instanceof Summary: Avoiding unnecessary cast and comparison in type test pattern desugaring. Reviewed-by: forax, mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransPatterns.java ! test/langtools/tools/javac/annotations/typeAnnotations/classfile/Patterns.java ! test/langtools/tools/javac/patterns/LocalVariableTable.java + test/langtools/tools/javac/patterns/NoUnnecessaryCast.java Changeset: 9fb094231eee Author: egahlin Date: 2020-01-29 11:04 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9fb094231eee 8238083: Crash: assert(is_object_aligned(v)) failed: address not aligned: 0xfffffffffffffff1 Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java Changeset: b53fdc9fd058 Author: pli Date: 2020-01-21 08:15 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b53fdc9fd058 8237524: AArch64: String.compareTo() may return incorrect result Reviewed-by: aph ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp + test/hotspot/jtreg/compiler/intrinsics/Test8237524.java Changeset: eec468f180dd Author: shade Date: 2020-01-29 14:34 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/eec468f180dd 8238153: CTW: C2 (Shenandoah) compilation fails with "Unknown node in get_load_addr: CreateEx" Reviewed-by: roland, rkennke ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp Changeset: ad9548e8086b Author: aph Date: 2020-01-23 11:44 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ad9548e8086b 8230392: Define AArch64 as MULTI_COPY_ATOMIC Reviewed-by: adinn, dholmes ! src/hotspot/cpu/aarch64/globalDefinitions_aarch64.hpp ! src/hotspot/share/gc/shared/taskqueue.inline.hpp Changeset: b986fd6a9173 Author: prappo Date: 2020-01-29 18:04 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b986fd6a9173 8238167: Remove stray files from jdk.javadoc Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/external/jquery/jquery.js - test/langtools/jdk/javadoc/doclet/testOptions/help.html ! test/langtools/jdk/javadoc/doclet/testSearch/TestSearch.java ! test/langtools/jdk/javadoc/tool/api/basic/APITest.java Changeset: 9a36b6a6d502 Author: epavlova Date: 2020-01-29 10:12 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9a36b6a6d502 8236211: [Graal] compiler/graalunit/GraphTest.java is skipped in all testing Reviewed-by: iignatyev ! test/hotspot/jtreg/compiler/graalunit/GraphTest.java ! test/hotspot/jtreg/compiler/graalunit/NodesTest.java ! test/hotspot/jtreg/compiler/graalunit/TestPackages.txt ! test/hotspot/jtreg/compiler/graalunit/common/GraalUnitTestLauncher.java Changeset: 79fe42b90d9c Author: dfuchs Date: 2020-01-29 19:13 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/79fe42b90d9c 8237896: MulticastSocket should link to DatagramChannel as an alternative for multicasting. Summary: MulticastSocket API documentation now includes some links to DatagramChannel. Reviewed-by: alanb ! src/java.base/share/classes/java/net/MulticastSocket.java Changeset: 32451e117389 Author: iklam Date: 2020-01-29 12:01 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/32451e117389 8237046: [TESTBUG] runtime/CommandLine/OptionsValidation/TestOptionsWithRanges_generate.sh should be excluded from testing Reviewed-by: dcubed, mseledtsov ! test/hotspot/jtreg/runtime/CommandLine/OptionsValidation/TestOptionsWithRanges_generate.sh Changeset: c7d4f2849dbf Author: kbarrett Date: 2020-01-29 15:48 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c7d4f2849dbf 8233822: VM_G1CollectForAllocation should always check for upgrade to full Summary: Move upgrade check into do_collection_pause_at_safepoint. Reviewed-by: tschatzl, sangheki ! 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 Changeset: ea066e5bdfd6 Author: egahlin Date: 2020-01-29 22:37 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ea066e5bdfd6 8222001: JFR event for heap dumps written Reviewed-by: mgronlun ! src/hotspot/share/jfr/metadata/metadata.xml ! src/hotspot/share/services/heapDumper.cpp ! src/jdk.jfr/share/conf/jfr/default.jfc ! src/jdk.jfr/share/conf/jfr/profile.jfc + test/jdk/jdk/jfr/event/diagnostics/TestHeapDump.java ! test/lib/jdk/test/lib/jfr/EventNames.java Changeset: db30f31b9a8e Author: vlivanov Date: 2020-01-30 00:46 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/db30f31b9a8e 7175279: Don't use x87 FPU on x86-64 Reviewed-by: kvn, roland ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp ! src/hotspot/cpu/arm/c1_LIRAssembler_arm.cpp ! src/hotspot/cpu/ppc/c1_LIRAssembler_ppc.cpp ! src/hotspot/cpu/s390/c1_LIRAssembler_s390.cpp ! src/hotspot/cpu/sparc/c1_LIRAssembler_sparc.cpp ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/c1_CodeStubs_x86.cpp ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.hpp ! src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp ! src/hotspot/cpu/x86/c1_LinearScan_x86.cpp ! src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/c1_Runtime1_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/methodHandles_x86.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/cpu/x86/templateInterpreterGenerator_x86_64.cpp ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/c1/c1_CodeStubs.hpp ! src/hotspot/share/c1/c1_LIR.cpp ! src/hotspot/share/c1/c1_LIR.hpp ! src/hotspot/share/c1/c1_LIRAssembler.cpp ! src/hotspot/share/c1/c1_LIRAssembler.hpp ! src/hotspot/share/c1/c1_LinearScan.cpp ! src/hotspot/share/c1/c1_LinearScan.hpp Changeset: 029fe1db925d Author: egahlin Date: 2020-01-29 23:36 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/029fe1db925d 8237364: Add early validation to the jdk.jfr.Recording constructor Reviewed-by: mgronlun, mseledtsov ! src/jdk.jfr/share/classes/jdk/jfr/Recording.java Changeset: 4f0822a80a13 Author: egahlin Date: 2020-01-29 23:49 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/4f0822a80a13 8215890: Simplify jdk/jfr/api/recording/event/TestPeriod.java Reviewed-by: mgronlun, mseledtsov ! test/jdk/ProblemList.txt ! test/jdk/jdk/jfr/api/recording/event/TestPeriod.java Changeset: 6588cfd31d9d Author: egahlin Date: 2020-01-30 00:23 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6588cfd31d9d 8237574: Make TestNative work without -nativepath Reviewed-by: mgronlun, mseledtsov ! test/jdk/jdk/jfr/event/sampling/TestNative.java - test/jdk/jdk/jfr/event/sampling/libTestNative.c Changeset: a5564b13ffa8 Author: iignatyev Date: 2020-01-29 19:27 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a5564b13ffa8 8237787: rewrite vmTestbase/vm/compiler/CodeCacheInfo* from shell to java Reviewed-by: epavlova, kvn + test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/Test.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/TestDescription.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/run.sh + test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfoOnCompilation/Test.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfoOnCompilation/TestDescription.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfoOnCompilation/run.sh Changeset: a96bc204e3b3 Author: herrick Date: 2020-01-29 14:35 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a96bc204e3b3 8238168: Remove Copyright from WinLauncher.template Reviewed-by: kcr, prr, asemenyuk ! src/jdk.incubator.jpackage/windows/classes/jdk/incubator/jpackage/internal/resources/WinLauncher.template Changeset: 42a0eaefc1db Author: jwilhelm Date: 2020-01-30 03:23 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/42a0eaefc1db Added tag jdk-14+34 for changeset a96bc204e3b3 ! .hgtags Changeset: 91994dfee869 Author: jwilhelm Date: 2020-01-30 03:29 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/91994dfee869 Added tag jdk-15+8 for changeset c7d4f2849dbf ! .hgtags Changeset: d20418cfe16e Author: jwilhelm Date: 2020-01-30 05:05 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d20418cfe16e Merge ! .hgtags Changeset: 74ecb602ffb0 Author: dholmes Date: 2020-01-29 23:53 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/74ecb602ffb0 8237857: LogDecorations::uptimenanos is implemented incorrectly Reviewed-by: dcubed, kbarrett ! src/hotspot/share/logging/logConfiguration.cpp ! src/hotspot/share/logging/logDecorations.cpp ! src/hotspot/share/logging/logDecorations.hpp ! test/hotspot/gtest/logging/test_logDecorations.cpp Changeset: 68181ac4ce7d Author: bulasevich Date: 2020-01-30 10:26 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/68181ac4ce7d 8229971: Arm32: implementation for Thread-local handshakes Reviewed-by: rehn, dsamersoff ! src/hotspot/cpu/arm/arm.ad ! src/hotspot/cpu/arm/c1_LIRAssembler_arm.cpp ! src/hotspot/cpu/arm/globalDefinitions_arm.hpp ! src/hotspot/cpu/arm/interp_masm_arm.cpp ! src/hotspot/cpu/arm/interp_masm_arm.hpp ! src/hotspot/cpu/arm/macroAssembler_arm.cpp ! src/hotspot/cpu/arm/macroAssembler_arm.hpp ! src/hotspot/cpu/arm/sharedRuntime_arm.cpp ! src/hotspot/cpu/arm/templateInterpreterGenerator_arm.cpp ! src/hotspot/cpu/arm/templateTable_arm.cpp Changeset: d7994062de41 Author: egahlin Date: 2020-01-30 09:01 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d7994062de41 8202142: jfr/event/io/TestInstrumentation is unstable Reviewed-by: mgronlun, mseledtsov ! test/jdk/ProblemList.txt ! test/jdk/jdk/jfr/event/io/IOEvent.java ! test/jdk/jdk/jfr/event/io/IOHelper.java ! test/jdk/jdk/jfr/event/io/TestDisabledEvents.java ! test/jdk/jdk/jfr/event/io/TestFileChannelEvents.java ! test/jdk/jdk/jfr/event/io/TestFileReadOnly.java ! test/jdk/jdk/jfr/event/io/TestFileStreamEvents.java ! test/jdk/jdk/jfr/event/io/TestInstrumentation.java ! test/jdk/jdk/jfr/event/io/TestRandomAccessFileEvents.java ! test/jdk/jdk/jfr/event/io/TestRandomAccessFileThread.java ! test/jdk/jdk/jfr/event/io/TestSocketChannelEvents.java ! test/jdk/jdk/jfr/event/io/TestSocketEvents.java Changeset: 99f7916541e0 Author: mbaesken Date: 2020-01-28 08:53 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/99f7916541e0 8223699: cleanup perfMemory_aix.cpp O_NOFOLLOW coding on aix Reviewed-by: lucy, mdoerr ! src/hotspot/os/aix/perfMemory_aix.cpp Changeset: 24b4c763cb22 Author: egahlin Date: 2020-01-30 10:10 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/24b4c763cb22 8221331: test/jdk/jdk/jfr/event/io/EvilInstrument.java needs to re-worked to avoid recursive initialization issues Reviewed-by: mgronlun, mseledtsov ! test/jdk/ProblemList.txt Changeset: 0743e1d49930 Author: ihse Date: 2020-01-30 11:08 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0743e1d49930 8237879: make 4.3 breaks build Reviewed-by: erikj, tbell ! make/common/MakeBase.gmk Changeset: e53122a71a0c Author: egahlin Date: 2020-01-30 11:14 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e53122a71a0c 8238224: test\jdk\jdk\jfr\event\io\EvilInstrument.java should be removed Reviewed-by: mgronlun - test/jdk/jdk/jfr/event/io/EvilInstrument.java Changeset: e6e4b43ee3ce Author: pliden Date: 2020-01-30 12:41 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e6e4b43ee3ce 8237649: ZGC: Improved NUMA support when using small pages Reviewed-by: eosterlund, smonteith ! src/hotspot/os/linux/gc/z/zPhysicalMemoryBacking_linux.cpp ! src/hotspot/os/linux/gc/z/zPhysicalMemoryBacking_linux.hpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/linux/os_linux.hpp ! src/hotspot/share/gc/z/zNUMA.cpp ! src/hotspot/share/gc/z/zPhysicalMemory.cpp Changeset: b576a0ead397 Author: pliden Date: 2020-01-30 12:41 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b576a0ead397 8237758: ZGC: Move get_mempolicy() syscall wrapper to ZSyscall Reviewed-by: eosterlund ! src/hotspot/os/linux/gc/z/zNUMA_linux.cpp ! src/hotspot/os/linux/gc/z/zSyscall_linux.cpp ! src/hotspot/os/linux/gc/z/zSyscall_linux.hpp ! src/hotspot/share/gc/z/zPage.inline.hpp Changeset: 9c2c9e22c8ba Author: pliden Date: 2020-01-30 12:41 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9c2c9e22c8ba 8237825: ZGC: Replace -XX:ZPath with -XX:AllocateHeapAt Reviewed-by: eosterlund ! src/hotspot/os/linux/gc/z/zMountPoint_linux.cpp ! src/hotspot/os/linux/gc/z/zPhysicalMemoryBacking_linux.cpp ! src/hotspot/share/gc/z/z_globals.hpp ! src/hotspot/share/runtime/arguments.cpp Changeset: fe7c8e8eca0b Author: pliden Date: 2020-01-30 12:41 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/fe7c8e8eca0b 8237884: ZGC: Use clamp() instead of MIN2(MAX2()) Reviewed-by: kbarrett, smonteith ! src/hotspot/share/gc/z/zHeuristics.cpp Changeset: 58acc5079000 Author: pliden Date: 2020-01-30 12:42 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/58acc5079000 8237882: ZGC: Remove ZUtils::round_{up,down}_power_of_2() declarations Reviewed-by: kbarrett, smonteith ! src/hotspot/share/gc/z/zUtils.hpp Changeset: 0f53754d8577 Author: coleenp Date: 2020-01-30 08:50 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0f53754d8577 8237080: fatal error: VM thread could block on lock that may be held by a JavaThread during safepoint: SharedDecoder_lock Summary: Set allow_vm_block to true for this lock. It's _safepoint_check_never so it's sort of implied (you can't safepoint holding the lock and block out the vm thread). Reviewed-by: rehn, zgu, pchilanomate, dholmes ! src/hotspot/share/runtime/mutexLocker.cpp Changeset: abb879864b99 Author: ecaspole Date: 2020-01-30 10:31 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/abb879864b99 8238189: Cleanups to AES crypto micros Summary: Move all tested algorithms into the small set Reviewed-by: xuelei ! test/micro/org/openjdk/bench/javax/crypto/small/AESBench.java Changeset: 41f1e738b639 Author: ngasson Date: 2020-01-24 17:41 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/41f1e738b639 8237521: Memory Access API fixes for 32-bit Reviewed-by: mcimadamore, dholmes ! src/hotspot/share/prims/unsafe.cpp ! src/java.base/share/classes/jdk/internal/misc/Unsafe.java ! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/Utils.java ! test/hotspot/jtreg/runtime/Unsafe/AllocateMemory.java ! test/jdk/java/foreign/TestArrays.java ! test/jdk/java/foreign/TestByteBuffer.java ! test/jdk/java/foreign/TestMemoryAlignment.java Changeset: 2dbf459b5577 Author: egahlin Date: 2020-01-30 17:23 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2dbf459b5577 8213918: DumpReason JFR event is not covered by test Reviewed-by: mgronlun, mseledtsov ! test/jdk/jdk/jfr/event/metadata/TestLookForUntestedEvents.java + test/jdk/jdk/jfr/event/runtime/TestDumpReason.java ! test/jdk/jdk/jfr/event/runtime/TestFlush.java ! test/lib/jdk/test/lib/jfr/EventNames.java Changeset: 991acdf0e37f Author: egahlin Date: 2020-01-30 17:36 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/991acdf0e37f 8219686: jdk/jfr/event/runtime/TestShutdownEvent.java recording file length is 0 Reviewed-by: mgronlun, mseledtsov ! test/jdk/jdk/jfr/event/runtime/TestShutdownEvent.java Changeset: 9211f6e20448 Author: egahlin Date: 2020-01-30 17:49 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9211f6e20448 8232636: JFR TestDumpOnCrash.java crashed and failed to create emergency dump file Reviewed-by: mgronlun, mseledtsov ! test/jdk/jdk/jfr/jvm/TestDumpOnCrash.java Changeset: 84d6423a759a Author: mseledtsov Date: 2020-01-30 10:27 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/84d6423a759a 8235599: [TESTBUG] JFR streaming/TestJVMCrash.java fails to cleanup files after test Summary: Removed the TestJVMCrash.java test from problem list Reviewed-by: egahlin ! test/jdk/ProblemList.txt Changeset: bb83f1dff441 Author: jjg Date: 2020-01-30 11:20 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/bb83f1dff441 8236949: javadoc -Xdoclint does not accumulate options correctly Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlOptions.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/WorkArounds.java + test/langtools/jdk/javadoc/doclet/testDocLintOption/TestDocLintOption.java ! test/langtools/jdk/javadoc/tool/treeapi/TestDocTrees.java Changeset: 8d8bd676484d Author: jjg Date: 2020-01-30 11:29 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8d8bd676484d 8200363: Add javadoc command line setting to fail on warnings Reviewed-by: hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ToolOptions.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc.properties + test/langtools/jdk/javadoc/tool/testWErrorOption/TestWErrorOption.java Changeset: 560b2becbe87 Author: erikj Date: 2020-01-30 12:00 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/560b2becbe87 8237914: The test-make target does not fail on test failure Reviewed-by: tbell, ihse ! make/RunTests.gmk Changeset: 8482ab8f9b4c Author: iignatyev Date: 2020-01-30 08:55 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8482ab8f9b4c 8237953: vmTestbase/jit/tiered/Test.java failure after JDK-8237798 Reviewed-by: iveresov ! test/hotspot/jtreg/vmTestbase/jit/tiered/Test.java Changeset: 085463e75652 Author: jjg Date: 2020-01-30 15:50 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/085463e75652 8238259: new tests do not account for Windows file separators Reviewed-by: vromero ! test/langtools/jdk/javadoc/doclet/testDocLintOption/TestDocLintOption.java ! test/langtools/jdk/javadoc/tool/testWErrorOption/TestWErrorOption.java Changeset: 0905868db490 Author: chagedorn Date: 2020-01-31 09:32 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0905868db490 8235332: TestInstanceCloneAsLoadsStores.java fails with -XX:+StressGCM Summary: Account for GC barriers when skipping a cloned ArrayCopyNode in ConnectionGraph::find_inst_mem() Reviewed-by: roland, neliasso ! src/hotspot/share/opto/escape.cpp + test/hotspot/jtreg/compiler/arraycopy/TestCloneAccessStressGCM.java Changeset: 298f81208333 Author: iklam Date: 2020-01-31 14:18 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/298f81208333 8238198: Avoid using @ tags in TestOptionsWithRanges_generate.sh Reviewed-by: iignatyev ! test/hotspot/jtreg/runtime/CommandLine/OptionsValidation/TestOptionsWithRanges_generate.sh Changeset: a2320a988013 Author: egahlin Date: 2020-02-01 09:55 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a2320a988013 8238241: Clean up problem list for JFR tests Reviewed-by: mgronlun, mseledtsov ! test/jdk/ProblemList.txt Changeset: 44cc199fac64 Author: ysuenaga Date: 2020-02-02 18:35 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/44cc199fac64 8238203: Return value of GetUserDefaultUILanguage() should be handled as LANGID Reviewed-by: naoto ! src/java.base/windows/native/libjava/java_props_md.c Changeset: 1dba80ef03e9 Author: jiefu Date: 2020-01-31 20:49 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1dba80ef03e9 8238284: [macos] Zero VM build fails due to an obvious typo Reviewed-by: dholmes ! src/hotspot/os_cpu/bsd_zero/atomic_bsd_zero.hpp ! src/hotspot/os_cpu/bsd_zero/os_bsd_zero.cpp ! src/hotspot/os_cpu/linux_zero/os_linux_zero.cpp Changeset: d9e09b01ad0c Author: ihse Date: 2020-02-03 08:30 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d9e09b01ad0c 8196875: Update run-test instructions for TEST_MODE Reviewed-by: erikj ! doc/testing.html ! doc/testing.md Changeset: c3d2fc56206f Author: tschatzl Date: 2020-02-03 10:45 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c3d2fc56206f 8215297: Remove ParallelTaskTerminator Summary: Remove ParallelTaskTerminator as the alternate OWSTTaskTerminator algorithm has worked well for more than a year now. Reviewed-by: zgu, sjohanss ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.cpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.hpp ! src/hotspot/share/gc/g1/g1FullGCMarkTask.cpp ! src/hotspot/share/gc/g1/g1FullGCMarkTask.hpp ! src/hotspot/share/gc/g1/g1FullGCMarker.cpp ! src/hotspot/share/gc/g1/g1FullGCMarker.hpp ! src/hotspot/share/gc/g1/g1FullGCReferenceProcessorExecutor.hpp ! src/hotspot/share/gc/parallel/psCompactionManager.hpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psParallelCompact.hpp ! src/hotspot/share/gc/parallel/psScavenge.cpp ! src/hotspot/share/gc/shared/gc_globals.hpp ! src/hotspot/share/gc/shared/genCollectedHeap.cpp ! src/hotspot/share/gc/shared/owstTaskTerminator.cpp ! src/hotspot/share/gc/shared/owstTaskTerminator.hpp ! src/hotspot/share/gc/shared/taskqueue.cpp ! src/hotspot/share/gc/shared/taskqueue.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTaskqueue.cpp ! src/hotspot/share/gc/shenandoah/shenandoahTaskqueue.hpp Changeset: dbb94c2ceaf8 Author: tschatzl Date: 2020-02-03 10:45 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/dbb94c2ceaf8 8238220: Rename OWSTTaskTerminator to TaskTerminator Reviewed-by: sjohanss, sangheki ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.cpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.hpp ! src/hotspot/share/gc/g1/g1FullGCMarkTask.hpp ! src/hotspot/share/gc/g1/g1FullGCMarker.cpp ! src/hotspot/share/gc/g1/g1FullGCMarker.hpp ! src/hotspot/share/gc/g1/g1FullGCReferenceProcessorExecutor.hpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psScavenge.cpp ! src/hotspot/share/gc/shared/genCollectedHeap.cpp ! src/hotspot/share/gc/shared/taskTerminator.cpp < src/hotspot/share/gc/shared/owstTaskTerminator.cpp ! src/hotspot/share/gc/shared/taskTerminator.hpp < src/hotspot/share/gc/shared/owstTaskTerminator.hpp ! src/hotspot/share/gc/shared/taskqueue.cpp ! src/hotspot/share/gc/shenandoah/shenandoahTaskqueue.hpp Changeset: 1617236f5cbb Author: tschatzl Date: 2020-02-03 10:45 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1617236f5cbb 8238229: Remove TRACESPINNING debug code Reviewed-by: kbarrett, sjohanss ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psScavenge.cpp ! src/hotspot/share/gc/shared/genCollectedHeap.cpp ! src/hotspot/share/gc/shared/taskTerminator.cpp ! src/hotspot/share/gc/shared/taskTerminator.hpp Changeset: 6d9ac97c7d2f Author: lkorinth Date: 2020-02-03 18:20 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6d9ac97c7d2f 8233220: Space::_par_seq_tasks is unused after CMS removal Reviewed-by: pliden, tschatzl, lkorinth Contributed-by: Ivan Walulya ! src/hotspot/share/gc/shared/space.hpp Changeset: 4639cbdcbf27 Author: mbaesken Date: 2020-02-03 09:39 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/4639cbdcbf27 8237962: give better error output for invalid OCSP response intervals in CertPathValidator checks Reviewed-by: clanger, mullan ! src/java.base/share/classes/sun/security/provider/certpath/OCSPResponse.java ! test/jdk/security/infra/java/security/cert/CertPathValidator/certification/ValidatePathWithParams.java Changeset: c7152f7e01a6 Author: roland Date: 2020-01-28 13:36 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c7152f7e01a6 8237951: CTW: C2 compilation fails with "malformed control flow" Reviewed-by: vlivanov, kvn ! src/hotspot/share/opto/phaseX.cpp Changeset: 9b3d5cc71cea Author: dnsimon Date: 2020-02-04 09:33 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9b3d5cc71cea 8238190: [JVMCI] Fix single implementor speculation for diamond shapes. Reviewed-by: kvn Contributed-by: david.leopoldseder at oracle.com ! src/hotspot/share/oops/instanceKlass.cpp + test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestSingleImplementor.java Changeset: f0cd8603f11e Author: almatvee Date: 2020-02-04 11:44 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f0cd8603f11e 8235954: [dmg] Default DMG background tiff of jpackage not retina ready Reviewed-by: herrick, asemenyuk ! src/jdk.incubator.jpackage/macosx/classes/jdk/incubator/jpackage/internal/resources/background_dmg.tiff Changeset: 78e0dd9ac15f Author: dfuchs Date: 2020-02-04 18:35 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/78e0dd9ac15f 8238231: Custom DatagramSocketImpl's create method not called when with protected constructor Summary: Allow the socket to be lazily created if not created by the constructor. Reviewed-by: alanb ! src/java.base/share/classes/java/net/DatagramSocket.java ! test/jdk/java/net/DatagramSocket/SetReceiveBufferSize.java + test/jdk/java/net/DatagramSocketImpl/TestCreate.java Changeset: cf7c8e28ff9a Author: zgu Date: 2020-02-04 14:48 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/cf7c8e28ff9a 8238162: Shenandoah: Remove ShenandoahTaskTerminator wrapper Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTaskqueue.cpp ! src/hotspot/share/gc/shenandoah/shenandoahTaskqueue.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.cpp ! src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.hpp Changeset: ca6c676cab64 Author: weijun Date: 2020-02-04 13:15 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ca6c676cab64 8238502: sunmscapi.dll causing EXCEPTION_ACCESS_VIOLATION Reviewed-by: wetmore, coffeys, mullan ! src/jdk.crypto.mscapi/windows/native/libsunmscapi/security.cpp Changeset: 4f9dc5bee9c4 Author: jjg Date: 2020-02-04 14:02 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/4f9dc5bee9c4 8219475: javap man page needs to be updated Reviewed-by: mchung ! src/jdk.jdeps/share/classes/com/sun/tools/javap/JavapTask.java ! src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap.properties Changeset: 84e55cb3894e Author: prappo Date: 2020-02-04 22:05 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/84e55cb3894e 8238467: Clean up annotations on overridden/implemented methods Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/api/JavadocTaskImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/api/JavadocTool.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractExecutableMemberWriter.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/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/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/HtmlConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.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/LinkFactoryImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/LinkInfoImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/LinkOutputImpl.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/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/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/TagletWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/WriterFactoryImpl.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/FixedStringContent.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/RawHtml.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/StringContent.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/DocletElement.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/OverviewElement.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/AnnotationTypeOptionalMemberBuilder.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/ConstantsSummaryBuilder.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/MethodBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PropertyBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/BasePropertyTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/BaseTaglet.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/DocPath.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Group.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/JavadocToolProvider.java Changeset: 6e49fb6ad4ee Author: weijun Date: 2020-02-05 11:09 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6e49fb6ad4ee 8237804: sun/security/mscapi tests fail with "Key pair not generated, alias already exists" Reviewed-by: mullan ! test/jdk/sun/security/mscapi/KeyAlgorithms.java ! test/jdk/sun/security/mscapi/PublicKeyInterop.java Changeset: a23e471deb84 Author: diazhou Date: 2020-01-30 18:02 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a23e471deb84 8236092: Remove EA from JDK 14 version string starting with Initial RC promotion Reviewed-by: tbell, erikj ! make/autoconf/version-numbers Changeset: f8bf9cb16b5e Author: mgronlun Date: 2020-01-31 12:17 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f8bf9cb16b5e 8236743: JFR: assert(klass != __null) failed: invariant in ObjectSampleCheckpoint::add_to_leakp_set Reviewed-by: egahlin ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleCheckpoint.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleCheckpoint.hpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.hpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.inline.hpp ! src/hotspot/share/jfr/recorder/stacktrace/jfrStackTrace.cpp ! src/hotspot/share/jfr/recorder/stacktrace/jfrStackTrace.hpp + src/hotspot/share/jfr/support/jfrMethodLookup.cpp + src/hotspot/share/jfr/support/jfrMethodLookup.hpp Changeset: 2a0de7812409 Author: bpb Date: 2020-01-31 08:04 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2a0de7812409 8237514: Spec Clarification - ByteBuffer::alignmentOffset Spec Reviewed-by: alanb, psandoz ! 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 Changeset: 66ecee0023e1 Author: ljiang Date: 2020-02-04 16:26 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/66ecee0023e1 8238377: JDK 14 L10N resource file update - msgdrop 20 Reviewed-by: naoto, herrick, mchung ! src/jdk.incubator.jpackage/windows/classes/jdk/incubator/jpackage/internal/resources/MsiInstallerStrings_ja.wxl ! src/jdk.incubator.jpackage/windows/classes/jdk/incubator/jpackage/internal/resources/MsiInstallerStrings_zh_CN.wxl ! src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_ja.properties ! src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_zh_CN.properties ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_ja.properties ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_zh_CN.properties Changeset: 3e021f5c81f5 Author: jwilhelm Date: 2020-02-05 03:24 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3e021f5c81f5 Merge ! make/autoconf/version-numbers Changeset: d0ee21ac3329 Author: jwilhelm Date: 2020-02-05 03:26 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d0ee21ac3329 8238515: Backout JDK-8236092 from jdk/jdk Reviewed-by: dholmes ! make/autoconf/version-numbers Changeset: 689d165369ac Author: clanger Date: 2020-02-05 06:33 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/689d165369ac 8238375: JFR Test TestJcmdStartFlushInterval is not run Reviewed-by: egahlin, mseledtsov ! test/jdk/jdk/jfr/jcmd/TestJcmdStartFlushInterval.java Changeset: 932418820c80 Author: ihse Date: 2020-02-05 10:45 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/932418820c80 8238281: Raise minimum gcc version needed to 5.0 Reviewed-by: erikj, dholmes, jwilhelm, mbaesken ! doc/building.html ! doc/building.md ! make/autoconf/flags-cflags.m4 ! make/autoconf/flags.m4 ! make/autoconf/toolchain.m4 ! make/hotspot/lib/CompileJvm.gmk ! src/hotspot/share/memory/operator_new.cpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/utilities/compilerWarnings_gcc.hpp ! src/hotspot/share/utilities/debug.hpp ! src/hotspot/share/utilities/globalDefinitions_gcc.hpp ! src/hotspot/share/utilities/ostream.cpp Changeset: 9e54ea7d9cd9 Author: qpzhang Date: 2020-02-05 20:31 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9e54ea7d9cd9 8238388: libj2gss/NativeFunc.o "multiple definition" link errors with GCC10 Summary: Fixed libj2gss link errors caused by GCC10 default -fno-common Reviewed-by: weijun ! src/java.security.jgss/share/native/libj2gss/NativeFunc.c ! src/java.security.jgss/share/native/libj2gss/NativeFunc.h Changeset: 5a0b13e3715d Author: mseledtsov Date: 2020-02-05 07:31 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/5a0b13e3715d 8179317: [TESTBUG] rewrite runtime shell tests in java Summary: Converted shell tests to Java Reviewed-by: dholmes, iignatyev, lmesnik ! make/test/JtregNativeHotspot.gmk ! test/hotspot/jtreg/TEST.groups - test/hotspot/jtreg/runtime/7162488/Test7162488.sh + test/hotspot/jtreg/runtime/7162488/TestUnrecognizedVmOption.java + test/hotspot/jtreg/runtime/StackGap/TestStackGap.java - test/hotspot/jtreg/runtime/StackGap/testme.sh + test/hotspot/jtreg/runtime/StackGuardPages/TestStackGuardPages.java - test/hotspot/jtreg/runtime/StackGuardPages/testme.sh + test/hotspot/jtreg/runtime/TLS/TestTLS.java - test/hotspot/jtreg/runtime/TLS/testtls.sh ! test/hotspot/jtreg/runtime/signal/SigTestDriver.java + test/hotspot/jtreg/testlibrary_tests/process/Test.java + test/hotspot/jtreg/testlibrary_tests/process/TestNativeProcessBuilder.java + test/hotspot/jtreg/testlibrary_tests/process/exejvm-test-launcher.c - test/hotspot/jtreg/vmTestbase/metaspace/flags/maxMetaspaceSize/TestDescription.java + test/hotspot/jtreg/vmTestbase/metaspace/flags/maxMetaspaceSize/TestMaxMetaspaceSize.java - test/hotspot/jtreg/vmTestbase/metaspace/flags/maxMetaspaceSize/maxMetaspaceSize.sh ! test/lib/jdk/test/lib/Platform.java ! test/lib/jdk/test/lib/process/ProcessTools.java Changeset: ba74310b0b69 Author: simonis Date: 2020-02-05 16:39 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ba74310b0b69 8235699: ArrayIndexOutOfBoundsException in CalendarBuilder.toString Reviewed-by: phh, alanb, weijun, simonis, rriggs Contributed-by: verghese at amazon.com ! src/java.base/share/classes/java/text/CalendarBuilder.java + test/jdk/java/text/Format/DateFormat/Bug8235699.java + test/jdk/java/text/Format/DateFormat/java.base/java/text/CalendarBuilderTest.java Changeset: 175867bc8928 Author: dcubed Date: 2020-02-05 11:38 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/175867bc8928 8235931: add OM_CACHE_LINE_SIZE and use smaller size on SPARCv9 and X64 Reviewed-by: dholmes, redestad, mdoerr ! src/hotspot/cpu/sparc/globalDefinitions_sparc.hpp ! src/hotspot/cpu/x86/globalDefinitions_x86.hpp ! src/hotspot/share/runtime/objectMonitor.hpp ! src/hotspot/share/runtime/synchronizer.cpp ! src/hotspot/share/runtime/synchronizer.hpp Changeset: 00470b6c0eaf Author: dcubed Date: 2020-02-05 11:39 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/00470b6c0eaf 8236035: refactor ObjectMonitor::set_owner() and _owner field setting Reviewed-by: dholmes, kbarrett, rehn ! src/hotspot/share/logging/logTag.hpp ! src/hotspot/share/runtime/objectMonitor.cpp ! src/hotspot/share/runtime/objectMonitor.hpp ! src/hotspot/share/runtime/objectMonitor.inline.hpp ! src/hotspot/share/runtime/synchronizer.cpp Changeset: b353416faedf Author: dcubed Date: 2020-02-05 11:40 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b353416faedf 8235795: replace monitor list mux{Acquire,Release}(&gListLock) with spin locks Reviewed-by: dholmes, coleenp, rehn ! src/hotspot/share/runtime/objectMonitor.cpp ! src/hotspot/share/runtime/objectMonitor.hpp ! src/hotspot/share/runtime/objectMonitor.inline.hpp ! src/hotspot/share/runtime/synchronizer.cpp ! src/hotspot/share/runtime/synchronizer.hpp ! src/hotspot/share/runtime/thread.hpp Changeset: 023df178388e Author: erikj Date: 2020-02-05 09:33 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/023df178388e 8238225: Issues reported after replacing symlink at Contents/MacOS/libjli.dylib with binary Reviewed-by: clanger, alanb, ihse ! src/java.base/macosx/native/libjli/java_md_macosx.m ! test/jdk/tools/launcher/JliLaunchTest.java Changeset: ce9ddf7062e5 Author: mchung Date: 2020-02-05 09:53 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ce9ddf7062e5 8230047: Remove legacy java.lang.reflect.ProxyGenerator_v49 Reviewed-by: rriggs, sundar ! src/java.base/share/classes/java/lang/reflect/Proxy.java - src/java.base/share/classes/java/lang/reflect/ProxyGenerator_v49.java ! test/jdk/java/lang/reflect/Proxy/ProxyGeneratorCombo.java ! test/micro/org/openjdk/bench/java/lang/reflect/Proxy/ProxyBench.java Changeset: 62b5bfef8d61 Author: jjg Date: 2020-02-05 11:01 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/62b5bfef8d61 8222793: Javadoc tool ignores "-locale" param and uses default locale for all messages and texts Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Messages.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Resources.java + test/langtools/jdk/javadoc/tool/testLocaleOption/TestLocaleOption.java From mandy.chung at oracle.com Fri Feb 7 03:08:57 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 07 Feb 2020 03:08:57 +0000 Subject: hg: valhalla/valhalla: Merge Message-ID: <202002070308.01738vXe017922@aojmv0008.oracle.com> Changeset: dc2b4cd1b53a Author: mchung Date: 2020-02-06 19:07 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/dc2b4cd1b53a Merge ! src/hotspot/cpu/arm/templateTable_arm.cpp - src/hotspot/share/gc/shared/owstTaskTerminator.cpp - src/hotspot/share/gc/shared/owstTaskTerminator.hpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.inline.hpp ! src/hotspot/share/logging/logTag.hpp ! src/hotspot/share/oops/instanceKlass.cpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/prims/unsafe.cpp - src/java.base/share/classes/java/lang/reflect/ProxyGenerator_v49.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/external/jquery/jquery.js - test/hotspot/jtreg/runtime/7162488/Test7162488.sh - test/hotspot/jtreg/runtime/StackGap/testme.sh - test/hotspot/jtreg/runtime/StackGuardPages/testme.sh - test/hotspot/jtreg/runtime/TLS/testtls.sh - test/hotspot/jtreg/vmTestbase/metaspace/flags/maxMetaspaceSize/TestDescription.java - test/hotspot/jtreg/vmTestbase/metaspace/flags/maxMetaspaceSize/maxMetaspaceSize.sh - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/TestDescription.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/run.sh - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfoOnCompilation/TestDescription.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfoOnCompilation/run.sh ! test/jdk/ProblemList.txt - test/jdk/jdk/jfr/event/io/EvilInstrument.java - test/jdk/jdk/jfr/event/sampling/libTestNative.c - test/langtools/jdk/javadoc/doclet/testOptions/help.html From mandy.chung at oracle.com Fri Feb 7 03:58:09 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 07 Feb 2020 03:58:09 +0000 Subject: hg: valhalla/valhalla: [nestmates] add test to validate hidden class' name Message-ID: <202002070358.0173w9ii015177@aojmv0008.oracle.com> Changeset: 3672ed49d389 Author: mchung Date: 2020-02-06 19:57 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3672ed49d389 [nestmates] add test to validate hidden class' name ! test/jdk/java/lang/invoke/defineHiddenClass/BasicTest.java From harold.seigel at oracle.com Fri Feb 7 21:11:32 2020 From: harold.seigel at oracle.com (harold.seigel at oracle.com) Date: Fri, 07 Feb 2020 21:11:32 +0000 Subject: hg: valhalla/valhalla: 8238663: [nestmates] array type of hidden class returns incorrect name Message-ID: <202002072111.017LBXNi028608@aojmv0008.oracle.com> Changeset: 78e0a67de946 Author: hseigel Date: 2020-02-07 21:11 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/78e0a67de946 8238663: [nestmates] array type of hidden class returns incorrect name Summary: If the array type bottom class is hidden then change the last '+' in its name to '/' Reviewed-by: hseigel Contributed-by: serguei.spitsyn at oracle.com ! src/hotspot/share/oops/klass.cpp ! src/hotspot/share/oops/klass.hpp ! test/hotspot/jtreg/serviceability/jvmti/HiddenClass/MyPackage/HiddenClassSigTest.java ! test/hotspot/jtreg/serviceability/jvmti/HiddenClass/libHiddenClassSigTest.cpp ! test/jdk/java/lang/invoke/defineHiddenClass/BasicTest.java From john.r.rose at oracle.com Sun Feb 9 06:15:51 2020 From: john.r.rose at oracle.com (John Rose) Date: Sat, 8 Feb 2020 22:15:51 -0800 Subject: for review: 8236522: "always atomic" modifier for inline classes to enforce atomicity In-Reply-To: References: <212B1143-F1F9-45AF-8ADD-E44513BA7050@oracle.com> Message-ID: On Jan 20, 2020, at 6:29 AM, Tobias Hartmann wrote: > > While trying to reproduce this issue, I've hit some issues: > > 1) # assert(strchr(class_name, '.') == 0LL) failed: external form of class name > > Stack: [0x000000b1eca00000,0x000000b1ecb00000] > Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) > V [jvm.dll+0xb09e61] os::platform_print_native_stack+0xf1 (os_windows_x86.cpp:369) > V [jvm.dll+0xd36c6b] VMError::report+0xf0b (vmerror.cpp:725) > V [jvm.dll+0xd3851e] VMError::report_and_die+0x8ae (vmerror.cpp:1533) > V [jvm.dll+0xd38c14] VMError::report_and_die+0x64 (vmerror.cpp:1317) > V [jvm.dll+0x4e5202] report_vm_error+0x102 (debug.cpp:264) > V [jvm.dll+0xc08482] StringUtils::class_list_matches+0x72 (stringutils.cpp:97) > V [jvm.dll+0x45f4f0] ClassFileParser::parse_stream+0x660 (classfileparser.cpp:6450) > V [jvm.dll+0x44e567] ClassFileParser::ClassFileParser+0x507 (classfileparser.cpp:6264) > V [jvm.dll+0x921db3] KlassFactory::create_from_stream+0x1d3 (klassfactory.cpp:204) > V [jvm.dll+0xc7aa1b] SystemDictionary::resolve_from_stream+0x21b (systemdictionary.cpp:1163) > V [jvm.dll+0x7bb3c2] jvm_define_class_common+0x252 (jvm.cpp:975) > V [jvm.dll+0x7c542c] JVM_DefineClassWithSource+0x20c (jvm.cpp:999) > C [java.dll+0x1970] Java_java_lang_ClassLoader_defineClass1+0x140 (classloader.c:133) > > Seems to happen only on Windows. > This is pretty foul, since classFileParser.cpp assumes that _class_name is in internal form, not external form. There are lots of places where it is compared with known class names using ?/? instead of ?.? in the package prefix. Probably a bug in the caller, but I don?t want to chase it now. I?ll do something to make the CFP more robust, but we should probably chase it down. I?ll log a bug. ? John From frederic.parain at oracle.com Mon Feb 10 15:29:59 2020 From: frederic.parain at oracle.com (frederic.parain at oracle.com) Date: Mon, 10 Feb 2020 15:29:59 +0000 Subject: hg: valhalla/valhalla: 8238768: [lworld] Update field layout code Message-ID: <202002101529.01AFTxDv020828@aojmv0008.oracle.com> Changeset: dba5bb5a9a52 Author: fparain Date: 2020-02-10 10:29 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/dba5bb5a9a52 8238768: [lworld] Update field layout code ! src/hotspot/share/ci/ciInstanceKlass.cpp ! src/hotspot/share/ci/ciInstanceKlass.hpp ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/classfile/classFileParser.hpp ! src/hotspot/share/classfile/fieldLayoutBuilder.cpp ! src/hotspot/share/classfile/fieldLayoutBuilder.hpp ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp ! src/hotspot/share/oops/instanceKlass.cpp ! src/hotspot/share/oops/instanceKlass.hpp ! src/hotspot/share/oops/instanceOop.hpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/globals.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotVMConfig.java From tobias.hartmann at oracle.com Tue Feb 11 07:20:00 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Tue, 11 Feb 2020 07:20:00 +0000 Subject: hg: valhalla/valhalla: 8237475: [lworld] C1 should not allocate default inline type Message-ID: <202002110720.01B7K17N016204@aojmv0008.oracle.com> Changeset: 3b0e466a7e7a Author: thartmann Date: 2020-02-11 08:19 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3b0e466a7e7a 8237475: [lworld] C1 should not allocate default inline type ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/c1/c1_Instruction.hpp From srikanth.adayapalam at oracle.com Tue Feb 11 10:02:29 2020 From: srikanth.adayapalam at oracle.com (srikanth.adayapalam at oracle.com) Date: Tue, 11 Feb 2020 10:02:29 +0000 Subject: hg: valhalla/valhalla: 8237066: [lworld] Adjust inline type's interactions with jlO methods per latest spec Message-ID: <202002111002.01BA2UGr011412@aojmv0008.oracle.com> Changeset: fdad06b6aba4 Author: sadayapalam Date: 2020-02-11 15:32 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/fdad06b6aba4 8237066: [lworld] Adjust inline type's interactions with jlO methods per latest spec ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties + test/langtools/tools/javac/diags/examples/InlineMayNotOverride.java ! test/langtools/tools/javac/valhalla/lworld-values/CheckClone.out ! test/langtools/tools/javac/valhalla/lworld-values/CheckFinalize.out + test/langtools/tools/javac/valhalla/lworld-values/CheckObjectMethodsUsage.java + test/langtools/tools/javac/valhalla/lworld-values/CheckObjectMethodsUsage.out From roger.riggs at oracle.com Tue Feb 11 18:16:17 2020 From: roger.riggs at oracle.com (roger.riggs at oracle.com) Date: Tue, 11 Feb 2020 18:16:17 +0000 Subject: hg: valhalla/valhalla: 8238895: [lworld] Serial Version UID to ignore IdentityClass interface Message-ID: <202002111816.01BIGIk4001503@aojmv0008.oracle.com> Changeset: 8aefdf781cda Author: rriggs Date: 2020-02-11 13:14 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8aefdf781cda 8238895: [lworld] Serial Version UID to ignore IdentityClass interface ! src/java.base/share/classes/java/io/ObjectStreamClass.java From forax at univ-mlv.fr Tue Feb 11 20:03:31 2020 From: forax at univ-mlv.fr (Remi Forax) Date: Tue, 11 Feb 2020 21:03:31 +0100 (CET) Subject: Build with java 14 ? Message-ID: <1478805670.1555528.1581451411400.JavaMail.zimbra@u-pem.fr> Why the valhalla lworld repo can not be build with java 14 ? https://travis-ci.org/forax/java-next/jobs/648788047#L1817 R?mi From frederic.parain at oracle.com Tue Feb 11 20:55:32 2020 From: frederic.parain at oracle.com (frederic.parain at oracle.com) Date: Tue, 11 Feb 2020 20:55:32 +0000 Subject: hg: valhalla/valhalla: [lworld] Fix an enable layout optimizations Message-ID: <202002112055.01BKtXgl029000@aojmv0008.oracle.com> Changeset: 3a51926f7196 Author: fparain Date: 2020-02-11 15:55 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3a51926f7196 [lworld] Fix an enable layout optimizations ! src/hotspot/share/classfile/fieldLayoutBuilder.cpp ! src/hotspot/share/classfile/fieldLayoutBuilder.hpp ! src/hotspot/share/runtime/globals.hpp From tobias.hartmann at oracle.com Wed Feb 12 15:33:15 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 12 Feb 2020 16:33:15 +0100 Subject: RFR(S): 8238948: [lworld] Method resolution does not handle invokespecial with scalarized receiver Message-ID: Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8238948 http://cr.openjdk.java.net/~thartmann/8238948/webrev.00/ Method resolution does not handle invokespecial on a method with a scalarized inline type receiver. I've changed the code to use LinkResolver::resolve_invoke which handles all invoke bytecodes. Thanks, Tobias From tobias.hartmann at oracle.com Wed Feb 12 15:33:21 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 12 Feb 2020 16:33:21 +0100 Subject: RFR(S): 8238713: [lworld] C2 compiled method triggers infinite number of uncommon traps for interface array store Message-ID: Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8238713 http://cr.openjdk.java.net/~thartmann/8238713/webrev.00/ Type speculation in Parse::array_store_check() does not set the correct reason for the uncommon trap and as a result, the too_many_traps check always retursn false leading to an infinite number of deoptimizations and re-compilations. The problem was recently introduced by the aaload/aastore profiling changes [1]. Thanks, Tobias [1] https://bugs.openjdk.java.net/browse/JDK-8234572 From tobias.hartmann at oracle.com Wed Feb 12 15:33:28 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 12 Feb 2020 16:33:28 +0100 Subject: RFR(S): 8238780: [lworld] C2: Partially initialized value type buffer might be observed by other thread Message-ID: Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8238780 http://cr.openjdk.java.net/~thartmann/8238780/webrev.00/ Similar to what we have for the clone intrinsic [1], the inline type buffer initialization in ValueTypeNode::allocate, ValueTypeNode::finish_larval and LateInlineCallGenerator::do_late_inline() needs a barrier to not let C2 reorder initializing stores with a subsequent store that would make this buffer accessible by other threads. TestBufferTearing.java triggers this reliably for both cases with the help of -XX:+Stress(G/L)CM. It disables field and array element flattening to ensure that writes are atomic (we could also use nullable containers). This change also includes some refactoring, an additional test and a new test suite option to run the tests without compile commands for extended testing. Thanks to John for finding and debugging this issue [2]! Best regards, Tobias [1] http://hg.openjdk.java.net/jdk/jdk/file/5a3b04593405/src/hotspot/share/opto/library_call.cpp#l4218 [2] https://mail.openjdk.java.net/pipermail/valhalla-dev/2019-December/006696.html From tobias.hartmann at oracle.com Wed Feb 12 15:33:32 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 12 Feb 2020 16:33:32 +0100 Subject: RFR(S): 8238869: [lworld] C2's slow path allocation does not set the larval bit Message-ID: <10ee0735-b18e-0acb-67a4-af845860f66d@oracle.com> Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8238869 http://cr.openjdk.java.net/~thartmann/8238869/webrev.00/ C2's slow path allocation of a private inline type buffer (created via Unsafe.makePrivateBuffer) does not set the larval bit. We didn't hit this yet because either the allocation fits in the TLAB or all code is compiled/scalarized and no buffer is allocated. I've fixed this by tagging the klass pointer passed to OptoRuntime::new_instance_C to mark a larval buffer allocation. I also thought about doing this in the IR after the call but that turned out to be quite complex and also might affect other optimizations. Thanks, Tobias From tobias.hartmann at oracle.com Wed Feb 12 15:36:59 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 12 Feb 2020 16:36:59 +0100 Subject: for review: 8236522: "always atomic" modifier for inline classes to enforce atomicity In-Reply-To: <83A8E7C7-C2CB-4F3C-A840-F6169C9E6246@oracle.com> References: <212B1143-F1F9-45AF-8ADD-E44513BA7050@oracle.com> <6f201ace-f9e6-1ed9-6187-1e881c146d56@oracle.com> <83A8E7C7-C2CB-4F3C-A840-F6169C9E6246@oracle.com> Message-ID: <1113acf6-9c46-5e07-ed07-679bca4e3a94@oracle.com> Hi John, I've just sent the RFR for 8238780 which will fix these issues. I found one additional place where a StoreStore barrier was missing. Thanks, Tobias On 22.01.20 21:20, John Rose wrote: > On Jan 20, 2020, at 6:54 AM, Tobias Hartmann > wrote: >> >>> >>> How did it reproduce for you? It would be nice to have a regression test. >> >> Okay, -XX:+StressLCM did the trick :) > > Thanks for taking it out for a spin. > > The jtreg test ValueTearing.java failed reliably (P ~ 50%) > on my MacBook. ?Debugging that led me to add that S-S barrier. > > ? John From frederic.parain at oracle.com Thu Feb 13 15:48:41 2020 From: frederic.parain at oracle.com (Frederic Parain) Date: Thu, 13 Feb 2020 10:48:41 -0500 Subject: RFR(S): 8238948: [lworld] Method resolution does not handle invokespecial with scalarized receiver In-Reply-To: References: Message-ID: <915a8145-6f31-df8d-1452-0b6651060b3b@oracle.com> Looks good to me. Fred On 2/12/20 10:33 AM, Tobias Hartmann wrote: > Hi, > > please review the following patch: > https://bugs.openjdk.java.net/browse/JDK-8238948 > http://cr.openjdk.java.net/~thartmann/8238948/webrev.00/ > > Method resolution does not handle invokespecial on a method with a scalarized inline type receiver. > I've changed the code to use LinkResolver::resolve_invoke which handles all invoke bytecodes. > > Thanks, > Tobias > From tobias.hartmann at oracle.com Thu Feb 13 15:51:47 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 13 Feb 2020 16:51:47 +0100 Subject: RFR(S): 8238948: [lworld] Method resolution does not handle invokespecial with scalarized receiver In-Reply-To: <915a8145-6f31-df8d-1452-0b6651060b3b@oracle.com> References: <915a8145-6f31-df8d-1452-0b6651060b3b@oracle.com> Message-ID: Thanks Fred! Best regards, Tobias On 13.02.20 16:48, Frederic Parain wrote: > Looks good to me. > > Fred > > On 2/12/20 10:33 AM, Tobias Hartmann wrote: >> Hi, >> >> please review the following patch: >> https://bugs.openjdk.java.net/browse/JDK-8238948 >> http://cr.openjdk.java.net/~thartmann/8238948/webrev.00/ >> >> Method resolution does not handle invokespecial on a method with a scalarized inline type receiver. >> I've changed the code to use LinkResolver::resolve_invoke which handles all invoke bytecodes. >> >> Thanks, >> Tobias >> From rwestrel at redhat.com Fri Feb 14 10:21:50 2020 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 14 Feb 2020 11:21:50 +0100 Subject: RFR(S): 8238713: [lworld] C2 compiled method triggers infinite number of uncommon traps for interface array store In-Reply-To: References: Message-ID: <87sgjdpiyp.fsf@redhat.com> > http://cr.openjdk.java.net/~thartmann/8238713/webrev.00/ Looks good. Roland. From rwestrel at redhat.com Fri Feb 14 10:24:24 2020 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 14 Feb 2020 11:24:24 +0100 Subject: RFR(S): 8238869: [lworld] C2's slow path allocation does not set the larval bit In-Reply-To: <10ee0735-b18e-0acb-67a4-af845860f66d@oracle.com> References: <10ee0735-b18e-0acb-67a4-af845860f66d@oracle.com> Message-ID: <87pnehpiuf.fsf@redhat.com> > http://cr.openjdk.java.net/~thartmann/8238869/webrev.00/ Why not add an extra argument to the call? Roland. From tobias.hartmann at oracle.com Fri Feb 14 10:28:38 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 14 Feb 2020 11:28:38 +0100 Subject: RFR(S): 8238869: [lworld] C2's slow path allocation does not set the larval bit In-Reply-To: <87pnehpiuf.fsf@redhat.com> References: <10ee0735-b18e-0acb-67a4-af845860f66d@oracle.com> <87pnehpiuf.fsf@redhat.com> Message-ID: <5d5fc910-8074-22db-7fd1-9ed2ca5f4ab7@oracle.com> Hi Roland, thanks for the review! On 14.02.20 11:24, Roland Westrelin wrote: > Why not add an extra argument to the call? To avoid the overhead of initializing that argument even for non-larval allocations. Best regards, Tobias From tobias.hartmann at oracle.com Fri Feb 14 10:28:51 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 14 Feb 2020 11:28:51 +0100 Subject: RFR(S): 8238713: [lworld] C2 compiled method triggers infinite number of uncommon traps for interface array store In-Reply-To: <87sgjdpiyp.fsf@redhat.com> References: <87sgjdpiyp.fsf@redhat.com> Message-ID: <102be07a-ea48-9a93-d883-c8b1c86ddcf7@oracle.com> Thanks Roland. Best regards, Tobias On 14.02.20 11:21, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/8238713/webrev.00/ > > Looks good. > > Roland. > From rwestrel at redhat.com Fri Feb 14 10:30:54 2020 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 14 Feb 2020 11:30:54 +0100 Subject: RFR(S): 8238780: [lworld] C2: Partially initialized value type buffer might be observed by other thread In-Reply-To: References: Message-ID: <87mu9lpijl.fsf@redhat.com> > http://cr.openjdk.java.net/~thartmann/8238780/webrev.00/ Looks good. Your webrev includes the fix for 8238713. Roland. From rwestrel at redhat.com Fri Feb 14 10:34:43 2020 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 14 Feb 2020 11:34:43 +0100 Subject: RFR(S): 8238869: [lworld] C2's slow path allocation does not set the larval bit In-Reply-To: <5d5fc910-8074-22db-7fd1-9ed2ca5f4ab7@oracle.com> References: <10ee0735-b18e-0acb-67a4-af845860f66d@oracle.com> <87pnehpiuf.fsf@redhat.com> <5d5fc910-8074-22db-7fd1-9ed2ca5f4ab7@oracle.com> Message-ID: <87h7ztpid8.fsf@redhat.com> > To avoid the overhead of initializing that argument even for non-larval allocations. Given it's a slow case call, does that really matter? Roland. From tobias.hartmann at oracle.com Fri Feb 14 10:36:50 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 14 Feb 2020 11:36:50 +0100 Subject: RFR(S): 8238780: [lworld] C2: Partially initialized value type buffer might be observed by other thread In-Reply-To: <87mu9lpijl.fsf@redhat.com> References: <87mu9lpijl.fsf@redhat.com> Message-ID: On 14.02.20 11:30, Roland Westrelin wrote: > Looks good. Your webrev includes the fix for 8238713. Thanks Roland. Fixed that. Best regards, Tobias From tobias.hartmann at oracle.com Fri Feb 14 11:42:34 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 14 Feb 2020 12:42:34 +0100 Subject: RFR(S): 8238869: [lworld] C2's slow path allocation does not set the larval bit In-Reply-To: <87h7ztpid8.fsf@redhat.com> References: <10ee0735-b18e-0acb-67a4-af845860f66d@oracle.com> <87pnehpiuf.fsf@redhat.com> <5d5fc910-8074-22db-7fd1-9ed2ca5f4ab7@oracle.com> <87h7ztpid8.fsf@redhat.com> Message-ID: On 14.02.20 11:34, Roland Westrelin wrote: > Given it's a slow case call, does that really matter? Right, it probably doesn't make a difference. Here's a new webrev: http://cr.openjdk.java.net/~thartmann/8238869/webrev.01/ Thanks, Tobias From tobias.hartmann at oracle.com Fri Feb 14 13:07:25 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 14 Feb 2020 13:07:25 +0000 Subject: hg: valhalla/valhalla: 8238948: [lworld] Method resolution does not handle invokespecial with scalarized receiver Message-ID: <202002141307.01ED7Q2U005832@aojmv0008.oracle.com> Changeset: 0c10436e4a45 Author: thartmann Date: 2020-02-14 14:06 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0c10436e4a45 8238948: [lworld] Method resolution does not handle invokespecial with scalarized receiver Reviewed-by: fparain ! src/hotspot/share/interpreter/linkResolver.cpp ! src/hotspot/share/interpreter/linkResolver.hpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestCallingConvention.java From tobias.hartmann at oracle.com Fri Feb 14 13:09:11 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 14 Feb 2020 13:09:11 +0000 Subject: hg: valhalla/valhalla: 8238713: [lworld] C2 compiled method triggers infinite number of uncommon traps for interface array store Message-ID: <202002141309.01ED9BQH007059@aojmv0008.oracle.com> Changeset: 2f0e31b13e3f Author: thartmann Date: 2020-02-14 14:08 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2f0e31b13e3f 8238713: [lworld] C2 compiled method triggers infinite number of uncommon traps for interface array store Reviewed-by: roland ! src/hotspot/share/opto/parseHelper.cpp From tobias.hartmann at oracle.com Fri Feb 14 13:10:25 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 14 Feb 2020 13:10:25 +0000 Subject: hg: valhalla/valhalla: 8238780: [lworld] C2: Partially initialized value type buffer might be observed by other thread Message-ID: <202002141310.01EDAQUb008080@aojmv0008.oracle.com> Changeset: b018052fc8b1 Author: thartmann Date: 2020-02-14 14:10 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b018052fc8b1 8238780: [lworld] C2: Partially initialized value type buffer might be observed by other thread Reviewed-by: roland ! src/hotspot/share/opto/callGenerator.cpp ! src/hotspot/share/opto/callnode.cpp ! src/hotspot/share/opto/callnode.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/memnode.cpp ! src/hotspot/share/opto/parseHelper.cpp ! src/hotspot/share/opto/valuetypenode.cpp + test/hotspot/jtreg/compiler/valhalla/valuetypes/TestBufferTearing.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestDeoptimizationWhenBuffering.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestMethodHandles.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestNullableValueTypes.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/ValueTypeTest.java From tobias.hartmann at oracle.com Fri Feb 14 14:53:38 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 14 Feb 2020 15:53:38 +0100 Subject: RFR(S): 8238869: [lworld] C2's slow path allocation does not set the larval bit In-Reply-To: References: <10ee0735-b18e-0acb-67a4-af845860f66d@oracle.com> <87pnehpiuf.fsf@redhat.com> <5d5fc910-8074-22db-7fd1-9ed2ca5f4ab7@oracle.com> <87h7ztpid8.fsf@redhat.com> Message-ID: <9055cf10-272f-3fd5-b638-5acad969e036@oracle.com> On 14.02.20 12:42, Tobias Hartmann wrote: > Right, it probably doesn't make a difference. Here's a new webrev: > http://cr.openjdk.java.net/~thartmann/8238869/webrev.01/ Just noticed that with this, we need to update our IR match rules to handle the initialization of the new argument. While fixing that, I've noticed that the match rule for array allocation is broken (doesn't handle "Q" in the precise klass statement). I've fixed it as well and added some additional annotations to the tests to catch this in the future. Updated webrev in-place. Thanks, Tobias From rwestrel at redhat.com Fri Feb 14 15:13:56 2020 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 14 Feb 2020 16:13:56 +0100 Subject: RFR(S): 8238869: [lworld] C2's slow path allocation does not set the larval bit In-Reply-To: <9055cf10-272f-3fd5-b638-5acad969e036@oracle.com> References: <10ee0735-b18e-0acb-67a4-af845860f66d@oracle.com> <87pnehpiuf.fsf@redhat.com> <5d5fc910-8074-22db-7fd1-9ed2ca5f4ab7@oracle.com> <87h7ztpid8.fsf@redhat.com> <9055cf10-272f-3fd5-b638-5acad969e036@oracle.com> Message-ID: <87eeuxp5fv.fsf@redhat.com> >> http://cr.openjdk.java.net/~thartmann/8238869/webrev.01/ It looks good. Roland. From tobias.hartmann at oracle.com Fri Feb 14 15:16:37 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 14 Feb 2020 16:16:37 +0100 Subject: RFR(S): 8238869: [lworld] C2's slow path allocation does not set the larval bit In-Reply-To: <87eeuxp5fv.fsf@redhat.com> References: <10ee0735-b18e-0acb-67a4-af845860f66d@oracle.com> <87pnehpiuf.fsf@redhat.com> <5d5fc910-8074-22db-7fd1-9ed2ca5f4ab7@oracle.com> <87h7ztpid8.fsf@redhat.com> <9055cf10-272f-3fd5-b638-5acad969e036@oracle.com> <87eeuxp5fv.fsf@redhat.com> Message-ID: <78d8b9ed-71f5-b4ae-c03a-2cd667aa2c89@oracle.com> Thanks Roland! Best regards, Tobias On 14.02.20 16:13, Roland Westrelin wrote: > >>> http://cr.openjdk.java.net/~thartmann/8238869/webrev.01/ > > It looks good. > > Roland. > From tobias.hartmann at oracle.com Fri Feb 14 15:16:50 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 14 Feb 2020 15:16:50 +0000 Subject: hg: valhalla/valhalla: 8238869: [lworld] C2's slow path allocation does not set the larval bit Message-ID: <202002141516.01EFGoBT019736@aojmv0008.oracle.com> Changeset: 46fd5a8c2f5d Author: thartmann Date: 2020-02-14 16:16 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/46fd5a8c2f5d 8238869: [lworld] C2's slow path allocation does not set the larval bit Reviewed-by: roland ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/runtime.cpp ! src/hotspot/share/opto/runtime.hpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestArrays.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestIntrinsics.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestNullableArrays.java ! test/hotspot/jtreg/compiler/valhalla/valuetypes/ValueTypeTest.java From mandy.chung at oracle.com Fri Feb 14 19:24:53 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 14 Feb 2020 19:24:53 +0000 Subject: hg: valhalla/valhalla: 124 new changesets Message-ID: <202002141925.01EJP1lE022596@aojmv0008.oracle.com> Changeset: 7b57401deb0c Author: jwilhelm Date: 2020-02-06 02:54 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/7b57401deb0c Added tag jdk-15+9 for changeset 62b5bfef8d61 ! .hgtags Changeset: 1c4286ec9e45 Author: mbaesken Date: 2020-02-05 10:14 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1c4286ec9e45 8238530: OPT_SPEED_SRC list misses some files with cpu-dependend file names Reviewed-by: ihse, redestad ! make/hotspot/lib/JvmFeatures.gmk Changeset: 6e507ee93768 Author: neliasso Date: 2020-02-06 11:21 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6e507ee93768 8237581: Improve allocation expansion Reviewed-by: vlivanov, redestad ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/macro.hpp + test/hotspot/jtreg/compiler/allocation/TestAllocation.java + test/micro/org/openjdk/bench/vm/compiler/ArrayAllocation.java Changeset: f9f766fa1125 Author: ihse Date: 2020-02-06 13:38 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f9f766fa1125 8218480: Automatically add -Werror in FLAGS_COMPILER_CHECK_ARGUMENTS Reviewed-by: erikj ! make/autoconf/flags-cflags.m4 ! make/autoconf/flags.m4 Changeset: 227542943648 Author: ihse Date: 2020-02-06 13:40 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/227542943648 8238542: When warning about C/C++ compiler mismatch, be clear if this is about build compilers Reviewed-by: erikj ! make/autoconf/toolchain.m4 Changeset: 885b23ef907d Author: ihse Date: 2020-02-06 13:40 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/885b23ef907d 8212986: Make Visual Studio compiler check less strict Reviewed-by: erikj ! make/autoconf/toolchain.m4 Changeset: c35eac313084 Author: ihse Date: 2020-02-06 13:41 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c35eac313084 8201349: build broken when configured with --with-zlib=bundled on gcc 7.3 Reviewed-by: erikj ! make/lib/CoreLibraries.gmk Changeset: 4a4d185098e2 Author: lfoltan Date: 2020-02-06 14:29 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/4a4d185098e2 8230199: consolidate signature parsing code in HotSpot sources Summary: Add a new Signature class to support basic signature queries and enhance SignatureStream class to parse field signatures in addition to methods. Reviewed-by: coleenp, dholmes, fparain, hseigel Contributed-by: lois.foltan at oracle.com, john.r.rose at oracle.com ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp ! src/hotspot/cpu/ppc/sharedRuntime_ppc.cpp ! src/hotspot/cpu/s390/sharedRuntime_s390.cpp ! src/hotspot/cpu/sparc/sharedRuntime_sparc.cpp ! src/hotspot/cpu/x86/sharedRuntime_x86_32.cpp ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/share/c1/c1_ValueMap.cpp ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciField.cpp ! src/hotspot/share/ci/ciKlass.hpp ! src/hotspot/share/ci/ciObjArrayKlass.cpp ! src/hotspot/share/ci/ciObjectFactory.cpp ! src/hotspot/share/ci/ciSignature.cpp ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/classfile/classListParser.cpp ! src/hotspot/share/classfile/defaultMethods.cpp ! src/hotspot/share/classfile/placeholders.cpp ! src/hotspot/share/classfile/stackMapTable.cpp ! src/hotspot/share/classfile/systemDictionary.cpp ! src/hotspot/share/classfile/systemDictionary.hpp ! src/hotspot/share/classfile/verificationType.cpp ! src/hotspot/share/classfile/vmSymbols.cpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/code/nmethod.cpp ! src/hotspot/share/compiler/methodMatcher.cpp ! src/hotspot/share/interpreter/bytecode.cpp ! src/hotspot/share/interpreter/bytecodeUtils.cpp ! src/hotspot/share/interpreter/interpreterRuntime.cpp ! src/hotspot/share/interpreter/oopMapCache.cpp ! src/hotspot/share/interpreter/rewriter.cpp ! src/hotspot/share/jvmci/compilerRuntime.cpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.hpp ! src/hotspot/share/oops/constMethod.cpp ! src/hotspot/share/oops/constantPool.cpp ! src/hotspot/share/oops/generateOopMap.cpp ! src/hotspot/share/oops/generateOopMap.hpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/oops/methodData.cpp ! src/hotspot/share/oops/symbol.cpp ! src/hotspot/share/oops/symbol.hpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jvmtiImpl.cpp ! src/hotspot/share/prims/methodHandles.cpp ! src/hotspot/share/prims/methodHandles.hpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/fieldDescriptor.hpp ! src/hotspot/share/runtime/fieldDescriptor.inline.hpp ! src/hotspot/share/runtime/frame.cpp ! src/hotspot/share/runtime/javaCalls.cpp ! src/hotspot/share/runtime/reflection.cpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/signature.cpp ! src/hotspot/share/runtime/signature.hpp ! src/hotspot/share/utilities/globalDefinitions.cpp ! src/hotspot/share/utilities/globalDefinitions.hpp Changeset: d3caf06ac9ae Author: lfoltan Date: 2020-02-06 15:28 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d3caf06ac9ae 8238600: Remove runtime/fieldType.hpp and fieldType.cpp Summary: Remove obsolesced source files fieldType.hpp and fieldType.cpp. Reviewed-by: hseigel Contributed-by: lois.foltan at oracle.com - src/hotspot/share/runtime/fieldType.cpp - src/hotspot/share/runtime/fieldType.hpp Changeset: 4a87bb7ebfd7 Author: roland Date: 2020-01-31 14:36 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/4a87bb7ebfd7 8237776: Shenandoah: Wrong result with Lucene test Reviewed-by: rkennke, zgu, shade ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp Changeset: e08e21ca813f Author: jwilhelm Date: 2020-02-06 02:52 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e08e21ca813f Added tag jdk-14+35 for changeset 4a87bb7ebfd7 ! .hgtags Changeset: c17f7a28ee8d Author: jwilhelm Date: 2020-02-06 17:14 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c17f7a28ee8d Merge ! .hgtags ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp Changeset: 8d8916159b62 Author: zgu Date: 2020-02-06 13:08 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8d8916159b62 8238574: Shenandoah: Assertion failure due to missing null check Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp Changeset: 9544e515be4e Author: dtitov Date: 2020-02-06 11:23 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9544e515be4e 8196729: Add jstatd option to specify RMI connector port Reviewed-by: cjplummer, sspitsyn ! src/jdk.jstatd/share/classes/sun/tools/jstatd/Jstatd.java ! src/jdk.jstatd/share/classes/sun/tools/jstatd/RemoteHostImpl.java ! test/jdk/sun/tools/jstatd/JstatdTest.java + test/jdk/sun/tools/jstatd/TestJstatdRmiPort.java ! test/jdk/sun/tools/jstatd/TestJstatdUsage.java Changeset: adc5b0998235 Author: jjg Date: 2020-02-06 12:44 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/adc5b0998235 8238503: Remove unused field and accessor for docLocale from ToolOptions Reviewed-by: hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ToolOptions.java Changeset: 59daa8db33ce Author: kbarrett Date: 2020-02-06 19:09 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/59daa8db33ce 8237143: Eliminate DirtyCardQ_cbl_mon Summary: Replace locked data structures with lock-free data structures. Reviewed-by: tschatzl, sangheki ! src/hotspot/share/gc/g1/g1BarrierSet.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1ConcurrentRefine.cpp ! src/hotspot/share/gc/g1/g1ConcurrentRefineThread.cpp ! src/hotspot/share/gc/g1/g1ConcurrentRefineThread.hpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.hpp ! src/hotspot/share/gc/shared/ptrQueue.hpp ! src/hotspot/share/runtime/mutexLocker.cpp ! src/hotspot/share/runtime/mutexLocker.hpp Changeset: 5e402c63694f Author: dholmes Date: 2020-02-06 21:03 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/5e402c63694f 8238460: Provide warnings about the use of JNI RegisterNatives to rebind native methods for boot/platform classes in other classloaders Reviewed-by: jwilhelm, lfoltan ! src/hotspot/share/prims/jni.cpp + test/hotspot/jtreg/runtime/jni/registerNativesWarning/TestRegisterNativesWarning.java + test/hotspot/jtreg/runtime/jni/registerNativesWarning/libregisterNativesWarning.c Changeset: e0fca02bb611 Author: redestad Date: 2020-02-07 09:47 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e0fca02bb611 8238599: Refactor and simplify implAddOpensToAllUnnamed Reviewed-by: alanb ! src/java.base/share/classes/java/lang/Module.java ! src/java.base/share/classes/java/lang/System.java ! src/java.base/share/classes/jdk/internal/access/JavaLangAccess.java ! src/java.base/share/classes/jdk/internal/module/ModuleBootstrap.java Changeset: 538611d777d2 Author: redestad Date: 2020-02-07 10:15 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/538611d777d2 8236272: Improve fidelity between contents of default CDS archive and classes loaded at runtime Reviewed-by: erikj, jiangli, iklam ! make/GenerateLinkOptData.gmk ! make/jdk/src/classes/build/tools/classlist/HelloClasslist.java Changeset: 84920d352dc4 Author: redestad Date: 2020-02-07 10:23 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/84920d352dc4 8237484: Improve module system bootstrap Reviewed-by: alanb ! src/java.base/share/classes/java/lang/Module.java ! src/java.base/share/classes/jdk/internal/module/ModuleBootstrap.java Changeset: f41394559814 Author: pconcannon Date: 2020-02-07 11:10 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f41394559814 7021373: DatagramPacket exception conditions are not clear Summary: Specification is clarified by adding or clarifying @throws clauses where required Reviewed-by: alanb, chegar, darcy, dfuchs ! src/java.base/share/classes/java/net/DatagramPacket.java ! test/jdk/java/net/DatagramPacket/Constructor.java + test/jdk/java/net/DatagramPacket/Setters.java Changeset: f2cefce4859b Author: roland Date: 2020-01-14 14:58 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f2cefce4859b 8237086: assert(is_MachReturn()) running CTW with fix for JDK-8231291 Reviewed-by: kvn, vlivanov ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/graphKit.cpp Changeset: 51fb05ec531d Author: roland Date: 2019-12-20 17:17 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/51fb05ec531d 8231291: C2: loop opts before EA should maximally unroll loops Reviewed-by: kvn, vlivanov ! src/hotspot/share/opto/cfgnode.cpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/compile.hpp ! src/hotspot/share/opto/loopnode.cpp Changeset: f1f8562f3ad2 Author: egahlin Date: 2020-02-07 18:24 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f1f8562f3ad2 8215452: Logged repo location is wrong when using delayed recording start Reviewed-by: mgronlun, mseledtsov ! src/jdk.jfr/share/classes/jdk/jfr/FlightRecorder.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/Repository.java Changeset: bc54620a3848 Author: naoto Date: 2020-02-06 10:10 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/bc54620a3848 8238605: Correct the CLDR version number in cldr.md files Reviewed-by: joehw, alanb ! src/java.base/share/legal/cldr.md ! src/jdk.localedata/share/legal/cldr.md Changeset: e568ce785bdf Author: jwilhelm Date: 2020-02-07 00:17 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e568ce785bdf Added tag jdk-14+36 for changeset bc54620a3848 ! .hgtags Changeset: adda073e3c33 Author: jwilhelm Date: 2020-02-07 17:24 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/adda073e3c33 Merge ! .hgtags Changeset: 2d9610f6d9ac Author: mseledtsov Date: 2020-02-07 13:04 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2d9610f6d9ac 8219999: TestJFREvents container test should not use jdk.CPUInformation event for container CPU values Summary: Updated the testcase not to test jdk.CPUInformation Reviewed-by: egahlin ! test/hotspot/jtreg/containers/docker/TestJFREvents.java Changeset: ee863b393d0c Author: jjg Date: 2020-02-07 16:16 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ee863b393d0c 8238648: Rename and simplify Utils.WeakSoftHashMap Reviewed-by: hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java Changeset: d6019966a4a2 Author: jjg Date: 2020-02-07 16:43 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d6019966a4a2 8238506: fix obsolete comments and inconsistent exceptions in BaseTaglet Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/BasePropertyTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/BaseTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/Taglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ThrowsTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java Changeset: 3b89be93a7e7 Author: jjg Date: 2020-02-07 17:00 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3b89be93a7e7 8238437: Support separate locales for console messages and HTML content. Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.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/HtmlConfiguration.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/HtmlOptions.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/SourceToHTMLConverter.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/markup/Navigation.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AbstractDoclet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseOptions.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/CommentUtils.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Messages.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Resources.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AbstractBuilder.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/PropertyGetterTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/PropertySetterTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/TagletManager.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Extern.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Group.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/MetaKeywords.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/StandardDocFileFactory.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java ! test/langtools/jdk/javadoc/doclet/testSearch/TestSearch.java ! test/langtools/jdk/javadoc/tool/testLocaleOption/TestLocaleOption.java Changeset: d1caf4022e8e Author: iignatyev Date: 2020-02-08 15:46 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d1caf4022e8e 8238586: [TESTBUG] vmTestbase/jit/tiered/Test.java failed when TieredCompilation is disabled Reviewed-by: iignatyev Contributed-by: huangjia at loongson.cn ! test/hotspot/jtreg/vmTestbase/jit/tiered/Test.java Changeset: bc3da0226ffa Author: redestad Date: 2020-02-08 15:21 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/bc3da0226ffa 8238684: Override getOrDefault in immutable Map implementation Reviewed-by: forax, psandoz, smarks ! src/java.base/share/classes/java/util/ImmutableCollections.java ! test/micro/org/openjdk/bench/java/util/ImmutableColls.java Changeset: 1375d360210f Author: shade Date: 2020-02-10 06:18 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1375d360210f 8238366: CTW runner closes standard output on exit Reviewed-by: adinn, iignatyev ! test/hotspot/jtreg/testlibrary/ctw/src/sun/hotspot/tools/ctw/CompileTheWorld.java Changeset: 787d9d725483 Author: shade Date: 2020-02-10 06:18 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/787d9d725483 8238247: CTW runner should sweep nmethods more aggressively Reviewed-by: adinn, simonis, iignatyev ! test/hotspot/jtreg/testlibrary/ctw/src/sun/hotspot/tools/ctw/Compiler.java Changeset: b585d773ea0f Author: shade Date: 2020-02-10 06:18 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b585d773ea0f 8238591: CTW: Split applications/ctw/modules/jdk_localedata.java Reviewed-by: iignatyev ! test/hotspot/jtreg/TEST.groups ! test/hotspot/jtreg/applications/ctw/modules/jdk_localedata.java + test/hotspot/jtreg/applications/ctw/modules/jdk_localedata_2.java Changeset: 92b01977fde2 Author: coffeys Date: 2020-02-09 21:55 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/92b01977fde2 8223260: NamingManager should cache InitialContextFactory Reviewed-by: alanb, plevart, dfuchs ! src/java.base/share/classes/module-info.java ! src/java.naming/share/classes/javax/naming/spi/NamingManager.java + test/jdk/javax/naming/spi/DummyContextFactory.java + test/jdk/javax/naming/spi/DummyContextFactory2.java + test/jdk/javax/naming/spi/FactoryCacheTest.java Changeset: 022eb7fb53f4 Author: dbuck Date: 2020-02-10 03:35 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/022eb7fb53f4 8238596: AVX enabled by default for Skylake even when unsupported Summary: Only default to UseAVX=2 when support is detected Reviewed-by: shade, vlivanov ! src/hotspot/cpu/x86/vm_version_x86.cpp ! src/hotspot/cpu/x86/vm_version_x86.hpp Changeset: 848029e1983e Author: redestad Date: 2020-02-10 12:39 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/848029e1983e 8230301: Re-examine hardcoded defaults in GenerateJLIClassesPlugin Reviewed-by: mchung ! make/GenerateLinkOptData.gmk ! make/jdk/src/classes/build/tools/classlist/HelloClasslist.java ! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/GenerateJLIClassesPlugin.java ! test/jdk/tools/jlink/plugins/GenerateJLIClassesPluginTest.java Changeset: a7c55579c61c Author: roland Date: 2020-02-07 13:59 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a7c55579c61c 8238385: CTW: C2 (Shenandoah) compilation fails with "Range check dependent CastII node was not removed" Reviewed-by: rkennke, shade ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp + test/hotspot/jtreg/gc/shenandoah/compiler/FoldIfAfterExpansion.java Changeset: a42cdcd11ca4 Author: roland Date: 2020-01-28 11:28 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a42cdcd11ca4 8237837: Shenandoah: assert(mem == __null) failed: only one safepoint Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp + test/hotspot/jtreg/gc/shenandoah/compiler/BarrierInInfiniteLoop.java Changeset: 6a82085fc61d Author: alanb Date: 2020-02-10 12:57 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6a82085fc61d 8238376: test/jdk/java/nio/channels/DatagramChannel/Loopback.java failing on multi-homed systems Reviewed-by: dfuchs ! test/jdk/java/nio/channels/DatagramChannel/Loopback.java Changeset: ff30bca14dc9 Author: redestad Date: 2020-02-10 13:58 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ff30bca14dc9 8237878: Improve ModuleLoaderMap datastructures Reviewed-by: alanb, forax ! src/java.base/share/classes/java/lang/Module.java ! src/java.base/share/classes/java/lang/module/ResolvedModule.java ! src/java.base/share/classes/jdk/internal/module/ArchivedModuleGraph.java ! src/java.base/share/classes/jdk/internal/module/ModuleBootstrap.java ! src/java.base/share/classes/jdk/internal/module/ModuleLoaderMap.java Changeset: d954bf9df7f6 Author: egahlin Date: 2020-02-10 14:21 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d954bf9df7f6 8238634: Reduce log verbosity of the JFR thread sampler Reviewed-by: mgronlun ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp Changeset: 5a3b04593405 Author: fparain Date: 2020-02-10 09:49 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/5a3b04593405 8237767: Field layout computation overhaul Reviewed-by: dholmes, coleenp, lfoltan, shade ! src/hotspot/share/ci/ciInstanceKlass.cpp ! src/hotspot/share/ci/ciInstanceKlass.hpp ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/classfile/classFileParser.hpp + src/hotspot/share/classfile/fieldLayoutBuilder.cpp + src/hotspot/share/classfile/fieldLayoutBuilder.hpp ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp ! src/hotspot/share/oops/fieldStreams.hpp ! src/hotspot/share/oops/instanceKlass.cpp ! src/hotspot/share/oops/instanceKlass.hpp ! src/hotspot/share/oops/instanceOop.hpp ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/globals.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotVMConfig.java ! test/hotspot/jtreg/runtime/CommandLine/VMDeprecatedOptions.java + test/hotspot/jtreg/runtime/FieldLayout/FieldDensityTest.java Changeset: 49e01c6df096 Author: gziemski Date: 2020-02-10 11:41 -0600 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/49e01c6df096 8235962: os::current_thread_id() is not signal safe on macOS Summary: Use mach_thread_self instead of pthread_mach_thread_np Reviewed-by: dholmes, cjplummer ! src/hotspot/os/bsd/osThread_bsd.cpp ! src/hotspot/os/bsd/osThread_bsd.hpp ! src/hotspot/os/bsd/os_bsd.cpp Changeset: 011a7c1e9f0d Author: vromero Date: 2020-02-10 15:08 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/011a7c1e9f0d 8238239: java.lang.Record spec clarifications Reviewed-by: psandoz Contributed-by: john.r.rose at oracle.com ! src/java.base/share/classes/java/lang/Record.java Changeset: c8551a661913 Author: jjg Date: 2020-02-10 13:29 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c8551a661913 8238646: Cleanup signature and use of CommentHelper Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeWriterImpl.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/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/ModuleWriterImpl.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/TagletWriterImpl.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/ReturnTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/SeeTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/SimpleTaglet.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/ValueTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/CommentHelper.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java Changeset: ae7a326448fa Author: igerasim Date: 2020-02-10 16:10 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ae7a326448fa 8235812: Unicode linebreak with quantifier does not match valid input Reviewed-by: rriggs ! src/java.base/share/classes/java/util/regex/Pattern.java ! test/jdk/java/util/regex/RegExTest.java Changeset: c01bc48cfcbe Author: jjiang Date: 2020-02-11 08:36 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c01bc48cfcbe 8238677: java/net/httpclient/ssltest/CertificateTest.java should not specify TLS version Reviewed-by: dfuchs + test/jdk/java/net/httpclient/ssltest/Cert.java ! test/jdk/java/net/httpclient/ssltest/CertificateTest.java ! test/jdk/java/net/httpclient/ssltest/Server.java - test/jdk/java/net/httpclient/ssltest/bad.keystore + test/jdk/java/net/httpclient/ssltest/gen-certs.sh - test/jdk/java/net/httpclient/ssltest/good.keystore - test/jdk/java/net/httpclient/ssltest/loopback.keystore Changeset: 28d4b3f2fadd Author: amenkov Date: 2020-02-10 16:56 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/28d4b3f2fadd 8234935: JdwpListenTest.java and JdwpAttachTest.java getting bind failures on Windows 2016 hosts Reviewed-by: cjplummer, sspitsyn ! test/jdk/ProblemList.txt ! test/jdk/com/sun/jdi/JdwpAttachTest.java ! test/jdk/com/sun/jdi/JdwpListenTest.java Changeset: 39c991aa75d0 Author: dholmes Date: 2020-02-10 19:58 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/39c991aa75d0 8236844: Deprecate PrintVMQWaitTime to prepare for its removal Reviewed-by: rehn, coleenp, hseigel ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/globals.hpp ! test/hotspot/jtreg/runtime/CommandLine/VMDeprecatedOptions.java Changeset: 8f6ffa575f63 Author: weijun Date: 2020-02-11 11:17 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8f6ffa575f63 8231508: Spec Clarification : KeyTab:exist() method does not specify about the fallback details Reviewed-by: mullan ! src/java.security.jgss/share/classes/javax/security/auth/kerberos/KeyTab.java Changeset: 6925fca95959 Author: qpzhang Date: 2020-02-04 21:27 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6925fca95959 8238380: java.base/unix/native/libjava/childproc.c "multiple definition" link errors with GCC10 Reviewed-by: stuefe, clanger, rriggs Contributed-by: patrick at os.amperecomputing.com ! src/java.base/unix/native/libjava/childproc.c ! src/java.base/unix/native/libjava/childproc.h Changeset: a9d37ff105fb Author: iignatyev Date: 2020-02-11 00:42 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a9d37ff105fb 8238278: vmTestbase/vm/compiler/CodeCacheInfo/Test.java failure after JDK-8237787 Reviewed-by: kvn ! test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/Test.java Changeset: 635eaa93419e Author: trebari Date: 2020-01-23 17:32 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/635eaa93419e 7020860: BasicTreeUI contains getters/setters with unclear spec Reviewed-by: jdv, prr, serb ! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTreeUI.java Changeset: 499e5a8a13ea Author: serb Date: 2020-01-23 21:42 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/499e5a8a13ea 8237049: Rollback the workaround for JDK-4533057 Reviewed-by: dmarkov ! src/java.desktop/windows/classes/sun/awt/windows/WToolkit.java ! src/java.desktop/windows/native/libawt/windows/awt_Palette.cpp ! src/java.desktop/windows/native/libawt/windows/awt_Palette.h ! src/java.desktop/windows/native/libawt/windows/awt_Toolkit.cpp ! src/java.desktop/windows/native/libawt/windows/awt_Win32GraphicsDevice.cpp Changeset: ffcc3bd2b5da Author: serb Date: 2020-01-24 18:39 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ffcc3bd2b5da 5085520: Inconsistency in spec for RenderingHints.entrySet() Reviewed-by: prr, jdv ! src/java.desktop/share/classes/java/awt/RenderingHints.java Changeset: 82fe2f667c29 Author: dbatrak Date: 2020-01-27 13:02 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/82fe2f667c29 8236996: Incorrect Roboto font rendering on Windows with subpixel antialiasing Reviewed-by: prr, serb ! src/java.desktop/share/classes/sun/font/FileFontStrike.java ! src/java.desktop/share/classes/sun/font/TrueTypeFont.java ! src/java.desktop/windows/native/libfontmanager/lcdglyph.c Changeset: 2777408b8281 Author: serb Date: 2020-01-25 22:46 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2777408b8281 8176359: Frame#setMaximizedbounds not working properly in multi screen environments 8231564: setMaximizedBounds is broken with large display scale and multiple monitors Reviewed-by: aivanov ! src/java.desktop/share/classes/sun/java2d/SunGraphicsEnvironment.java ! src/java.desktop/windows/classes/sun/awt/windows/WFramePeer.java ! src/java.desktop/windows/native/libawt/windows/awt_Frame.cpp ! src/java.desktop/windows/native/libawt/windows/awt_Frame.h ! test/jdk/ProblemList.txt + test/jdk/java/awt/Frame/MaximizedToOppositeScreen/MaximizedToOppositeScreenBig.java + test/jdk/java/awt/Frame/MaximizedToOppositeScreen/MaximizedToOppositeScreenSmall.java ! test/jdk/java/awt/Frame/SetMaximizedBounds/SetMaximizedBounds.java Changeset: b344cf155157 Author: clanger Date: 2020-02-02 17:41 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b344cf155157 8221741: ClassCastException can happen when fontconfig.properties is used Reviewed-by: mbaesken, itakiguchi ! src/java.desktop/share/classes/sun/font/SunFontManager.java ! src/java.desktop/share/classes/sun/font/TrueTypeFont.java + test/jdk/java/awt/font/DefaultFontTest/DefaultFontTest.java Changeset: 2f9416465d1d Author: arapte Date: 2020-02-03 14:58 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2f9416465d1d 8235900: [TESTBUG] [macos] PopupMenu Opaque property is not reflecting the Parents property on MAC OS Reviewed-by: serb Contributed-by: sureshkumar.mahaliswamy at oracle.com ! test/jdk/javax/swing/PopupFactory/6276087/NonOpaquePopupMenuTest.java Changeset: cd9a28621c53 Author: serb Date: 2020-02-04 12:56 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/cd9a28621c53 8225126: Test SetBoundsPaintTest.html faild on Windows when desktop is scaled Reviewed-by: jdv ! src/java.desktop/windows/classes/sun/awt/windows/WChoicePeer.java ! src/java.desktop/windows/native/libawt/windows/awt_Choice.cpp ! test/jdk/java/awt/Choice/RemoveAllShrinkTest/RemoveAllShrinkTest.java + test/jdk/java/awt/Choice/SetBoundsPaintTest/SetBoundsPaintTest.java Changeset: 0017ed5e309e Author: prr Date: 2020-02-07 11:09 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0017ed5e309e Merge - src/hotspot/share/gc/shared/owstTaskTerminator.cpp - src/hotspot/share/gc/shared/owstTaskTerminator.hpp - src/hotspot/share/runtime/fieldType.cpp - src/hotspot/share/runtime/fieldType.hpp - src/java.base/share/classes/java/lang/reflect/ProxyGenerator_v49.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/external/jquery/jquery.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ToolOption.java - test/hotspot/jtreg/runtime/7162488/Test7162488.sh - test/hotspot/jtreg/runtime/StackGap/testme.sh - test/hotspot/jtreg/runtime/StackGuardPages/testme.sh - test/hotspot/jtreg/runtime/TLS/testtls.sh - test/hotspot/jtreg/vmTestbase/jit/escape/LockCoarsening/LockCoarsening001/TestDescription.java - test/hotspot/jtreg/vmTestbase/jit/escape/LockCoarsening/LockCoarsening002/TestDescription.java - test/hotspot/jtreg/vmTestbase/jit/escape/LockCoarsening/run.sh - test/hotspot/jtreg/vmTestbase/jit/tiered/TestDescription.java - test/hotspot/jtreg/vmTestbase/jit/tiered/tieredTest.sh - test/hotspot/jtreg/vmTestbase/metaspace/flags/maxMetaspaceSize/TestDescription.java - test/hotspot/jtreg/vmTestbase/metaspace/flags/maxMetaspaceSize/maxMetaspaceSize.sh - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/TestDescription.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/run.sh - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfoOnCompilation/TestDescription.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfoOnCompilation/run.sh ! test/jdk/ProblemList.txt - test/jdk/jdk/jfr/event/io/EvilInstrument.java - test/jdk/jdk/jfr/event/sampling/libTestNative.c - test/langtools/jdk/javadoc/doclet/testOptions/help.html Changeset: 915d0c063009 Author: prr Date: 2020-02-08 12:00 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/915d0c063009 8238721: Add failing client jtreg tests to the Problem List Reviewed-by: serb ! test/jdk/ProblemList.txt Changeset: 60e0f51a395b Author: serb Date: 2020-02-08 14:25 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/60e0f51a395b 8238276: ComponentPeer.xxxImage are not implemented in some peers Reviewed-by: aivanov ! src/java.desktop/macosx/classes/sun/lwawt/LWComponentPeer.java ! src/java.desktop/macosx/classes/sun/lwawt/macosx/CFileDialog.java ! src/java.desktop/share/classes/java/awt/Component.java ! src/java.desktop/share/classes/java/awt/peer/ComponentPeer.java ! src/java.desktop/share/classes/sun/awt/NullComponentPeer.java ! src/java.desktop/unix/classes/sun/awt/X11/XComponentPeer.java ! src/java.desktop/unix/classes/sun/awt/X11/XEmbedChildProxyPeer.java ! src/java.desktop/windows/classes/sun/awt/windows/WComponentPeer.java + test/jdk/java/awt/FileDialog/ImageOperations.java Changeset: 0596ee6950a6 Author: serb Date: 2020-02-08 18:48 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0596ee6950a6 8237222: [macos] java/awt/Focus/UnaccessibleChoice/AccessibleChoiceTest.java fails Reviewed-by: trebari, prr, psadhukhan + test/jdk/java/awt/Focus/UnaccessibleChoice/AccessibleChoiceTest.java Changeset: 5b540d7a1420 Author: psadhukhan Date: 2020-02-11 13:41 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/5b540d7a1420 Merge ! test/jdk/ProblemList.txt - test/jdk/java/net/httpclient/ssltest/bad.keystore - test/jdk/java/net/httpclient/ssltest/good.keystore - test/jdk/java/net/httpclient/ssltest/loopback.keystore Changeset: eaefceb7f52e Author: psadhukhan Date: 2020-02-11 14:24 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/eaefceb7f52e Merge Changeset: 8e6fa89397ca Author: qpzhang Date: 2020-02-05 17:14 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8e6fa89397ca 8238386: (sctp) jdk.sctp/unix/native/libsctp/SctpNet.c "multiple definition" link errors with GCC10 Summary: Fixed libsctp link errors caused by GCC10 default -fno-common Reviewed-by: chegar ! src/jdk.sctp/unix/native/libsctp/Sctp.h ! src/jdk.sctp/unix/native/libsctp/SctpNet.c Changeset: c8a3d5ca8312 Author: tschatzl Date: 2020-02-11 12:48 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c8a3d5ca8312 8238160: Uniformize Parallel GC task queue variable names Reviewed-by: kbarrett, sangheki ! src/hotspot/share/gc/parallel/psCompactionManager.cpp ! src/hotspot/share/gc/parallel/psCompactionManager.hpp ! src/hotspot/share/gc/parallel/psCompactionManager.inline.hpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psPromotionManager.cpp ! src/hotspot/share/gc/parallel/psPromotionManager.hpp ! src/hotspot/share/gc/shared/taskqueue.hpp Changeset: 698732b81e94 Author: vlivanov Date: 2020-02-11 14:55 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/698732b81e94 8136414: Large performance penalty declaring a method strictfp on strict-only platforms Reviewed-by: thartmann ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/c1_globals_aarch64.hpp ! src/hotspot/cpu/arm/arm.ad ! src/hotspot/cpu/arm/c1_globals_arm.hpp ! src/hotspot/cpu/ppc/c1_globals_ppc.hpp ! src/hotspot/cpu/ppc/ppc.ad ! src/hotspot/cpu/s390/c1_globals_s390.hpp ! src/hotspot/cpu/s390/s390.ad ! src/hotspot/cpu/sparc/c1_globals_sparc.hpp ! src/hotspot/cpu/sparc/sparc.ad ! src/hotspot/cpu/x86/c1_Defs_x86.hpp ! src/hotspot/cpu/x86/c1_globals_x86.hpp ! src/hotspot/cpu/x86/x86_32.ad ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/c1/c1_LIRAssembler.cpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/c1/c1_globals.hpp ! src/hotspot/share/opto/doCall.cpp ! src/hotspot/share/opto/graphKit.cpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/matcher.hpp ! src/hotspot/share/runtime/globals.hpp Changeset: 0364d904a7a5 Author: vlivanov Date: 2020-02-11 14:55 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0364d904a7a5 8238680: C2: Remove redundant AD instructions for Replicate nodes Reviewed-by: thartmann, sviswanathan ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/x86.ad Changeset: 25d59b852741 Author: vlivanov Date: 2020-02-11 14:55 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/25d59b852741 8238690: C2: Handle vector shifts by constant and non-constant scalar uniformly Reviewed-by: thartmann, sviswanathan ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/arm/arm.ad ! src/hotspot/cpu/x86/x86.ad ! src/hotspot/share/opto/matcher.cpp ! src/hotspot/share/opto/matcher.hpp ! src/hotspot/share/opto/superword.cpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/opto/vectornode.hpp Changeset: 653c743d5f75 Author: vlivanov Date: 2020-02-11 14:55 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/653c743d5f75 8238683: C2: Remove Use24BitFP and Use24BitFPMode flags Reviewed-by: thartmann, neliasso ! src/hotspot/share/adlc/dfa.cpp ! src/hotspot/share/opto/c2_globals.hpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/compile.hpp Changeset: aef4920d5b30 Author: vlivanov Date: 2020-02-11 14:55 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/aef4920d5b30 8238762: Optimized build is broken Reviewed-by: coleenp ! src/hotspot/share/runtime/mutex.hpp Changeset: cc5c578e1af6 Author: prappo Date: 2020-02-11 13:19 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/cc5c578e1af6 8238291: Fix inconsistencies in the format of the index files Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SearchIndexItem.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/search.js ! test/langtools/jdk/javadoc/doclet/testModules/TestModules.java ! test/langtools/jdk/javadoc/doclet/testPackagePage/TestPackagePage.java ! test/langtools/jdk/javadoc/doclet/testSearch/TestSearch.java ! test/langtools/jdk/javadoc/doclet/testUnnamedPackage/TestUnnamedPackage.java Changeset: 396a47e0860f Author: prappo Date: 2020-02-11 15:23 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/396a47e0860f 8237909: Remove zipped index files feature Reviewed-by: hannesw, jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.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/resources/script-dir/jszip-utils/dist/jszip-utils-ie.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils-ie.min.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils.min.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip/dist/jszip.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip/dist/jszip.min.js ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/script.js ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/DocPaths.java - src/jdk.javadoc/share/legal/jszip.md ! test/langtools/jdk/javadoc/doclet/testSearch/TestSearch.java ! test/langtools/jdk/javadoc/tool/api/basic/APITest.java Changeset: 73bcb3e4e596 Author: minqi Date: 2020-02-11 12:16 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/73bcb3e4e596 8232069: Enable CDS even when UseCompressedClassPointers and/or UseCompressedOops are false Summary: Fix to save UseCompressedOops and UseCompressedClassPointers in shared archive and at runtime run with CDS only if they are matched the stored versions. Reviewed-by: iklam, ccheung ! src/hotspot/share/include/cds.h ! src/hotspot/share/memory/filemap.cpp ! src/hotspot/share/memory/filemap.hpp ! src/hotspot/share/memory/metaspaceShared.cpp ! src/hotspot/share/runtime/arguments.cpp ! test/hotspot/jtreg/TEST.groups - test/hotspot/jtreg/runtime/CDSCompressedKPtrs/CDSCompressedKPtrsError.java ! test/hotspot/jtreg/runtime/cds/appcds/CommandLineFlagComboNegative.java ! test/hotspot/jtreg/runtime/cds/appcds/JarBuilder.java + test/hotspot/jtreg/runtime/cds/appcds/TestCombinedCompressedFlags.java + test/hotspot/jtreg/runtime/cds/appcds/TestZGCWithCDS.java ! test/hotspot/jtreg/runtime/cds/appcds/cacheObject/DifferentHeapSizes.java ! test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/IncompatibleOptions.java ! test/lib/jdk/test/lib/cds/CDSTestUtils.java Changeset: 146be5202102 Author: valeriep Date: 2020-02-12 00:56 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/146be5202102 8236512: PKCS11 Connection closed after Cipher.doFinal and NoPadding Summary: Removed killSession() calls in certain impl classes when cancelling operations Reviewed-by: xuelei ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11AEADCipher.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11Cipher.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11Mac.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11PSSSignature.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11RSACipher.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11Signature.java Changeset: e643f30bd197 Author: valeriep Date: 2020-02-12 01:11 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e643f30bd197 8238898: Missing hash characters for header on license file Summary: Fixed the typos and corrected the formatting Reviewed-by: weijun ! src/jdk.crypto.cryptoki/share/legal/pkcs11cryptotoken.md Changeset: f3a42b81d3d1 Author: valeriep Date: 2020-02-12 01:13 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f3a42b81d3d1 Merge Changeset: 0469ead7113c Author: valeriep Date: 2020-02-12 02:44 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0469ead7113c 8238448: RSASSA-PSS signature verification fail when using certain odd key sizes Summary: Calculate and set offset for correct verification for such key sizes Reviewed-by: xuelei ! src/java.base/share/classes/sun/security/rsa/RSAPSSSignature.java ! test/jdk/sun/security/rsa/pss/SignatureTest2.java ! test/jdk/sun/security/rsa/pss/SignatureTestPSS.java Changeset: cdc7477bb1ce Author: mbaesken Date: 2020-02-06 16:53 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/cdc7477bb1ce 8238602: remove obsolete functions from libinstrument/FileSystemSupport_md.c Reviewed-by: clanger, sspitsyn ! src/java.instrument/share/native/libinstrument/FileSystemSupport.h ! src/java.instrument/unix/native/libinstrument/FileSystemSupport_md.c ! src/java.instrument/windows/native/libinstrument/FileSystemSupport_md.c Changeset: 732ab9ad5958 Author: rkennke Date: 2020-02-11 16:01 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/732ab9ad5958 8238851: Shenandoah: C1: Resolve into registers of correct type Reviewed-by: shade ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp ! src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.cpp ! src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.hpp Changeset: 370f25f90d1f Author: rriggs Date: 2020-02-12 09:38 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/370f25f90d1f 8238918: idea.sh should work with both mercurial and git repos Reviewed-by: erikj, mcimadamore, ehelin, lancea ! bin/idea.sh ! make/idea/template/vcs.xml Changeset: c5bf18d5f5e1 Author: mullan Date: 2020-02-12 10:28 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c5bf18d5f5e1 8191395: policy.allowSystemProperty and policy.expandProperties also apply to JAAS configurations Reviewed-by: weijun ! src/java.base/share/conf/security/java.security ! src/jdk.security.auth/share/classes/com/sun/security/auth/login/ConfigFile.java Changeset: 10e939d362fc Author: naoto Date: 2020-02-12 08:25 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/10e939d362fc 8234347: "Turkey" meta time zone does not generate composed localized names 8236548: Localized time zone name inconsistency between English and other locales Reviewed-by: joehw, rriggs ! make/CompileToolsJdk.gmk - make/CopyInterimCLDRConverter.gmk ! make/Main.gmk ! make/jdk/src/classes/build/tools/cldrconverter/Bundle.java ! make/jdk/src/classes/build/tools/cldrconverter/CLDRConverter.java ! src/java.base/share/classes/java/time/format/DateTimeFormatterBuilder.java ! src/java.base/share/classes/sun/util/cldr/CLDRTimeZoneNameProviderImpl.java ! test/jdk/java/util/TimeZone/CLDRDisplayNamesTest.java ! test/jdk/sun/util/resources/cldr/Bug8134384.java ! test/jdk/sun/util/resources/cldr/TimeZoneNamesTest.java Changeset: 1bee69801aee Author: mikael Date: 2020-02-12 09:44 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1bee69801aee 8238912: Update devkit for linux-aarch64 Reviewed-by: erikj ! make/conf/jib-profiles.js ! make/devkit/Tools.gmk Changeset: 7ef41e83066b Author: iignatyev Date: 2020-02-12 11:31 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/7ef41e83066b 8238930: problem list compiler/c2/Test8004741.java Reviewed-by: kvn ! test/hotspot/jtreg/ProblemList.txt Changeset: 45a67ba5f277 Author: rriggs Date: 2020-02-12 15:06 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/45a67ba5f277 8238919: (doc) Broken code snippet in the java.util.stream package documentation Reviewed-by: mchung, naoto ! src/java.base/share/classes/java/util/stream/package-info.java Changeset: 8fb865d293a9 Author: kbarrett Date: 2020-02-12 15:38 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8fb865d293a9 8238272: Eliminate cast_from_oop to narrowOop* Summary: Improved low address computation in ObjArrayKlass::oop_oop_iterate_range. Reviewed-by: tschatzl, sjohanss ! src/hotspot/share/oops/objArrayKlass.inline.hpp Changeset: e795d446f21a Author: dholmes Date: 2020-02-12 20:19 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e795d446f21a 8234372: Investigate use of Thread::stack_base() and queries for "in stack" Reviewed-by: dcubed, stuefe ! src/hotspot/cpu/aarch64/frame_aarch64.cpp ! src/hotspot/cpu/arm/frame_arm.cpp ! src/hotspot/cpu/ppc/frame_ppc.cpp ! src/hotspot/cpu/s390/frame_s390.cpp ! src/hotspot/cpu/sparc/frame_sparc.cpp ! src/hotspot/cpu/x86/frame_x86.cpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/os_cpu/linux_arm/os_linux_arm.cpp ! src/hotspot/os_cpu/linux_s390/thread_linux_s390.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp Changeset: 252e23ae3d20 Author: jwilhelm Date: 2020-02-13 03:02 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/252e23ae3d20 Added tag jdk-15+10 for changeset 1bee69801aee ! .hgtags Changeset: 422ab35d6a82 Author: tschatzl Date: 2020-02-13 11:00 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/422ab35d6a82 8238854: Remove superfluous C heap allocation failure checks Reviewed-by: kbarrett, sjohanss ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1ConcurrentRefine.cpp ! src/hotspot/share/gc/g1/heapRegionRemSet.cpp ! src/hotspot/share/gc/parallel/asPSYoungGen.cpp ! src/hotspot/share/gc/parallel/psCompactionManager.cpp ! src/hotspot/share/gc/parallel/psOldGen.cpp ! src/hotspot/share/gc/parallel/psPromotionManager.cpp ! src/hotspot/share/gc/parallel/psYoungGen.cpp ! src/hotspot/share/gc/serial/defNewGeneration.cpp ! src/hotspot/share/gc/shared/cardGeneration.cpp ! src/hotspot/share/gc/shared/cardTable.cpp ! src/hotspot/share/gc/shared/cardTableRS.cpp ! src/hotspot/share/gc/shared/generation.cpp ! src/hotspot/share/gc/shared/referenceProcessor.cpp Changeset: a9ca8e1a83c2 Author: mbaesken Date: 2020-02-13 09:18 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a9ca8e1a83c2 8237830: support O_CLOEXEC in os::open on other OS than Linux Reviewed-by: dholmes, lucy ! src/hotspot/os/aix/os_aix.cpp Changeset: 3b92bea0a565 Author: jjiang Date: 2020-02-13 21:42 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3b92bea0a565 8234718: java/net/httpclient tests should cover TLSv1.3 Reviewed-by: dfuchs ! test/jdk/java/net/httpclient/HandshakeFailureTest.java ! test/jdk/java/net/httpclient/ShortResponseBody.java Changeset: ed9198eb7d4d Author: rrich Date: 2020-02-12 09:18 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ed9198eb7d4d 8238782: Cleanup Deoptimization::deoptimize(): remove unused RegisterMap argument and don't update RegisterMap in callers if UseBiasedLocking is enabled Reviewed-by: dholmes, kvn ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/deoptimization.hpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/vmOperations.cpp Changeset: 9611fbb00efd Author: chagedorn Date: 2020-02-13 15:06 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9611fbb00efd 8238178: CTW: C1 compilation fails with assert(sux->loop_depth() != block->loop_depth() || sux->loop_index() == block->loop_index() || loop_through_xhandler) failed: Loop index has to be same Summary: Fix verification of C1 IR involving xhandlers in one-time executed loops on the non-exceptional path. Reviewed-by: thartmann, neliasso ! src/hotspot/share/c1/c1_RangeCheckElimination.cpp ! src/hotspot/share/c1/c1_RangeCheckElimination.hpp + test/hotspot/jtreg/compiler/c1/RangeCheckVerificationOfIR.java Changeset: fb5425bcf04d Author: chagedorn Date: 2020-02-13 15:07 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/fb5425bcf04d 8237945: CTW: C2 compilation fails with assert(just_allocated_object(alloc_ctl) == ptr) failed: most recent allo Summary: Removing too strong assertion about array allocation in LibraryCallKit::tightly_coupled_allocation(). Reviewed-by: thartmann, neliasso ! src/hotspot/share/opto/library_call.cpp + test/hotspot/jtreg/compiler/arraycopy/TestTightlyCoupledAllocationAssert.java Changeset: cd78b249e6a4 Author: chagedorn Date: 2020-02-13 15:07 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/cd78b249e6a4 8238756: C2: assert(((n) == __null || !VerifyIterativeGVN || !((n)->is_dead()))) failed: can not use dead node Summary: Fix -XX:+VerifyIterativeGVN due to a dead node and add some basic flag testing. Reviewed-by: roland, neliasso ! src/hotspot/share/opto/loopopts.cpp + test/hotspot/jtreg/compiler/c2/TestVerifyIterativeGVN.java + test/hotspot/jtreg/compiler/loopopts/TestMoveStoreAfterLoopVerifyIterativeGVN.java Changeset: cf6409153216 Author: chagedorn Date: 2020-02-13 15:08 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/cf6409153216 8238811: C2: assert(i >= req() || i == 0 || is_Region() || is_Phi()) with -XX:+VerifyGraphEdges Summary: Fix -XX:+VerifyGraphEdges by additionally handling ArrayCopyNodes and UnlockNodes and add some basic flag testing. Reviewed-by: roland, neliasso ! src/hotspot/share/opto/node.cpp + test/hotspot/jtreg/compiler/c2/TestVerifyGraphEdges.java Changeset: b7f4baa47fe2 Author: hseigel Date: 2020-02-13 15:43 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b7f4baa47fe2 8238175: CTW: Class.getDeclaredMethods fails with assert(k->is_subclass_of(SystemDictionary::Throwable_klass())) failed: invalid exception class Summary: Replace the assert with a logging message saying that the class is not a subclass of java.lang.Throwable Reviewed-by: dholmes, coleenp ! src/hotspot/share/oops/method.cpp + test/hotspot/jtreg/runtime/ClassFile/CheckedExceptions.jcod + test/hotspot/jtreg/runtime/ClassFile/TestCheckedExceptions.java Changeset: bc5af528b6ec Author: shade Date: 2020-02-13 17:05 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/bc5af528b6ec 8238909: x86_32 fails gtest:power_of_2 Reviewed-by: stefank, redestad ! src/hotspot/share/utilities/powerOfTwo.hpp Changeset: c22087442921 Author: shade Date: 2020-02-13 17:05 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c22087442921 8238896: Massive x86_32 crashes after JDK-7175279 (Don't use x87 FPU on x86-64) Reviewed-by: thartmann, stuefe, vlivanov ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp Changeset: c27f595b4dd0 Author: fparain Date: 2020-02-13 11:23 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c27f595b4dd0 8238961: Assertion failure in new field layout code when ContendedPaddingWidth == 0. Reviewed-by: hseigel, coleenp ! src/hotspot/share/classfile/fieldLayoutBuilder.cpp Changeset: 56749aa55eec Author: smarks Date: 2020-02-13 10:00 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/56749aa55eec 8046362: IdentityHashMap.hash comments should be clarified Reviewed-by: aph, martin, rriggs ! src/java.base/share/classes/java/util/IdentityHashMap.java Changeset: 42ba182f6795 Author: shade Date: 2020-02-13 19:22 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/42ba182f6795 8239007: java/math/BigInteger/largeMemory/ tests should be disabled on 32-bit platforms Reviewed-by: bpb ! test/jdk/java/math/BigInteger/largeMemory/DivisionOverflow.java ! test/jdk/java/math/BigInteger/largeMemory/StringConstructorOverflow.java ! test/jdk/java/math/BigInteger/largeMemory/SymmetricRangeTests.java Changeset: ddea93a54158 Author: darcy Date: 2020-02-13 10:37 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ddea93a54158 8237805: Use inline @jls @jvms in core libs where appropriate Reviewed-by: xiaofeya, dfuchs, prappo ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/Enum.java ! src/java.base/share/classes/java/lang/invoke/MethodHandle.java ! src/java.base/share/classes/java/lang/invoke/MethodHandleInfo.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/lang/invoke/MethodType.java ! src/java.base/share/classes/java/lang/reflect/Method.java ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java Changeset: 7ec9c6a6df4f Author: manc Date: 2020-02-13 10:54 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/7ec9c6a6df4f 8234608: [TESTBUG] Fix G1 redefineClasses tests and a memory leak Reviewed-by: tschatzl, sjohanss Contributed-by: irogers at google.com, manc at google.com, thomas.schatzl at oracle.com ! test/hotspot/jtreg/vmTestbase/gc/g1/unloading/README ! test/hotspot/jtreg/vmTestbase/gc/g1/unloading/libdefine.cpp ! test/hotspot/jtreg/vmTestbase/gc/g1/unloading/tests/unloading_redefinition_inMemoryCompilation_keep_cl/TestDescription.java ! test/hotspot/jtreg/vmTestbase/gc/g1/unloading/tests/unloading_redefinition_inMemoryCompilation_keep_class/TestDescription.java ! test/hotspot/jtreg/vmTestbase/gc/g1/unloading/tests/unloading_redefinition_inMemoryCompilation_keep_obj/TestDescription.java ! test/hotspot/jtreg/vmTestbase/gc/g1/unloading/tests/unloading_redefinition_keep_cl/TestDescription.java ! test/hotspot/jtreg/vmTestbase/gc/g1/unloading/tests/unloading_redefinition_keep_class/TestDescription.java ! test/hotspot/jtreg/vmTestbase/gc/g1/unloading/tests/unloading_redefinition_keep_obj/TestDescription.java Changeset: 39b90cc7f331 Author: vromero Date: 2020-02-13 14:13 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/39b90cc7f331 8238838: spurious error message for compact constructors with throws clause Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! test/langtools/tools/javac/records/RecordCompilationTests.java Changeset: b9ff1541faf9 Author: mikael Date: 2020-02-13 12:08 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b9ff1541faf9 8238932: Invalid tier1_gc_1 test group definition Reviewed-by: kbarrett ! test/hotspot/jtreg/TEST.groups Changeset: 02b2e4f3391f Author: kbarrett Date: 2020-02-13 15:16 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/02b2e4f3391f 8238867: Improve G1DirtyCardQueueSet::Queue::pop Summary: Allow one of competing pops for last element to succeed. Reviewed-by: iwalulya, sjohanss ! src/hotspot/share/gc/g1/g1DirtyCardQueue.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.hpp Changeset: 6bcfcb7fe83b Author: gromero Date: 2020-02-13 16:01 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6bcfcb7fe83b 8235791: [TESTBUG] Fix comment in TestElfDirectRead.java Reviewed-by: dholmes, iklam Contributed-by: Jose Ziviani ! test/hotspot/jtreg/runtime/ElfDecoder/TestElfDirectRead.java Changeset: 87651cb03ebc Author: amenkov Date: 2020-02-13 13:43 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/87651cb03ebc 8238710: LingeredApp doesn't log stdout/stderr if exits with non-zero code Reviewed-by: cjplummer, sspitsyn ! test/lib/jdk/test/lib/apps/LingeredApp.java Changeset: 7e6165c9c606 Author: naoto Date: 2020-02-13 17:14 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/7e6165c9c606 8239017: cmp-baseline fails because of differences in TimeZoneNames_kea Reviewed-by: erikj ! make/jdk/src/classes/build/tools/cldrconverter/CLDRConverter.java Changeset: f425abab6723 Author: bulasevich Date: 2020-02-14 10:03 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f425abab6723 8238643: ARM32 build fails after JDK-8230199 Reviewed-by: shade, lfoltan ! src/hotspot/cpu/arm/interpreterRT_arm.cpp Changeset: f82f59ef79f0 Author: bulasevich Date: 2020-02-14 10:05 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f82f59ef79f0 8231118: ARM32: Math tests failures Reviewed-by: roland ! src/hotspot/cpu/arm/assembler_arm_32.hpp ! src/hotspot/cpu/arm/c1_Runtime1_arm.cpp ! src/hotspot/cpu/arm/macroAssembler_arm.hpp ! src/hotspot/cpu/arm/sharedRuntime_arm.cpp ! src/hotspot/cpu/arm/stubGenerator_arm.cpp ! src/hotspot/cpu/arm/stubRoutinesCrypto_arm.cpp Changeset: ddae16cc505c Author: jjiang Date: 2020-02-14 16:53 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ddae16cc505c 8239025: ProblemList java/net/httpclient/HandshakeFailureTest.java due to JDK-8238990 Reviewed-by: chegar ! test/jdk/ProblemList.txt Changeset: 2852b64d04ae Author: redestad Date: 2020-02-14 10:16 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2852b64d04ae 8238863: Refactor out static initialization from Dict constructors Reviewed-by: neliasso, dlong ! src/hotspot/share/libadt/dict.cpp Changeset: 78e17b715fae Author: neliasso Date: 2020-02-12 20:53 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/78e17b715fae 8203883: Remove State from InvocationCounters Reviewed-by: redestad, thartmann ! src/hotspot/share/compiler/compilationPolicy.cpp ! src/hotspot/share/compiler/compilationPolicy.hpp ! src/hotspot/share/compiler/tieredThresholdPolicy.cpp ! src/hotspot/share/interpreter/abstractInterpreter.cpp ! src/hotspot/share/interpreter/invocationCounter.cpp ! src/hotspot/share/interpreter/invocationCounter.hpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/prims/whitebox.cpp Changeset: 8d03748fae04 Author: roland Date: 2020-01-13 10:00 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8d03748fae04 8236759: ShouldNotReachHere in PhaseIdealLoop::verify_strip_mined_scheduling Reviewed-by: thartmann, neliasso ! src/hotspot/share/opto/memnode.cpp + test/hotspot/jtreg/compiler/loopstripmining/LoadSplitThruPhi.java Changeset: 374452022582 Author: dnsimon Date: 2020-02-14 09:25 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/374452022582 8238758: [JVMCI] fix JVMCI jtreg events tests to work with GraalVM Reviewed-by: kvn, dlong, never ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotJVMCICompilerConfig.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyBootstrapFinishedEventTest.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyInstallEventTest.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciShutdownEventTest.java Changeset: 9b4d873446c9 Author: cjplummer Date: 2020-02-14 10:28 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9b4d873446c9 8238196: tests that use SA Attach should not be allowed to run against signed binaries on Mac OS X 10.14.5 and later Reviewed-by: sspitsyn, iignatyev ! test/hotspot/jtreg/serviceability/sa/ClhsdbLauncher.java ! test/hotspot/jtreg/testlibrary_tests/TestMutuallyExclusivePlatformPredicates.java ! test/lib/jdk/test/lib/Platform.java From david.simms at oracle.com Wed Feb 19 16:33:14 2020 From: david.simms at oracle.com (david.simms at oracle.com) Date: Wed, 19 Feb 2020 16:33:14 +0000 Subject: hg: valhalla/valhalla: 8 new changesets Message-ID: <202002191633.01JGXGm7028347@aojmv0008.oracle.com> Changeset: af8e77a59bd8 Author: darcy Date: 2020-02-14 12:47 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/af8e77a59bd8 8239092: Provide explicit specification for getKind methods of javax.lang.model Reviewed-by: jjg, prappo ! src/java.compiler/share/classes/javax/lang/model/element/Element.java ! src/java.compiler/share/classes/javax/lang/model/element/ModuleElement.java ! src/java.compiler/share/classes/javax/lang/model/type/TypeMirror.java Changeset: 1c6c48d3136b Author: egahlin Date: 2020-02-14 23:33 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1c6c48d3136b 8238959: Add missing classpath exception to FileAcess and ConstantLookup Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/ConstantLookup.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/FileAccess.java Changeset: 81ef9be35699 Author: weijun Date: 2020-02-15 09:26 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/81ef9be35699 8160818: GssKrb5Client violates RFC 4752 Reviewed-by: xuelei ! src/jdk.security.jgss/share/classes/com/sun/security/sasl/gsskerb/GssKrb5Client.java + test/jdk/sun/security/krb5/auto/SaslMutual.java Changeset: 274a0bcce99d Author: jiefu Date: 2020-02-15 17:35 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/274a0bcce99d 8239110: Zero VM build fails after JDK-8203883 Reviewed-by: aph ! src/hotspot/share/interpreter/invocationCounter.cpp Changeset: 6f40f03179f9 Author: rschuenemann Date: 2020-02-13 10:07 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6f40f03179f9 8238534: Deep sign macOS bundles before bundle archive is being created Reviewed-by: erikj, clanger ! make/Bundles.gmk ! make/autoconf/spec.gmk.in Changeset: f3f66f9e98ee Author: ysuenaga Date: 2020-02-17 11:12 +0900 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f3f66f9e98ee 8237818: Typo in Unsafe: resposibility Reviewed-by: ysuenaga Contributed-by: Aya Ebata ! src/java.base/share/classes/jdk/internal/misc/Unsafe.java ! src/jdk.unsupported/share/classes/sun/misc/Unsafe.java Changeset: 690fc7e5a90f Author: ihse Date: 2020-02-17 08:59 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/690fc7e5a90f 8213185: Properly handle run-test-prebuilt -> test-prebuilt migration Reviewed-by: erikj + make/Global.gmk - make/Help.gmk ! make/Init.gmk ! make/RunTestsPrebuilt.gmk ! make/conf/jib-profiles.js Changeset: 7ecc1d4a0670 Author: dsimms Date: 2020-02-19 16:57 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/7ecc1d4a0670 Merge ! .hgtags ! make/CompileJavaModules.gmk - make/CopyInterimCLDRConverter.gmk ! make/autoconf/hotspot.m4 ! make/common/Modules.gmk ! make/conf/jib-profiles.js ! make/data/jdwp/jdwp.spec ! make/gensrc/GensrcVarHandles.gmk ! make/hotspot/symbols/symbols-unix - make/launcher/Launcher-jdk.pack.gmk - make/lib/Lib-jdk.pack.gmk ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/c1_FrameMap_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/z/zBarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/globals_aarch64.hpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/vtableStubs_aarch64.cpp ! src/hotspot/cpu/ppc/globals_ppc.hpp ! src/hotspot/cpu/s390/interp_masm_s390.cpp ! src/hotspot/cpu/sparc/globals_sparc.hpp ! src/hotspot/cpu/x86/c1_CodeStubs_x86.cpp ! src/hotspot/cpu/x86/c1_FrameMap_x86.cpp ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.hpp ! src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp ! src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/c1_Runtime1_x86.cpp ! src/hotspot/cpu/x86/c1_globals_x86.hpp ! src/hotspot/cpu/x86/gc/shared/barrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.hpp ! src/hotspot/cpu/x86/globals_x86.hpp ! src/hotspot/cpu/x86/interpreterRT_x86.hpp ! src/hotspot/cpu/x86/interpreterRT_x86_64.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/methodHandles_x86.cpp ! src/hotspot/cpu/x86/sharedRuntime_x86_32.cpp ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/cpu/x86/vm_version_x86.cpp ! src/hotspot/cpu/x86/x86_32.ad ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/cpu/zero/globals_zero.hpp - src/hotspot/os/bsd/gc/z/zBackingFile_bsd.cpp - src/hotspot/os/bsd/gc/z/zBackingFile_bsd.hpp - src/hotspot/os/linux/gc/z/zBackingFile_linux.cpp - src/hotspot/os/linux/gc/z/zBackingFile_linux.hpp - src/hotspot/os/linux/gc/z/zBackingPath_linux.cpp - src/hotspot/os/linux/gc/z/zBackingPath_linux.hpp - src/hotspot/os/windows/gc/z/zBackingFile_windows.cpp - src/hotspot/os/windows/gc/z/zBackingFile_windows.hpp ! src/hotspot/share/c1/c1_CodeStubs.hpp ! src/hotspot/share/c1/c1_FrameMap.hpp ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/c1/c1_InstructionPrinter.cpp ! src/hotspot/share/c1/c1_LIR.cpp ! src/hotspot/share/c1/c1_LIR.hpp ! src/hotspot/share/c1/c1_LIRAssembler.cpp ! src/hotspot/share/c1/c1_LIRAssembler.hpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/c1/c1_LIRGenerator.hpp ! src/hotspot/share/c1/c1_LinearScan.cpp ! src/hotspot/share/c1/c1_Runtime1.cpp ! src/hotspot/share/c1/c1_ValueMap.cpp ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciField.cpp ! src/hotspot/share/ci/ciInstanceKlass.cpp ! src/hotspot/share/ci/ciInstanceKlass.hpp ! src/hotspot/share/ci/ciKlass.hpp ! src/hotspot/share/ci/ciMethodData.cpp ! src/hotspot/share/ci/ciMethodData.hpp ! src/hotspot/share/ci/ciObjArrayKlass.cpp ! src/hotspot/share/ci/ciObjectFactory.cpp ! src/hotspot/share/ci/ciReplay.cpp ! src/hotspot/share/ci/ciSignature.cpp ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/classfile/classFileParser.hpp ! src/hotspot/share/classfile/classListParser.cpp ! src/hotspot/share/classfile/classLoader.cpp ! src/hotspot/share/classfile/fieldLayoutBuilder.cpp ! src/hotspot/share/classfile/fieldLayoutBuilder.hpp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp ! src/hotspot/share/classfile/placeholders.cpp ! src/hotspot/share/classfile/stackMapTable.cpp ! src/hotspot/share/classfile/systemDictionary.cpp ! src/hotspot/share/classfile/systemDictionary.hpp ! src/hotspot/share/classfile/verificationType.cpp ! src/hotspot/share/classfile/vmSymbols.cpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/code/compiledMethod.cpp ! src/hotspot/share/code/compiledMethod.hpp ! src/hotspot/share/code/nmethod.cpp ! src/hotspot/share/code/nmethod.hpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/compiler/oopMap.cpp ! src/hotspot/share/gc/g1/c2/g1BarrierSetC2.cpp ! src/hotspot/share/gc/parallel/psCompactionManager.cpp - src/hotspot/share/gc/parallel/psMarkSweep.cpp - src/hotspot/share/gc/parallel/psMarkSweep.hpp - src/hotspot/share/gc/parallel/psMarkSweepDecorator.cpp - src/hotspot/share/gc/parallel/psMarkSweepDecorator.hpp - src/hotspot/share/gc/parallel/psMarkSweepProxy.hpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psPromotionManager.cpp ! src/hotspot/share/gc/shared/c2/barrierSetC2.cpp ! src/hotspot/share/gc/shared/c2/barrierSetC2.hpp ! src/hotspot/share/gc/shared/collectedHeap.hpp ! src/hotspot/share/gc/shared/memAllocator.cpp ! src/hotspot/share/gc/shared/memAllocator.hpp - src/hotspot/share/gc/shared/owstTaskTerminator.cpp - src/hotspot/share/gc/shared/owstTaskTerminator.hpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp ! src/hotspot/share/gc/z/zBarrier.hpp ! src/hotspot/share/include/jvm.h ! src/hotspot/share/interpreter/abstractInterpreter.hpp ! src/hotspot/share/interpreter/bytecodeInterpreter.cpp ! src/hotspot/share/interpreter/interpreterRuntime.cpp ! src/hotspot/share/interpreter/oopMapCache.cpp ! src/hotspot/share/interpreter/rewriter.cpp - src/hotspot/share/jfr/leakprofiler/utilities/unifiedOop.hpp ! src/hotspot/share/jvmci/compilerRuntime.cpp ! src/hotspot/share/jvmci/jvmciCompiler.cpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.hpp ! src/hotspot/share/jvmci/jvmciEnv.cpp ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp ! src/hotspot/share/logging/logTag.hpp ! src/hotspot/share/memory/allocation.hpp ! src/hotspot/share/memory/dynamicArchive.cpp ! src/hotspot/share/memory/heapInspection.cpp ! src/hotspot/share/memory/heapInspection.hpp ! src/hotspot/share/memory/heapShared.cpp ! src/hotspot/share/memory/metaspace.cpp ! src/hotspot/share/memory/metaspaceShared.cpp ! src/hotspot/share/memory/universe.cpp ! src/hotspot/share/oops/accessDecorators.hpp ! src/hotspot/share/oops/arrayKlass.cpp ! src/hotspot/share/oops/arrayKlass.hpp ! src/hotspot/share/oops/arrayStorageProperties.hpp ! src/hotspot/share/oops/constantPool.cpp ! src/hotspot/share/oops/constantPool.hpp ! src/hotspot/share/oops/fieldStreams.hpp ! src/hotspot/share/oops/generateOopMap.cpp ! src/hotspot/share/oops/generateOopMap.hpp ! src/hotspot/share/oops/instanceKlass.cpp ! src/hotspot/share/oops/instanceKlass.hpp ! src/hotspot/share/oops/instanceOop.hpp ! src/hotspot/share/oops/klass.cpp ! src/hotspot/share/oops/klass.hpp ! src/hotspot/share/oops/klassVtable.cpp ! src/hotspot/share/oops/markWord.hpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/oops/methodData.cpp ! src/hotspot/share/oops/methodData.hpp ! src/hotspot/share/oops/objArrayKlass.cpp ! src/hotspot/share/oops/oopsHierarchy.hpp ! src/hotspot/share/oops/symbol.cpp ! src/hotspot/share/oops/symbol.hpp ! src/hotspot/share/oops/typeArrayKlass.cpp ! src/hotspot/share/oops/valueArrayKlass.cpp ! src/hotspot/share/oops/valueKlass.cpp ! src/hotspot/share/opto/arraycopynode.cpp ! src/hotspot/share/opto/arraycopynode.hpp ! src/hotspot/share/opto/c2_globals.hpp ! src/hotspot/share/opto/c2compiler.cpp ! src/hotspot/share/opto/cfgnode.cpp ! src/hotspot/share/opto/cfgnode.hpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/compile.hpp ! src/hotspot/share/opto/doCall.cpp ! src/hotspot/share/opto/escape.cpp ! src/hotspot/share/opto/graphKit.cpp ! src/hotspot/share/opto/graphKit.hpp ! src/hotspot/share/opto/ifnode.cpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/loopUnswitch.cpp ! src/hotspot/share/opto/loopnode.hpp ! src/hotspot/share/opto/loopopts.cpp ! src/hotspot/share/opto/machnode.cpp ! src/hotspot/share/opto/machnode.hpp ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/macro.hpp ! src/hotspot/share/opto/matcher.cpp ! src/hotspot/share/opto/matcher.hpp ! src/hotspot/share/opto/memnode.cpp ! src/hotspot/share/opto/memnode.hpp ! src/hotspot/share/opto/node.cpp ! src/hotspot/share/opto/parse2.cpp ! src/hotspot/share/opto/phaseX.cpp ! src/hotspot/share/opto/phaseX.hpp ! src/hotspot/share/opto/runtime.cpp ! src/hotspot/share/opto/runtime.hpp ! src/hotspot/share/opto/stringopts.cpp ! src/hotspot/share/opto/type.cpp ! src/hotspot/share/opto/type.hpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/prims/jvmtiCodeBlobEvents.cpp ! src/hotspot/share/prims/jvmtiEnv.cpp ! src/hotspot/share/prims/jvmtiExport.cpp ! src/hotspot/share/prims/jvmtiImpl.cpp ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp ! src/hotspot/share/prims/jvmtiTagMap.cpp ! src/hotspot/share/prims/methodHandles.cpp ! src/hotspot/share/prims/unsafe.cpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/biasedLocking.cpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/deoptimization.hpp ! src/hotspot/share/runtime/fieldDescriptor.cpp ! src/hotspot/share/runtime/fieldDescriptor.hpp ! src/hotspot/share/runtime/fieldDescriptor.inline.hpp - src/hotspot/share/runtime/fieldType.cpp - src/hotspot/share/runtime/fieldType.hpp - src/hotspot/share/runtime/flags/jvmFlagWriteableList.cpp - src/hotspot/share/runtime/flags/jvmFlagWriteableList.hpp ! src/hotspot/share/runtime/frame.cpp ! src/hotspot/share/runtime/globals.hpp ! src/hotspot/share/runtime/javaCalls.cpp ! src/hotspot/share/runtime/mutexLocker.cpp ! src/hotspot/share/runtime/reflection.cpp ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/signature.cpp ! src/hotspot/share/runtime/signature.hpp ! src/hotspot/share/runtime/stubRoutines.cpp ! src/hotspot/share/runtime/stubRoutines.hpp ! src/hotspot/share/runtime/synchronizer.cpp ! src/hotspot/share/runtime/synchronizer.hpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/vframe_hp.cpp ! src/hotspot/share/runtime/vmOperations.cpp ! src/hotspot/share/runtime/vmOperations.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/hotspot/share/services/diagnosticCommand.cpp ! src/hotspot/share/services/diagnosticCommand.hpp ! src/hotspot/share/services/heapDumper.cpp ! src/hotspot/share/utilities/globalDefinitions.cpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! src/hotspot/share/utilities/growableArray.hpp - src/java.base/share/classes/com/sun/java/util/jar/pack/AdaptiveCoding.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Attribute.java - src/java.base/share/classes/com/sun/java/util/jar/pack/BandStructure.java - src/java.base/share/classes/com/sun/java/util/jar/pack/ClassReader.java - src/java.base/share/classes/com/sun/java/util/jar/pack/ClassWriter.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Code.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Coding.java - src/java.base/share/classes/com/sun/java/util/jar/pack/CodingChooser.java - src/java.base/share/classes/com/sun/java/util/jar/pack/CodingMethod.java - src/java.base/share/classes/com/sun/java/util/jar/pack/ConstantPool.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Constants.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Driver.java - src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource.java - src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_ja.java - src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_zh_CN.java - src/java.base/share/classes/com/sun/java/util/jar/pack/FixedList.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Fixups.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Histogram.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Instruction.java - src/java.base/share/classes/com/sun/java/util/jar/pack/NativeUnpack.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Package.java - src/java.base/share/classes/com/sun/java/util/jar/pack/PackageReader.java - src/java.base/share/classes/com/sun/java/util/jar/pack/PackageWriter.java - src/java.base/share/classes/com/sun/java/util/jar/pack/PackerImpl.java - src/java.base/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java - src/java.base/share/classes/com/sun/java/util/jar/pack/PropMap.java - src/java.base/share/classes/com/sun/java/util/jar/pack/TLGlobals.java - src/java.base/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java - src/java.base/share/classes/com/sun/java/util/jar/pack/Utils.java - src/java.base/share/classes/com/sun/java/util/jar/pack/intrinsic.properties - src/java.base/share/classes/com/sun/java/util/jar/pack/package-info.java ! src/java.base/share/classes/java/io/ObjectOutputStream.java ! src/java.base/share/classes/java/io/ObjectStreamClass.java ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/System.java ! src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/lang/invoke/VarHandles.java ! src/java.base/share/classes/java/lang/reflect/Modifier.java ! src/java.base/share/classes/java/lang/reflect/Proxy.java - src/java.base/share/classes/java/lang/reflect/ProxyGenerator_v49.java - src/java.base/share/classes/java/time/chrono/hijrah-config-islamic-umalqura.properties - src/java.base/share/classes/java/util/jar/Pack200.java ! src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java ! src/java.base/share/classes/jdk/internal/access/JavaLangAccess.java ! src/java.base/share/classes/jdk/internal/misc/Unsafe.java ! src/java.base/share/classes/jdk/internal/org/objectweb/asm/ClassReader.java ! src/java.base/share/classes/jdk/internal/org/objectweb/asm/Opcodes.java ! src/java.base/share/classes/module-info.java - src/java.base/share/classes/sun/net/idn/Punycode.java - src/java.base/share/classes/sun/net/idn/StringPrep.java - src/java.base/share/classes/sun/net/idn/StringPrepDataReader.java - src/java.base/share/classes/sun/net/idn/UCharacterDirection.java - src/java.base/share/classes/sun/net/idn/UCharacterEnums.java - src/java.base/share/classes/sun/security/util/math/intpoly/FieldGen.jsh - src/java.base/share/classes/sun/security/util/math/intpoly/IntegerPolynomialP256.java - src/java.base/share/classes/sun/security/util/math/intpoly/IntegerPolynomialP384.java - src/java.base/share/classes/sun/security/util/math/intpoly/IntegerPolynomialP521.java - src/java.base/share/classes/sun/security/util/math/intpoly/P256OrderField.java - src/java.base/share/classes/sun/security/util/math/intpoly/P384OrderField.java - src/java.base/share/classes/sun/security/util/math/intpoly/P521OrderField.java - src/java.base/share/classes/sun/security/util/math/intpoly/header.txt - src/java.base/share/classes/sun/text/bidi/BidiBase.java - src/java.base/share/classes/sun/text/bidi/BidiLine.java - src/java.base/share/classes/sun/text/bidi/BidiRun.java - src/java.base/share/classes/sun/text/bidi/BidiWriter.java - src/java.base/share/classes/sun/text/normalizer/BMPSet.java - src/java.base/share/classes/sun/text/normalizer/CharTrie.java - src/java.base/share/classes/sun/text/normalizer/CharacterIteratorWrapper.java - src/java.base/share/classes/sun/text/normalizer/CodePointMap.java - src/java.base/share/classes/sun/text/normalizer/CodePointTrie.java - src/java.base/share/classes/sun/text/normalizer/FilteredNormalizer2.java - src/java.base/share/classes/sun/text/normalizer/ICUBinary.java - src/java.base/share/classes/sun/text/normalizer/Norm2AllModes.java - src/java.base/share/classes/sun/text/normalizer/Normalizer2.java - src/java.base/share/classes/sun/text/normalizer/NormalizerBase.java - src/java.base/share/classes/sun/text/normalizer/NormalizerImpl.java - src/java.base/share/classes/sun/text/normalizer/OutputInt.java - src/java.base/share/classes/sun/text/normalizer/Replaceable.java - src/java.base/share/classes/sun/text/normalizer/ReplaceableString.java - src/java.base/share/classes/sun/text/normalizer/ReplaceableUCharacterIterator.java - src/java.base/share/classes/sun/text/normalizer/Trie.java - src/java.base/share/classes/sun/text/normalizer/Trie2.java - src/java.base/share/classes/sun/text/normalizer/Trie2_16.java - src/java.base/share/classes/sun/text/normalizer/UBiDiProps.java - src/java.base/share/classes/sun/text/normalizer/UCharacter.java - src/java.base/share/classes/sun/text/normalizer/UCharacterIterator.java - src/java.base/share/classes/sun/text/normalizer/UCharacterProperty.java - src/java.base/share/classes/sun/text/normalizer/UTF16.java - src/java.base/share/classes/sun/text/normalizer/UnicodeSet.java - src/java.base/share/classes/sun/text/normalizer/UnicodeSetStringSpan.java - src/java.base/share/classes/sun/text/normalizer/Utility.java - src/java.base/share/classes/sun/text/normalizer/VersionInfo.java - src/java.base/share/classes/sun/text/resources/nfc.nrm - src/java.base/share/classes/sun/text/resources/nfkc.nrm - src/java.base/share/classes/sun/text/resources/ubidi.icu - src/java.base/share/classes/sun/text/resources/uprops.icu ! src/java.base/share/native/libjava/Class.c - src/java.base/share/native/libjava/jdk_util.c ! src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java ! src/jdk.compiler/share/classes/com/sun/tools/doclint/Checker.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Flags.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Printer.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symbol.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symtab.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Type.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/AttrContext.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Flow.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Lower.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TypeEnter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassFile.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassWriter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Items.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/PoolWriter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Target.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/Tokens.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/JCTree.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeInfo.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotVMConfig.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/ObjectSubstitutions.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/external/jquery/jquery.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils-ie.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils-ie.min.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils.min.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip/dist/jszip.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip/dist/jszip.min.js ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ToolOption.java - src/jdk.javadoc/share/legal/jszip.md ! src/jdk.jdeps/share/classes/com/sun/tools/classfile/Attribute.java ! src/jdk.jdeps/share/classes/com/sun/tools/classfile/ClassWriter.java ! src/jdk.jdeps/share/classes/com/sun/tools/javap/AttributeWriter.java ! src/jdk.jdwp.agent/share/native/libjdwp/ArrayReferenceImpl.c ! src/jdk.jdwp.agent/share/native/libjdwp/ArrayTypeImpl.c ! src/jdk.jdwp.agent/share/native/libjdwp/ClassTypeImpl.c ! src/jdk.jdwp.agent/share/native/libjdwp/ObjectReferenceImpl.c - src/jdk.jlink/share/classes/jdk/tools/jlink/internal/packager/AppRuntimeImageBuilder.java ! src/jdk.jshell/share/classes/jdk/jshell/CompletenessAnalyzer.java - src/jdk.pack/share/classes/module-info.java - src/jdk.pack/share/man/pack200.1 - src/jdk.pack/share/man/unpack200.1 - src/jdk.pack/share/native/common-unpack/bands.cpp - src/jdk.pack/share/native/common-unpack/bands.h - src/jdk.pack/share/native/common-unpack/bytes.cpp - src/jdk.pack/share/native/common-unpack/bytes.h - src/jdk.pack/share/native/common-unpack/coding.cpp - src/jdk.pack/share/native/common-unpack/coding.h - src/jdk.pack/share/native/common-unpack/constants.h - src/jdk.pack/share/native/common-unpack/defines.h - src/jdk.pack/share/native/common-unpack/unpack.cpp - src/jdk.pack/share/native/common-unpack/unpack.h - src/jdk.pack/share/native/common-unpack/utils.cpp - src/jdk.pack/share/native/common-unpack/utils.h - src/jdk.pack/share/native/common-unpack/zip.cpp - src/jdk.pack/share/native/common-unpack/zip.h - src/jdk.pack/share/native/libunpack/jni.cpp - src/jdk.pack/share/native/unpack200/main.cpp - src/jdk.pack/windows/native/unpack200/unpack200_proto.exe.manifest - test/hotspot/gtest/gc/z/test_zUtils.cpp ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/TEST.groups - test/hotspot/jtreg/gc/startup_warnings/TestParallelScavengeSerialOld.java - test/hotspot/jtreg/runtime/7162488/Test7162488.sh - test/hotspot/jtreg/runtime/CDSCompressedKPtrs/CDSCompressedKPtrsError.java ! test/hotspot/jtreg/runtime/CompressedOops/CompressedClassPointers.java - test/hotspot/jtreg/runtime/StackGap/testme.sh - test/hotspot/jtreg/runtime/StackGuardPages/testme.sh - test/hotspot/jtreg/runtime/TLS/testtls.sh ! test/hotspot/jtreg/runtime/cds/appcds/ArchiveRelocationTest.java ! test/hotspot/jtreg/runtime/cds/appcds/customLoader/ClassListFormatE.java ! test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/DynamicArchiveRelocationTest.java - test/hotspot/jtreg/runtime/handshake/HandshakeWalkStackFallbackTest.java ! test/hotspot/jtreg/runtime/valhalla/valuetypes/WithFieldNoAccessTest.jcod ! test/hotspot/jtreg/runtime/valhalla/valuetypes/classfileparser/cfpTests.jcod ! test/hotspot/jtreg/runtime/valhalla/valuetypes/verifier/NoNullVT.jcod ! test/hotspot/jtreg/runtime/valhalla/valuetypes/verifier/verifierTests.jcod - test/hotspot/jtreg/vmTestbase/jit/escape/LockCoarsening/LockCoarsening001/TestDescription.java - test/hotspot/jtreg/vmTestbase/jit/escape/LockCoarsening/LockCoarsening002/TestDescription.java - test/hotspot/jtreg/vmTestbase/jit/escape/LockCoarsening/run.sh + test/hotspot/jtreg/vmTestbase/jit/tiered/Test.java - test/hotspot/jtreg/vmTestbase/jit/tiered/TestDescription.java - test/hotspot/jtreg/vmTestbase/jit/tiered/tieredTest.sh - test/hotspot/jtreg/vmTestbase/metaspace/flags/maxMetaspaceSize/TestDescription.java - test/hotspot/jtreg/vmTestbase/metaspace/flags/maxMetaspaceSize/maxMetaspaceSize.sh - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/TestDescription.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfo/run.sh - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfoOnCompilation/TestDescription.java - test/hotspot/jtreg/vmTestbase/vm/compiler/CodeCacheInfoOnCompilation/run.sh ! test/jdk/ProblemList.txt ! test/jdk/TEST.groups - test/jdk/java/lang/Runtime/Resources.java - test/jdk/java/lang/Runtime/Version/Basic.java - test/jdk/java/lang/Runtime/Version/VersionProps.java - test/jdk/java/lang/Runtime/exec/ArgWithSpaceAndFinalBackslash.java - test/jdk/java/lang/Runtime/exec/BadEnvp.java - test/jdk/java/lang/Runtime/exec/ConcurrentRead.java - test/jdk/java/lang/Runtime/exec/Duped.java - test/jdk/java/lang/Runtime/exec/ExecCommand.java - test/jdk/java/lang/Runtime/exec/ExecEmptyString.java - test/jdk/java/lang/Runtime/exec/ExecWithDir.java - test/jdk/java/lang/Runtime/exec/ExecWithInput.java - test/jdk/java/lang/Runtime/exec/ExecWithLotsOfArgs.java - test/jdk/java/lang/Runtime/exec/ExitValue.java - test/jdk/java/lang/Runtime/exec/LotsOfDestroys.java - test/jdk/java/lang/Runtime/exec/LotsOfOutput.java - test/jdk/java/lang/Runtime/exec/SetCwd.java - test/jdk/java/lang/Runtime/exec/SleepyCat.java - test/jdk/java/lang/Runtime/exec/Space.java - test/jdk/java/lang/Runtime/exec/Status.java - test/jdk/java/lang/Runtime/exec/StreamsSurviveDestroy.java - test/jdk/java/lang/Runtime/exec/UnixCommands.java - test/jdk/java/lang/Runtime/exec/WinCommand.java - test/jdk/java/lang/Runtime/exec/setcwd.sh - test/jdk/java/lang/Runtime/loadLibrary/LoadLibraryTest.java - test/jdk/java/lang/Runtime/loadLibrary/src/Target.java - test/jdk/java/lang/Runtime/loadLibrary/src/Target2.java - test/jdk/java/lang/Runtime/shutdown/Basic.java - test/jdk/java/lang/Runtime/shutdown/ShutdownHooks.java - test/jdk/java/lang/Runtime/shutdown/ShutdownHooks.sh - test/jdk/java/lang/Runtime/shutdown/ShutdownInterruptedMain.java - test/jdk/java/lang/instrument/TEST.properties - test/jdk/java/net/NetworkInterface/NoSetNetworkInterface.java - test/jdk/java/net/httpclient/ssltest/bad.keystore - test/jdk/java/net/httpclient/ssltest/good.keystore - test/jdk/java/net/httpclient/ssltest/loopback.keystore - test/jdk/java/util/jar/Pack200/SecurityTest.java - test/jdk/javax/net/ssl/compatibility/JdkRelease.java - test/jdk/jdk/jfr/api/consumer/recordingstream/TestSetFlushInterval.java - test/jdk/jdk/jfr/api/recording/time/TestSetFlushInterval.java - test/jdk/jdk/jfr/event/gc/collection/TestGCCauseWithPSMarkSweep.java - test/jdk/jdk/jfr/event/gc/collection/TestGCEventMixedWithPSMarkSweep.java - test/jdk/jdk/jfr/event/gc/heapsummary/TestHeapSummaryEventPSSerial.java - test/jdk/jdk/jfr/event/gc/objectcount/TestObjectCountAfterGCEventWithPSMarkSweep.java - test/jdk/jdk/jfr/event/gc/refstat/TestRefStatEventWithPSMarkSweep.java - test/jdk/jdk/jfr/event/io/EvilInstrument.java - test/jdk/jdk/jfr/event/oldobject/TestParallelOld.java - test/jdk/jdk/jfr/event/sampling/libTestNative.c - test/jdk/sun/security/krb5/auto/SaslGSS.java - test/jdk/tools/jar/DeprecateOptionN.java - test/jdk/tools/pack200/AttributeTests.java - test/jdk/tools/pack200/BandIntegrity.java - test/jdk/tools/pack200/CommandLineTests.java - test/jdk/tools/pack200/DeprecatePack200.java - test/jdk/tools/pack200/InstructionTests.java - test/jdk/tools/pack200/ModuleAttributes.java - test/jdk/tools/pack200/MultiRelease.java - test/jdk/tools/pack200/Pack200Props.java - test/jdk/tools/pack200/Pack200Test.java - test/jdk/tools/pack200/PackChecksum.java - test/jdk/tools/pack200/PackTestZip64.java - test/jdk/tools/pack200/PackTestZip64Manual.java - test/jdk/tools/pack200/PackageVersionTest.java - test/jdk/tools/pack200/RepackTest.java - test/jdk/tools/pack200/T7007157.java - test/jdk/tools/pack200/TestExceptions.java - test/jdk/tools/pack200/TestNormal.java - test/jdk/tools/pack200/TimeStamp.java - test/jdk/tools/pack200/UnpackerMemoryTest.java - test/jdk/tools/pack200/Utils.java - test/jdk/tools/pack200/badattr.jar - test/jdk/tools/pack200/pack200-verifier/data/README - test/jdk/tools/pack200/pack200-verifier/data/golden.jar - test/jdk/tools/pack200/pack200-verifier/make/build.xml - test/jdk/tools/pack200/pack200-verifier/src/sun/tools/pack/verify/ClassCompare.java - test/jdk/tools/pack200/pack200-verifier/src/sun/tools/pack/verify/Globals.java - test/jdk/tools/pack200/pack200-verifier/src/sun/tools/pack/verify/JarFileCompare.java - test/jdk/tools/pack200/pack200-verifier/src/sun/tools/pack/verify/Main.java - test/jdk/tools/pack200/pack200-verifier/src/sun/tools/pack/verify/VerifyTreeSet.java - test/jdk/tools/pack200/pack200-verifier/src/xmlkit/ClassReader.java - test/jdk/tools/pack200/pack200-verifier/src/xmlkit/CommandLineParser.java - test/jdk/tools/pack200/pack200-verifier/src/xmlkit/TokenList.java - test/jdk/tools/pack200/pack200-verifier/src/xmlkit/XMLKit.java - test/jdk/tools/pack200/typeannos/Lambda.java - test/jdk/tools/pack200/typeannos/Readme.txt - test/jdk/tools/pack200/typeannos/TargetTypes.java - test/jdk/tools/pack200/typeannos/TestTypeAnnotations.java - test/jdk/tools/pack200/typeannos/TypeUseTarget.java ! test/langtools/jdk/javadoc/doclet/testClassTree/TestClassTree.java ! test/langtools/jdk/javadoc/doclet/testDeprecatedDocs/TestDeprecatedDocs.java ! test/langtools/jdk/javadoc/doclet/testHiddenTag/TestHiddenTag.java ! test/langtools/jdk/javadoc/doclet/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/langtools/jdk/javadoc/doclet/testHtmlTag/TestHtmlTag.java ! test/langtools/jdk/javadoc/doclet/testInterface/TestInterface.java ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOption.java ! test/langtools/jdk/javadoc/doclet/testMemberInheritance/TestMemberInheritance.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/testOptions/help.html ! test/langtools/jdk/javadoc/doclet/testPrivateClasses/TestPrivateClasses.java ! test/langtools/jdk/javadoc/doclet/testTypeAnnotations/TestTypeAnnotations.java ! test/langtools/jdk/jshell/ToolLocalSimpleTest.java ! test/langtools/jdk/jshell/ToolSimpleTest.java ! test/langtools/lib/annotations/annotations/classfile/ClassfileInspector.java ! test/langtools/tools/javac/MethodParameters/AttributeVisitor.java ! test/langtools/tools/javac/failover/CheckAttributedTree.java ! test/langtools/tools/javac/flags/FlagsTest.java ! test/langtools/tools/javac/processing/model/TestSymtabItems.java ! test/lib/sun/hotspot/WhiteBox.java From harold.seigel at oracle.com Wed Feb 19 19:53:50 2020 From: harold.seigel at oracle.com (harold.seigel at oracle.com) Date: Wed, 19 Feb 2020 19:53:50 +0000 Subject: hg: valhalla/valhalla: Summary: Cleanup Method::is_hidden() by setting hidden flag in classFileParser.cpp Message-ID: <202002191953.01JJroXr028550@aojmv0008.oracle.com> Changeset: f0d761eb4278 Author: hseigel Date: 2020-02-19 19:53 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f0d761eb4278 Summary: Cleanup Method::is_hidden() by setting hidden flag in classFileParser.cpp Reviewed-by: mchung ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/oops/method.hpp From harold.seigel at oracle.com Thu Feb 20 14:56:48 2020 From: harold.seigel at oracle.com (harold.seigel at oracle.com) Date: Thu, 20 Feb 2020 14:56:48 +0000 Subject: hg: valhalla/valhalla: Merge Message-ID: <202002201456.01KEun2R018731@aojmv0008.oracle.com> Changeset: 90319fbf9c7a Author: hseigel Date: 2020-02-20 14:56 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/90319fbf9c7a Merge - make/CopyInterimCLDRConverter.gmk - make/Help.gmk ! src/hotspot/share/ci/ciField.cpp ! src/hotspot/share/ci/ciInstanceKlass.cpp ! src/hotspot/share/ci/ciInstanceKlass.hpp ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/classfile/classFileParser.hpp ! src/hotspot/share/classfile/defaultMethods.cpp ! src/hotspot/share/classfile/systemDictionary.cpp ! src/hotspot/share/classfile/systemDictionary.hpp ! src/hotspot/share/classfile/verificationType.cpp ! src/hotspot/share/classfile/vmSymbols.cpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp ! src/hotspot/share/memory/metaspaceShared.cpp ! src/hotspot/share/oops/constantPool.cpp ! src/hotspot/share/oops/instanceKlass.cpp ! src/hotspot/share/oops/instanceKlass.hpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/methodHandles.cpp - src/hotspot/share/runtime/fieldType.cpp - src/hotspot/share/runtime/fieldType.hpp ! src/hotspot/share/runtime/reflection.cpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/System.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/lang/reflect/Method.java ! src/java.base/share/classes/jdk/internal/access/JavaLangAccess.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils-ie.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils-ie.min.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip-utils/dist/jszip-utils.min.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip/dist/jszip.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jszip/dist/jszip.min.js - src/jdk.javadoc/share/legal/jszip.md ! src/jdk.unsupported/share/classes/sun/misc/Unsafe.java ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyBootstrapFinishedEventTest.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyInstallEventTest.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciShutdownEventTest.java - test/hotspot/jtreg/runtime/CDSCompressedKPtrs/CDSCompressedKPtrsError.java ! test/jdk/ProblemList.txt - test/jdk/java/net/httpclient/ssltest/bad.keystore - test/jdk/java/net/httpclient/ssltest/good.keystore - test/jdk/java/net/httpclient/ssltest/loopback.keystore From tobias.hartmann at oracle.com Thu Feb 20 16:58:43 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Thu, 20 Feb 2020 16:58:43 +0000 Subject: hg: valhalla/valhalla: [lworld] Fixed SigEntry::create_symbol because SignatureStream does not handle signature without return type anymore Message-ID: <202002201658.01KGwhKa000563@aojmv0008.oracle.com> Changeset: 4c7f757f2319 Author: thartmann Date: 2020-02-20 17:58 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/4c7f757f2319 [lworld] Fixed SigEntry::create_symbol because SignatureStream does not handle signature without return type anymore ! src/hotspot/share/runtime/signature.cpp From tobias.hartmann at oracle.com Thu Feb 20 18:22:29 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Thu, 20 Feb 2020 18:22:29 +0000 Subject: hg: valhalla/valhalla: 3 new changesets Message-ID: <202002201822.01KIMT7W017984@aojmv0008.oracle.com> Changeset: bea2afe5d794 Author: thartmann Date: 2020-02-20 19:14 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/bea2afe5d794 [lworld] TestLWorld::test92 requires another dummy loop to reliably trigger split if ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestLWorld.java Changeset: 5ef43744ede7 Author: thartmann Date: 2020-02-20 19:15 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/5ef43744ede7 [lworld] Cleaned up bad merge in macro.hpp/cpp ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/macro.hpp Changeset: ed47e0e93c09 Author: thartmann Date: 2020-02-20 19:22 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ed47e0e93c09 [lworld] C2 needs to handle allocation of uninitialized multidim inline type array ! src/hotspot/share/opto/parse3.cpp ! src/hotspot/share/opto/valuetypenode.cpp ! test/hotspot/jtreg/compiler/valhalla/valuetypes/TestUnloadedValueTypeArray.java From mandy.chung at oracle.com Thu Feb 20 23:58:20 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Thu, 20 Feb 2020 23:58:20 +0000 Subject: hg: valhalla/valhalla: 49 new changesets Message-ID: <202002202358.01KNwNif012919@aojmv0008.oracle.com> Changeset: 26136b5b27bf Author: stefank Date: 2020-02-17 10:03 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/26136b5b27bf 8183574: Unify the is_power_of_2 functions Reviewed-by: kbarrett, redestad ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_Runtime1_aarch64.cpp ! src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/templateTable_aarch64.cpp ! src/hotspot/cpu/arm/c1_LIRAssembler_arm.cpp ! src/hotspot/cpu/arm/c1_LIRGenerator_arm.cpp ! src/hotspot/cpu/arm/c1_MacroAssembler_arm.cpp ! src/hotspot/cpu/arm/interp_masm_arm.cpp ! src/hotspot/cpu/arm/macroAssembler_arm.cpp ! src/hotspot/cpu/arm/macroAssembler_arm.hpp ! src/hotspot/cpu/arm/sharedRuntime_arm.cpp ! src/hotspot/cpu/arm/stubGenerator_arm.cpp ! src/hotspot/cpu/arm/templateTable_arm.cpp ! src/hotspot/cpu/ppc/assembler_ppc.cpp ! src/hotspot/cpu/ppc/c1_LIRAssembler_ppc.cpp ! src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp ! src/hotspot/cpu/ppc/c1_MacroAssembler_ppc.cpp ! src/hotspot/cpu/ppc/c1_Runtime1_ppc.cpp ! src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp ! src/hotspot/cpu/ppc/macroAssembler_ppc.cpp ! src/hotspot/cpu/ppc/macroAssembler_ppc.inline.hpp ! src/hotspot/cpu/ppc/ppc.ad ! src/hotspot/cpu/ppc/stubGenerator_ppc.cpp ! src/hotspot/cpu/ppc/templateTable_ppc_64.cpp ! src/hotspot/cpu/ppc/vm_version_ppc.cpp ! src/hotspot/cpu/s390/c1_LIRAssembler_s390.cpp ! src/hotspot/cpu/s390/c1_LIRGenerator_s390.cpp ! src/hotspot/cpu/s390/c1_Runtime1_s390.cpp ! src/hotspot/cpu/s390/interp_masm_s390.cpp ! src/hotspot/cpu/s390/macroAssembler_s390.cpp ! src/hotspot/cpu/s390/stubGenerator_s390.cpp ! src/hotspot/cpu/s390/templateTable_s390.cpp ! src/hotspot/cpu/sparc/c1_LIRAssembler_sparc.cpp ! src/hotspot/cpu/sparc/c1_LIRGenerator_sparc.cpp ! src/hotspot/cpu/sparc/interp_masm_sparc.cpp ! src/hotspot/cpu/sparc/macroAssembler_sparc.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.cpp ! src/hotspot/cpu/x86/vm_version_x86.cpp ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/share/adlc/main.cpp ! src/hotspot/share/aot/aotCodeHeap.cpp ! src/hotspot/share/asm/codeBuffer.cpp ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/ci/ciArray.cpp ! src/hotspot/share/code/codeHeapState.cpp ! src/hotspot/share/code/vtableStubs.cpp ! src/hotspot/share/gc/g1/g1BiasedArray.hpp ! src/hotspot/share/gc/g1/g1RegionMarkStatsCache.cpp ! src/hotspot/share/gc/g1/g1RegionToSpaceMapper.cpp ! src/hotspot/share/gc/parallel/parallelArguments.cpp ! src/hotspot/share/gc/shared/jvmFlagConstraintsGC.cpp ! src/hotspot/share/gc/shared/oopStorage.cpp ! src/hotspot/share/gc/shared/stringdedup/stringDedupTable.cpp ! src/hotspot/share/gc/shenandoah/shenandoahCodeRoots.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/z/zAddress.inline.hpp ! src/hotspot/share/gc/z/zLiveMap.cpp ! src/hotspot/share/gc/z/zMarkCache.cpp ! src/hotspot/share/gc/z/zMarkStack.cpp ! src/hotspot/share/gc/z/zNMethodTable.cpp ! src/hotspot/share/gc/z/zRelocationSetSelector.cpp ! src/hotspot/share/memory/arena.hpp ! src/hotspot/share/memory/heap.cpp ! src/hotspot/share/memory/virtualspace.cpp ! src/hotspot/share/oops/klass.cpp ! src/hotspot/share/opto/arraycopynode.cpp ! src/hotspot/share/opto/block.hpp ! src/hotspot/share/opto/callnode.cpp ! src/hotspot/share/opto/divnode.cpp ! src/hotspot/share/opto/graphKit.cpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/loopnode.cpp ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/macroArrayCopy.cpp ! src/hotspot/share/opto/memnode.cpp ! src/hotspot/share/opto/mulnode.cpp ! src/hotspot/share/opto/output.cpp ! src/hotspot/share/opto/regmask.cpp ! src/hotspot/share/opto/superword.cpp ! src/hotspot/share/opto/type.cpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/flags/jvmFlagConstraintsCompiler.cpp ! src/hotspot/share/runtime/flags/jvmFlagConstraintsRuntime.cpp ! src/hotspot/share/utilities/align.hpp ! src/hotspot/share/utilities/globalDefinitions.cpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! src/hotspot/share/utilities/powerOfTwo.hpp ! test/hotspot/gtest/gc/z/test_zForwarding.cpp ! test/hotspot/gtest/utilities/test_powerOfTwo.cpp Changeset: efc0da4a10a9 Author: roland Date: 2020-02-14 10:31 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/efc0da4a10a9 8238691: C2: turn subtype check into macro node Reviewed-by: vlivanov, thartmann ! src/hotspot/share/opto/c2_globals.hpp ! src/hotspot/share/opto/classes.cpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/escape.cpp ! src/hotspot/share/opto/graphKit.cpp ! src/hotspot/share/opto/graphKit.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/loopnode.cpp ! src/hotspot/share/opto/loopopts.cpp ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/macro.hpp ! src/hotspot/share/opto/macroArrayCopy.cpp ! src/hotspot/share/opto/node.hpp ! src/hotspot/share/opto/phase.hpp ! src/hotspot/share/opto/subnode.cpp + src/hotspot/share/opto/subtypenode.cpp + src/hotspot/share/opto/subtypenode.hpp Changeset: f53f0d0637d8 Author: rrich Date: 2020-02-13 16:20 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f53f0d0637d8 8239005: [TESTBUG] test/hotspot/jtreg/runtime/StackGuardPages/TestStackGuardPages.java: exeinvoke.c: must initialize static state before calling do_overflow() Reviewed-by: dholmes, clanger ! test/hotspot/jtreg/runtime/StackGuardPages/exeinvoke.c Changeset: 9513c13b03f3 Author: rkennke Date: 2020-02-14 19:43 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9513c13b03f3 8239081: Shenandoah: Consolidate C1 LRB and native barriers Reviewed-by: shade ! src/hotspot/cpu/aarch64/gc/shenandoah/c1/shenandoahBarrierSetC1_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shenandoah/shenandoahBarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shenandoah/shenandoahBarrierSetAssembler_aarch64.hpp ! src/hotspot/cpu/x86/gc/shenandoah/c1/shenandoahBarrierSetC1_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.hpp ! src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.cpp ! src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.hpp Changeset: 27e87c000b16 Author: mbaesken Date: 2020-02-13 11:11 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/27e87c000b16 8239000: handle ContendedPaddingWidth in vm_version_ppc Reviewed-by: clanger, lucy ! src/hotspot/cpu/ppc/vm_version_ppc.cpp Changeset: b4a8d0c9da88 Author: chagedorn Date: 2020-02-17 12:29 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b4a8d0c9da88 8238765: PhaseCFG::schedule_pinned_nodes cannot handle precedence edges from unmatched CFG nodes correctly Summary: Fix PhaseCFG::schedule_pinned_nodes to correctly handle precedence edges from unmatched CFG nodes. Reviewed-by: roland, neliasso, kvn ! src/hotspot/share/opto/block.hpp ! src/hotspot/share/opto/gcm.cpp Changeset: 6308389bdc83 Author: chagedorn Date: 2020-02-17 12:29 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6308389bdc83 8239069: C2: SIGSEGV in IdealGraphPrinter::walk_nodes due to C->root() being NULL Summary: Fix NULL pointer dereference when trying to print the ideal graph when Compile::record_failure() is called twice. Reviewed-by: neliasso, thartmann ! src/hotspot/share/opto/idealGraphPrinter.cpp Changeset: 140261de4a17 Author: egahlin Date: 2020-02-17 22:36 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/140261de4a17 8238236: Add JFR class redefinition events Reviewed-by: mgronlun ! src/hotspot/share/jfr/metadata/metadata.xml ! src/hotspot/share/prims/jvmtiEnv.cpp ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp ! src/hotspot/share/prims/jvmtiRedefineClasses.hpp ! src/jdk.jfr/share/conf/jfr/default.jfc ! src/jdk.jfr/share/conf/jfr/profile.jfc ! test/lib/jdk/test/lib/jfr/EventNames.java ! test/lib/jdk/test/lib/jfr/Events.java ! test/lib/jdk/test/lib/util/JavaAgentBuilder.java Changeset: 220415dfb4ac Author: igerasim Date: 2020-02-17 16:32 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/220415dfb4ac 8163251: Hard coded loop limit prevents reading of smart card data greater than 8k Reviewed-by: valeriep, rriggs ! src/java.smartcardio/share/classes/sun/security/smartcardio/ChannelImpl.java Changeset: 40ce3b9a71eb Author: xuelei Date: 2020-02-17 18:52 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/40ce3b9a71eb 8239264: Clearup the legacy ObjectIdentifier constructor from int array Reviewed-by: jnimeh ! src/java.base/macosx/classes/apple/security/KeychainStore.java ! src/java.base/share/classes/com/sun/crypto/provider/DHPrivateKey.java ! src/java.base/share/classes/com/sun/crypto/provider/DHPublicKey.java ! src/java.base/share/classes/com/sun/crypto/provider/OAEPParameters.java ! src/java.base/share/classes/com/sun/crypto/provider/PBES2Parameters.java ! src/java.base/share/classes/java/security/cert/X509CertSelector.java ! src/java.base/share/classes/sun/security/pkcs/ContentInfo.java ! src/java.base/share/classes/sun/security/pkcs/PKCS9Attribute.java ! src/java.base/share/classes/sun/security/pkcs12/PKCS12KeyStore.java ! src/java.base/share/classes/sun/security/provider/certpath/OCSPResponse.java ! src/java.base/share/classes/sun/security/util/ObjectIdentifier.java ! src/java.base/share/classes/sun/security/x509/AccessDescription.java ! src/java.base/share/classes/sun/security/x509/AlgorithmId.java ! src/java.base/share/classes/sun/security/x509/ExtendedKeyUsageExtension.java ! src/java.base/share/classes/sun/security/x509/GeneralSubtrees.java ! src/java.base/share/classes/sun/security/x509/InhibitAnyPolicyExtension.java ! src/java.base/share/classes/sun/security/x509/NetscapeCertTypeExtension.java ! src/java.base/share/classes/sun/security/x509/OIDMap.java ! src/java.base/share/classes/sun/security/x509/PKIXExtensions.java ! src/java.base/share/classes/sun/security/x509/X500Name.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/XECParameters.java ! test/jdk/java/security/testlibrary/SimpleOCSPServer.java ! test/jdk/sun/security/util/Oid/OidEquals.java ! test/jdk/sun/security/util/Oid/OidFormat.java ! test/jdk/sun/security/x509/AVA/AVAEqualsHashCode.java ! test/jdk/sun/security/x509/X509CertImpl/V3Certificate.java Changeset: 83949f956490 Author: thartmann Date: 2020-02-18 08:28 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/83949f956490 8239142: C2's UseUniqueSubclasses optimization is broken for array accesses Summary: Avoid resetting the elemtype for array accesses. Reviewed-by: vlivanov, eosterlund ! src/hotspot/share/opto/parse.hpp ! src/hotspot/share/opto/parse2.cpp Changeset: 8124177833ec Author: pconcannon Date: 2020-02-18 09:42 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8124177833ec 8237480: Add micros for DatagramSocket send/receive Summary: Benchmarks for the DatagramSocket::send and DatagramSocket::receive methods Reviewed-by: chegar, dfuchs, redestad + test/micro/org/openjdk/bench/java/net/DatagramSocketSendReceive.java Changeset: 26cdbd64d461 Author: tschatzl Date: 2020-02-18 10:59 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/26cdbd64d461 8238999: Remove MemRegion custom new/delete operator overloads Reviewed-by: kbarrett, jiangli, iklam ! src/hotspot/share/gc/g1/g1ConcurrentMark.cpp ! src/hotspot/share/gc/shared/cardTable.cpp ! src/hotspot/share/memory/filemap.cpp ! src/hotspot/share/memory/memRegion.cpp ! src/hotspot/share/memory/memRegion.hpp Changeset: 7d73b376f5d2 Author: iwalulya Date: 2020-02-18 11:00 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/7d73b376f5d2 8232686: Turn parallel gc develop tracing flags into unified logging Reviewed-by: sjohanss, tschatzl, lkorinth ! src/hotspot/share/gc/parallel/parallel_globals.hpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp Changeset: a502b482d5c3 Author: egahlin Date: 2020-02-18 14:34 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a502b482d5c3 8239265: JFR: Test cleanup of jdk.jfr.api.consumer package Reviewed-by: mgronlun ! test/jdk/jdk/jfr/api/consumer/TestFieldAccess.java ! test/jdk/jdk/jfr/api/consumer/TestGetStackTrace.java ! test/jdk/jdk/jfr/api/consumer/TestHiddenMethod.java ! test/jdk/jdk/jfr/api/consumer/TestMethodGetModifiers.java ! test/jdk/jdk/jfr/api/consumer/TestReadTwice.java ! test/jdk/jdk/jfr/api/consumer/TestRecordedClassLoader.java ! test/jdk/jdk/jfr/api/consumer/TestRecordedEvent.java ! test/jdk/jdk/jfr/api/consumer/TestRecordedEventGetThread.java ! test/jdk/jdk/jfr/api/consumer/TestRecordedEventGetThreadOther.java ! test/jdk/jdk/jfr/api/consumer/TestRecordedFrame.java ! test/jdk/jdk/jfr/api/consumer/TestRecordedFullStackTrace.java ! test/jdk/jdk/jfr/api/consumer/TestRecordedInstantEventTimestamp.java ! test/jdk/jdk/jfr/api/consumer/TestRecordedMethodDescriptor.java ! test/jdk/jdk/jfr/api/consumer/TestRecordedObject.java ! test/jdk/jdk/jfr/api/consumer/TestRecordingFile.java ! test/jdk/jdk/jfr/api/consumer/TestRecordingFileReadEventEof.java ! test/jdk/jdk/jfr/api/consumer/TestSingleRecordedEvent.java ! test/jdk/jdk/jfr/api/consumer/TestValueDescriptorRecorded.java Changeset: 615b494384e4 Author: egahlin Date: 2020-02-18 16:34 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/615b494384e4 8239350: Add tests for JFR class redefinition events Reviewed-by: mgronlun + test/jdk/jdk/jfr/event/runtime/Bytes.java + test/jdk/jdk/jfr/event/runtime/RedefinableClass.java + test/jdk/jdk/jfr/event/runtime/TestClassRedefinition.java + test/jdk/jdk/jfr/event/runtime/TestRedefineClasses.java + test/jdk/jdk/jfr/event/runtime/TestRetransformClasses.java Changeset: d1c0dc3719c6 Author: mbaesken Date: 2020-02-18 16:33 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d1c0dc3719c6 8239224: libproc_impl.c previous_thr may be used uninitialized warning Reviewed-by: clanger, dholmes ! src/jdk.hotspot.agent/linux/native/libsaproc/libproc_impl.c Changeset: de9088d16202 Author: rkennke Date: 2020-02-18 17:20 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/de9088d16202 8237780: Shenandoah: More reliable nmethod verification Reviewed-by: shade, zgu ! src/hotspot/share/gc/shenandoah/shenandoahNMethod.cpp Changeset: 328ba6a75f41 Author: mseledtsov Date: 2020-02-18 08:14 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/328ba6a75f41 8167493: Test that JFR event can be retransformed by an agent Summary: Added new test, extended agent builder test library Reviewed-by: egahlin + test/jdk/jdk/jfr/javaagent/InstrumentationEventCallback.java + test/jdk/jdk/jfr/javaagent/TestEventInstrumentation.java ! test/lib/jdk/test/lib/util/JavaAgentBuilder.java Changeset: af8b73f2a13d Author: hseigel Date: 2020-02-18 16:30 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/af8b73f2a13d 8187305: Add logging for shared library loads/unloads Summary: Add logging to JVM_LoadLibrary(), JVM_UnloadLibrary(), and JVM_FindLibraryEntry(). Reviewed-by: dholmes, coleenp ! src/hotspot/share/logging/logTag.hpp ! src/hotspot/share/prims/jvm.cpp + test/hotspot/jtreg/runtime/logging/loadLibraryTest/LoadLibrary.java + test/hotspot/jtreg/runtime/logging/loadLibraryTest/LoadLibraryTest.java + test/hotspot/jtreg/runtime/logging/loadLibraryTest/libLoadLibraryClass.c Changeset: 925e981292b2 Author: lmesnik Date: 2020-02-18 10:48 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/925e981292b2 8239026: Support non-maven artifacts by JibArtifactManager Reviewed-by: erikj ! test/lib/jdk/test/lib/artifacts/DefaultArtifactManager.java ! test/lib/jdk/test/lib/artifacts/JibArtifactManager.java Changeset: bab64f4a1f24 Author: erikj Date: 2020-02-18 11:21 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/bab64f4a1f24 8239019: testmake fails with FATAL: VCS_TYPE is empty Reviewed-by: rriggs ! bin/idea.sh Changeset: a614219d7388 Author: egahlin Date: 2020-02-18 22:25 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a614219d7388 8210977: jdk/jfr/event/oldobject/TestThreadLocalLeak.java fails to find ThreadLocalObject Reviewed-by: mgronlun, mseledtsov ! test/jdk/jdk/jfr/event/oldobject/TestThreadLocalLeak.java Changeset: ed7f82f396e1 Author: jjg Date: 2020-02-18 14:08 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ed7f82f396e1 8239378: Add Classpath Exception to license in source file. Reviewed-by: vromero ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/external-link.svg Changeset: a38520aac11f Author: prappo Date: 2020-02-18 23:05 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a38520aac11f 8238969: Miscellaneous cleanup Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/api/JavadocTaskImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/api/JavadocTool.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractExecutableMemberWriter.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/AbstractTreeWriter.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/ClassWriterImpl.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/HtmlDocletWriter.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/ModuleWriterImpl.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/SourceToHTMLConverter.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/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/BaseConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/DocletElement.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/OverviewElement.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/MemberSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/TagletManager.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/TagletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/CommentHelper.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/VisibleMemberTable.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ElementsTable.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/IllegalOptionValue.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Main.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java Changeset: 21ed4ee81974 Author: rhalade Date: 2020-02-18 16:00 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/21ed4ee81974 8225128: Add exception for expiring DocuSign root to VerifyCACerts test Reviewed-by: clanger ! test/jdk/sun/security/lib/cacerts/VerifyCACerts.java Changeset: 46bb1175b837 Author: darcy Date: 2020-02-18 17:03 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/46bb1175b837 8237450: JDK13 annotation processors not run when a supported annotation type specifies a module Summary: Initial fix suggested by jjg based on through analysis by Jeremy Kuhn. Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java ! test/langtools/tools/javac/diags/examples/RedundantTypesWithWildcardProc/processors/AnnoProc.java Changeset: 8307dcef629a Author: mbaesken Date: 2020-02-18 10:28 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8307dcef629a 8239333: test/jdk/security/infra/java/security/cert/CertPathValidator/certification/AmazonCA.java fails intermittent Reviewed-by: clanger ! test/jdk/security/infra/java/security/cert/CertPathValidator/certification/AmazonCA.java Changeset: ed8eb5e3e385 Author: mbaesken Date: 2020-02-18 16:46 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ed8eb5e3e385 8238953: tools/jpackage tests do not work on Ubuntu Linux Reviewed-by: asemenyuk, clanger ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/PackageType.java ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/TKit.java Changeset: ba5e9182b08c Author: mdoerr Date: 2020-02-19 09:40 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ba5e9182b08c 8239363: PPC64: Wrong code generation after JDK-8183574 Reviewed-by: stuefe, stefank, lucy ! src/hotspot/cpu/ppc/assembler_ppc.cpp Changeset: b0417eb55b11 Author: tschatzl Date: 2020-02-19 10:04 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b0417eb55b11 8239070: Memory leak when unsuccessfully mapping in archive regions Reviewed-by: kbarrett, iklam, coleenp, jiangli ! src/hotspot/share/memory/filemap.cpp Changeset: de0fa05b18c7 Author: glaubitz Date: 2020-02-19 10:10 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/de0fa05b18c7 8239001: Hotspot build broken on linux-sparc after 8238281 Reviewed-by: dholmes, kbarrett ! src/hotspot/cpu/sparc/macroAssembler_sparc.hpp Changeset: dbe22aa857d9 Author: rraghavan Date: 2020-02-19 15:01 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/dbe22aa857d9 8238356: CodeHeap::blob_count() overestimates the number of blobs Summary: Decremented _blob_count on addition to the free list Reviewed-by: lucy, shade, thartmann ! src/hotspot/share/memory/heap.cpp Changeset: 80e403e1ff94 Author: prappo Date: 2020-02-19 10:34 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/80e403e1ff94 8239243: Create index structures only if required Reviewed-by: hannesw, jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractIndexWriter.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/HtmlDoclet.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/toolkit/util/IndexBuilder.java Changeset: 96d78010ed9f Author: michaelm Date: 2020-02-19 11:31 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/96d78010ed9f 8239139: test/jdk/java/nio/channels/spi/SelectorProvider/inheritedChannel/libInheritedChannel.c does not compile with gcc 8.3.1 Reviewed-by: michaelm Contributed-by: linzang at tencent.com ! test/jdk/java/nio/channels/spi/SelectorProvider/inheritedChannel/libInheritedChannel.c Changeset: 81133b1ca410 Author: fparain Date: 2020-02-19 08:57 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/81133b1ca410 8239014: -XX:-UseEmptySlotsInSupers sometime fails to reproduce the layout of the old code Reviewed-by: dholmes, coleenp ! src/hotspot/share/classfile/fieldLayoutBuilder.cpp ! src/hotspot/share/classfile/fieldLayoutBuilder.hpp + test/hotspot/jtreg/runtime/FieldLayout/OldLayoutCheck.java Changeset: ad9525a5d546 Author: sgehwolf Date: 2019-12-16 15:07 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ad9525a5d546 8231111: Cgroups v2: Rework Metrics in java.base so as to recognize unified hierarchy Reviewed-by: bobv, mchung + src/java.base/linux/classes/jdk/internal/platform/CgroupInfo.java + src/java.base/linux/classes/jdk/internal/platform/CgroupMetrics.java + src/java.base/linux/classes/jdk/internal/platform/CgroupSubsystem.java + src/java.base/linux/classes/jdk/internal/platform/CgroupSubsystemController.java + src/java.base/linux/classes/jdk/internal/platform/CgroupSubsystemFactory.java + src/java.base/linux/classes/jdk/internal/platform/CgroupUtil.java + src/java.base/linux/classes/jdk/internal/platform/CgroupV1Metrics.java + src/java.base/linux/classes/jdk/internal/platform/CgroupV1MetricsImpl.java + src/java.base/linux/classes/jdk/internal/platform/cgroupv1/CgroupV1MemorySubSystemController.java + src/java.base/linux/classes/jdk/internal/platform/cgroupv1/CgroupV1Subsystem.java + src/java.base/linux/classes/jdk/internal/platform/cgroupv1/CgroupV1SubsystemController.java - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/Metrics.java - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/SubSystem.java + src/java.base/linux/classes/jdk/internal/platform/cgroupv2/CgroupV2Subsystem.java + src/java.base/linux/classes/jdk/internal/platform/cgroupv2/CgroupV2SubsystemController.java ! src/java.base/share/classes/jdk/internal/platform/Metrics.java ! src/java.base/share/classes/sun/launcher/LauncherHelper.java ! src/jdk.management/unix/classes/com/sun/management/internal/OperatingSystemImpl.java ! test/jdk/jdk/internal/platform/cgroup/TestCgroupMetrics.java + test/jdk/jdk/internal/platform/cgroup/TestCgroupSubsystemController.java ! test/jdk/jdk/internal/platform/docker/MetricsCpuTester.java ! test/jdk/jdk/internal/platform/docker/MetricsMemoryTester.java ! test/jdk/jdk/internal/platform/docker/TestDockerCpuMetrics.java ! test/jdk/jdk/internal/platform/docker/TestDockerMemoryMetrics.java ! test/lib/jdk/test/lib/containers/cgroup/CPUSetsReader.java + test/lib/jdk/test/lib/containers/cgroup/CgroupMetricsTester.java ! test/lib/jdk/test/lib/containers/cgroup/MetricsTester.java + test/lib/jdk/test/lib/containers/cgroup/MetricsTesterCgroupV1.java + test/lib/jdk/test/lib/containers/cgroup/MetricsTesterCgroupV2.java Changeset: b2dd4028a6de Author: darcy Date: 2020-02-19 11:52 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b2dd4028a6de 8239478: Make specification of SourceVersion.isName explicit for dotted names Reviewed-by: jjg ! src/java.compiler/share/classes/javax/lang/model/SourceVersion.java Changeset: 0bd237b74e70 Author: jnimeh Date: 2020-02-19 13:36 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0bd237b74e70 8239094: PKCS#9 ChallengePassword attribute does not allow for the UTF8String type Reviewed-by: xuelei ! src/java.base/share/classes/sun/security/pkcs/PKCS9Attribute.java + test/jdk/sun/security/pkcs/pkcs9/ChallengePassStringFmt.java Changeset: 3150e6810c21 Author: jwilhelm Date: 2020-02-20 03:11 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3150e6810c21 Added tag jdk-15+11 for changeset b2dd4028a6de ! .hgtags Changeset: 2489925df497 Author: mbaesken Date: 2020-02-19 10:27 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2489925df497 8239351: Give more meaningful InternalError messages in Deflater.c Reviewed-by: stuefe, vtewari, lancea, martin ! src/java.base/share/native/libzip/Deflater.c Changeset: 8432f7d4f51c Author: ihse Date: 2020-02-20 10:33 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8432f7d4f51c 8239450: Overhaul JVM feature handling in configure Reviewed-by: erikj ! doc/building.html ! doc/building.md ! make/autoconf/basics.m4 ! make/autoconf/configure.ac ! make/autoconf/help.m4 ! make/autoconf/hotspot.m4 ! make/autoconf/jdk-options.m4 + make/autoconf/jvm-features.m4 ! make/conf/jib-profiles.js ! src/hotspot/.mx.jvmci/mx_jvmci.py Changeset: 9b999cf5e13a Author: clanger Date: 2020-02-07 08:38 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9b999cf5e13a 8237192: Generate stripped/public pdbs on Windows for jdk images Reviewed-by: erikj, ihse Contributed-by: christoph.langer at sap.com, matthias.baesken at sap.com ! make/Bundles.gmk ! make/CreateJmods.gmk ! make/GenerateLinkOptData.gmk ! make/Images.gmk ! make/autoconf/jdk-options.m4 ! make/autoconf/spec.gmk.in ! make/common/NativeCompilation.gmk ! make/launcher/Launcher-java.base.gmk ! make/scripts/compare.sh ! test/jdk/tools/launcher/HelpFlagsTest.java ! test/jdk/tools/launcher/TestHelper.java ! test/jdk/tools/launcher/VersionCheck.java Changeset: d23e418e91fe Author: redestad Date: 2020-02-20 13:18 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d23e418e91fe 8239347: Refactor Symbol to make _length a standalone field again Reviewed-by: iklam, coleenp ! make/hotspot/src/native/dtrace/generateJvmOffsets.cpp ! src/hotspot/os/solaris/dtrace/jhelper.d ! src/hotspot/share/oops/symbol.cpp ! src/hotspot/share/oops/symbol.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/java.base/solaris/native/libjvm_db/libjvm_db.c ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/oops/Symbol.java Changeset: 461e0b7e6dfe Author: coleenp Date: 2020-02-20 07:25 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/461e0b7e6dfe 8239461: Use jcod rather than jar files in runtime tests Reviewed-by: hseigel, lmesnik, dholmes - test/hotspot/jtreg/runtime/7116786/Test7116786.java - test/hotspot/jtreg/runtime/7116786/testcases.jar ! test/hotspot/jtreg/runtime/EnclosingMethodAttr/EnclMethodAttr.java - test/hotspot/jtreg/runtime/EnclosingMethodAttr/enclMethodAttr.jar - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVT.cod + test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVT.jcod - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVTT.cod + test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVTT.jcod - test/hotspot/jtreg/runtime/LocalVariableTable/NotFoundLVTT.cod + test/hotspot/jtreg/runtime/LocalVariableTable/NotFoundLVTT.jcod ! test/hotspot/jtreg/runtime/LocalVariableTable/TestLVT.java - test/hotspot/jtreg/runtime/LocalVariableTable/testcase.jar + test/hotspot/jtreg/runtime/VerifierMessages/Test7116786.java + test/hotspot/jtreg/runtime/VerifierMessages/testcases.jcod ! test/hotspot/jtreg/runtime/classFileParserBug/ClassFileParserBug.java ! test/hotspot/jtreg/runtime/classFileParserBug/TestEmptyBootstrapMethodsAttr.java - test/hotspot/jtreg/runtime/classFileParserBug/emptynumbootstrapmethods.jar - test/hotspot/jtreg/runtime/classFileParserBug/test.jar ! test/hotspot/jtreg/runtime/duplAttributes/DuplAttributesTest.java - test/hotspot/jtreg/runtime/duplAttributes/test.jar Changeset: 60a77203ac91 Author: rriggs Date: 2020-02-20 10:03 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/60a77203ac91 8232622: Technical debt in BadAttributeValueExpException Reviewed-by: dfuchs, sspitsyn ! src/java.management/share/classes/javax/management/BadAttributeValueExpException.java Changeset: eae299d8ada4 Author: iveresov Date: 2020-02-20 10:11 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/eae299d8ada4 8238355: Update Graal Reviewed-by: kvn ! src/hotspot/cpu/x86/nativeInst_x86.cpp ! src/hotspot/cpu/x86/nativeInst_x86.hpp ! src/jdk.aot/share/classes/jdk.tools.jaotc.binformat/src/jdk/tools/jaotc/binformat/BinaryContainer.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/CodeSectionProcessor.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/ELFMacroAssembler.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/ForeignGotCallSiteRelocationSymbol.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/MetadataBuilder.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/amd64/AMD64ELFMacroAssembler.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/collect/FileSupport.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives/src/org/graalvm/compiler/api/directives/GraalDirectives.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.replacements/src/org/graalvm/compiler/api/replacements/MethodSubstitution.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/AArch64AddressingModeTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/AArch64InstructionEncodingTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/AArch64MacroAssemblerTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/AArch64MoveConstantTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/TestProtectedAssembler.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/AMD64Address.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.amd64/src/org/graalvm/compiler/asm/amd64/AMD64MacroAssembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.amd64/src/org/graalvm/compiler/asm/amd64/AVXKind.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/HexCodeFile.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64.test/src/org/graalvm/compiler/core/aarch64/test/AArch64ArrayAddressTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64.test/src/org/graalvm/compiler/core/aarch64/test/AArch64BitwiseLogicalNotTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64.test/src/org/graalvm/compiler/core/aarch64/test/AArch64ElideL2ITest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64.test/src/org/graalvm/compiler/core/aarch64/test/AArch64FloatSqrtTest.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/AArch64MergeNarrowWithExtendTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64.test/src/org/graalvm/compiler/core/aarch64/test/AArch64RotationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64AddressLoweringByUse.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/AArch64NodeMatchRules.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64PointerAddNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64ReadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64SuitesCreator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64.test/src/org/graalvm/compiler/core/amd64/test/AMD64MatchRuleTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64AddressLowering.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64AddressNode.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.amd64/src/org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64SuitesCreator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/Fields.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/NumUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/IntegerStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.match.processor/src/org/graalvm/compiler/core/match/processor/MatchProcessor.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCIntegerCompareCanonicalizationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCNodeMatchRules.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/BoxingEliminationTest.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/ConditionalEliminationMulTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CountedLoopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/DeMorganCanonicalizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/DegeneratedLoopsTest.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/HashMapGetTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/IntegerDivRemCanonicalizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/InterfaceMethodHandleTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/InvokeExceptionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/InvokeHintsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/LongNodeChainTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/MarkUnsafeAccessTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/MatchRuleTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/MemoryGraphCanonicalizeTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/MonitorGraphTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/OffHeapUnsafeAccessTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ReferenceGetLoopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/SubprocessTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/UnsafeVirtualizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifySystemPropertyUsage.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/deopt/RethrowExceptionLoopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/EarlyReadEliminationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/PEAAssertionsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/PEAReadEliminationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/PartialEscapeAnalysisIterationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/PartialEscapeAnalysisTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/PartialEscapeAnalysisTreesTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/PartialEscapeUnsafeStoreTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/TrufflePEATest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/UnsafeEATest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/inlining/InliningTest.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/DebugInfoBuilder.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/gen/NodeMatchRules.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/BaseTier.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/MidTier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugConfigImpl.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/MethodFilter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/ScopeImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/doc-files/MethodFilterHelp.txt ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/Graph.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/AArch64HotSpotBackendFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotDeoptimizeCallerOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotDeoptimizeOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotDeoptimizeWithExceptionCallerOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotEpilogueOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64IndirectCallOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64DeoptimizeOp.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/AMD64HotSpotConstantRetrievalOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotDeoptimizeCallerOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotDeoptimizeWithExceptionCallerOp.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/AMD64HotSpotReturnOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotUnwindOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotspotDirectVirtualCallOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64IndirectCallOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCDeoptimizeOp.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/SPARCHotSpotBackendFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotDeoptimizeCallerOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotDeoptimizeWithExceptionCallerOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator.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/CompileTheWorldTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotDeoptExplicitExceptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotDeoptPostExceptions.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/LambdaStableNameTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/MethodSubstitutionEffectTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/NodeCostDumpUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/TestSHASubstitutions.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/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfig.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfigVersioned.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotBackendFactory.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/HotSpotDebugInfoBuilder.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/HotSpotGraalManagementRegistration.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotHostBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotReferenceMapBuilder.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/meta/DefaultHotSpotLoweringProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGCProvider.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/HotSpotObjdumpDisassemblerProvider.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotPlatformConfigurationProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotProviders.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotSuitesProvider.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/BeginLockScopeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DeoptimizeWithExceptionInCallerNode.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/EndLockScopeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/StubForeignCallNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/InitializeKlassNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/InitializeKlassStubCall.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/ResolveDynamicConstantNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/ResolveDynamicStubCall.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/FastNotifyNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HotSpotAllocationSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HotSpotG1WriteBarrierSnippets.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/HotspotSnippetsOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/IdentityHashCodeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/MonitorSnippets.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/ObjectCloneNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/UnsafeCopyMemoryNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/UnsafeLoadSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/CreateExceptionStub.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.hotspot/src/org/graalvm/compiler/hotspot/word/MetaspacePointer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/word/PointerCastNode.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/BytecodeParserOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/DefaultSuitesCreator.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/LambdaUtils.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/backend/LargeConstantSectionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/except/UntrustedInterfaces.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/optimize/ConditionalElimination02.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/optimize/Narrow_byte04.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/optimize/TrichotomyTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/reflect/Field_set02.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64BitManipulationOp.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/AMD64Arithmetic.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64ArrayCompareToOp.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/AMD64ArrayIndexOfOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64CCall.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64Call.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/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/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.amd64/src/org/graalvm/compiler/lir/amd64/AMD64StringLatin1InflateOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64StringUTF16CompressOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/vector/AMD64VectorUnary.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.sparc/src/org/graalvm/compiler/lir/sparc/SPARCControlFlow.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIRInstruction.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIRIntrospection.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScan.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/asm/CompilationResultBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/constopt/ConstantLoadOptimization.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/dfa/MarkBasePointersPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/dfa/RegStackValueSet.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/phases/EconomyAllocationStage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/util/IndexedValueMap.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopPeelingPhase.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.test/src/org/graalvm/compiler/loop/test/LoopPartialUnrollTest.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/LoopFragmentInside.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopPolicies.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/graal/GraalBenchmark.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.microbenchmarks/src/org/graalvm/compiler/microbenchmarks/graal/TestJMHWhitebox.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/AbstractBeginNode.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/GuardProxyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/GuardedValueNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/Invoke.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/InvokeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/InvokeWithExceptionNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/KillingBeginNode.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/ProxyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/StartNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/StructuredGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/ValueNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/ValueProxyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/CompareNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/FloatEqualsNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/LeftShiftNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/NarrowNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/OrNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/SignExtendNode.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/ZeroExtendNode.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/debug/SideEffectNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/StringToBytesNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/BytecodeExceptionNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/ForeignCallNode.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/extended/JavaWriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/MembarNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/MonitorExit.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/RawLoadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/RawStoreNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeAccessNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeMemoryStoreNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/BarrierSet.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/CardTableBarrierSet.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/G1BarrierSet.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AbstractCompareAndSwapNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AbstractUnsafeCompareAndSwapNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AccessMonitorNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AtomicReadAndAddNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AtomicReadAndWriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/ExceptionObjectNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LoadIndexedNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LogicCompareAndSwapNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LoweredAtomicReadAndWriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/MonitorEnterNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/MonitorExitNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/RawMonitorEnterNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/ValueCompareAndSwapNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/AbstractMemoryCheckpoint.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/AbstractWriteNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/Access.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/AddressableMemoryAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FixedAccessNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FloatingAccessNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FloatingReadNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/GuardedMemoryAccess.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/HeapAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/LIRLowerableAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryAccess.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryCheckpoint.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryKill.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryPhiNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MultiMemoryKill.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/OnHeapMemoryAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/ReadNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/SingleMemoryKill.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/VolatileReadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/WriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/CoreProviders.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/CoreProvidersDelegate.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/CoreProvidersImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/GCProvider.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/PlatformConfigurationProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/VirtualizerTool.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/virtual/AllocatedObjectNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/virtual/CommitAllocationNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/virtual/VirtualArrayNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/virtual/VirtualObjectNode.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.phases.common/src/org/graalvm/compiler/phases/common/AddressLoweringByUsePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/FloatingReadPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/InsertGuardFencesPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/LoweringPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ProfileCompiledMethodsPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/WriteBarrierAdditionPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/info/MultiTypeGuardInlineInfo.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/BasePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/contract/NodeCostUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/schedule/SchedulePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/schedule/ScheduleVerification.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/util/Providers.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/CFGPrinterObserver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraalDebugHandlersFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.aarch64/src/org/graalvm/compiler/replacements/aarch64/AArch64BitCountNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64CountLeadingZerosNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64CountTrailingZerosNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringLatin1InflateNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringUTF16CompressNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.jdk9.test/src/org/graalvm/compiler/replacements/jdk9/test/VarHandleTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.sparc/src/org/graalvm/compiler/replacements/sparc/SPARCGraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ArrayStoreBytecodeExceptionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/BitOpNodesTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/BytecodeExceptionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ClassCastBytecodeExceptionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/EdgesTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/IndexOobBytecodeExceptionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/NullBytecodeExceptionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ObjectAccessTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/PEGraphDecoderTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/PointerTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/AllocationSnippets.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/DimensionsNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/NodeIntrinsificationProvider.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/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/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/CheckcastArrayCopyCallNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/arraycopy/GenericArrayCopyCallNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/gc/G1WriteBarrierSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/ArrayEqualsNode.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/BitCountNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/MacroStateSplitNode.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.virtual/src/org/graalvm/compiler/virtual/phases/ea/EarlyReadEliminationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/ObjectState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PartialEscapePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/ReadEliminationBlockState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/ReadEliminationClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/VirtualizerToolImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Word.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordOperationPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/DefaultGraphTypes.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.micro.benchmarks/src/micro/benchmarks/GroupAllocationBenchmark.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.micro.benchmarks/src/micro/benchmarks/ObjectCloneArrayLengthBenchmark.java Changeset: 38fc3785784a Author: dfuchs Date: 2020-02-20 20:04 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/38fc3785784a 8238990: java/net/httpclient/HandshakeFailureTest.java failed against TLSv1.3 on Windows Summary: The SSLTube and SSLFlowDelegate are improved to wrap any non-SSL exception that occur during the handshake in an SSLHandshakeException. Reviewed-by: chegar ! src/java.net.http/share/classes/jdk/internal/net/http/common/SSLFlowDelegate.java ! src/java.net.http/share/classes/jdk/internal/net/http/common/SSLTube.java ! test/jdk/ProblemList.txt ! test/jdk/java/net/httpclient/HandshakeFailureTest.java Changeset: e3bc1e0ec534 Author: mullan Date: 2020-02-20 16:36 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e3bc1e0ec534 8238560: Cleanup and consolidate algorithms in the jdk.tls.legacyAlgorithms security property Reviewed-by: xuelei ! src/java.base/share/conf/security/java.security + test/jdk/sun/security/ssl/CipherSuite/LegacyConstraints.java From mandy.chung at oracle.com Fri Feb 21 02:40:05 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 21 Feb 2020 02:40:05 +0000 Subject: hg: valhalla/valhalla: Merge Message-ID: <202002210240.01L2e6RB029494@aojmv0008.oracle.com> Changeset: 1173887aa6f7 Author: mchung Date: 2020-02-20 18:39 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1173887aa6f7 Merge ! src/hotspot/cpu/aarch64/templateTable_aarch64.cpp ! src/hotspot/cpu/arm/templateTable_arm.cpp ! src/hotspot/cpu/ppc/templateTable_ppc_64.cpp ! src/hotspot/cpu/s390/templateTable_s390.cpp ! src/hotspot/share/aot/aotCodeHeap.cpp ! src/hotspot/share/logging/logTag.hpp ! src/hotspot/share/oops/klass.cpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp ! src/hotspot/share/runtime/vmStructs.cpp - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/Metrics.java - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/SubSystem.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/AArch64MacroAssemblerTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGCProvider.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/replacements/NewObjectSnippets.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/Access.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/HeapAccess.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryCheckpoint.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/GCProvider.java - test/hotspot/jtreg/runtime/7116786/Test7116786.java - test/hotspot/jtreg/runtime/7116786/testcases.jar - test/hotspot/jtreg/runtime/EnclosingMethodAttr/enclMethodAttr.jar - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVT.cod - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVTT.cod - test/hotspot/jtreg/runtime/LocalVariableTable/NotFoundLVTT.cod - test/hotspot/jtreg/runtime/LocalVariableTable/testcase.jar - test/hotspot/jtreg/runtime/classFileParserBug/emptynumbootstrapmethods.jar - test/hotspot/jtreg/runtime/classFileParserBug/test.jar - test/hotspot/jtreg/runtime/duplAttributes/test.jar ! test/jdk/ProblemList.txt From tobias.hartmann at oracle.com Fri Feb 21 07:25:19 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 21 Feb 2020 07:25:19 +0000 Subject: hg: valhalla/valhalla: [lworld] Removed too strong assert in ValueTypeNode::default_oop Message-ID: <202002210725.01L7PJmG019752@aojmv0008.oracle.com> Changeset: 0489585a6e7f Author: thartmann Date: 2020-02-21 08:25 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0489585a6e7f [lworld] Removed too strong assert in ValueTypeNode::default_oop ! src/hotspot/share/opto/valuetypenode.cpp From john.r.rose at oracle.com Fri Feb 21 10:23:14 2020 From: john.r.rose at oracle.com (John Rose) Date: Fri, 21 Feb 2020 02:23:14 -0800 Subject: for review: 8236522: "always atomic" modifier for inline classes to enforce atomicity In-Reply-To: <1113acf6-9c46-5e07-ed07-679bca4e3a94@oracle.com> References: <212B1143-F1F9-45AF-8ADD-E44513BA7050@oracle.com> <6f201ace-f9e6-1ed9-6187-1e881c146d56@oracle.com> <83A8E7C7-C2CB-4F3C-A840-F6169C9E6246@oracle.com> <1113acf6-9c46-5e07-ed07-679bca4e3a94@oracle.com> Message-ID: <02631A77-BA89-41DF-A705-225F4D9AF843@oracle.com> I?ve come back around to this feature, after (SMH) realizing it should be a marker interface (java.lang.NonTearable) instead of a new modifier and access flag. Thanks, Brian? Also, I?ve re-integrated my changes on top of the signature changes and field layout changes. Please have another look: http://cr.openjdk.java.net/~jrose/values/atomic-8236522 (Old webrev is atomic-8236522.1) ? John P.S. There?s a slightly over-engineered string matcher included. I intend to use it for other purposes as well, when there are ad hoc class lists to assign special properties to, such as ?please track locking events? and so on. The code in CompilerOracle was not repurposable, sadly. > On Feb 12, 2020, at 7:36 AM, Tobias Hartmann wrote: > > Hi John, > > I've just sent the RFR for 8238780 which will fix these issues. I found one additional place where a > StoreStore barrier was missing. > > Thanks, > Tobias > > On 22.01.20 21:20, John Rose wrote: >> On Jan 20, 2020, at 6:54 AM, Tobias Hartmann > > wrote: >>> >>>> >>>> How did it reproduce for you? It would be nice to have a regression test. >>> >>> Okay, -XX:+StressLCM did the trick :) >> >> Thanks for taking it out for a spin. >> >> The jtreg test ValueTearing.java failed reliably (P ~ 50%) >> on my MacBook. Debugging that led me to add that S-S barrier. >> >> ? John From tobias.hartmann at oracle.com Fri Feb 21 10:36:19 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 21 Feb 2020 10:36:19 +0000 Subject: hg: valhalla/valhalla: [lworld] Make sure ValueTypeNode::remove_redundant_allocations is executed if inline types are buffered Message-ID: <202002211036.01LAaJwd006346@aojmv0008.oracle.com> Changeset: 1c347cc7d430 Author: thartmann Date: 2020-02-21 11:35 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1c347cc7d430 [lworld] Make sure ValueTypeNode::remove_redundant_allocations is executed if inline types are buffered ! src/hotspot/share/opto/valuetypenode.cpp From tobias.hartmann at oracle.com Fri Feb 21 14:00:35 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 21 Feb 2020 14:00:35 +0000 Subject: hg: valhalla/valhalla: 2 new changesets Message-ID: <202002211400.01LE0aNi001840@aojmv0008.oracle.com> Changeset: 4516cf132076 Author: thartmann Date: 2020-02-21 12:51 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/4516cf132076 [lworld] Fixed JVMCI to support new array profiling method metadata ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotMethodData.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotMethodDataAccessor.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotVMConfig.java Changeset: 885b7975fec5 Author: thartmann Date: 2020-02-21 13:25 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/885b7975fec5 [lworld] CheckGraalIntrinsics.java does not handle inline type specific intrinsics not implemented by Graal ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CheckGraalIntrinsics.java From harold.seigel at oracle.com Fri Feb 21 14:23:00 2020 From: harold.seigel at oracle.com (harold.seigel at oracle.com) Date: Fri, 21 Feb 2020 14:23:00 +0000 Subject: hg: valhalla/valhalla: Summary: Small JVM cleanups for hidden classes Message-ID: <202002211423.01LEN17m011865@aojmv0008.oracle.com> Changeset: 8713339a1601 Author: hseigel Date: 2020-02-21 14:22 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8713339a1601 Summary: Small JVM cleanups for hidden classes Reviewed-by: lfoltan ! src/hotspot/share/classfile/verifier.cpp ! src/hotspot/share/prims/jvm.cpp ! test/hotspot/jtreg/runtime/HiddenClasses/FieldInSuper.java From mandy.chung at oracle.com Fri Feb 21 20:05:34 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 21 Feb 2020 20:05:34 +0000 Subject: hg: valhalla/valhalla: [nestmates] Lambda proxy uses live MethodHandle for a protected member inherited from its superclass in a different package. Message-ID: <202002212005.01LK5Z25022007@aojmv0008.oracle.com> Changeset: f796bd335b45 Author: mchung Date: 2020-02-21 12:03 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f796bd335b45 [nestmates] Lambda proxy uses live MethodHandle for a protected member inherited from its superclass in a different package. Summary: class C attempts to access a protected member D::m inherited from its supertype in a different package. The lambda proxy class HC is not a subtype of D and D::m is not inaccessible to HC. C may not necessarily have the bridge for example D::m was public member when C was compiled and later D::m is changed from public to protected in a separation compilation. D::m is accessible to C with a receiver object of C. Changing D::m to protected is a supported binary compatibility. JDK-8199386 should be explored as a long-term solution that a framework can use Lookup::in to teleport from HC to C to obtain a method handle for D::m. ! src/java.base/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java ! src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java + test/jdk/java/lang/invoke/lambda/superProtectedMethod/InheritedProtectedMethod.java ! test/jdk/java/lang/invoke/lambda/superProtectedMethod/SuperMethodTest.java + test/jdk/java/lang/invoke/lambda/superProtectedMethod/modified/MethodSupplierOuter.java + test/jdk/java/lang/invoke/lambda/superProtectedMethod/src/MethodInvoker.java + test/jdk/java/lang/invoke/lambda/superProtectedMethod/src/MyFunctionalInterface.java + test/jdk/java/lang/invoke/lambda/superProtectedMethod/src/anotherpkg/MethodSupplierOuter.java From harold.seigel at oracle.com Mon Feb 24 15:24:50 2020 From: harold.seigel at oracle.com (harold.seigel at oracle.com) Date: Mon, 24 Feb 2020 15:24:50 +0000 Subject: hg: valhalla/valhalla: Summary: Remove irrelevant value types verifier test case Message-ID: <202002241524.01OFOoA6005564@aojmv0008.oracle.com> Changeset: 8741b7e16446 Author: hseigel Date: 2020-02-24 15:24 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8741b7e16446 Summary: Remove irrelevant value types verifier test case Reviewed-by: lfoltan ! src/hotspot/share/oops/instanceKlass.cpp ! test/hotspot/jtreg/runtime/valhalla/valuetypes/verifier/VerifierValueTypes.java ! test/hotspot/jtreg/runtime/valhalla/valuetypes/verifier/verifierTests.jcod From mandy.chung at oracle.com Mon Feb 24 18:08:43 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Mon, 24 Feb 2020 18:08:43 +0000 Subject: hg: valhalla/valhalla: 3 new changesets Message-ID: <202002241808.01OI8iLI010087@aojmv0008.oracle.com> Changeset: 72e8ad32c65c Author: mchung Date: 2020-02-24 09:15 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/72e8ad32c65c [nestmates] MethodHandleImpl should handle CSM if the target class is a hidden class. ! src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java Changeset: 389e79645b94 Author: mchung Date: 2020-02-24 09:17 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/389e79645b94 [nestmates] Assert on the newly created hidden class in the same package as the lookup class ! src/hotspot/share/prims/jvm.cpp Changeset: a5a428c43c6a Author: mchung Date: 2020-02-24 09:19 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a5a428c43c6a [nestmates] Add @run -Xcomp in test/jdk/java/lang/invoke/defineHiddenClass/BasicTest.java ! test/jdk/java/lang/invoke/defineHiddenClass/BasicTest.java From harold.seigel at oracle.com Mon Feb 24 20:40:03 2020 From: harold.seigel at oracle.com (harold.seigel at oracle.com) Date: Mon, 24 Feb 2020 20:40:03 +0000 Subject: hg: valhalla/valhalla: Summary: Improve assert() message Message-ID: <202002242040.01OKe4fE008881@aojmv0008.oracle.com> Changeset: 56563ad6d892 Author: hseigel Date: 2020-02-24 20:39 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/56563ad6d892 Summary: Improve assert() message Reviewed-by: lfoltan ! src/hotspot/share/prims/jvm.cpp From Roger.Riggs at oracle.com Mon Feb 24 20:46:43 2020 From: Roger.Riggs at oracle.com (Roger Riggs) Date: Mon, 24 Feb 2020 15:46:43 -0500 Subject: RFR 8239877 [lworld] valhalla/valuetypes/QTypeDescriptorTest.java fails after merge Message-ID: <984a9eb7-8978-589b-c6a6-3543ca7606d1@oracle.com> Please review updating the classfile version for Proxy generator and InnerClassLambdaMetaFactory to V15? (59). The test fails with V14 (58) and passes with V15 (59). Webrev: ?? http://cr.openjdk.java.net/~rriggs/webrev-classfile-8239877/ Thanks, Roger From harold.seigel at oracle.com Mon Feb 24 20:48:32 2020 From: harold.seigel at oracle.com (Harold Seigel) Date: Mon, 24 Feb 2020 15:48:32 -0500 Subject: RFR 8239877 [lworld] valhalla/valuetypes/QTypeDescriptorTest.java fails after merge In-Reply-To: <984a9eb7-8978-589b-c6a6-3543ca7606d1@oracle.com> References: <984a9eb7-8978-589b-c6a6-3543ca7606d1@oracle.com> Message-ID: <2e4e3afe-5e7d-5040-8f2a-e7dfddc2662f@oracle.com> Hi Roger, The change looks good! Thanks, Harold On 2/24/2020 3:46 PM, Roger Riggs wrote: > Please review updating the classfile version for Proxy generator and > InnerClassLambdaMetaFactory to V15? (59). > > The test fails with V14 (58) and passes with V15 (59). > > Webrev: > ?? http://cr.openjdk.java.net/~rriggs/webrev-classfile-8239877/ > > Thanks, Roger > From mandy.chung at oracle.com Mon Feb 24 20:50:52 2020 From: mandy.chung at oracle.com (Mandy Chung) Date: Mon, 24 Feb 2020 12:50:52 -0800 Subject: RFR 8239877 [lworld] valhalla/valuetypes/QTypeDescriptorTest.java fails after merge In-Reply-To: <984a9eb7-8978-589b-c6a6-3543ca7606d1@oracle.com> References: <984a9eb7-8978-589b-c6a6-3543ca7606d1@oracle.com> Message-ID: +1 thanks for looking into it. Mandy On 2/24/20 12:46 PM, Roger Riggs wrote: > Please review updating the classfile version for Proxy generator and > InnerClassLambdaMetaFactory to V15? (59). > > The test fails with V14 (58) and passes with V15 (59). > > Webrev: > ?? http://cr.openjdk.java.net/~rriggs/webrev-classfile-8239877/ > > Thanks, Roger > From frederic.parain at oracle.com Mon Feb 24 21:08:39 2020 From: frederic.parain at oracle.com (frederic.parain at oracle.com) Date: Mon, 24 Feb 2020 21:08:39 +0000 Subject: hg: valhalla/valhalla: Fix field layout option name Message-ID: <202002242108.01OL8di1024961@aojmv0008.oracle.com> Changeset: fd70d5109dff Author: fparain Date: 2020-02-24 16:08 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/fd70d5109dff Fix field layout option name ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/runtime/globals.hpp From roger.riggs at oracle.com Mon Feb 24 23:04:16 2020 From: roger.riggs at oracle.com (roger.riggs at oracle.com) Date: Mon, 24 Feb 2020 23:04:16 +0000 Subject: hg: valhalla/valhalla: 8239877: [lworld] valhalla/valuetypes/QTypeDescriptorTest.java fails after merge Message-ID: <202002242304.01ON4H30003361@aojmv0008.oracle.com> Changeset: 580f6bc5437f Author: rriggs Date: 2020-02-24 17:56 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/580f6bc5437f 8239877: [lworld] valhalla/valuetypes/QTypeDescriptorTest.java fails after merge Reviewed-by: mchung, hseigel ! src/java.base/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java From tobias.hartmann at oracle.com Tue Feb 25 12:21:10 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Tue, 25 Feb 2020 12:21:10 +0000 Subject: hg: valhalla/valhalla: 8239242: [lworld] SIGSEGV in ~BufferBlob::buffered value type Message-ID: <202002251221.01PCLB8d011266@aojmv0008.oracle.com> Changeset: b5bc50e866d5 Author: thartmann Date: 2020-02-25 13:06 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b5bc50e866d5 8239242: [lworld] SIGSEGV in ~BufferBlob::buffered value type ! src/hotspot/cpu/x86/gc/g1/g1BarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp From Roger.Riggs at oracle.com Tue Feb 25 19:20:25 2020 From: Roger.Riggs at oracle.com (Roger Riggs) Date: Tue, 25 Feb 2020 14:20:25 -0500 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() Message-ID: Please review the static factory of an IdentityObject to replace "new Object()" as mentioned in [1]. No replacements proposed yet.? There are 504 instances of "new Object()" in JDK modules. @@ -38,15 +38,36 @@ */ public class Object { /** * Constructs a new object. + * @apiNote {@link Object#newIdentity} should be used instead of {@code new Object()}. */ @HotSpotIntrinsicCandidate public Object() {} /** + * Constructs a new Object implementing the IdentityObject interface. + * The object is a unique IdentityObject suitable for all purposes + * that previously for which {@code new Object{}} was used including synchronization, + * mutexes and unique placeholders. + * + * @return a new Object implementing the IdentityObject interface + * @since Valhalla + */ + public static IdentityObject newIdentity() { + return new IdentityInstance(); + } + + /** + * IdentityInstance replaces plain {@code new Object()}. + */ + private final static class IdentityInstance implements IdentityObject { + private IdentityInstance() {} + } + As a Webrev: http://cr.openjdk.java.net/~rriggs/webrev-object-newinstance-8239929/ Thanks, Roger [1] http://cr.openjdk.java.net/~briangoetz/valhalla/sov/02-object-model.html From harold.seigel at oracle.com Tue Feb 25 20:12:09 2020 From: harold.seigel at oracle.com (harold.seigel at oracle.com) Date: Tue, 25 Feb 2020 20:12:09 +0000 Subject: hg: valhalla/valhalla: Summary: ensure that weak hidden classes loaded by the boot loader are treated as privileged by method AnnotationCollector::annotation_index() Message-ID: <202002252012.01PKC9Ee020835@aojmv0008.oracle.com> Changeset: 28a38e0ae11e Author: hseigel Date: 2020-02-25 20:11 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/28a38e0ae11e Summary: ensure that weak hidden classes loaded by the boot loader are treated as privileged by method AnnotationCollector::annotation_index() Reviewed-by: mchung ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/prims/unsafe.cpp From augustnagro at gmail.com Tue Feb 25 23:24:56 2020 From: augustnagro at gmail.com (August Nagro) Date: Tue, 25 Feb 2020 17:24:56 -0600 Subject: Making Arrays Value Types Message-ID: I often wish Java arrays implemented Iterable, had more utility methods than just clone(), or otherwise had better integration in the Collections hierarchy. I wonder if this would be possible after generic specialization becomes possible in Valhalla. Just food for thought from a long train commute. -August From david.simms at oracle.com Wed Feb 26 09:35:50 2020 From: david.simms at oracle.com (David Simms) Date: Wed, 26 Feb 2020 10:35:50 +0100 Subject: Transition project Valhalla to git and GitHub Message-ID: <853c9d43-2eb9-3009-e936-aeac70b33afd@oracle.com> Hi all, You might have heard that there is an OpenJDK project named Skara evaluating and trialing using Git for OpenJDK and GitHub for hosting the repositories [1]. We have been asked to try out Git, GitHub and the Skara tooling, as a means of validating, and to provide feedback about the Project Skara effort. There is already a number of OpenJDK projects using Git, GitHub and Skara: - OpenJFX - OpenJMC - Loom - Mobile - Panama (the "foreign" branches) - Skara A transition entails switching to Git as an SCM (see the Git manual [2]), and the repository would be hosted on GitHub [3]. After the transition, the current Mercurial repository would no longer be updated. There is currently already a read-only mirror of Valhalla in place [4], you can it use to try out Git and some of the tooling, though submitting pull requests and pushing will not work (as it is a read-only mirror). I suggest that project Valhalla transition to git, GitHub and Skara and that we set the target date for the transition to around 2 weeks from now. How about Monday the 9th of March? I also suggest we adopt GitHub's pull request workflow together with the bots from project Skara. Adopting pull requests and the Skara bots means that the review process would work partly through GitHub. In particular, all changes must start out as pull requests. Skara automatically generates webrevs, "RFR" emails and supports bi-directional syncing between mailing lists and GitHub for those that prefer using webrev and the mailing lists. If you are unfamiliar with GitHub and pull requests, I suggest checking out GitHub's guide [5]. Note that project Skara also provides CLI tools for interacting with GitHub for those that prefer working from a terminal. You can find more info about these tools on the Skara wiki page [6] or from the Skara README [7]. If you have any comments or questions regarding this transition, please reply to this thread. Cheers, Mr. Simms [1] : https://openjdk.java.net/jeps/369 [2] : https://git-scm.com/docs/user-manual [3] : https://github.com/ [4] : https://github.com/openjdk/valhalla [5] : https://guides.github.com/introduction/flow/ [6] : https://wiki.openjdk.java.net/display/SKARA/Skara [7] : https://github.com/openjdk/skara From tobias.hartmann at oracle.com Thu Feb 27 06:24:01 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Feb 2020 07:24:01 +0100 Subject: for review: 8236522: "always atomic" modifier for inline classes to enforce atomicity In-Reply-To: <02631A77-BA89-41DF-A705-225F4D9AF843@oracle.com> References: <212B1143-F1F9-45AF-8ADD-E44513BA7050@oracle.com> <6f201ace-f9e6-1ed9-6187-1e881c146d56@oracle.com> <83A8E7C7-C2CB-4F3C-A840-F6169C9E6246@oracle.com> <1113acf6-9c46-5e07-ed07-679bca4e3a94@oracle.com> <02631A77-BA89-41DF-A705-225F4D9AF843@oracle.com> Message-ID: <4079c42b-e367-b328-7cf0-c009fa021a51@oracle.com> Hi John, On 21.02.20 11:23, John Rose wrote: > Please have another look: > > http://cr.openjdk.java.net/~jrose/values/atomic-8236522 The changes to valuetypenode.cpp/hpp are not required anymore after: https://hg.openjdk.java.net/valhalla/valhalla/rev/b018052fc8b1 > (Old webrev is atomic-8236522.1) http://cr.openjdk.java.net/~jrose/values/atomic-8236522.1/ only contains one file. Didn't you have a tearing test in the first webrev thats should also be included in the new version? Best regards, Tobias From tobias.hartmann at oracle.com Thu Feb 27 07:15:49 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Thu, 27 Feb 2020 07:15:49 +0000 Subject: hg: valhalla/valhalla: 65 new changesets Message-ID: <202002270715.01R7Fq7p010718@aojmv0008.oracle.com> Changeset: 9c05db2c5715 Author: pliden Date: 2020-02-20 23:07 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9c05db2c5715 8239503: FieldLayout/OldLayoutCheck.java fails due to "RuntimeException: Misplaced int field: expected 24 to equal 12" Summary: Don't run the test with ZGC. Reviewed-by: dcubed, coleenp, dholmes ! test/hotspot/jtreg/runtime/FieldLayout/OldLayoutCheck.java Changeset: 18cc3b9dcebf Author: ihse Date: 2020-02-21 10:23 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/18cc3b9dcebf 8239566: gtest/GTestWrapper.java fails due to "libstlport.so.1: open failed: No such file or directory" Reviewed-by: redestad ! make/autoconf/hotspot.m4 ! make/autoconf/libraries.m4 Changeset: 67268dd9d46a Author: mbaesken Date: 2020-02-20 11:09 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/67268dd9d46a 8239537: cgroup MetricsTester testMemorySubsystem fails sometimes when testing memory.kmem.tcp.usage_in_bytes Reviewed-by: mseledtsov ! test/lib/jdk/test/lib/containers/cgroup/CgroupMetricsTester.java Changeset: 1958182c5315 Author: mbaesken Date: 2020-02-20 14:01 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1958182c5315 8238947: tools/jpackage tests fail with old rpmbuild versions Reviewed-by: clanger, asemenyuk ! src/jdk.incubator.jpackage/linux/classes/jdk/incubator/jpackage/internal/LinuxRpmBundler.java Changeset: 43e03e193ed8 Author: iwalulya Date: 2020-02-21 10:56 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/43e03e193ed8 8216975: Using ForceNUMA does not disable adaptive sizing with parallel gc Reviewed-by: kbarrett, tschatzl, lkorinth ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/solaris/os_solaris.cpp Changeset: b1471b50e56c Author: aoqi Date: 2020-02-19 12:09 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b1471b50e56c 8239422: [TESTBUG] compiler/c1/TestPrintIRDuringConstruction.java failed when C1 is disabled Summary: Skip test if C1 is not available. Reviewed-by: thartmann, xliu ! test/hotspot/jtreg/compiler/c1/TestPrintIRDuringConstruction.java Changeset: b0299f002b6a Author: aoqi Date: 2020-02-19 12:10 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b0299f002b6a 8239424: [TESTBUG] compiler/whitebox/OSRFailureLevel4Test.java failed when TieredCompilation is disabled Summary: Skip test if TieredCompilation is not available. Reviewed-by: thartmann ! test/hotspot/jtreg/compiler/whitebox/OSRFailureLevel4Test.java Changeset: 1bf02ccb788f Author: lucy Date: 2020-02-21 15:14 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1bf02ccb788f 8239456: vtable stub generation: assert failure (code size estimate) Reviewed-by: thartmann ! src/hotspot/cpu/x86/vtableStubs_x86_32.cpp ! src/hotspot/cpu/x86/vtableStubs_x86_64.cpp Changeset: c22b369d40b2 Author: clanger Date: 2020-02-21 16:39 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c22b369d40b2 8239556: (zipfs) remove ExistingChannelCloser facility in zipfs implementation Reviewed-by: lancea ! src/jdk.zipfs/share/classes/jdk/nio/zipfs/ZipFileSystem.java Changeset: ef47c784e37b Author: ihse Date: 2020-02-21 18:37 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ef47c784e37b 8239708: Split basics.m4 into basic.m4 and util.m4 Reviewed-by: erikj + make/autoconf/basic.m4 + make/autoconf/basic_tools.m4 + make/autoconf/basic_windows.m4 - make/autoconf/basics.m4 - make/autoconf/basics_windows.m4 ! make/autoconf/boot-jdk.m4 ! make/autoconf/build-performance.m4 ! make/autoconf/configure.ac ! make/autoconf/flags.m4 ! make/autoconf/hotspot.m4 ! make/autoconf/jdk-options.m4 ! make/autoconf/jvm-features.m4 ! make/autoconf/lib-tests.m4 ! make/autoconf/libraries.m4 ! make/autoconf/source-dirs.m4 ! make/autoconf/toolchain.m4 ! make/autoconf/toolchain_windows.m4 + make/autoconf/util.m4 + make/autoconf/util_paths.m4 + make/autoconf/util_windows.m4 Changeset: 6759c7955b3b Author: mseledtsov Date: 2020-02-21 13:01 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6759c7955b3b 8223217: [TESTBUG] Create JFR tests with JMX across container boundary Summary: Created a new test for JFR over JMX across container boundary Reviewed-by: egahlin, lmesnik + test/hotspot/jtreg/containers/docker/EventProducer.java + test/hotspot/jtreg/containers/docker/TestJFRWithJMX.java Changeset: 321b6fbe6815 Author: weijun Date: 2020-02-22 08:10 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/321b6fbe6815 8237218: Support NIST Curves verification in java implementation Reviewed-by: ascarpino ! src/java.base/share/classes/sun/security/util/ECUtil.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/ECDSAOperations.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/ECDSASignature.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/ECPrivateKeyImpl.java + test/jdk/sun/security/ec/ECDSAJavaVerify.java Changeset: 23363df27cb6 Author: dholmes Date: 2020-02-23 22:35 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/23363df27cb6 8238988: Rename thread "in stack" methods and add in_stack_range Reviewed-by: coleenp, dcubed ! src/hotspot/cpu/aarch64/frame_aarch64.cpp ! src/hotspot/cpu/arm/frame_arm.cpp ! src/hotspot/cpu/ppc/frame_ppc.cpp ! src/hotspot/cpu/s390/frame_s390.cpp ! src/hotspot/cpu/sparc/frame_sparc.cpp ! src/hotspot/cpu/x86/frame_x86.cpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/solaris/os_solaris.cpp ! src/hotspot/os/solaris/os_solaris.hpp ! src/hotspot/os_cpu/aix_ppc/os_aix_ppc.cpp ! src/hotspot/os_cpu/bsd_x86/os_bsd_x86.cpp ! src/hotspot/os_cpu/bsd_zero/os_bsd_zero.cpp ! src/hotspot/os_cpu/linux_aarch64/os_linux_aarch64.cpp ! src/hotspot/os_cpu/linux_arm/os_linux_arm.cpp ! src/hotspot/os_cpu/linux_ppc/os_linux_ppc.cpp ! src/hotspot/os_cpu/linux_s390/os_linux_s390.cpp ! src/hotspot/os_cpu/linux_s390/thread_linux_s390.cpp ! src/hotspot/os_cpu/linux_sparc/os_linux_sparc.cpp ! src/hotspot/os_cpu/linux_x86/os_linux_x86.cpp ! src/hotspot/os_cpu/linux_zero/os_linux_zero.cpp ! src/hotspot/os_cpu/solaris_sparc/os_solaris_sparc.cpp ! src/hotspot/os_cpu/solaris_x86/os_solaris_x86.cpp ! src/hotspot/os_cpu/solaris_x86/thread_solaris_x86.cpp ! src/hotspot/share/runtime/frame.cpp ! src/hotspot/share/runtime/handles.cpp ! src/hotspot/share/runtime/handles.inline.hpp ! src/hotspot/share/runtime/jniHandles.cpp ! src/hotspot/share/runtime/os.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/unhandledOops.cpp ! src/hotspot/share/utilities/vmError.cpp Changeset: 8b79fb59978e Author: mbaesken Date: 2020-02-19 13:37 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8b79fb59978e 8239457: call ReleaseStringUTFChars before early returns in Java_sun_security_pkcs11_wrapper_PKCS11_connect Reviewed-by: alanb, clanger ! src/jdk.crypto.cryptoki/unix/native/libj2pkcs11/p11_md.c Changeset: 13dc2a7f74aa Author: redestad Date: 2020-02-24 10:20 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/13dc2a7f74aa 8239235: Examine SignatureStream performance after consolidation Reviewed-by: lfoltan, coleenp ! src/hotspot/share/classfile/stackMapFrame.cpp ! src/hotspot/share/classfile/symbolTable.cpp ! src/hotspot/share/classfile/verifier.cpp ! src/hotspot/share/classfile/verifier.hpp ! src/hotspot/share/oops/symbol.cpp ! src/hotspot/share/oops/symbol.hpp ! src/hotspot/share/runtime/signature.cpp ! src/hotspot/share/runtime/signature.hpp + test/hotspot/gtest/runtime/test_signatureStream.cpp Changeset: 5c5dcd036a76 Author: pliden Date: 2020-02-24 11:01 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/5c5dcd036a76 8239533: ZGC: Make the ZProactive flag non-diagnostic Reviewed-by: eosterlund, stefank ! src/hotspot/share/gc/z/z_globals.hpp ! test/hotspot/jtreg/gc/z/TestHighUsage.java Changeset: 1db771b65440 Author: neliasso Date: 2020-02-24 11:31 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1db771b65440 8238723: yank_alloc_node must remove membar Reviewed-by: vlivanov, thartmann, roland ! src/hotspot/share/opto/macro.cpp ! test/hotspot/jtreg/compiler/allocation/TestAllocation.java Changeset: 19c8bc956f73 Author: rrich Date: 2020-02-24 12:04 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/19c8bc956f73 8239854: Non-PCH gtest build fails after JDK-8239235 due to a missing include Reviewed-by: shade, mdoerr ! test/hotspot/gtest/runtime/test_signatureStream.cpp Changeset: 38319837aeec Author: jlahoda Date: 2020-02-24 11:43 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/38319837aeec 8239536: Can't use `java.util.List` object after importing `java.awt.List` Summary: Using full qualified names for synthetic types; ensuring the user is warned when a variable becomes undefined due to a dependency change. Reviewed-by: rfield ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n.properties ! src/jdk.jshell/share/classes/jdk/jshell/ExpressionToTypeInfo.java ! test/langtools/jdk/jshell/ToolSimpleTest.java ! test/langtools/jdk/jshell/VariablesTest.java Changeset: d6dd48a23a72 Author: pliden Date: 2020-02-24 13:52 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d6dd48a23a72 8239129: ZGC: Allow -XX:AllocateHeapAt to use any filesystem Reviewed-by: stefank, pliden, ysuenaga Contributed-by: yasuenag at gmail.com, per.liden at oracle.com ! src/hotspot/os/linux/gc/z/zPhysicalMemoryBacking_linux.cpp + test/hotspot/jtreg/gc/z/TestAllocateHeapAt.java Changeset: af80fedc56a2 Author: rrich Date: 2020-02-24 14:25 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/af80fedc56a2 8239449: [TESTBUG] test/hotspot/jtreg/runtime/TLS/TestTLS.java: skip test if glibc too old for AdjustStackSizeForTLS Reviewed-by: dholmes, jiangli ! test/hotspot/jtreg/runtime/TLS/exestack-tls.c Changeset: ef1e608a5ecc Author: egahlin Date: 2020-02-24 15:03 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ef1e608a5ecc 8239581: Improve javadoc example for @jdk.jfr.Category Reviewed-by: mgronlun, mseledtsov ! src/jdk.jfr/share/classes/jdk/jfr/Category.java Changeset: fe2befa06c39 Author: eosterlund Date: 2020-02-24 14:37 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/fe2befa06c39 8234160: Enable optimized mitigation for Intel jcc erratum in C2 Reviewed-by: thartmann, vlivanov, pliden + src/hotspot/cpu/x86/c2_intelJccErratum_x86.cpp + src/hotspot/cpu/x86/c2_intelJccErratum_x86.hpp ! src/hotspot/cpu/x86/gc/z/z_x86_64.ad ! src/hotspot/cpu/x86/vm_version_x86.cpp ! src/hotspot/cpu/x86/vm_version_x86.hpp ! src/hotspot/share/opto/node.hpp ! src/hotspot/share/opto/output.cpp Changeset: d3b8307bd677 Author: hannesw Date: 2020-02-24 16:42 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d3b8307bd677 8232438: Remove ?is-external=true from external links Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/DocLink.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/DocPath.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Extern.java ! test/langtools/jdk/javadoc/doclet/testClassCrossReferences/TestClassCrossReferences.java ! test/langtools/jdk/javadoc/doclet/testDocRootInlineTag/TestDocRootInlineTag.java ! test/langtools/jdk/javadoc/doclet/testExternalOverridenMethod/TestExternalOverridenMethod.java ! test/langtools/jdk/javadoc/doclet/testHref/TestHref.java ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOption.java ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOptionWithAutomaticModule.java ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOptionWithModule.java ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestRedirectLinks.java ! test/langtools/jdk/javadoc/doclet/testModules/TestModules.java ! test/langtools/jdk/javadoc/doclet/testTitleInHref/TestTitleInHref.java Changeset: 207fa617f855 Author: egahlin Date: 2020-02-24 17:10 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/207fa617f855 8239585: JFR: Native events should support empty payloads Reviewed-by: mgronlun ! make/src/classes/build/tools/jfr/GenerateJfrFiles.java ! src/hotspot/share/jfr/metadata/metadata.xsd Changeset: 9374fc702a03 Author: egahlin Date: 2020-02-24 17:23 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9374fc702a03 8239793: 'jfr' tool should hide hidden frames Reviewed-by: mgronlun, mseledtsov ! src/jdk.jfr/share/classes/jdk/jfr/internal/tool/PrettyWriter.java Changeset: 2dcefc0b8a6d Author: dfuchs Date: 2020-02-24 17:19 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2dcefc0b8a6d 8239052: java/net/httpclient/whitebox/SSLEchoTubeTestDriver.java failed with BufferUnderflowException against TLSv1.3 Summary: The test assumed that ByteBuffer would be split at long boundaries. This is obviously not always the case. A carry has been added to support reading a long split over several buffers. Reviewed-by: chegar ! test/jdk/java/net/httpclient/HandshakeFailureTest.java ! test/jdk/java/net/httpclient/whitebox/java.net.http/jdk/internal/net/http/AbstractSSLTubeTest.java Changeset: 582928e18beb Author: shade Date: 2020-02-24 18:30 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/582928e18beb 8239868: Shenandoah: ditch C2 node limit adjustments Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahArguments.cpp Changeset: d33754052039 Author: shade Date: 2020-02-24 18:30 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d33754052039 8239492: [x86] Turn MacroAssembler::verify_oop into macro recording file and line Reviewed-by: rrich, vlivanov, pliden ! src/hotspot/cpu/x86/gc/z/zBarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/share/gc/z/zVerify.cpp Changeset: d8c731f7aeda Author: iignatyev Date: 2020-02-24 11:50 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d8c731f7aeda 8238943: switch to jtreg 5.0 Reviewed-by: erikj, jjg, joehw ! make/conf/jib-profiles.js ! test/hotspot/jtreg/TEST.ROOT ! test/jaxp/TEST.ROOT ! test/jdk/TEST.ROOT ! test/langtools/TEST.ROOT ! test/nashorn/TEST.ROOT Changeset: 4202cb763872 Author: naoto Date: 2020-02-24 12:20 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/4202cb763872 8239837: Typo in source code of ZoneOffsetTransitionRule leaking to Javadocs Reviewed-by: lancea ! src/java.base/share/classes/java/time/zone/ZoneOffsetTransitionRule.java Changeset: be0c5da2d83f Author: naoto Date: 2020-02-24 14:16 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/be0c5da2d83f 8239520: ValueRange.of(long, long, long) does not throw IAE on invalid inputs Reviewed-by: rriggs ! src/java.base/share/classes/java/time/temporal/ValueRange.java ! test/jdk/java/time/test/java/time/temporal/TestDateTimeValueRange.java Changeset: 6214823ce3d8 Author: ddong Date: 2020-02-24 23:24 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/6214823ce3d8 8237499: JFR: Include stack trace in the ThreadStart event Reviewed-by: egahlin ! src/hotspot/share/jfr/metadata/metadata.xml ! src/hotspot/share/jfr/support/jfrThreadLocal.cpp ! src/hotspot/share/jfr/support/jfrThreadLocal.hpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jvm.cpp ! src/jdk.jfr/share/conf/jfr/default.jfc ! src/jdk.jfr/share/conf/jfr/profile.jfc ! test/jdk/jdk/jfr/event/runtime/TestThreadStartEndEvents.java Changeset: f965bceba123 Author: cito Date: 2020-02-25 03:28 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f965bceba123 8219904: ClassCastException when calling FlightRecorderMXBean#getRecordings() Reviewed-by: egahlin, mseledtsov ! src/jdk.management.jfr/share/classes/jdk/management/jfr/RecordingInfo.java ! test/jdk/jdk/jfr/jmx/JmxHelper.java ! test/jdk/jdk/jfr/jmx/TestGetRecordings.java Changeset: 1c7da538f065 Author: jiefu Date: 2020-02-25 10:34 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/1c7da538f065 8239886: Minimal VM build fails after JDK-8237499 Reviewed-by: dholmes ! src/hotspot/share/prims/jni.cpp Changeset: d6b968af8b65 Author: fmatte Date: 2020-02-24 23:44 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d6b968af8b65 8239557: [TESTBUG] VeryEarlyAssertTest.java validating "END." marker at lastline is not always true Reviewed-by: dholmes, mseledtsov ! test/hotspot/jtreg/runtime/ErrorHandling/VeryEarlyAssertTest.java Changeset: 22422bef1c5d Author: jiefu Date: 2020-02-25 16:22 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/22422bef1c5d 8239885: [TESTBUG] compiler/allocation/TestAllocation.java fails with release VMs Reviewed-by: thartmann ! test/hotspot/jtreg/compiler/allocation/TestAllocation.java Changeset: 874f29bf3f44 Author: ihse Date: 2020-02-25 09:37 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/874f29bf3f44 8239860: Add support for testing the configure script Reviewed-by: erikj ! make/RunTests.gmk ! make/autoconf/util.m4 ! test/make/TestMake.gmk + test/make/autoconf/test-configure.sh + test/make/autoconf/test.m4 Changeset: d2cd0d717997 Author: ihse Date: 2020-02-25 09:41 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/d2cd0d717997 8239789: Follow-up on JVM feature rewrite Reviewed-by: erikj, pliden, egahlin ! make/autoconf/help.m4 ! make/autoconf/jvm-features.m4 ! make/autoconf/util.m4 Changeset: 4f902f017def Author: ihse Date: 2020-02-25 09:46 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/4f902f017def 8239794: Move -Os from JVM feature 'minimal' to new feature 'opt-size' Reviewed-by: erikj, dholmes ! make/autoconf/jvm-features.m4 ! make/hotspot/lib/JvmFeatures.gmk Changeset: 695c6b0986c3 Author: shade Date: 2020-02-25 12:35 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/695c6b0986c3 8239904: Shenandoah: accumulated penalties should not be over 100% of capacity Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeuristics.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeuristics.hpp Changeset: 9b33b25a7198 Author: itakiguchi Date: 2020-02-25 22:47 +0900 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9b33b25a7198 8235834: IBM-943 charset encoder needs updating Summary: Apply 34B003AF.RPMAP130 definition into encoder Reviewed-by: naoto + make/data/charsetmapping/IBM943.c2b ! test/jdk/sun/nio/cs/TestIBMBugs.java Changeset: 9e359ab51ce6 Author: sgehwolf Date: 2020-02-20 20:56 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/9e359ab51ce6 8239559: Cgroups: Incorrect detection logic on some systems Summary: Adjust heuristic with cgroup mounts according to mountinfo Reviewed-by: bobv, mbaesken ! src/java.base/linux/classes/jdk/internal/platform/CgroupSubsystemFactory.java + test/jdk/jdk/internal/platform/cgroup/TestCgroupSubsystemFactory.java Changeset: a268c653f404 Author: egahlin Date: 2020-02-25 20:45 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a268c653f404 8223066: "jfr metadata" output the @Name annotation twice Reviewed-by: mgronlun, egahlin Contributed-by: erik.gahlin at oracle.com, chiroito107 at gmail.com ! src/jdk.jfr/share/classes/jdk/jfr/internal/tool/PrettyWriter.java ! test/jdk/jdk/jfr/tool/TestMetadata.java Changeset: 16973c5b27be Author: naoto Date: 2020-02-25 15:49 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/16973c5b27be 8239976: Put JDK-8239965 on the ProblemList.txt Reviewed-by: dcubed ! test/jdk/ProblemList.txt Changeset: ff1f4b5e0c9a Author: pli Date: 2020-02-26 09:33 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/ff1f4b5e0c9a 8239549: AArch64: Backend support for MulAddVS2VI node Reviewed-by: aph ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/cpu/aarch64/vm_version_aarch64.cpp ! test/hotspot/jtreg/compiler/loopopts/superword/Vec_MulAddS2I.java Changeset: cf96533fd215 Author: darcy Date: 2020-02-25 17:50 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/cf96533fd215 8193553: Provide better guidance on using javax.lang.model visitors Reviewed-by: jjg ! src/java.compiler/share/classes/javax/lang/model/element/AnnotationValueVisitor.java ! src/java.compiler/share/classes/javax/lang/model/element/ElementVisitor.java ! src/java.compiler/share/classes/javax/lang/model/type/TypeVisitor.java Changeset: a8bca51623b6 Author: ngasson Date: 2020-02-26 09:58 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a8bca51623b6 8238705: [TESTBUG] jfr/event/gc/stacktrace/TestMetaspace* are stable with Xcomp on AArch64 Reviewed-by: mseledtsov, egahlin ! test/jdk/jdk/jfr/event/gc/stacktrace/TestMetaspaceG1GCAllocationPendingStackTrace.java ! test/jdk/jdk/jfr/event/gc/stacktrace/TestMetaspaceParallelGCAllocationPendingStackTrace.java ! test/jdk/jdk/jfr/event/gc/stacktrace/TestMetaspaceSerialGCAllocationPendingStackTrace.java Changeset: afeefc19ecb9 Author: aoqi Date: 2020-02-26 00:07 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/afeefc19ecb9 8239423: jdk/jfr/jvm/TestJFRIntrinsic.java failed with -XX:-TieredCompilation Reviewed-by: iignatyev, dholmes ! src/hotspot/share/prims/whitebox.cpp Changeset: 61ee15b9a1ac Author: mbaesken Date: 2020-02-24 09:59 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/61ee15b9a1ac 8239462: jdk.hotspot.agent misses some ReleaseStringUTFChars calls in case of early returns Reviewed-by: clanger, amenkov, sspitsyn ! src/jdk.hotspot.agent/linux/native/libsaproc/LinuxDebuggerLocal.cpp ! src/jdk.hotspot.agent/macosx/native/libsaproc/MacosxDebuggerLocal.m ! src/jdk.hotspot.agent/solaris/native/libsaproc/saproc.cpp Changeset: 582e5f2661c3 Author: xliu Date: 2020-02-26 12:35 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/582e5f2661c3 8239066: make LinkedList more generic Reviewed-by: phh, simonis ! src/hotspot/share/utilities/linkedlist.hpp ! test/hotspot/gtest/utilities/test_linkedlist.cpp Changeset: c27d95f72ba8 Author: coffeys Date: 2020-02-26 18:06 +0300 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c27d95f72ba8 8238452: Keytool generates wrong expiration date if validity is set to 2050/01/01 Reviewed-by: pkoppula, weijun, coffeys Contributed-by: ravi.k.reddy at oracle.com ! src/java.base/share/classes/sun/security/x509/CertificateValidity.java ! src/java.base/share/classes/sun/security/x509/X509CRLEntryImpl.java ! src/java.base/share/classes/sun/security/x509/X509CRLImpl.java + test/jdk/sun/security/x509/X509CertImpl/CertificateValidation.java Changeset: 230455dd03c1 Author: prappo Date: 2020-02-26 15:34 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/230455dd03c1 8239876: Improve SearchIndexItem Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractIndexWriter.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/HtmlDoclet.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/SearchIndexItem.java + src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SearchIndexItems.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/SystemPropertiesWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TagletWriterImpl.java Changeset: 0c158c2a2385 Author: iignatyev Date: 2020-02-26 10:09 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0c158c2a2385 8239500: jittester shouldn't use non-deterministic System methods Reviewed-by: lmesnik, thartmann ! test/hotspot/jtreg/testlibrary/jittester/conf/exclude.methods.lst Changeset: 495566ff7149 Author: shade Date: 2020-02-26 19:36 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/495566ff7149 8240069: Shenandoah: turn more flags diagnostic Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoah_globals.hpp ! test/hotspot/jtreg/gc/shenandoah/options/TestCodeCacheRootStyles.java Changeset: a1be565c0afe Author: shade Date: 2020-02-26 19:36 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/a1be565c0afe 8240070: Shenandoah: remove obsolete ShenandoahCommonGCStateLoads Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.hpp ! src/hotspot/share/gc/shenandoah/shenandoah_globals.hpp - test/hotspot/jtreg/gc/shenandoah/compiler/TestCommonGCLoads.java Changeset: 525cbaab106d Author: shade Date: 2020-02-26 19:36 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/525cbaab106d 8240076: Shenandoah: pacer should cover reset and preclean phases Reviewed-by: zgu ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahPacer.cpp ! src/hotspot/share/gc/shenandoah/shenandoahPacer.hpp Changeset: 2ec0ff304263 Author: kbarrett Date: 2020-02-26 14:36 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/2ec0ff304263 8238979: Improve G1DirtyCardQueueSet handling of previously paused buffers Summary: Move enqueuing of previously paused buffers. Reviewed-by: sangheki, sjohanss ! src/hotspot/share/gc/g1/g1DirtyCardQueue.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.hpp Changeset: f67951f722a4 Author: redestad Date: 2020-02-26 21:24 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/f67951f722a4 8240094: Optimize empty substring handling Reviewed-by: redestad, igerasim, jlaskey Contributed-by: sergei.tsypanov at yandex.ru ! src/java.base/share/classes/java/lang/String.java ! src/java.base/share/classes/java/lang/StringLatin1.java ! src/java.base/share/classes/java/lang/StringUTF16.java ! test/micro/org/openjdk/bench/java/lang/StringSubstring.java Changeset: 541b03673cdb Author: dcubed Date: 2020-02-26 19:33 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/541b03673cdb 8240132: ProblemList com/sun/jdi/InvokeHangTest.java Reviewed-by: mikael ! test/jdk/ProblemList.txt Changeset: bccb9f3423e3 Author: dcubed Date: 2020-02-26 19:39 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/bccb9f3423e3 8240134: ProblemList javax/script/Test7.java Reviewed-by: dholmes ! test/jdk/ProblemList.txt Changeset: 57849c7f9d22 Author: dcubed Date: 2020-02-26 19:41 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/57849c7f9d22 8240135: ProblemList vmTestbase/vm/mlvm/meth/stress/compiler/deoptimize/Test.java#id1 Reviewed-by: iignatyev, dholmes ! test/hotspot/jtreg/ProblemList.txt Changeset: 95c882e86df2 Author: jwilhelm Date: 2020-02-27 03:10 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/95c882e86df2 Added tag jdk-15+12 for changeset 2ec0ff304263 ! .hgtags Changeset: 76f3aaaffd3c Author: dholmes Date: 2020-02-26 23:10 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/76f3aaaffd3c 8240141: Incorrect copyright header in src/hotspot/os_cpu/linux_sparc/os_linux_sparc.cpp Reviewed-by: iignatyev ! src/hotspot/os_cpu/linux_sparc/os_linux_sparc.cpp Changeset: 3b9b5cb7586f Author: amlu Date: 2020-02-27 12:19 +0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3b9b5cb7586f 8239979: sun/security/tools/keytool/ExtOptionCamelCase.java is not run Reviewed-by: rhalade ! test/jdk/sun/security/tools/keytool/ExtOptionCamelCase.java From tobias.hartmann at oracle.com Thu Feb 27 12:32:39 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Thu, 27 Feb 2020 12:32:39 +0000 Subject: hg: valhalla/valhalla: Merge Message-ID: <202002271232.01RCWeqZ004195@aojmv0008.oracle.com> Changeset: 79133d98703f Author: thartmann Date: 2020-02-27 13:30 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/79133d98703f Merge ! .hgtags - make/Help.gmk ! make/Images.gmk - make/autoconf/basics.m4 - make/autoconf/basics_windows.m4 ! make/autoconf/hotspot.m4 ! make/conf/jib-profiles.js ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_Runtime1_aarch64.cpp ! src/hotspot/cpu/aarch64/frame_aarch64.cpp ! src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/templateTable_aarch64.cpp ! src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp ! src/hotspot/cpu/s390/interp_masm_s390.cpp ! src/hotspot/cpu/sparc/interp_masm_sparc.cpp ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp ! src/hotspot/cpu/x86/frame_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.hpp ! src/hotspot/cpu/x86/gc/z/zBarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/vm_version_x86.cpp ! src/hotspot/cpu/x86/vtableStubs_x86_64.cpp ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/adlc/main.cpp ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/c1/c1_RangeCheckElimination.hpp ! src/hotspot/share/classfile/fieldLayoutBuilder.cpp ! src/hotspot/share/classfile/fieldLayoutBuilder.hpp ! src/hotspot/share/classfile/stackMapFrame.cpp ! src/hotspot/share/classfile/verifier.cpp ! src/hotspot/share/classfile/verifier.hpp ! src/hotspot/share/code/vtableStubs.cpp ! src/hotspot/share/gc/parallel/psCompactionManager.cpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psPromotionManager.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/logging/logTag.hpp ! src/hotspot/share/oops/klass.cpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/symbol.cpp ! src/hotspot/share/oops/symbol.hpp ! src/hotspot/share/opto/arraycopynode.cpp ! src/hotspot/share/opto/c2_globals.hpp ! src/hotspot/share/opto/callnode.cpp ! src/hotspot/share/opto/classes.cpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/divnode.cpp ! src/hotspot/share/opto/escape.cpp ! src/hotspot/share/opto/graphKit.cpp ! src/hotspot/share/opto/graphKit.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/loopopts.cpp ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/macro.hpp ! src/hotspot/share/opto/macroArrayCopy.cpp ! src/hotspot/share/opto/memnode.cpp ! src/hotspot/share/opto/mulnode.cpp ! src/hotspot/share/opto/node.cpp ! src/hotspot/share/opto/node.hpp ! src/hotspot/share/opto/output.cpp ! src/hotspot/share/opto/parse.hpp ! src/hotspot/share/opto/parse2.cpp ! src/hotspot/share/opto/subnode.cpp ! src/hotspot/share/opto/type.cpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/prims/jvmtiEnv.cpp ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/deoptimization.hpp ! src/hotspot/share/runtime/frame.cpp ! src/hotspot/share/runtime/handles.cpp ! src/hotspot/share/runtime/handles.inline.hpp ! src/hotspot/share/runtime/jniHandles.cpp ! src/hotspot/share/runtime/signature.cpp ! src/hotspot/share/runtime/signature.hpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/vmOperations.cpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/hotspot/share/utilities/globalDefinitions.cpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! src/hotspot/share/utilities/powerOfTwo.hpp - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/Metrics.java - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/SubSystem.java ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/invoke/MethodHandleInfo.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/lang/invoke/MethodType.java ! src/java.base/share/classes/java/lang/reflect/Method.java ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java ! src/java.base/share/classes/jdk/internal/misc/Unsafe.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/AArch64MacroAssemblerTest.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/src/org/graalvm/compiler/hotspot/meta/HotSpotGCProvider.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/replacements/NewObjectSnippets.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/Access.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/HeapAccess.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryCheckpoint.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/GCProvider.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/TEST.groups + test/hotspot/jtreg/compiler/c2/TestVerifyGraphEdges.java - test/hotspot/jtreg/gc/shenandoah/compiler/TestCommonGCLoads.java - test/hotspot/jtreg/runtime/7116786/Test7116786.java - test/hotspot/jtreg/runtime/7116786/testcases.jar - test/hotspot/jtreg/runtime/EnclosingMethodAttr/enclMethodAttr.jar - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVT.cod - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVTT.cod - test/hotspot/jtreg/runtime/LocalVariableTable/NotFoundLVTT.cod - test/hotspot/jtreg/runtime/LocalVariableTable/testcase.jar - test/hotspot/jtreg/runtime/classFileParserBug/emptynumbootstrapmethods.jar - test/hotspot/jtreg/runtime/classFileParserBug/test.jar - test/hotspot/jtreg/runtime/duplAttributes/test.jar ! test/jdk/ProblemList.txt ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOption.java ! test/langtools/jdk/javadoc/doclet/testModules/TestModules.java ! test/langtools/jdk/jshell/ToolSimpleTest.java ! test/langtools/jdk/jshell/VariablesTest.java From tobias.hartmann at oracle.com Thu Feb 27 12:53:04 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Thu, 27 Feb 2020 12:53:04 +0000 Subject: hg: valhalla/valhalla: 8240174: [lworld] C2 compilation fails with -XX:+VerifyGraphEdges Message-ID: <202002271253.01RCr4lX018065@aojmv0008.oracle.com> Changeset: 3c1d6d6335ca Author: thartmann Date: 2020-02-27 13:52 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/3c1d6d6335ca 8240174: [lworld] C2 compilation fails with -XX:+VerifyGraphEdges ! src/hotspot/share/opto/node.cpp ! test/hotspot/jtreg/compiler/c2/TestVerifyGraphEdges.java From mandy.chung at oracle.com Thu Feb 27 18:17:29 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Thu, 27 Feb 2020 18:17:29 +0000 Subject: hg: valhalla/valhalla: 6 new changesets Message-ID: <202002271817.01RIHU2B025067@aojmv0008.oracle.com> Changeset: 495d1a4eee04 Author: rraghavan Date: 2020-02-27 16:06 +0530 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/495d1a4eee04 8235995: Remove src/jdk.internal.vm.compiler/.mx.graal directory Summary: Removed src/jdk.internal.vm.compiler/.mx.graal directory and files Reviewed-by: dlong - src/jdk.internal.vm.compiler/.mx.graal/.project - src/jdk.internal.vm.compiler/.mx.graal/.pydevproject - src/jdk.internal.vm.compiler/.mx.graal/eclipse-settings/org.eclipse.jdt.core.prefs - src/jdk.internal.vm.compiler/.mx.graal/mx_graal.py - src/jdk.internal.vm.compiler/.mx.graal/mx_graal_9.py - src/jdk.internal.vm.compiler/.mx.graal/mx_graal_bench.py - src/jdk.internal.vm.compiler/.mx.graal/outputparser.py - src/jdk.internal.vm.compiler/.mx.graal/sanitycheck.py - src/jdk.internal.vm.compiler/.mx.graal/suite.py Changeset: c87cb2daad04 Author: neliasso Date: 2020-02-27 13:11 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c87cb2daad04 8239878: Bug in PrintEliminateAllocations code causes TestClhsdbJstackLock.java to fail Reviewed-by: shade ! src/hotspot/share/opto/macro.cpp Changeset: e6336e3c5984 Author: hseigel Date: 2020-02-27 13:00 +0000 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/e6336e3c5984 8235225: Replace CHECK_0 with CHECK_NULL for non-integer returning methods Summary: Change CHECK_0 to CHECK_NULL and CHECK_false where appropriate Reviewed-by: mikael, dholmes, coleenp ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/classfile/classListParser.cpp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/systemDictionary.cpp ! src/hotspot/share/classfile/systemDictionaryShared.cpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/oops/arrayKlass.cpp ! src/hotspot/share/oops/objArrayKlass.cpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp ! src/hotspot/share/services/management.cpp ! src/hotspot/share/services/memoryManager.cpp Changeset: b5745158500a Author: zgu Date: 2020-02-26 15:32 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/b5745158500a 8237632: Shenandoah: accept NULL fwdptr to cooperate with JVMTI and JFR Reviewed-by: shade, rkennke ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.hpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahForwarding.hpp ! src/hotspot/share/gc/shenandoah/shenandoahForwarding.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp Changeset: 0b02c862a03e Author: dcubed Date: 2020-02-27 11:34 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/0b02c862a03e 8239873: [TESTBUG] FieldLayout/OldLayoutCheck.java fails after the fix for JDK-8239503 Summary: Don't run the test with -XX:-UseCompressedOops. Reviewed-by: fparain, hseigel ! test/hotspot/jtreg/runtime/FieldLayout/OldLayoutCheck.java Changeset: 8f26915495d6 Author: zgu Date: 2020-02-27 12:17 -0500 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/8f26915495d6 8239354: Shenandoah: minor enhancements to traversal GC Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.cpp From mandy.chung at oracle.com Thu Feb 27 19:01:01 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Thu, 27 Feb 2020 19:01:01 +0000 Subject: hg: valhalla/valhalla: Merge Message-ID: <202002271901.01RJ12sE021698@aojmv0008.oracle.com> Changeset: c49c07273a93 Author: mchung Date: 2020-02-27 11:00 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/c49c07273a93 Merge - make/autoconf/basics.m4 - make/autoconf/basics_windows.m4 ! src/hotspot/share/classfile/classFileParser.cpp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/systemDictionary.cpp ! src/hotspot/share/classfile/systemDictionaryShared.cpp ! src/hotspot/share/classfile/verifier.cpp ! src/hotspot/share/oops/arrayKlass.cpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp - src/jdk.internal.vm.compiler/.mx.graal/.project - src/jdk.internal.vm.compiler/.mx.graal/.pydevproject - src/jdk.internal.vm.compiler/.mx.graal/eclipse-settings/org.eclipse.jdt.core.prefs - src/jdk.internal.vm.compiler/.mx.graal/mx_graal.py - src/jdk.internal.vm.compiler/.mx.graal/mx_graal_9.py - src/jdk.internal.vm.compiler/.mx.graal/mx_graal_bench.py - src/jdk.internal.vm.compiler/.mx.graal/outputparser.py - src/jdk.internal.vm.compiler/.mx.graal/sanitycheck.py - src/jdk.internal.vm.compiler/.mx.graal/suite.py ! test/hotspot/jtreg/ProblemList.txt - test/hotspot/jtreg/gc/shenandoah/compiler/TestCommonGCLoads.java ! test/jdk/ProblemList.txt From mandy.chung at oracle.com Thu Feb 27 22:40:04 2020 From: mandy.chung at oracle.com (Mandy Chung) Date: Thu, 27 Feb 2020 14:40:04 -0800 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: References: Message-ID: <0bd8f264-ab50-be48-b6b1-9a22693c2383@oracle.com> I think we should add @Deprecated in the Object constructor. Otherwise, looks fine. Mandy On 2/25/20 11:20 AM, Roger Riggs wrote: > Please review the static factory of an IdentityObject to replace "new > Object()" > as mentioned in [1]. > > No replacements proposed yet.? There are 504 instances of "new > Object()" in JDK modules. > @@ -38,15 +38,36 @@ > > ? */ > ?public class Object { > > ???? /** > ????? * Constructs a new object. > +???? * @apiNote {@link Object#newIdentity} should be used instead of > {@code new Object()}. > ????? */ > ???? @HotSpotIntrinsicCandidate > ???? public Object() {} > > ???? /** > +???? * Constructs a new Object implementing the IdentityObject > interface. > +???? * The object is a unique IdentityObject suitable for all purposes > +???? * that previously for which {@code new Object{}} was used > including synchronization, > +???? * mutexes and unique placeholders. > +???? * > +???? * @return a new Object implementing the IdentityObject interface > +???? * @since Valhalla > +???? */ > +??? public static IdentityObject newIdentity() { > +??????? return new IdentityInstance(); > +??? } > + > +??? /** > +???? * IdentityInstance replaces plain {@code new Object()}. > +???? */ > +??? private final static class IdentityInstance implements > IdentityObject { > +??????? private IdentityInstance() {} > +??? } > + > > > As a Webrev: > http://cr.openjdk.java.net/~rriggs/webrev-object-newinstance-8239929/ > > Thanks, Roger > > [1] > http://cr.openjdk.java.net/~briangoetz/valhalla/sov/02-object-model.html From jesper at selskabet.org Thu Feb 27 22:44:27 2020 From: jesper at selskabet.org (=?utf-8?Q?Jesper_Steen_M=C3=B8ller?=) Date: Thu, 27 Feb 2020 23:44:27 +0100 Subject: hg: valhalla/valhalla: Merge In-Reply-To: <202002271232.01RCWeqZ004195@aojmv0008.oracle.com> References: <202002271232.01RCWeqZ004195@aojmv0008.oracle.com> Message-ID: <31732893-4C2F-4B17-8268-E91BF1A1A0B2@selskabet.org> Hi List and Tobias Since this commit, I can?t build the tip of the lworld branch? Is there a CI server somewhere that I can compare with? -Jesper > On 27 Feb 2020, at 13.32, tobias.hartmann at oracle.com wrote: > > Changeset: 79133d98703f > Author: thartmann > Date: 2020-02-27 13:30 +0100 > URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/79133d98703f > > Merge > > ! .hgtags > - make/Help.gmk > ! make/Images.gmk > - make/autoconf/basics.m4 > - make/autoconf/basics_windows.m4 > ! make/autoconf/hotspot.m4 > ! make/conf/jib-profiles.js > ! src/hotspot/cpu/aarch64/aarch64.ad > ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp > ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp > ! src/hotspot/cpu/aarch64/c1_Runtime1_aarch64.cpp > ! src/hotspot/cpu/aarch64/frame_aarch64.cpp > ! src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp > ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp > ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp > ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp > ! src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp > ! src/hotspot/cpu/aarch64/templateTable_aarch64.cpp > ! src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp > ! src/hotspot/cpu/s390/interp_masm_s390.cpp > ! src/hotspot/cpu/sparc/interp_masm_sparc.cpp > ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp > ! src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp > ! src/hotspot/cpu/x86/frame_x86.cpp > ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp > ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.hpp > ! src/hotspot/cpu/x86/gc/z/zBarrierSetAssembler_x86.cpp > ! src/hotspot/cpu/x86/interp_masm_x86.cpp > ! src/hotspot/cpu/x86/interp_masm_x86.hpp > ! src/hotspot/cpu/x86/macroAssembler_x86.cpp > ! src/hotspot/cpu/x86/macroAssembler_x86.hpp > ! src/hotspot/cpu/x86/vm_version_x86.cpp > ! src/hotspot/cpu/x86/vtableStubs_x86_64.cpp > ! src/hotspot/cpu/x86/x86_64.ad > ! src/hotspot/share/adlc/main.cpp > ! src/hotspot/share/c1/c1_GraphBuilder.cpp > ! src/hotspot/share/c1/c1_LIRGenerator.cpp > ! src/hotspot/share/c1/c1_RangeCheckElimination.hpp > ! src/hotspot/share/classfile/fieldLayoutBuilder.cpp > ! src/hotspot/share/classfile/fieldLayoutBuilder.hpp > ! src/hotspot/share/classfile/stackMapFrame.cpp > ! src/hotspot/share/classfile/verifier.cpp > ! src/hotspot/share/classfile/verifier.hpp > ! src/hotspot/share/code/vtableStubs.cpp > ! src/hotspot/share/gc/parallel/psCompactionManager.cpp > ! src/hotspot/share/gc/parallel/psParallelCompact.cpp > ! src/hotspot/share/gc/parallel/psPromotionManager.cpp > ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp > ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp > ! src/hotspot/share/logging/logTag.hpp > ! src/hotspot/share/oops/klass.cpp > ! src/hotspot/share/oops/method.cpp > ! src/hotspot/share/oops/symbol.cpp > ! src/hotspot/share/oops/symbol.hpp > ! src/hotspot/share/opto/arraycopynode.cpp > ! src/hotspot/share/opto/c2_globals.hpp > ! src/hotspot/share/opto/callnode.cpp > ! src/hotspot/share/opto/classes.cpp > ! src/hotspot/share/opto/classes.hpp > ! src/hotspot/share/opto/compile.cpp > ! src/hotspot/share/opto/divnode.cpp > ! src/hotspot/share/opto/escape.cpp > ! src/hotspot/share/opto/graphKit.cpp > ! src/hotspot/share/opto/graphKit.hpp > ! src/hotspot/share/opto/library_call.cpp > ! src/hotspot/share/opto/loopopts.cpp > ! src/hotspot/share/opto/macro.cpp > ! src/hotspot/share/opto/macro.hpp > ! src/hotspot/share/opto/macroArrayCopy.cpp > ! src/hotspot/share/opto/memnode.cpp > ! src/hotspot/share/opto/mulnode.cpp > ! src/hotspot/share/opto/node.cpp > ! src/hotspot/share/opto/node.hpp > ! src/hotspot/share/opto/output.cpp > ! src/hotspot/share/opto/parse.hpp > ! src/hotspot/share/opto/parse2.cpp > ! src/hotspot/share/opto/subnode.cpp > ! src/hotspot/share/opto/type.cpp > ! src/hotspot/share/prims/jni.cpp > ! src/hotspot/share/prims/jvm.cpp > ! src/hotspot/share/prims/jvmtiEnv.cpp > ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp > ! src/hotspot/share/prims/whitebox.cpp > ! src/hotspot/share/runtime/arguments.cpp > ! src/hotspot/share/runtime/deoptimization.cpp > ! src/hotspot/share/runtime/deoptimization.hpp > ! src/hotspot/share/runtime/frame.cpp > ! src/hotspot/share/runtime/handles.cpp > ! src/hotspot/share/runtime/handles.inline.hpp > ! src/hotspot/share/runtime/jniHandles.cpp > ! src/hotspot/share/runtime/signature.cpp > ! src/hotspot/share/runtime/signature.hpp > ! src/hotspot/share/runtime/thread.cpp > ! src/hotspot/share/runtime/thread.hpp > ! src/hotspot/share/runtime/vmOperations.cpp > ! src/hotspot/share/runtime/vmStructs.cpp > ! src/hotspot/share/utilities/globalDefinitions.cpp > ! src/hotspot/share/utilities/globalDefinitions.hpp > ! src/hotspot/share/utilities/powerOfTwo.hpp > - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/Metrics.java > - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/SubSystem.java > ! src/java.base/share/classes/java/lang/Class.java > ! src/java.base/share/classes/java/lang/invoke/MethodHandleInfo.java > ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java > ! src/java.base/share/classes/java/lang/invoke/MethodType.java > ! src/java.base/share/classes/java/lang/reflect/Method.java > ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java > ! src/java.base/share/classes/jdk/internal/misc/Unsafe.java > ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java > ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java > ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties > - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/AArch64MacroAssemblerTest.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/src/org/graalvm/compiler/hotspot/meta/HotSpotGCProvider.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/replacements/NewObjectSnippets.java > - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/Access.java > - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/HeapAccess.java > - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryCheckpoint.java > - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/GCProvider.java > ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java > ! test/hotspot/jtreg/ProblemList.txt > ! test/hotspot/jtreg/TEST.groups > + test/hotspot/jtreg/compiler/c2/TestVerifyGraphEdges.java > - test/hotspot/jtreg/gc/shenandoah/compiler/TestCommonGCLoads.java > - test/hotspot/jtreg/runtime/7116786/Test7116786.java > - test/hotspot/jtreg/runtime/7116786/testcases.jar > - test/hotspot/jtreg/runtime/EnclosingMethodAttr/enclMethodAttr.jar > - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVT.cod > - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVTT.cod > - test/hotspot/jtreg/runtime/LocalVariableTable/NotFoundLVTT.cod > - test/hotspot/jtreg/runtime/LocalVariableTable/testcase.jar > - test/hotspot/jtreg/runtime/classFileParserBug/emptynumbootstrapmethods.jar > - test/hotspot/jtreg/runtime/classFileParserBug/test.jar > - test/hotspot/jtreg/runtime/duplAttributes/test.jar > ! test/jdk/ProblemList.txt > ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOption.java > ! test/langtools/jdk/javadoc/doclet/testModules/TestModules.java > ! test/langtools/jdk/jshell/ToolSimpleTest.java > ! test/langtools/jdk/jshell/VariablesTest.java > From brian.goetz at oracle.com Thu Feb 27 23:15:55 2020 From: brian.goetz at oracle.com (Brian Goetz) Date: Thu, 27 Feb 2020 18:15:55 -0500 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: <0bd8f264-ab50-be48-b6b1-9a22693c2383@oracle.com> References: <0bd8f264-ab50-be48-b6b1-9a22693c2383@oracle.com> Message-ID: Agree we should deprecate. In this case removal will actually be downgrading to protected. Sent from my MacBook Wheel > On Feb 27, 2020, at 5:40 PM, Mandy Chung wrote: > > ?I think we should add @Deprecated in the Object constructor. > > Otherwise, looks fine. > > Mandy > >> On 2/25/20 11:20 AM, Roger Riggs wrote: >> Please review the static factory of an IdentityObject to replace "new Object()" >> as mentioned in [1]. >> >> No replacements proposed yet. There are 504 instances of "new Object()" in JDK modules. >> @@ -38,15 +38,36 @@ >> >> */ >> public class Object { >> >> /** >> * Constructs a new object. >> + * @apiNote {@link Object#newIdentity} should be used instead of {@code new Object()}. >> */ >> @HotSpotIntrinsicCandidate >> public Object() {} >> >> /** >> + * Constructs a new Object implementing the IdentityObject interface. >> + * The object is a unique IdentityObject suitable for all purposes >> + * that previously for which {@code new Object{}} was used including synchronization, >> + * mutexes and unique placeholders. >> + * >> + * @return a new Object implementing the IdentityObject interface >> + * @since Valhalla >> + */ >> + public static IdentityObject newIdentity() { >> + return new IdentityInstance(); >> + } >> + >> + /** >> + * IdentityInstance replaces plain {@code new Object()}. >> + */ >> + private final static class IdentityInstance implements IdentityObject { >> + private IdentityInstance() {} >> + } >> + >> >> >> As a Webrev: >> http://cr.openjdk.java.net/~rriggs/webrev-object-newinstance-8239929/ >> >> Thanks, Roger >> >> [1] http://cr.openjdk.java.net/~briangoetz/valhalla/sov/02-object-model.html > From roger.riggs at oracle.com Fri Feb 28 02:06:24 2020 From: roger.riggs at oracle.com (Roger Riggs) Date: Thu, 27 Feb 2020 21:06:24 -0500 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: <0bd8f264-ab50-be48-b6b1-9a22693c2383@oracle.com> References: <0bd8f264-ab50-be48-b6b1-9a22693c2383@oracle.com> Message-ID: <68e31527-e904-e895-34bc-4482f9af3e8c@oracle.com> Hi Mandy, I don't think we are ready for the storm of compiler warnings. There are 100 in java.base alone.? We can change that later when we are ready to phase it in. Roger On 2/27/20 5:40 PM, Mandy Chung wrote: > I think we should add @Deprecated in the Object constructor. > > Otherwise, looks fine. > > Mandy > > On 2/25/20 11:20 AM, Roger Riggs wrote: >> Please review the static factory of an IdentityObject to replace "new >> Object()" >> as mentioned in [1]. >> >> No replacements proposed yet.? There are 504 instances of "new >> Object()" in JDK modules. >> @@ -38,15 +38,36 @@ >> >> ? */ >> ?public class Object { >> >> ???? /** >> ????? * Constructs a new object. >> +???? * @apiNote {@link Object#newIdentity} should be used instead of >> {@code new Object()}. >> ????? */ >> ???? @HotSpotIntrinsicCandidate >> ???? public Object() {} >> >> ???? /** >> +???? * Constructs a new Object implementing the IdentityObject >> interface. >> +???? * The object is a unique IdentityObject suitable for all purposes >> +???? * that previously for which {@code new Object{}} was used >> including synchronization, >> +???? * mutexes and unique placeholders. >> +???? * >> +???? * @return a new Object implementing the IdentityObject interface >> +???? * @since Valhalla >> +???? */ >> +??? public static IdentityObject newIdentity() { >> +??????? return new IdentityInstance(); >> +??? } >> + >> +??? /** >> +???? * IdentityInstance replaces plain {@code new Object()}. >> +???? */ >> +??? private final static class IdentityInstance implements >> IdentityObject { >> +??????? private IdentityInstance() {} >> +??? } >> + >> >> >> As a Webrev: >> http://cr.openjdk.java.net/~rriggs/webrev-object-newinstance-8239929/ >> >> Thanks, Roger >> >> [1] >> http://cr.openjdk.java.net/~briangoetz/valhalla/sov/02-object-model.html > From john.r.rose at oracle.com Fri Feb 28 03:40:12 2020 From: john.r.rose at oracle.com (John Rose) Date: Thu, 27 Feb 2020 19:40:12 -0800 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: References: Message-ID: On Feb 25, 2020, at 11:20 AM, Roger Riggs wrote: > > IdentityInstance Does anyone else find this name to verbose? Folks will see Object$IdentityInstance, like they see AbstractList$SubList. I suggest s/IdentityInstance/Identity/, so Object$Identity is the class. From tobias.hartmann at oracle.com Fri Feb 28 08:23:56 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Feb 2020 00:23:56 -0800 (PST) Subject: hg: valhalla/valhalla: Merge In-Reply-To: <31732893-4C2F-4B17-8268-E91BF1A1A0B2@selskabet.org> References: <202002271232.01RCWeqZ004195@aojmv0008.oracle.com> <31732893-4C2F-4B17-8268-E91BF1A1A0B2@selskabet.org> Message-ID: <34a72514-0a6e-4175-bb86-61ca90f1823a@oracle.com> Hi Jesper, what error do you get? Tip builds fine on our machines (both OpenJDK and Oracle OpenJDK). I've just noticed that the Shenandoah build was broken (we don't build it because it's currently not supported in Valhalla). I've fixed it now but these issues haven't been introduced by the merge: http://hg.openjdk.java.net/valhalla/valhalla/rev/34d7fc5f89d8 Best regards, Tobias On 27.02.20 23:44, Jesper Steen M?ller wrote: > Hi List and Tobias > > Since this commit, I can?t build the tip of the lworld branch? Is there a CI server somewhere that I can compare with? > > -Jesper > >> On 27 Feb 2020, at 13.32, tobias.hartmann at oracle.com wrote: >> >> Changeset: 79133d98703f >> Author: thartmann >> Date: 2020-02-27 13:30 +0100 >> URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/79133d98703f >> >> Merge >> >> ! .hgtags >> - make/Help.gmk >> ! make/Images.gmk >> - make/autoconf/basics.m4 >> - make/autoconf/basics_windows.m4 >> ! make/autoconf/hotspot.m4 >> ! make/conf/jib-profiles.js >> ! src/hotspot/cpu/aarch64/aarch64.ad >> ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp >> ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp >> ! src/hotspot/cpu/aarch64/c1_Runtime1_aarch64.cpp >> ! src/hotspot/cpu/aarch64/frame_aarch64.cpp >> ! src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp >> ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp >> ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp >> ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp >> ! src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp >> ! src/hotspot/cpu/aarch64/templateTable_aarch64.cpp >> ! src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp >> ! src/hotspot/cpu/s390/interp_masm_s390.cpp >> ! src/hotspot/cpu/sparc/interp_masm_sparc.cpp >> ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp >> ! src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp >> ! src/hotspot/cpu/x86/frame_x86.cpp >> ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp >> ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.hpp >> ! src/hotspot/cpu/x86/gc/z/zBarrierSetAssembler_x86.cpp >> ! src/hotspot/cpu/x86/interp_masm_x86.cpp >> ! src/hotspot/cpu/x86/interp_masm_x86.hpp >> ! src/hotspot/cpu/x86/macroAssembler_x86.cpp >> ! src/hotspot/cpu/x86/macroAssembler_x86.hpp >> ! src/hotspot/cpu/x86/vm_version_x86.cpp >> ! src/hotspot/cpu/x86/vtableStubs_x86_64.cpp >> ! src/hotspot/cpu/x86/x86_64.ad >> ! src/hotspot/share/adlc/main.cpp >> ! src/hotspot/share/c1/c1_GraphBuilder.cpp >> ! src/hotspot/share/c1/c1_LIRGenerator.cpp >> ! src/hotspot/share/c1/c1_RangeCheckElimination.hpp >> ! src/hotspot/share/classfile/fieldLayoutBuilder.cpp >> ! src/hotspot/share/classfile/fieldLayoutBuilder.hpp >> ! src/hotspot/share/classfile/stackMapFrame.cpp >> ! src/hotspot/share/classfile/verifier.cpp >> ! src/hotspot/share/classfile/verifier.hpp >> ! src/hotspot/share/code/vtableStubs.cpp >> ! src/hotspot/share/gc/parallel/psCompactionManager.cpp >> ! src/hotspot/share/gc/parallel/psParallelCompact.cpp >> ! src/hotspot/share/gc/parallel/psPromotionManager.cpp >> ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp >> ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp >> ! src/hotspot/share/logging/logTag.hpp >> ! src/hotspot/share/oops/klass.cpp >> ! src/hotspot/share/oops/method.cpp >> ! src/hotspot/share/oops/symbol.cpp >> ! src/hotspot/share/oops/symbol.hpp >> ! src/hotspot/share/opto/arraycopynode.cpp >> ! src/hotspot/share/opto/c2_globals.hpp >> ! src/hotspot/share/opto/callnode.cpp >> ! src/hotspot/share/opto/classes.cpp >> ! src/hotspot/share/opto/classes.hpp >> ! src/hotspot/share/opto/compile.cpp >> ! src/hotspot/share/opto/divnode.cpp >> ! src/hotspot/share/opto/escape.cpp >> ! src/hotspot/share/opto/graphKit.cpp >> ! src/hotspot/share/opto/graphKit.hpp >> ! src/hotspot/share/opto/library_call.cpp >> ! src/hotspot/share/opto/loopopts.cpp >> ! src/hotspot/share/opto/macro.cpp >> ! src/hotspot/share/opto/macro.hpp >> ! src/hotspot/share/opto/macroArrayCopy.cpp >> ! src/hotspot/share/opto/memnode.cpp >> ! src/hotspot/share/opto/mulnode.cpp >> ! src/hotspot/share/opto/node.cpp >> ! src/hotspot/share/opto/node.hpp >> ! src/hotspot/share/opto/output.cpp >> ! src/hotspot/share/opto/parse.hpp >> ! src/hotspot/share/opto/parse2.cpp >> ! src/hotspot/share/opto/subnode.cpp >> ! src/hotspot/share/opto/type.cpp >> ! src/hotspot/share/prims/jni.cpp >> ! src/hotspot/share/prims/jvm.cpp >> ! src/hotspot/share/prims/jvmtiEnv.cpp >> ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp >> ! src/hotspot/share/prims/whitebox.cpp >> ! src/hotspot/share/runtime/arguments.cpp >> ! src/hotspot/share/runtime/deoptimization.cpp >> ! src/hotspot/share/runtime/deoptimization.hpp >> ! src/hotspot/share/runtime/frame.cpp >> ! src/hotspot/share/runtime/handles.cpp >> ! src/hotspot/share/runtime/handles.inline.hpp >> ! src/hotspot/share/runtime/jniHandles.cpp >> ! src/hotspot/share/runtime/signature.cpp >> ! src/hotspot/share/runtime/signature.hpp >> ! src/hotspot/share/runtime/thread.cpp >> ! src/hotspot/share/runtime/thread.hpp >> ! src/hotspot/share/runtime/vmOperations.cpp >> ! src/hotspot/share/runtime/vmStructs.cpp >> ! src/hotspot/share/utilities/globalDefinitions.cpp >> ! src/hotspot/share/utilities/globalDefinitions.hpp >> ! src/hotspot/share/utilities/powerOfTwo.hpp >> - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/Metrics.java >> - src/java.base/linux/classes/jdk/internal/platform/cgroupv1/SubSystem.java >> ! src/java.base/share/classes/java/lang/Class.java >> ! src/java.base/share/classes/java/lang/invoke/MethodHandleInfo.java >> ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java >> ! src/java.base/share/classes/java/lang/invoke/MethodType.java >> ! src/java.base/share/classes/java/lang/reflect/Method.java >> ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java >> ! src/java.base/share/classes/jdk/internal/misc/Unsafe.java >> ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java >> ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java >> ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties >> - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/AArch64MacroAssemblerTest.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/src/org/graalvm/compiler/hotspot/meta/HotSpotGCProvider.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/replacements/NewObjectSnippets.java >> - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/Access.java >> - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/HeapAccess.java >> - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryCheckpoint.java >> - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/GCProvider.java >> ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java >> ! test/hotspot/jtreg/ProblemList.txt >> ! test/hotspot/jtreg/TEST.groups >> + test/hotspot/jtreg/compiler/c2/TestVerifyGraphEdges.java >> - test/hotspot/jtreg/gc/shenandoah/compiler/TestCommonGCLoads.java >> - test/hotspot/jtreg/runtime/7116786/Test7116786.java >> - test/hotspot/jtreg/runtime/7116786/testcases.jar >> - test/hotspot/jtreg/runtime/EnclosingMethodAttr/enclMethodAttr.jar >> - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVT.cod >> - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVTT.cod >> - test/hotspot/jtreg/runtime/LocalVariableTable/NotFoundLVTT.cod >> - test/hotspot/jtreg/runtime/LocalVariableTable/testcase.jar >> - test/hotspot/jtreg/runtime/classFileParserBug/emptynumbootstrapmethods.jar >> - test/hotspot/jtreg/runtime/classFileParserBug/test.jar >> - test/hotspot/jtreg/runtime/duplAttributes/test.jar >> ! test/jdk/ProblemList.txt >> ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOption.java >> ! test/langtools/jdk/javadoc/doclet/testModules/TestModules.java >> ! test/langtools/jdk/jshell/ToolSimpleTest.java >> ! test/langtools/jdk/jshell/VariablesTest.java >> > From tobias.hartmann at oracle.com Fri Feb 28 08:23:11 2020 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 28 Feb 2020 08:23:11 +0000 Subject: hg: valhalla/valhalla: [lworld] Fixed Shenandoah build Message-ID: <202002280823.01S8NCFJ012800@aojmv0008.oracle.com> Changeset: 34d7fc5f89d8 Author: thartmann Date: 2020-02-28 09:22 +0100 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/34d7fc5f89d8 [lworld] Fixed Shenandoah build ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.hpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.hpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp ! src/hotspot/share/oops/valueArrayOop.hpp From jesper at selskabet.org Fri Feb 28 08:39:15 2020 From: jesper at selskabet.org (=?UTF-8?Q?Jesper_Steen_M=C3=B8ller?=) Date: Fri, 28 Feb 2020 09:39:15 +0100 Subject: hg: valhalla/valhalla: Merge In-Reply-To: <34a72514-0a6e-4175-bb86-61ca90f1823a@oracle.com> References: <202002271232.01RCWeqZ004195@aojmv0008.oracle.com> <31732893-4C2F-4B17-8268-E91BF1A1A0B2@selskabet.org> <34a72514-0a6e-4175-bb86-61ca90f1823a@oracle.com> Message-ID: Hi Tobias, I'm away from the machine at the moment, but I got a C++ build error related to the Shenandoah code, just by trying a langtools tier1 test. I haven't done anything to explicitly disable Shenandoah, should I have done that? -Jesper On Fri, Feb 28, 2020 at 9:24 AM Tobias Hartmann wrote: > Hi Jesper, > > what error do you get? > > Tip builds fine on our machines (both OpenJDK and Oracle OpenJDK). > > I've just noticed that the Shenandoah build was broken (we don't build it > because it's currently not > supported in Valhalla). I've fixed it now but these issues haven't been > introduced by the merge: > http://hg.openjdk.java.net/valhalla/valhalla/rev/34d7fc5f89d8 > > Best regards, > Tobias > > On 27.02.20 23:44, Jesper Steen M?ller wrote: > > Hi List and Tobias > > > > Since this commit, I can?t build the tip of the lworld branch? Is there > a CI server somewhere that I can compare with? > > > > -Jesper > > > >> On 27 Feb 2020, at 13.32, tobias.hartmann at oracle.com wrote: > >> > >> Changeset: 79133d98703f > >> Author: thartmann > >> Date: 2020-02-27 13:30 +0100 > >> URL: > https://hg.openjdk.java.net/valhalla/valhalla/rev/79133d98703f > >> > >> Merge > >> > >> ! .hgtags > >> - make/Help.gmk > >> ! make/Images.gmk > >> - make/autoconf/basics.m4 > >> - make/autoconf/basics_windows.m4 > >> ! make/autoconf/hotspot.m4 > >> ! make/conf/jib-profiles.js > >> ! src/hotspot/cpu/aarch64/aarch64.ad > >> ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp > >> ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp > >> ! src/hotspot/cpu/aarch64/c1_Runtime1_aarch64.cpp > >> ! src/hotspot/cpu/aarch64/frame_aarch64.cpp > >> ! src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp > >> ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp > >> ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp > >> ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp > >> ! src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp > >> ! src/hotspot/cpu/aarch64/templateTable_aarch64.cpp > >> ! src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp > >> ! src/hotspot/cpu/s390/interp_masm_s390.cpp > >> ! src/hotspot/cpu/sparc/interp_masm_sparc.cpp > >> ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp > >> ! src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp > >> ! src/hotspot/cpu/x86/frame_x86.cpp > >> ! > src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp > >> ! > src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.hpp > >> ! src/hotspot/cpu/x86/gc/z/zBarrierSetAssembler_x86.cpp > >> ! src/hotspot/cpu/x86/interp_masm_x86.cpp > >> ! src/hotspot/cpu/x86/interp_masm_x86.hpp > >> ! src/hotspot/cpu/x86/macroAssembler_x86.cpp > >> ! src/hotspot/cpu/x86/macroAssembler_x86.hpp > >> ! src/hotspot/cpu/x86/vm_version_x86.cpp > >> ! src/hotspot/cpu/x86/vtableStubs_x86_64.cpp > >> ! src/hotspot/cpu/x86/x86_64.ad > >> ! src/hotspot/share/adlc/main.cpp > >> ! src/hotspot/share/c1/c1_GraphBuilder.cpp > >> ! src/hotspot/share/c1/c1_LIRGenerator.cpp > >> ! src/hotspot/share/c1/c1_RangeCheckElimination.hpp > >> ! src/hotspot/share/classfile/fieldLayoutBuilder.cpp > >> ! src/hotspot/share/classfile/fieldLayoutBuilder.hpp > >> ! src/hotspot/share/classfile/stackMapFrame.cpp > >> ! src/hotspot/share/classfile/verifier.cpp > >> ! src/hotspot/share/classfile/verifier.hpp > >> ! src/hotspot/share/code/vtableStubs.cpp > >> ! src/hotspot/share/gc/parallel/psCompactionManager.cpp > >> ! src/hotspot/share/gc/parallel/psParallelCompact.cpp > >> ! src/hotspot/share/gc/parallel/psPromotionManager.cpp > >> ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp > >> ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp > >> ! src/hotspot/share/logging/logTag.hpp > >> ! src/hotspot/share/oops/klass.cpp > >> ! src/hotspot/share/oops/method.cpp > >> ! src/hotspot/share/oops/symbol.cpp > >> ! src/hotspot/share/oops/symbol.hpp > >> ! src/hotspot/share/opto/arraycopynode.cpp > >> ! src/hotspot/share/opto/c2_globals.hpp > >> ! src/hotspot/share/opto/callnode.cpp > >> ! src/hotspot/share/opto/classes.cpp > >> ! src/hotspot/share/opto/classes.hpp > >> ! src/hotspot/share/opto/compile.cpp > >> ! src/hotspot/share/opto/divnode.cpp > >> ! src/hotspot/share/opto/escape.cpp > >> ! src/hotspot/share/opto/graphKit.cpp > >> ! src/hotspot/share/opto/graphKit.hpp > >> ! src/hotspot/share/opto/library_call.cpp > >> ! src/hotspot/share/opto/loopopts.cpp > >> ! src/hotspot/share/opto/macro.cpp > >> ! src/hotspot/share/opto/macro.hpp > >> ! src/hotspot/share/opto/macroArrayCopy.cpp > >> ! src/hotspot/share/opto/memnode.cpp > >> ! src/hotspot/share/opto/mulnode.cpp > >> ! src/hotspot/share/opto/node.cpp > >> ! src/hotspot/share/opto/node.hpp > >> ! src/hotspot/share/opto/output.cpp > >> ! src/hotspot/share/opto/parse.hpp > >> ! src/hotspot/share/opto/parse2.cpp > >> ! src/hotspot/share/opto/subnode.cpp > >> ! src/hotspot/share/opto/type.cpp > >> ! src/hotspot/share/prims/jni.cpp > >> ! src/hotspot/share/prims/jvm.cpp > >> ! src/hotspot/share/prims/jvmtiEnv.cpp > >> ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp > >> ! src/hotspot/share/prims/whitebox.cpp > >> ! src/hotspot/share/runtime/arguments.cpp > >> ! src/hotspot/share/runtime/deoptimization.cpp > >> ! src/hotspot/share/runtime/deoptimization.hpp > >> ! src/hotspot/share/runtime/frame.cpp > >> ! src/hotspot/share/runtime/handles.cpp > >> ! src/hotspot/share/runtime/handles.inline.hpp > >> ! src/hotspot/share/runtime/jniHandles.cpp > >> ! src/hotspot/share/runtime/signature.cpp > >> ! src/hotspot/share/runtime/signature.hpp > >> ! src/hotspot/share/runtime/thread.cpp > >> ! src/hotspot/share/runtime/thread.hpp > >> ! src/hotspot/share/runtime/vmOperations.cpp > >> ! src/hotspot/share/runtime/vmStructs.cpp > >> ! src/hotspot/share/utilities/globalDefinitions.cpp > >> ! src/hotspot/share/utilities/globalDefinitions.hpp > >> ! src/hotspot/share/utilities/powerOfTwo.hpp > >> - > src/java.base/linux/classes/jdk/internal/platform/cgroupv1/Metrics.java > >> - > src/java.base/linux/classes/jdk/internal/platform/cgroupv1/SubSystem.java > >> ! src/java.base/share/classes/java/lang/Class.java > >> ! src/java.base/share/classes/java/lang/invoke/MethodHandleInfo.java > >> ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java > >> ! src/java.base/share/classes/java/lang/invoke/MethodType.java > >> ! src/java.base/share/classes/java/lang/reflect/Method.java > >> ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java > >> ! src/java.base/share/classes/jdk/internal/misc/Unsafe.java > >> ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java > >> ! > src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java > >> ! > src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties > >> - > src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/AArch64MacroAssemblerTest.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/src/org/graalvm/compiler/hotspot/meta/HotSpotGCProvider.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/replacements/NewObjectSnippets.java > >> - > src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/Access.java > >> - > src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/HeapAccess.java > >> - > src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryCheckpoint.java > >> - > src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/GCProvider.java > >> ! > src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java > >> ! test/hotspot/jtreg/ProblemList.txt > >> ! test/hotspot/jtreg/TEST.groups > >> + test/hotspot/jtreg/compiler/c2/TestVerifyGraphEdges.java > >> - test/hotspot/jtreg/gc/shenandoah/compiler/TestCommonGCLoads.java > >> - test/hotspot/jtreg/runtime/7116786/Test7116786.java > >> - test/hotspot/jtreg/runtime/7116786/testcases.jar > >> - test/hotspot/jtreg/runtime/EnclosingMethodAttr/enclMethodAttr.jar > >> - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVT.cod > >> - test/hotspot/jtreg/runtime/LocalVariableTable/DuplicateLVTT.cod > >> - test/hotspot/jtreg/runtime/LocalVariableTable/NotFoundLVTT.cod > >> - test/hotspot/jtreg/runtime/LocalVariableTable/testcase.jar > >> - > test/hotspot/jtreg/runtime/classFileParserBug/emptynumbootstrapmethods.jar > >> - test/hotspot/jtreg/runtime/classFileParserBug/test.jar > >> - test/hotspot/jtreg/runtime/duplAttributes/test.jar > >> ! test/jdk/ProblemList.txt > >> ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOption.java > >> ! test/langtools/jdk/javadoc/doclet/testModules/TestModules.java > >> ! test/langtools/jdk/jshell/ToolSimpleTest.java > >> ! test/langtools/jdk/jshell/VariablesTest.java > >> > > > From tobias.hartmann at oracle.com Fri Feb 28 08:44:48 2020 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Feb 2020 09:44:48 +0100 Subject: hg: valhalla/valhalla: Merge In-Reply-To: References: <202002271232.01RCWeqZ004195@aojmv0008.oracle.com> <31732893-4C2F-4B17-8268-E91BF1A1A0B2@selskabet.org> <34a72514-0a6e-4175-bb86-61ca90f1823a@oracle.com> Message-ID: Hi Jesper, On 28.02.20 09:39, Jesper Steen M?ller wrote: > I'm away from the machine at the moment, but I got a C++ build error related to the?Shenandoah code, > just by trying a langtools tier1 test. Okay, thanks for the details. Weird that you are only experiencing that now, the Shenandoah build error existed before the recent merge. > I haven't done anything to explicitly disable Shenandoah, should I have done that? I've fixed all the Shenandoah related build problems, so it should build fine now (if needed, you can add --with-jvm-features=-shenandoahgc to your configure options to disable the Shenandoah build). Just make sure not to enable Shenandoah (at runtime) as it's currently not supporting inline types. Best regards, Tobias From jesper at selskabet.org Fri Feb 28 08:58:50 2020 From: jesper at selskabet.org (=?UTF-8?Q?Jesper_Steen_M=C3=B8ller?=) Date: Fri, 28 Feb 2020 09:58:50 +0100 Subject: hg: valhalla/valhalla: Merge In-Reply-To: References: <202002271232.01RCWeqZ004195@aojmv0008.oracle.com> <31732893-4C2F-4B17-8268-E91BF1A1A0B2@selskabet.org> <34a72514-0a6e-4175-bb86-61ca90f1823a@oracle.com> Message-ID: Hi Tobias, I may have used "hg bisect" wrong, then. I'm still new to Mercurial. Thanks for the info. -Jesper On Fri, Feb 28, 2020 at 9:44 AM Tobias Hartmann wrote: > Hi Jesper, > On 28.02.20 09:39, Jesper Steen M?ller wrote: > > I'm away from the machine at the moment, but I got a C++ build error > related to the Shenandoah code, > > just by trying a langtools tier1 test. > > Okay, thanks for the details. Weird that you are only experiencing that > now, the Shenandoah build > error existed before the recent merge. > > > I haven't done anything to explicitly disable Shenandoah, should I have > done that? > > I've fixed all the Shenandoah related build problems, so it should build > fine now (if needed, you > can add --with-jvm-features=-shenandoahgc to your configure options to > disable the Shenandoah build). > > Just make sure not to enable Shenandoah (at runtime) as it's currently not > supporting inline types. > > Best regards, > Tobias > From brian.goetz at oracle.com Fri Feb 28 09:21:07 2020 From: brian.goetz at oracle.com (Brian Goetz) Date: Fri, 28 Feb 2020 04:21:07 -0500 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: References: Message-ID: While we are painting this shed .... What if the interfaces were called Object.Identity and Object.Inline? Sent from my iPad > On Feb 27, 2020, at 10:40 PM, John Rose wrote: > > ?On Feb 25, 2020, at 11:20 AM, Roger Riggs wrote: >> >> IdentityInstance > > Does anyone else find this name to verbose? > > Folks will see Object$IdentityInstance, like they see AbstractList$SubList. > > I suggest s/IdentityInstance/Identity/, so Object$Identity is the class. > From forax at univ-mlv.fr Fri Feb 28 09:53:05 2020 From: forax at univ-mlv.fr (Remi Forax) Date: Fri, 28 Feb 2020 10:53:05 +0100 (CET) Subject: hg: valhalla/valhalla: Merge In-Reply-To: References: <202002271232.01RCWeqZ004195@aojmv0008.oracle.com> <31732893-4C2F-4B17-8268-E91BF1A1A0B2@selskabet.org> <34a72514-0a6e-4175-bb86-61ca90f1823a@oracle.com> Message-ID: <1867093182.596414.1582883585964.JavaMail.zimbra@u-pem.fr> Hi Jesper, The other "recent" change is that the bootstrap jdk has to be jdk 14. I build without Shenandoah, so the build is fine for me https://travis-ci.org/forax/java-next/jobs/656028617 regards, R?mi ----- Mail original ----- > De: "Jesper Steen M?ller" > ?: "Tobias Hartmann" > Cc: "valhalla-dev" > Envoy?: Vendredi 28 F?vrier 2020 09:58:50 > Objet: Re: hg: valhalla/valhalla: Merge > Hi Tobias, > > I may have used "hg bisect" wrong, then. I'm still new to Mercurial. > Thanks for the info. > > -Jesper > > On Fri, Feb 28, 2020 at 9:44 AM Tobias Hartmann > wrote: > >> Hi Jesper, >> On 28.02.20 09:39, Jesper Steen M?ller wrote: >> > I'm away from the machine at the moment, but I got a C++ build error >> related to the Shenandoah code, >> > just by trying a langtools tier1 test. >> >> Okay, thanks for the details. Weird that you are only experiencing that >> now, the Shenandoah build >> error existed before the recent merge. >> >> > I haven't done anything to explicitly disable Shenandoah, should I have >> done that? >> >> I've fixed all the Shenandoah related build problems, so it should build >> fine now (if needed, you >> can add --with-jvm-features=-shenandoahgc to your configure options to >> disable the Shenandoah build). >> >> Just make sure not to enable Shenandoah (at runtime) as it's currently not >> supporting inline types. >> >> Best regards, >> Tobias From Roger.Riggs at oracle.com Fri Feb 28 14:10:45 2020 From: Roger.Riggs at oracle.com (Roger Riggs) Date: Fri, 28 Feb 2020 09:10:45 -0500 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: References: Message-ID: Hi John, I agree shorter is better, but I hope no one gets attached to the name of the implementation class. It should be forgettable, I even wondered if it should be a hidden class. Also, Object$Identity is too strong a name for this purpose. (and Brian has another purpose for that name.) How about either Object$Id or Object$Instance? Roger On 2/27/20 10:40 PM, John Rose wrote: > On Feb 25, 2020, at 11:20 AM, Roger Riggs wrote: >> IdentityInstance > Does anyone else find this name to verbose? > > Folks will see Object$IdentityInstance, like they see AbstractList$SubList. > > I suggest s/IdentityInstance/Identity/, so Object$Identity is the class. > From mandy.chung at oracle.com Fri Feb 28 17:02:06 2020 From: mandy.chung at oracle.com (Mandy Chung) Date: Fri, 28 Feb 2020 09:02:06 -0800 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: <68e31527-e904-e895-34bc-4482f9af3e8c@oracle.com> References: <0bd8f264-ab50-be48-b6b1-9a22693c2383@oracle.com> <68e31527-e904-e895-34bc-4482f9af3e8c@oracle.com> Message-ID: <4f8e04a9-8eff-e170-9db6-bb8f0535cd3a@oracle.com> Maybe suppress the warning from java.base in the build for the time being.? Any other module using new Object()? Mandy On 2/27/20 6:06 PM, Roger Riggs wrote: > Hi Mandy, > > I don't think we are ready for the storm of compiler warnings. > There are 100 in java.base alone.? We can change that later when we > are ready to phase it in. > > Roger > > > On 2/27/20 5:40 PM, Mandy Chung wrote: >> I think we should add @Deprecated in the Object constructor. >> >> Otherwise, looks fine. >> >> Mandy >> >> On 2/25/20 11:20 AM, Roger Riggs wrote: >>> Please review the static factory of an IdentityObject to replace >>> "new Object()" >>> as mentioned in [1]. >>> >>> No replacements proposed yet.? There are 504 instances of "new >>> Object()" in JDK modules. >>> @@ -38,15 +38,36 @@ >>> >>> ? */ >>> ?public class Object { >>> >>> ???? /** >>> ????? * Constructs a new object. >>> +???? * @apiNote {@link Object#newIdentity} should be used instead >>> of {@code new Object()}. >>> ????? */ >>> ???? @HotSpotIntrinsicCandidate >>> ???? public Object() {} >>> >>> ???? /** >>> +???? * Constructs a new Object implementing the IdentityObject >>> interface. >>> +???? * The object is a unique IdentityObject suitable for all purposes >>> +???? * that previously for which {@code new Object{}} was used >>> including synchronization, >>> +???? * mutexes and unique placeholders. >>> +???? * >>> +???? * @return a new Object implementing the IdentityObject interface >>> +???? * @since Valhalla >>> +???? */ >>> +??? public static IdentityObject newIdentity() { >>> +??????? return new IdentityInstance(); >>> +??? } >>> + >>> +??? /** >>> +???? * IdentityInstance replaces plain {@code new Object()}. >>> +???? */ >>> +??? private final static class IdentityInstance implements >>> IdentityObject { >>> +??????? private IdentityInstance() {} >>> +??? } >>> + >>> >>> >>> As a Webrev: >>> http://cr.openjdk.java.net/~rriggs/webrev-object-newinstance-8239929/ >>> >>> Thanks, Roger >>> >>> [1] >>> http://cr.openjdk.java.net/~briangoetz/valhalla/sov/02-object-model.html >>> >> > From Roger.Riggs at oracle.com Fri Feb 28 18:21:00 2020 From: Roger.Riggs at oracle.com (Roger Riggs) Date: Fri, 28 Feb 2020 13:21:00 -0500 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: <4f8e04a9-8eff-e170-9db6-bb8f0535cd3a@oracle.com> References: <0bd8f264-ab50-be48-b6b1-9a22693c2383@oracle.com> <68e31527-e904-e895-34bc-4482f9af3e8c@oracle.com> <4f8e04a9-8eff-e170-9db6-bb8f0535cd3a@oracle.com> Message-ID: Hi Mandy, We can add the @deprecated later when we get closer to the whole replacing it implementation. BTW, What should happen to the Annotation on new Object: "@HotSpotIntrinsicCandidate'? Who decides about that, does it move to the static factory or to the constructor of the implementation or is it just unnecessary. Yep, there are a *lot* of uses of new Object() in many modules. By module: Total 504 - (via fgrep/awk) java.base: 109 java.datatransfer: 1 java.desktop: 121 java.logging: 1 java.management: 5 java.naming: 1 java.net .http: 10 java.prefs: 1 java.rmi: 5 java.security.jgss: 2 java.sql: 2 java.xml: 1 jdk.accessibility: 2 jdk.attach: 1 jdk.compiler: 3 jdk.crypto.cryptoki: 4 jdk.dynalink: 2 jdk.hotspot.agent: 9 jdk.httpserver: 4 jdk.incubator.jpackage: 3 jdk.internal.le: 5 jdk.internal.vm.compiler: 142 jdk.jconsole: 3 jdk.jdi: 8 jdk.jfr: 7 jdk.jshell: 3 jdk.management: 1 jdk.management.agent: 1 jdk.naming.dns: 2 jdk.scripting.nashorn: 37 jdk.sctp: 8 Roger On 2/28/20 12:02 PM, Mandy Chung wrote: > Maybe suppress the warning from java.base in the build for the time > being.? Any other module using new Object()? > > Mandy > > On 2/27/20 6:06 PM, Roger Riggs wrote: >> Hi Mandy, >> >> I don't think we are ready for the storm of compiler warnings. >> There are 100 in java.base alone.? We can change that later when we >> are ready to phase it in. >> >> Roger >> >> >> On 2/27/20 5:40 PM, Mandy Chung wrote: >>> I think we should add @Deprecated in the Object constructor. >>> >>> Otherwise, looks fine. >>> >>> Mandy >>> >>> On 2/25/20 11:20 AM, Roger Riggs wrote: >>>> Please review the static factory of an IdentityObject to replace >>>> "new Object()" >>>> as mentioned in [1]. >>>> >>>> No replacements proposed yet.? There are 504 instances of "new >>>> Object()" in JDK modules. >>>> @@ -38,15 +38,36 @@ >>>> >>>> ? */ >>>> ?public class Object { >>>> >>>> ???? /** >>>> ????? * Constructs a new object. >>>> +???? * @apiNote {@link Object#newIdentity} should be used instead >>>> of {@code new Object()}. >>>> ????? */ >>>> ???? @HotSpotIntrinsicCandidate >>>> ???? public Object() {} >>>> >>>> ???? /** >>>> +???? * Constructs a new Object implementing the IdentityObject >>>> interface. >>>> +???? * The object is a unique IdentityObject suitable for all >>>> purposes >>>> +???? * that previously for which {@code new Object{}} was used >>>> including synchronization, >>>> +???? * mutexes and unique placeholders. >>>> +???? * >>>> +???? * @return a new Object implementing the IdentityObject interface >>>> +???? * @since Valhalla >>>> +???? */ >>>> +??? public static IdentityObject newIdentity() { >>>> +??????? return new IdentityInstance(); >>>> +??? } >>>> + >>>> +??? /** >>>> +???? * IdentityInstance replaces plain {@code new Object()}. >>>> +???? */ >>>> +??? private final static class IdentityInstance implements >>>> IdentityObject { >>>> +??????? private IdentityInstance() {} >>>> +??? } >>>> + >>>> >>>> >>>> As a Webrev: >>>> http://cr.openjdk.java.net/~rriggs/webrev-object-newinstance-8239929/ >>>> >>>> Thanks, Roger >>>> >>>> [1] >>>> http://cr.openjdk.java.net/~briangoetz/valhalla/sov/02-object-model.html >>>> >>> >> > From john.r.rose at oracle.com Fri Feb 28 20:05:23 2020 From: john.r.rose at oracle.com (John Rose) Date: Fri, 28 Feb 2020 12:05:23 -0800 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: References: Message-ID: <181BD806-5D8C-4F5D-8619-14C4FA134466@oracle.com> On Feb 28, 2020, at 6:10 AM, Roger Riggs wrote: > > I agree shorter is better, but I hope no one gets attached to the name of the implementation class. > It should be forgettable, I even wondered if it should be a hidden class. A hidden class! Good idea. That?s even more anonymous than an AIC. There are four ways I see to do this. I?d be happy with any one, but I prefer a way that doesn?t have the attractive nuisance of a stable name that users may come to rely on, like AbstractList$SubList. public static Object newIdentity1() { return new Object() { }; // Object$0 } public static Object newIdentity2() { class Id { } return new Id(); // Object$0$Id } private static class Id { } public static Object newIdentity3() { return new Id(); // Object$Id } private static final Class HC_Id; static { HC_Id = //defineHiddenClass... null; //for argument sake } public static Object newIdentity4() { try { return HC_Id.newInstance(); // Object$Id } catch (ReflectiveOperationException ex) { throw new AssertionError(ex); } } > Also, Object$Identity is too strong a name for this purpose. (and Brian has another purpose for that name.) > > How about either Object$Id or Object$Instance? I also thought of Object$Id. Short and sweet. I also like Brian?s commandeering of Object.Identity as an interface name! ? John From john.r.rose at oracle.com Fri Feb 28 20:06:59 2020 From: john.r.rose at oracle.com (John Rose) Date: Fri, 28 Feb 2020 12:06:59 -0800 Subject: RFR [lworld] 8239929: Object.newIdentity() replacement for new Object() In-Reply-To: References: <0bd8f264-ab50-be48-b6b1-9a22693c2383@oracle.com> <68e31527-e904-e895-34bc-4482f9af3e8c@oracle.com> <4f8e04a9-8eff-e170-9db6-bb8f0535cd3a@oracle.com> Message-ID: On Feb 28, 2020, at 10:21 AM, Roger Riggs wrote: > > BTW, What should happen to the Annotation on new Object: "@HotSpotIntrinsicCandidate'? > Who decides about that, does it move to the static factory or to the constructor of the implementation > or is it just unnecessary. That stays on the protected member. The JVM needs to process Object::()V specially as a hook to handle finalization (IIRC). It?s not a library-level optimization at all, so it shouldn?t move to the new API point. ? John From mandy.chung at oracle.com Fri Feb 28 20:16:33 2020 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 28 Feb 2020 20:16:33 +0000 Subject: hg: valhalla/valhalla: [nestmates] Add instrumentation tests for hidden classes. Message-ID: <202002282016.01SKGXu0024001@aojmv0008.oracle.com> Changeset: 711da7dc077d Author: sspitsyn Date: 2020-02-28 12:16 -0800 URL: https://hg.openjdk.java.net/valhalla/valhalla/rev/711da7dc077d [nestmates] Add instrumentation tests for hidden classes. + test/jdk/java/lang/instrument/HiddenClass/HiddenClassAgent.java + test/jdk/java/lang/instrument/HiddenClass/HiddenClassApp.java + test/jdk/java/lang/instrument/HiddenClass/hidden/HiddenClass.java