Re: Code review request: 7146763: Warnings cleanup in the sun.rmi and related packages
Kurchi, Great work. I've been through the complete webrev and I think it looks good. Just a few minor comments: - there are API changes, but only in sun private implementation classes, so this should be fine. - Minor indentation nit where method declaration return type was generified. The method args on subsequent lines should be equally indented. Example LoaderHandler.java L152: public static Class? loadClass(String codebase, String name, ClassLoader defaultLoader) - There are opportunities to use auto boxing/unboxing : diff RMIGenerator.java 99c99 version = versionOptions.get(arg); --- version = (versionOptions.get(arg)).intValue(); ConnectionMultiplexer.java : diff ConnectionMultiplexer.java ConnectionMultiplexer.java.1 133a134 Integer idObj; 150c151,152 info = connectionTable.get(id); --- idObj = new Integer(id); info = connectionTable.get(idObj); 158c160 connectionTable.put(id, info); --- connectionTable.put(idObj, info); . -Chris. On 22/02/2012 05:50, Kurchi Hazra wrote: Corrected the subject line. Hi, The following webrev removes warnings in sun.rmi.* packages. I have neglected nearly all deprecation warnings, since this code uses deprecated classes such as java.rmi.server.LogStream with no suggested replacements. I have included -Xlint:all,-deprecation as an option instead in the appropriate Makefiles. Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7146763 Webrev: http://cr.openjdk.java.net/~khazra/7146763/webrev.00/ Thanks, Kurchi
RFR : 7144488 StackOverflowError occurres on list via Collections.synchronizedList(List)
Bug recently reported. We enter infinite recursion on a boundary case for Collections.synchronizedList.remove(..) Fix is a simple equals check in class method before delegating the call. bug : http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7144488 webrev : http://cr.openjdk.java.net/~coffeys/webrev.7144488/ regards, Sean.
Re: RFR : 7144488 StackOverflowError occurres on list via Collections.synchronizedList(List)
On 22/02/2012 13:25, Seán Coffey wrote: Bug recently reported. We enter infinite recursion on a boundary case for Collections.synchronizedList.remove(..) Fix is a simple equals check in class method before delegating the call. bug : http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7144488 webrev : http://cr.openjdk.java.net/~coffeys/webrev.7144488/ Sean - the fix looks okay to me but I assume there are other cases, like with SynchronizedSet and hashCode for example. I don't know if they are all fixable, at least not the hashCode cases. -Alan.
Re: Code review request: 6282196 There should be Math.mod(number, modulo) methods
Can you explain why the mod implementation differs from that in JSR-310? https://github.com/ThreeTen/threeten/blob/master/src/main/java/javax/time/MathUtils.java#L401 The code ((a % b) + b) % b; is short and involves no branches, which should aid performance and inlining. Is this to do with accepting a negative second argument? Perofmance testing? I'd like to see performance numbers comparing the two approaches, as JSR-310 might need to continue using the double % version if it is faster. Similarly, the proposed floorDiv requires evaluation of the complex if statement every time, whereas the JSR-310 one only requires an if check against zero. Whats the rationale for the difference, which is intuitively (non-proven) slower. thanks Stephen On 22 February 2012 14:24, Roger Riggs roger.ri...@oracle.com wrote: Hi, 6282196 There should be Math.mod(number, modulo) methods http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6282196 Requests that floor and modulus methods be provided for primitive types. Floor division is pretty straight-forward, rounding toward minus infinity. For modulus of int and long, the sign and range follow the exiting floor method in java.util.Math and satisfy the relation that mod(x, y) = (x - floorDiv(x, y) * y). Please review and comment, http://cr.openjdk.java.net/~rriggs/6282196.1/ Thanks, Roger
Re: Code review request: 6282196 There should be Math.mod(number, modulo) methods
On 02/22/2012 09:37 AM, Stephen Colebourne wrote: Can you explain why the mod implementation differs from that in JSR-310? https://github.com/ThreeTen/threeten/blob/master/src/main/java/javax/time/MathUtils.java#L401 The code ((a % b) + b) % b; is short and involves no branches, which should aid performance and inlining. Is this to do with accepting a negative second argument? Performance testing? For floorMod, the numeric results are the same but the performance is slightly better. The performance difference is very noticeable for long's, using a single divide and a multiply with the branch is about 1.5 times as fast as the alternative using two % operations. For int's the difference was minimal but still faster. I did not compare against floating point divide. Since it depends on the performance of the divide instruction it will be sensitive to specific processors. For interpreters and devices without floating point hardware (yes they exist) and slower hardware minimizing the number of divides makes sense. I would rather not try to tune for specific hardware and leave that to the VM. I'd like to see performance numbers comparing the two approaches, as JSR-310 might need to continue using the double % version if it is faster. Similarly, the proposed floorDiv requires evaluation of the complex if statement every time, whereas the JSR-310 one only requires an if check against zero. Whats the rationale for the difference, which is intuitively (non-proven) slower., For floorDiv, the results are different when the sign of the divisor is negative. Using the definition of the largest integer less than the quotient with the arguments (4, -3) should be -1., the largest integer less than that is -2. The JSR 310 expression (a/v) evaluates to -1. I choose to be consistent with the Math.floor behavior. Roger thanks Stephen On 22 February 2012 14:24, Roger Riggsroger.ri...@oracle.com wrote: Hi, 6282196 There should be Math.mod(number, modulo) methods http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6282196 Requests that floor and modulus methods be provided for primitive types. Floor division is pretty straight-forward, rounding toward minus infinity. For modulus of int and long, the sign and range follow the exiting floor method in java.util.Math and satisfy the relation that mod(x, y) = (x - floorDiv(x, y) * y). Please review and comment, http://cr.openjdk.java.net/~rriggs/6282196.1/ Thanks, Roger
Re: Code review request: 6282196 There should be Math.mod(number, modulo) methods
Thanks for the explanation, I don't think that the change in floorDiv behaviour will cause JSR-310 a problem Stephen On 22 February 2012 16:21, Roger Riggs roger.ri...@oracle.com wrote: On 02/22/2012 09:37 AM, Stephen Colebourne wrote: Can you explain why the mod implementation differs from that in JSR-310? https://github.com/ThreeTen/threeten/blob/master/src/main/java/javax/time/MathUtils.java#L401 The code ((a % b) + b) % b; is short and involves no branches, which should aid performance and inlining. Is this to do with accepting a negative second argument? Performance testing? For floorMod, the numeric results are the same but the performance is slightly better. The performance difference is very noticeable for long's, using a single divide and a multiply with the branch is about 1.5 times as fast as the alternative using two % operations. For int's the difference was minimal but still faster. I did not compare against floating point divide. Since it depends on the performance of the divide instruction it will be sensitive to specific processors. For interpreters and devices without floating point hardware (yes they exist) and slower hardware minimizing the number of divides makes sense. I would rather not try to tune for specific hardware and leave that to the VM. I'd like to see performance numbers comparing the two approaches, as JSR-310 might need to continue using the double % version if it is faster. Similarly, the proposed floorDiv requires evaluation of the complex if statement every time, whereas the JSR-310 one only requires an if check against zero. Whats the rationale for the difference, which is intuitively (non-proven) slower., For floorDiv, the results are different when the sign of the divisor is negative. Using the definition of the largest integer less than the quotient with the arguments (4, -3) should be -1., the largest integer less than that is -2. The JSR 310 expression (a/v) evaluates to -1. I choose to be consistent with the Math.floor behavior. Roger thanks Stephen On 22 February 2012 14:24, Roger Riggs roger.ri...@oracle.com wrote: Hi, 6282196 There should be Math.mod(number, modulo) methods http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6282196 Requests that floor and modulus methods be provided for primitive types. Floor division is pretty straight-forward, rounding toward minus infinity. For modulus of int and long, the sign and range follow the exiting floor method in java.util.Math and satisfy the relation that mod(x, y) = (x - floorDiv(x, y) * y). Please review and comment, http://cr.openjdk.java.net/~rriggs/6282196.1/ Thanks, Roger
Re: Code review request: 7146763: Warnings cleanup in the sun.rmi and related packages
Hi Kurchi, hi all, in ReliableLog, you can get ride of the @SupressWarnings, getLogClassConstructor should return a Constructor? and not a Constructor? extends LogFile, the field logClassConstructor should be typed Constructor? and in openLogFile, the log should be constructed like this log = (logClassConstructor == null ? new LogFile(logName, rw) : (LogFile)logClassConstructor.newInstance(logName, rw)); The idea is that a cast on a LogFile is typesafe but not a cast on a Constructor? extends LogFile. In the same file, the try-with-resources is not correcly used try (DataOutputStream out = new DataOutputStream(new FileOutputStream(fName(name { writeInt(out, version); } should be try (FileOutputStream fos = new FileOutputStream(fName(name)); DataOutputStream out = new DataOutputStream(fos)) { writeInt(out, version); } because if new DataOutputStream throws an exception, the FileOutputStream will not be closed. Basically, all stream filters should have it's own line in a try-with-resources. cheers, Rémi On 02/22/2012 12:16 PM, Chris Hegarty wrote: Kurchi, Great work. I've been through the complete webrev and I think it looks good. Just a few minor comments: - there are API changes, but only in sun private implementation classes, so this should be fine. - Minor indentation nit where method declaration return type was generified. The method args on subsequent lines should be equally indented. Example LoaderHandler.java L152: public static Class? loadClass(String codebase, String name, ClassLoader defaultLoader) - There are opportunities to use auto boxing/unboxing : diff RMIGenerator.java 99c99 version = versionOptions.get(arg); --- version = (versionOptions.get(arg)).intValue(); ConnectionMultiplexer.java : diff ConnectionMultiplexer.java ConnectionMultiplexer.java.1 133a134 Integer idObj; 150c151,152 info = connectionTable.get(id); --- idObj = new Integer(id); info = connectionTable.get(idObj); 158c160 connectionTable.put(id, info); --- connectionTable.put(idObj, info); . -Chris. On 22/02/2012 05:50, Kurchi Hazra wrote: Corrected the subject line. Hi, The following webrev removes warnings in sun.rmi.* packages. I have neglected nearly all deprecation warnings, since this code uses deprecated classes such as java.rmi.server.LogStream with no suggested replacements. I have included -Xlint:all,-deprecation as an option instead in the appropriate Makefiles. Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7146763 Webrev: http://cr.openjdk.java.net/~khazra/7146763/webrev.00/ Thanks, Kurchi
Re: Code review request: 7146763: Warnings cleanup in the sun.rmi and related packages
Hi Kurchi, overall the changes look good. I have a few comments: - TCPTransport: Lines #552/553: I actually prefer the way it was as I think it's more readable. - RMIMasterSocketFactory: Line #244: The comment was removed, was there a reason for this? - HttpInputStream: Line #73: Why even have this if statement? I'd make this a comment instead, something like if contentLengthFound, we should probably do something in this case. - CGIHandler: Line #288: Why even have this if statement? I'd make this a comment instead, something like if contentLengthFound, we should probably do something in this case. Darryl On 02/21/2012 09:50 PM, Kurchi Hazra wrote: Corrected the subject line. Hi, The following webrev removes warnings in sun.rmi.* packages. I have neglected nearly all deprecation warnings, since this code uses deprecated classes such as java.rmi.server.LogStream with no suggested replacements. I have included -Xlint:all,-deprecation as an option instead in the appropriate Makefiles. Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7146763 Webrev: http://cr.openjdk.java.net/~khazra/7146763/webrev.00/ Thanks, Kurchi
Re: Code review request: 7146763: Warnings cleanup in the sun.rmi and related packages
Hi Remi, Thanks for your review. Please see my comment: On 2/22/2012 10:01 AM, Rémi Forax wrote: Hi Kurchi, hi all, in ReliableLog, you can get ride of the @SupressWarnings, getLogClassConstructor should return a Constructor? and not a Constructor? extends LogFile, the field logClassConstructor should be typed Constructor? and in openLogFile, the log should be constructed like this log = (logClassConstructor == null ? new LogFile(logName, rw) : (LogFile)logClassConstructor.newInstance(logName, rw)); The idea is that a cast on a LogFile is typesafe but not a cast on a Constructor? extends LogFile. If I change the return type to Constructor?, I get the following error: ../../../../src/share/classes/sun/rmi/log/ReliableLog.java:122: error: incompatible types logClassConstructor = getLogClassConstructor(); ^ required: Constructor? extends LogFile found:ConstructorCAP#1 where CAP#1 is a fresh type-variable: CAP#1 extends Object from capture of ? And the following warning: ../../../../src/share/classes/sun/rmi/log/ReliableLog.java:350: warning: [unchecked] unchecked cast cl.getConstructor(String.class, String.class); ^ required: Constructor? extends LogFile found:ConstructorCAP#1 where CAP#1 is a fresh type-variable: CAP#1 extends Object from capture of ? Thanks, Kurchi In the same file, the try-with-resources is not correcly used try (DataOutputStream out = new DataOutputStream(new FileOutputStream(fName(name { writeInt(out, version); } should be try (FileOutputStream fos = new FileOutputStream(fName(name)); DataOutputStream out = new DataOutputStream(fos)) { writeInt(out, version); } because if new DataOutputStream throws an exception, the FileOutputStream will not be closed. Basically, all stream filters should have it's own line in a try-with-resources. cheers, Rémi On 02/22/2012 12:16 PM, Chris Hegarty wrote: Kurchi, Great work. I've been through the complete webrev and I think it looks good. Just a few minor comments: - there are API changes, but only in sun private implementation classes, so this should be fine. - Minor indentation nit where method declaration return type was generified. The method args on subsequent lines should be equally indented. Example LoaderHandler.java L152: public static Class? loadClass(String codebase, String name, ClassLoader defaultLoader) - There are opportunities to use auto boxing/unboxing : diff RMIGenerator.java 99c99 version = versionOptions.get(arg); --- version = (versionOptions.get(arg)).intValue(); ConnectionMultiplexer.java : diff ConnectionMultiplexer.java ConnectionMultiplexer.java.1 133a134 Integer idObj; 150c151,152 info = connectionTable.get(id); --- idObj = new Integer(id); info = connectionTable.get(idObj); 158c160 connectionTable.put(id, info); --- connectionTable.put(idObj, info); . -Chris. On 22/02/2012 05:50, Kurchi Hazra wrote: Corrected the subject line. Hi, The following webrev removes warnings in sun.rmi.* packages. I have neglected nearly all deprecation warnings, since this code uses deprecated classes such as java.rmi.server.LogStream with no suggested replacements. I have included -Xlint:all,-deprecation as an option instead in the appropriate Makefiles. Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7146763 Webrev: http://cr.openjdk.java.net/~khazra/7146763/webrev.00/ Thanks, Kurchi -- -Kurchi
Re: RFR : 7144488 StackOverflowError occurres on list via Collections.synchronizedList(List)
On 23/02/2012 12:22 AM, Alan Bateman wrote: On 22/02/2012 13:25, Seán Coffey wrote: Bug recently reported. We enter infinite recursion on a boundary case for Collections.synchronizedList.remove(..) Fix is a simple equals check in class method before delegating the call. bug : http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7144488 webrev : http://cr.openjdk.java.net/~coffeys/webrev.7144488/ Sean - the fix looks okay to me but I assume there are other cases, like with SynchronizedSet and hashCode for example. I don't know if they are all fixable, at least not the hashCode cases. All of the SynchronizedX.equals methods should be fixed ie SynchronizedSet, SynchronizedList and SynchronizedMap. It should always be valid to ask if a.equals(a). The idiomatic form used elsewhere (CheckedXXX) is: public boolean equals(Object o) { return o == this || list.equals(o); } I'm not a fan of collections containing themselves, but I think it is simple to fix contains(o)/contains[Key]|[Value](o) and remove(o) in a similar way. Though none of the wrapped collections currently handle that case, so I'm okay with not addressing this part. I don't see the recursion potential in hashCode() in the wrappers. David -Alan.
hg: jdk8/tl/jaxws: 2 new changesets
Changeset: 329ace7198ac Author:katleman Date: 2012-02-16 13:01 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/jaxws/rev/329ace7198ac Added tag jdk8-b26 for changeset 3518639eab6c ! .hgtags Changeset: 38c037af4127 Author:lana Date: 2012-02-18 16:09 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/jaxws/rev/38c037af4127 Merge
hg: jdk8/tl/langtools: 3 new changesets
Changeset: fba3cbee0fa3 Author:katleman Date: 2012-02-16 13:01 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/fba3cbee0fa3 Added tag jdk8-b26 for changeset b556aa8a99c3 ! .hgtags Changeset: e127334a64fe Author:darcy Date: 2012-02-17 15:24 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/e127334a64fe 7143910: test/tools/apt/Basics/apt.sh fails with 'real' sh Reviewed-by: darcy Contributed-by: sonali.g...@oracle.com ! test/tools/apt/Basics/apt.sh Changeset: be456f9c64e8 Author:lana Date: 2012-02-18 16:12 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/be456f9c64e8 Merge - make/test/lib/apt.sh - src/share/classes/com/sun/mirror/apt/AnnotationProcessor.java - src/share/classes/com/sun/mirror/apt/AnnotationProcessorEnvironment.java - src/share/classes/com/sun/mirror/apt/AnnotationProcessorFactory.java - src/share/classes/com/sun/mirror/apt/AnnotationProcessorListener.java - src/share/classes/com/sun/mirror/apt/AnnotationProcessors.java - src/share/classes/com/sun/mirror/apt/Filer.java - src/share/classes/com/sun/mirror/apt/Messager.java - src/share/classes/com/sun/mirror/apt/RoundCompleteEvent.java - src/share/classes/com/sun/mirror/apt/RoundCompleteListener.java - src/share/classes/com/sun/mirror/apt/RoundState.java - src/share/classes/com/sun/mirror/apt/package-info.java - src/share/classes/com/sun/mirror/declaration/AnnotationMirror.java - src/share/classes/com/sun/mirror/declaration/AnnotationTypeDeclaration.java - src/share/classes/com/sun/mirror/declaration/AnnotationTypeElementDeclaration.java - src/share/classes/com/sun/mirror/declaration/AnnotationValue.java - src/share/classes/com/sun/mirror/declaration/ClassDeclaration.java - src/share/classes/com/sun/mirror/declaration/ConstructorDeclaration.java - src/share/classes/com/sun/mirror/declaration/Declaration.java - src/share/classes/com/sun/mirror/declaration/EnumConstantDeclaration.java - src/share/classes/com/sun/mirror/declaration/EnumDeclaration.java - src/share/classes/com/sun/mirror/declaration/ExecutableDeclaration.java - src/share/classes/com/sun/mirror/declaration/FieldDeclaration.java - src/share/classes/com/sun/mirror/declaration/InterfaceDeclaration.java - src/share/classes/com/sun/mirror/declaration/MemberDeclaration.java - src/share/classes/com/sun/mirror/declaration/MethodDeclaration.java - src/share/classes/com/sun/mirror/declaration/Modifier.java - src/share/classes/com/sun/mirror/declaration/PackageDeclaration.java - src/share/classes/com/sun/mirror/declaration/ParameterDeclaration.java - src/share/classes/com/sun/mirror/declaration/TypeDeclaration.java - src/share/classes/com/sun/mirror/declaration/TypeParameterDeclaration.java - src/share/classes/com/sun/mirror/declaration/package-info.java - src/share/classes/com/sun/mirror/overview.html - src/share/classes/com/sun/mirror/type/AnnotationType.java - src/share/classes/com/sun/mirror/type/ArrayType.java - src/share/classes/com/sun/mirror/type/ClassType.java - src/share/classes/com/sun/mirror/type/DeclaredType.java - src/share/classes/com/sun/mirror/type/EnumType.java - src/share/classes/com/sun/mirror/type/InterfaceType.java - src/share/classes/com/sun/mirror/type/MirroredTypeException.java - src/share/classes/com/sun/mirror/type/MirroredTypesException.java - src/share/classes/com/sun/mirror/type/PrimitiveType.java - src/share/classes/com/sun/mirror/type/ReferenceType.java - src/share/classes/com/sun/mirror/type/TypeMirror.java - src/share/classes/com/sun/mirror/type/TypeVariable.java - src/share/classes/com/sun/mirror/type/VoidType.java - src/share/classes/com/sun/mirror/type/WildcardType.java - src/share/classes/com/sun/mirror/type/package-info.java - src/share/classes/com/sun/mirror/util/DeclarationFilter.java - src/share/classes/com/sun/mirror/util/DeclarationScanner.java - src/share/classes/com/sun/mirror/util/DeclarationVisitor.java - src/share/classes/com/sun/mirror/util/DeclarationVisitors.java - src/share/classes/com/sun/mirror/util/Declarations.java - src/share/classes/com/sun/mirror/util/SimpleDeclarationVisitor.java - src/share/classes/com/sun/mirror/util/SimpleTypeVisitor.java - src/share/classes/com/sun/mirror/util/SourceOrderDeclScanner.java - src/share/classes/com/sun/mirror/util/SourcePosition.java - src/share/classes/com/sun/mirror/util/TypeVisitor.java - src/share/classes/com/sun/mirror/util/Types.java - src/share/classes/com/sun/mirror/util/package-info.java - src/share/classes/com/sun/tools/apt/Main.java - src/share/classes/com/sun/tools/apt/comp/AnnotationProcessingError.java - src/share/classes/com/sun/tools/apt/comp/Apt.java - src/share/classes/com/sun/tools/apt/comp/BootstrapAPF.java - src/share/classes/com/sun/tools/apt/comp/PrintAP.java - src/share/classes/com/sun/tools/apt/comp/UsageMessageNeededException.java - src/share/classes/com/sun/tools/apt/main/AptJavaCompiler.java - src/share/classes/com/sun/tools/apt/main/CommandLine.java -
hg: jdk8/tl: Added tag jdk8-b26 for changeset 2accafff224a
Changeset: 1533dfab9903 Author:katleman Date: 2012-02-16 13:01 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/rev/1533dfab9903 Added tag jdk8-b26 for changeset 2accafff224a ! .hgtags
hg: jdk8/tl/corba: Added tag jdk8-b26 for changeset 79f709a099f4
Changeset: 4fffe75e4edd Author:katleman Date: 2012-02-16 13:01 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/corba/rev/4fffe75e4edd Added tag jdk8-b26 for changeset 79f709a099f4 ! .hgtags
hg: jdk8/tl/jaxp: Added tag jdk8-b26 for changeset dbb7283c197b
Changeset: 80c47eb83d24 Author:katleman Date: 2012-02-16 13:01 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/80c47eb83d24 Added tag jdk8-b26 for changeset dbb7283c197b ! .hgtags
hg: jdk8/tl/hotspot: 69 new changesets
Changeset: 3c4621be5149 Author:amurillo Date: 2012-02-06 12:18 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/3c4621be5149 7143122: new hotspot build - hs23-b15 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 869be5c8882e Author:phh Date: 2012-02-03 17:21 -0500 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/869be5c8882e 7142586: Cannot build on Solaris 11 due to use of ia_nice Summary: Delete the single use of ia_nice in os_solaris.cpp Reviewed-by: kamg, kvn ! src/os/solaris/vm/os_solaris.cpp Changeset: c77d473e71f7 Author:ohrstrom Date: 2012-01-31 13:12 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/c77d473e71f7 7132779: build-infra merge: Enable ccache to work for most developer builds. Summary: When a build number is not specified, the JRE_RELEASE_VERSION define contains a date and timestamp. Thus ccache cannot cache the object files for longer than a minute since the define is passed to the compilation of all source files. This change passes JRE_RELEASE_VERSION only to vm_version.cpp and adds a function jre_release_version() to Abstract_VM_Version. This allows all other source files to be ccached. Reviewed-by: ohair, rottenha Contributed-by: fredrik.ohrst...@oracle.com ! make/bsd/makefiles/vm.make ! make/linux/makefiles/vm.make ! make/solaris/makefiles/vm.make ! src/share/vm/runtime/vm_version.cpp ! src/share/vm/runtime/vm_version.hpp Changeset: 719f7007c8e8 Author:erikj Date: 2012-02-06 09:14 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/719f7007c8e8 7141242: build-infra merge: Rename CPP-CXX and LINK-LD Summary: Cleaned up make variables for compilers and linker to consistently use CXX for C++ compiler, CC for C compiler and LD for linker. Reviewed-by: dholmes, ohrstrom ! make/bsd/makefiles/adlc.make ! make/bsd/makefiles/dtrace.make ! make/bsd/makefiles/gcc.make ! make/bsd/makefiles/launcher.make ! make/bsd/makefiles/product.make ! make/bsd/makefiles/rules.make ! make/bsd/makefiles/sparcWorks.make ! make/bsd/makefiles/vm.make ! make/linux/makefiles/adlc.make ! make/linux/makefiles/gcc.make ! make/linux/makefiles/launcher.make ! make/linux/makefiles/product.make ! make/linux/makefiles/rules.make ! make/linux/makefiles/sparcWorks.make ! make/linux/makefiles/vm.make ! make/solaris/makefiles/adlc.make ! make/solaris/makefiles/dtrace.make ! make/solaris/makefiles/gcc.make ! make/solaris/makefiles/launcher.make ! make/solaris/makefiles/product.make ! make/solaris/makefiles/rules.make ! make/solaris/makefiles/saproc.make ! make/solaris/makefiles/sparcWorks.make ! make/solaris/makefiles/vm.make ! make/windows/build_vm_def.sh ! make/windows/get_msc_ver.sh ! make/windows/makefiles/adlc.make ! make/windows/makefiles/compile.make ! make/windows/makefiles/debug.make ! make/windows/makefiles/fastdebug.make ! make/windows/makefiles/launcher.make ! make/windows/makefiles/product.make ! make/windows/makefiles/projectcreator.make ! make/windows/makefiles/sa.make ! make/windows/makefiles/sanity.make ! make/windows/makefiles/shared.make ! make/windows/makefiles/vm.make Changeset: ea677dbdd883 Author:fparain Date: 2012-02-07 12:34 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/ea677dbdd883 Merge Changeset: 5e9fba4e8718 Author:kvn Date: 2012-02-07 11:33 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/5e9fba4e8718 7142167: MAC: _get_previous_fp broken on bsd with llvm-gcc Summary: LLVM-GCC (__llvm__) should use the same _get_previous_fp implementation as __clang__ (as is the case for os::current_stack_pointer). Reviewed-by: twisti, never, dcubed ! src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp Changeset: b9bc6cae88f2 Author:kvn Date: 2012-02-07 16:33 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/b9bc6cae88f2 7143491: G1 C2 CTW: assert(p2x-outcnt() == 2) failed: expects 2 users: Xor and URShift nodes Summary: Adjust the assert and code in eliminate_card_mark() method for case when stored value is NULL. Reviewed-by: iveresov, never ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/macro.cpp Changeset: c742b0b47fe5 Author:roland Date: 2012-02-08 09:52 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/c742b0b47fe5 7119286: JSR292: SIGSEGV in JNIHandleBlock::release_block(JNIHandleBlock*, Thread*)+0x3c Summary: unaligned stack in throw_NullPointerException_at_call_entry(). Reviewed-by: twisti, never, kvn ! src/cpu/x86/vm/stubGenerator_x86_64.cpp Changeset: 2f985b6ce7ff Author:jrose Date: 2012-02-09 18:01 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/2f985b6ce7ff Merge Changeset: 1ac084126285 Author:dlong Date: 2012-01-24 18:00 -0500 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/1ac084126285 7130319: C2: running with -XX:+PrintOptoAssembly crashes the VM with assert(false) failed: bad tag in log Summary: Relax
hg: jdk8/tl/jdk: 21 new changesets
Changeset: 4196fc971f65 Author:katleman Date: 2012-02-16 13:01 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/4196fc971f65 Added tag jdk8-b26 for changeset 5aca406e87cb ! .hgtags Changeset: 7a5c8c6f1c6b Author:prr Date: 2012-02-03 09:57 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/7a5c8c6f1c6b 7141914: Draw glyph cause JVM crash Reviewed-by: bae, igor ! src/share/classes/sun/font/FileFont.java ! src/share/classes/sun/font/StandardGlyphVector.java ! src/share/classes/sun/font/SunFontManager.java ! src/share/classes/sun/font/TrueTypeFont.java Changeset: 996cd6e8d00e Author:lana Date: 2012-02-09 19:42 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/996cd6e8d00e Merge - test/tools/launcher/ChangeDataModel.sh - test/tools/launcher/CreatePlatformFile.java - test/tools/launcher/SomeException.java - test/tools/launcher/UnicodeCleanup.java - test/tools/launcher/UnicodeTest.sh - test/tools/launcher/deleteI18n.sh - test/tools/launcher/i18nTest.sh - test/tools/launcher/unresolvedExceptions.sh Changeset: a06fd6ada85c Author:prr Date: 2012-02-14 14:16 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/a06fd6ada85c 7143612: improve backwards compatibility of OSIS post-CR6887286 Reviewed-by: flar, prr Contributed-by: david.b...@oracle.com ! src/share/classes/sun/awt/image/OffScreenImageSource.java Changeset: 45ce82d366ec Author:anthony Date: 2012-02-02 17:49 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/45ce82d366ec 7132194: GtkFileDialog does not point to the correct file(s) is Recent Files are used. Summary: Handle the file list differently if gtk_file_chooser_get_current_folder() returns NULL Reviewed-by: anthony Contributed-by: Matthew Smith mel...@orangepalantir.org ! src/solaris/native/sun/awt/sun_awt_X11_GtkFileDialogPeer.c Changeset: 10fa63972ad5 Author:rupashka Date: 2012-02-03 17:57 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/10fa63972ad5 7141573: JProgressBar resize exception, if setStringPainted in Windows LAF Reviewed-by: malenkov ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsProgressBarUI.java + test/javax/swing/JProgressBar/7141573/bug7141573.java Changeset: 34571be262e9 Author:rupashka Date: 2012-02-03 18:01 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/34571be262e9 7071775: javax/swing/JFileChooser/6396844/TwentyThousandTest.java failed on winxp Reviewed-by: alexp ! test/javax/swing/JFileChooser/6396844/TwentyThousandTest.java Changeset: 1880e8cc89b8 Author:rupashka Date: 2012-02-08 16:15 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/1880e8cc89b8 7138665: JOptionPane.getValue() unexpected change between JRE 1.6 and JRE 1.7 Reviewed-by: alexp ! src/share/classes/javax/swing/JOptionPane.java ! src/share/classes/javax/swing/plaf/basic/BasicOptionPaneUI.java + test/javax/swing/JOptionPane/7138665/bug7138665.java Changeset: d2e067142112 Author:bagiras Date: 2012-02-08 18:28 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/d2e067142112 7132367: [macosx] ChoiceMouseWheelTest should be adapted for mac toolkit Reviewed-by: art ! test/java/awt/Choice/ChoiceMouseWheelTest/ChoiceMouseWheelTest.java Changeset: d43447758eba Author:rupashka Date: 2012-02-09 14:21 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/d43447758eba 7143857: Memory leak in javax.swing.plaf.synth.SynthTreeUI Reviewed-by: alexp ! src/share/classes/javax/swing/plaf/synth/SynthTreeUI.java Changeset: 403e3bb8a162 Author:rupashka Date: 2012-02-09 18:26 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/403e3bb8a162 7142955: DefaultTreeCellRenderer doesn't honor 'Tree.rendererFillBackground' LAF property Reviewed-by: malenkov ! src/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java + test/javax/swing/tree/DefaultTreeCellRenderer/7142955/bug7142955.java Changeset: a3b50244bd10 Author:chegar Date: 2012-02-10 11:03 + URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/a3b50244bd10 7144475: fix some warnings in java.awt, javax.print.attribute.standard, and sun.beans.infos Reviewed-by: chegar, prr, alanb, anthony Contributed-by: Prasannaa prasannaa...@yahoo.com, Martijn Verburg martijnverb...@gmail.com, Goerge Albrecht goerge.albre...@gmx.net, Graham Allan grundlefl...@googlemail.com, Iordanis Giannakakis i.giannaka...@ymail.com, Jose Llarena jose.llar...@gmail.com, Abrahamn Marin Perez abraham.marin.pe...@gmail.com ! src/share/classes/java/awt/List.java ! src/share/classes/java/awt/Window.java ! src/share/classes/java/awt/color/ICC_Profile.java ! src/share/classes/javax/print/attribute/standard/PrinterStateReasons.java ! src/share/classes/javax/print/attribute/standard/ReferenceUriSchemesSupported.java ! src/share/classes/sun/beans/infos/ComponentBeanInfo.java Changeset: 55adee49df8e Author:alexsch Date: 2012-02-10 18:34 +0400 URL: