From aph at redhat.com Tue Jul 1 14:04:19 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 01 Jul 2014 15:04:19 +0100 Subject: [aarch64-port-dev ] Two HotSpot patches for OpenJDK 7 from upstream Message-ID: <53B2BFE3.7050200@redhat.com> Applied to our 7u tree. Andrew. changeset: 6752:31a3c2c8a1bb user: hseigel date: Thu Feb 20 13:11:23 2014 -0500 summary: 8034926: Attribute classes properly diff -r f6121012b666 -r 31a3c2c8a1bb src/share/vm/classfile/classFileParser.cpp --- a/src/share/vm/classfile/classFileParser.cpp Fri May 30 11:58:53 2014 -0400 +++ b/src/share/vm/classfile/classFileParser.cpp Thu Feb 20 13:11:23 2014 -0500 @@ -2777,6 +2777,11 @@ "Short length on BootstrapMethods in class file %s", CHECK); + guarantee_property(attribute_byte_length > sizeof(u2), + "Invalid BootstrapMethods attribute length %u in class file %s", + attribute_byte_length, + CHECK); + // The attribute contains a counted array of counted tuples of shorts, // represending bootstrap specifiers: // length*{bootstrap_method_index, argument_count*{argument_index}} changeset: 6753:360d11d249a6 tag: tip user: dsimms date: Fri Jan 10 15:58:40 2014 +0100 summary: 8029858: Enhance array copies diff -r 31a3c2c8a1bb -r 360d11d249a6 src/share/vm/oops/objArrayKlass.cpp --- a/src/share/vm/oops/objArrayKlass.cpp Thu Feb 20 13:11:23 2014 -0500 +++ b/src/share/vm/oops/objArrayKlass.cpp Fri Jan 10 15:58:40 2014 +0100 @@ -269,7 +269,7 @@ if (element_is_null || (new_val->klass())->is_subtype_of(bound)) { bs->write_ref_field_pre(p, new_val); - *p = *from; + *p = element; } else { // We must do a barrier to cover the partial copy. const size_t pd = pointer_delta(p, dst, (size_t)heapOopSize); From aph at redhat.com Tue Jul 1 14:04:22 2014 From: aph at redhat.com (aph at redhat.com) Date: Tue, 01 Jul 2014 14:04:22 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/hotspot: 2 new changesets Message-ID: <201407011404.s61E4Mko013536@aojmv0008> Changeset: 31a3c2c8a1bb Author: hseigel Date: 2014-02-20 13:11 -0500 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/31a3c2c8a1bb 8034926: Attribute classes properly Summary: Add check to prevent underflow Reviewed-by: coleenp, ahgross ! src/share/vm/classfile/classFileParser.cpp Changeset: 360d11d249a6 Author: dsimms Date: 2014-01-10 15:58 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/360d11d249a6 8029858: Enhance array copies Summary: Just read the source element once Reviewed-by: coleenp, ahgross ! src/share/vm/oops/objArrayKlass.cpp From edward.nevill at linaro.org Tue Jul 1 15:31:50 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Tue, 01 Jul 2014 16:31:50 +0100 Subject: [aarch64-port-dev ] Add support for a few simple intrinsics Message-ID: <1404228710.7038.7.camel@localhost.localdomain> Hi, The following patch adds support for Sqrt, CountLeadingZeros and CountTrailingZeros. All the best, Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404228543 -3600 # Tue Jul 01 16:29:03 2014 +0100 # Node ID 6f6401730e4d350fad0f968c3116df0ada2c009f # Parent 511a29302d283ba14baaaadea3a03fc583f56bf0 Add support for a few simple intrinsics diff -r 511a29302d28 -r 6f6401730e4d src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Mon Jun 23 18:56:33 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Tue Jul 01 16:29:03 2014 +0100 @@ -5922,6 +5922,61 @@ %} // ============================================================================ +// Zero Count Instructions + +instruct countLeadingZerosI(iRegI dst, iRegI src) %{ + match(Set dst (CountLeadingZerosI src)); + + ins_cost(INSN_COST); + format %{ "clzw $dst, $src" %} + ins_encode %{ + __ clzw(as_Register($dst$$reg), as_Register($src$$reg)); + %} + + ins_pipe( pipe_class_default ); +%} + +instruct countLeadingZerosL(iRegI dst, iRegL src) %{ + match(Set dst (CountLeadingZerosL src)); + + ins_cost(INSN_COST); + format %{ "clz $dst, $src" %} + ins_encode %{ + __ clz(as_Register($dst$$reg), as_Register($src$$reg)); + %} + + ins_pipe( pipe_class_default ); +%} + +instruct countTrailingZerosI(iRegI dst, iRegI src) %{ + match(Set dst (CountTrailingZerosI src)); + + ins_cost(INSN_COST * 2); + format %{ "rbitw $dst, $src\n\t" + "clzw $dst, $dst" %} + ins_encode %{ + __ rbitw(as_Register($dst$$reg), as_Register($src$$reg)); + __ clzw(as_Register($dst$$reg), as_Register($dst$$reg)); + %} + + ins_pipe( pipe_class_default ); +%} + +instruct countTrailingZerosL(iRegI dst, iRegL src) %{ + match(Set dst (CountTrailingZerosL src)); + + ins_cost(INSN_COST * 2); + format %{ "rbit $dst, $src\n\t" + "clz $dst, $dst" %} + ins_encode %{ + __ rbit(as_Register($dst$$reg), as_Register($src$$reg)); + __ clz(as_Register($dst$$reg), as_Register($dst$$reg)); + %} + + ins_pipe( pipe_class_default ); +%} + +// ============================================================================ // MemBar Instruction instruct load_fence() %{ @@ -9684,6 +9739,32 @@ ins_pipe(pipe_class_default); %} +instruct sqrtD_reg(vRegD dst, vRegD src) %{ + match(Set dst (SqrtD src)); + + ins_cost(INSN_COST * 50); + format %{ "fsqrtd $dst, $src" %} + ins_encode %{ + __ fsqrtd(as_FloatRegister($dst$$reg), + as_FloatRegister($src$$reg)); + %} + + ins_pipe(pipe_class_default); +%} + +instruct sqrtF_reg(vRegF dst, vRegF src) %{ + match(Set dst (ConvD2F (SqrtD (ConvF2D src)))); + + ins_cost(INSN_COST * 50); + format %{ "fsqrts $dst, $src" %} + ins_encode %{ + __ fsqrtd(as_FloatRegister($dst$$reg), + as_FloatRegister($src$$reg)); + %} + + ins_pipe(pipe_class_default); +%} + // ============================================================================ // Logical Instructions --- CUT HERE --- From aph at redhat.com Wed Jul 2 08:08:15 2014 From: aph at redhat.com (Andrew Haley) Date: Wed, 02 Jul 2014 09:08:15 +0100 Subject: [aarch64-port-dev ] Add support for a few simple intrinsics In-Reply-To: <1404228710.7038.7.camel@localhost.localdomain> References: <1404228710.7038.7.camel@localhost.localdomain> Message-ID: <53B3BDEF.6030800@redhat.com> On 01/07/14 16:31, Edward Nevill wrote: > The following patch adds support for Sqrt, CountLeadingZeros and CountTrailingZeros. Great, thanks. Andrew. From ed at camswl.com Wed Jul 2 16:06:20 2014 From: ed at camswl.com (ed at camswl.com) Date: Wed, 02 Jul 2014 16:06:20 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: Add support for a few simple intrinsics Message-ID: <201407021606.s62G6KEs013153@aojmv0008> Changeset: 6f6401730e4d Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-01 16:29 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/6f6401730e4d Add support for a few simple intrinsics ! src/cpu/aarch64/vm/aarch64.ad From aph at redhat.com Thu Jul 3 09:44:29 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 03 Jul 2014 10:44:29 +0100 Subject: [aarch64-port-dev ] String.equals() Message-ID: <53B525FD.6040602@redhat.com> As before. I tried to combine the logic for String.equals() and String.compare() because they should be very similar, but the result was a mess. Ths is better, even at the expense of some code duplication. Andrew. # HG changeset patch # User aph # Date 1404310864 14400 # Wed Jul 02 10:21:04 2014 -0400 # Node ID fd73d7b8ba5d7b51da2289cc4239108382cf52a3 # Parent 1f7e1e16a5341f557a58c20fab339b874089da82 Fast String.equals diff -r 1f7e1e16a534 -r fd73d7b8ba5d src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Fri Jun 27 06:13:30 2014 -0400 +++ b/src/cpu/aarch64/vm/aarch64.ad Wed Jul 02 10:21:04 2014 -0400 @@ -11348,6 +11348,21 @@ ins_pipe(pipe_class_memory); %} +instruct string_equals(iRegP_R1 str1, iRegP_R3 str2, iRegI_R4 cnt, + iRegI_R0 result, iRegP tmp, rFlagsReg cr) +%{ + match(Set result (StrEquals (Binary str1 str2) cnt)); + effect(TEMP tmp, USE_KILL str1, USE_KILL str2, USE_KILL cnt, KILL cr); + + format %{ "String Equals $str1,$str2,$cnt -> $result // KILL $tmp" %} + ins_encode %{ + __ string_equals($str1$$Register, $str2$$Register, + $cnt$$Register, $result$$Register, + $tmp$$Register); + %} + ins_pipe(pipe_class_memory); +%} + // ============================================================================ // This name is KNOWN by the ADLC and cannot be changed. // The ADLC forces a 'TypeRawPtr::BOTTOM' output type diff -r 1f7e1e16a534 -r fd73d7b8ba5d src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Fri Jun 27 06:13:30 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Wed Jul 02 10:21:04 2014 -0400 @@ -3436,3 +3436,78 @@ BLOCK_COMMENT("} string_compare"); } + + +void MacroAssembler::string_equals(Register str1, Register str2, + Register cnt, Register result, + Register tmp1) { + Label SAME_CHARS, DONE, SHORT_LOOP, SHORT_STRING, + NEXT_WORD; + + const Register tmp2 = rscratch1; + assert_different_registers(str1, str2, cnt, result, tmp1, tmp2, rscratch2); + + BLOCK_COMMENT("string_equals {"); + + // Start by assuming that the strings are not equal. + mov(result, zr); + + // A very short string + cmpw(cnt, 4); + br(Assembler::LT, SHORT_STRING); + + // Check if the strings start at the same location. + cmp(str1, str2); + br(Assembler::EQ, SAME_CHARS); + + // Compare longwords + { + subw(cnt, cnt, 4); // The last longword is a special case + + // Move both string pointers to the last longword of their + // strings, negate the remaining count, and convert it to bytes. + lea(str1, Address(str1, cnt, Address::uxtw(1))); + lea(str2, Address(str2, cnt, Address::uxtw(1))); + sub(cnt, zr, cnt, LSL, 1); + + // Loop, loading longwords and comparing them into rscratch2. + bind(NEXT_WORD); + ldr(tmp1, Address(str1, cnt)); + ldr(tmp2, Address(str2, cnt)); + adds(cnt, cnt, wordSize); + eor(rscratch2, tmp1, tmp2); + cbnz(rscratch2, DONE); + br(Assembler::LT, NEXT_WORD); + + // Last longword. In the case where length == 4 we compare the + // same longword twice, but that's still faster than another + // conditional branch. + + ldr(tmp1, Address(str1)); + ldr(tmp2, Address(str2)); + eor(rscratch2, tmp1, tmp2); + cbz(rscratch2, SAME_CHARS); + b(DONE); + } + + bind(SHORT_STRING); + // Is the length zero? + cbz(cnt, SAME_CHARS); + + bind(SHORT_LOOP); + load_unsigned_short(tmp1, Address(post(str1, 2))); + load_unsigned_short(tmp2, Address(post(str2, 2))); + subw(tmp1, tmp1, tmp2); + cbnz(tmp1, DONE); + sub(cnt, cnt, 1); + cbnz(cnt, SHORT_LOOP); + + // Strings are equal. + bind(SAME_CHARS); + mov(result, true); + + // That's it + bind(DONE); + + BLOCK_COMMENT("} string_equals"); +} diff -r 1f7e1e16a534 -r fd73d7b8ba5d src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Fri Jun 27 06:13:30 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Wed Jul 02 10:21:04 2014 -0400 @@ -1292,8 +1292,11 @@ bool upper = false); void string_compare(Register str1, Register str2, - Register cnt1, Register cnt2, Register result, - Register vec1); + Register cnt1, Register cnt2, Register result, + Register vec1); + void string_equals(Register str1, Register str2, + Register cnt, Register result, + Register tmp1); }; // Used by aarch64.ad to control code generation From edward.nevill at linaro.org Thu Jul 3 11:39:29 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Thu, 03 Jul 2014 12:39:29 +0100 Subject: [aarch64-port-dev ] RFR: Add support for MathExact intrinsics Message-ID: <1404387569.7038.14.camel@localhost.localdomain> Hi, The following patches add support for MathExact intrinsics. I have not added support for MultiplyExact because the multiply instruction on aarch64 doesn't seem to have any option to set the flags? The patch also involves a change to the jtreg test suite which assumes that MatchExact intrinsics are only implemented on x86. I have excluded the MultiplyExact tests above. Tested with hotspot jtreg, same set of failures as before. Regards, Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404386909 -3600 # Thu Jul 03 12:28:29 2014 +0100 # Node ID 2fbf9ae134d996f32cd81858037a2837b9822007 # Parent 6f6401730e4d350fad0f968c3116df0ada2c009f Add support for MathExact intrinsics diff -r 6f6401730e4d -r 2fbf9ae134d9 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Tue Jul 01 16:29:03 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Thu Jul 03 12:28:29 2014 +0100 @@ -10404,6 +10404,139 @@ %} // ============================================================================ +// Overflow Math Instructions + +instruct overflowAddI_reg_reg(rFlagsReg cr, iRegI op1, iRegI op2) +%{ + match(Set cr (OverflowAddI op1 op2)); + + format %{ "cmnw $op1, $op2\t# overflow check int" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmnw($op1$$Register, $op2$$Register); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowAddI_reg_imm(rFlagsReg cr, iRegI op1, immIAddSub op2) +%{ + match(Set cr (OverflowAddI op1 op2)); + + format %{ "cmnw $op1, $op2\t# overflow check int" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmnw($op1$$Register, $op2$$constant); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowAddL_reg_reg(rFlagsReg cr, iRegL op1, iRegL op2) +%{ + match(Set cr (OverflowAddL op1 op2)); + + format %{ "cmn $op1, $op2\t# overflow check long" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmn($op1$$Register, $op2$$Register); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowAddL_reg_imm(rFlagsReg cr, iRegL op1, immLAddSub op2) +%{ + match(Set cr (OverflowAddL op1 op2)); + + format %{ "cmn $op1, $op2\t# overflow check long" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmn($op1$$Register, $op2$$constant); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowSubI_reg_reg(rFlagsReg cr, iRegI op1, iRegI op2) +%{ + match(Set cr (OverflowSubI op1 op2)); + + format %{ "cmpw $op1, $op2\t# overflow check int" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmpw($op1$$Register, $op2$$Register); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowSubI_reg_imm(rFlagsReg cr, iRegI op1, immIAddSub op2) +%{ + match(Set cr (OverflowSubI op1 op2)); + + format %{ "cmpw $op1, $op2\t# overflow check int" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmpw($op1$$Register, $op2$$constant); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowSubL_reg_reg(rFlagsReg cr, iRegL op1, iRegL op2) +%{ + match(Set cr (OverflowSubL op1 op2)); + + format %{ "cmp $op1, $op2\t# overflow check long" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmp($op1$$Register, $op2$$Register); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowSubL_reg_imm(rFlagsReg cr, iRegL op1, immLAddSub op2) +%{ + match(Set cr (OverflowSubL op1 op2)); + + format %{ "cmp $op1, $op2\t# overflow check long" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmp($op1$$Register, $op2$$constant); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowNegI_reg(rFlagsReg cr, immI0 zero, iRegI op2) +%{ + match(Set cr (OverflowSubI zero op2)); + + format %{ "cmpw zr, $op2\t# overflow check int" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmpw(zr, $op2$$Register); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowNegL_reg(rFlagsReg cr, immI0 zero, iRegL op2) +%{ + match(Set cr (OverflowSubL zero op2)); + + format %{ "cmp zr, $op2\t# overflow check long" %} + ins_cost(INSN_COST); + ins_encode %{ + __ cmp(zr, $op2$$Register); + %} + + ins_pipe(pipe_class_default); +%} + +// ============================================================================ // Compare Instructions instruct compI_reg_reg(rFlagsReg cr, iRegI op1, iRegI op2) diff -r 6f6401730e4d -r 2fbf9ae134d9 test/compiler/intrinsics/mathexact/sanity/IntrinsicBase.java --- a/test/compiler/intrinsics/mathexact/sanity/IntrinsicBase.java Tue Jul 01 16:29:03 2014 +0100 +++ b/test/compiler/intrinsics/mathexact/sanity/IntrinsicBase.java Thu Jul 03 12:28:29 2014 +0100 @@ -128,7 +128,7 @@ @Override protected boolean isIntrinsicSupported() { - return isServerVM() && Boolean.valueOf(useMathExactIntrinsics) && (Platform.isX86() || Platform.isX64()); + return isServerVM() && Boolean.valueOf(useMathExactIntrinsics) && (Platform.isX86() || Platform.isX64() || Platform.isAArch64()); } @Override @@ -144,7 +144,7 @@ @Override protected boolean isIntrinsicSupported() { - return isServerVM() && Boolean.valueOf(useMathExactIntrinsics) && Platform.isX64(); + return isServerVM() && Boolean.valueOf(useMathExactIntrinsics) && (Platform.isX64() || Platform.isAArch64()); } @Override diff -r 6f6401730e4d -r 2fbf9ae134d9 test/testlibrary/com/oracle/java/testlibrary/Platform.java --- a/test/testlibrary/com/oracle/java/testlibrary/Platform.java Tue Jul 01 16:29:03 2014 +0100 +++ b/test/testlibrary/com/oracle/java/testlibrary/Platform.java Thu Jul 03 12:28:29 2014 +0100 @@ -113,6 +113,10 @@ return (isArch("amd64") || isArch("x86_64")); } + public static boolean isAArch64() { + return isArch("aarch64"); + } + private static boolean isArch(String archname) { return osArch.toLowerCase().startsWith(archname.toLowerCase()); } --- CUT HERE --- --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404387023 -3600 # Thu Jul 03 12:30:23 2014 +0100 # Node ID c8c1eaa0c017c9c1d90dc10ea1b7904b4deff995 # Parent 9e42859353cb54f866580d035fae58dbc02a763e Exclude MultiplyExact tests diff -r 9e42859353cb -r c8c1eaa0c017 test/exclude_aarch64.txt --- a/test/exclude_aarch64.txt Fri Jun 27 21:39:47 2014 +0100 +++ b/test/exclude_aarch64.txt Thu Jul 03 12:30:23 2014 +0100 @@ -16,3 +16,9 @@ # This test is bogus. It issues a jmap with the -F options which is not # supported in JDK8. serviceability/sa/jmap-hashcode/Test8028623.java generic-all +#--------------------------------------------------------------------- +# These tests fail because when we enable UseMathExactIntrinsics the test +# suite assumes are all methods are implemented. However we do not implement +# multiply because aarch64 does not set the flags on multiply. +compiler/intrinsics/mathexact/sanity/MultiplyExactIntTest.java generic-all +compiler/intrinsics/mathexact/sanity/MultiplyExactLongTest.java generic-all --- CUT HERE --- From aph at redhat.com Thu Jul 3 15:06:51 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 03 Jul 2014 16:06:51 +0100 Subject: [aarch64-port-dev ] Correct register usage in string comparisons Message-ID: <53B5718B.6000703@redhat.com> Oh, bah. It turns out that TEMP registers in C2 instructions can overlap with an output operand. I think I knew this before, but forgot. It's very annoying. Andrew. # HG changeset patch # User aph # Date 1404399858 -3600 # Thu Jul 03 16:04:18 2014 +0100 # Node ID e5a77099a6fac7ab88ddbbe0fb5e0980161cb05c # Parent 5e653c9bf2aa9baa4ed326c9be7c4233462144ea Correct register usage in string comparisons diff -r 5e653c9bf2aa -r e5a77099a6fa src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Thu Jul 03 13:19:59 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Thu Jul 03 16:04:18 2014 +0100 @@ -11334,10 +11334,10 @@ %} instruct string_compare(iRegP_R1 str1, iRegI_R2 cnt1, iRegP_R3 str2, iRegI_R4 cnt2, - iRegI_R0 result, iRegP tmp1, rFlagsReg cr) + iRegI_R0 result, iRegP_R10 tmp1, rFlagsReg cr) %{ match(Set result (StrComp (Binary str1 cnt1) (Binary str2 cnt2))); - effect(TEMP tmp1, USE_KILL str1, USE_KILL str2, USE_KILL cnt1, USE_KILL cnt2, KILL cr); + effect(KILL tmp1, USE_KILL str1, USE_KILL str2, USE_KILL cnt1, USE_KILL cnt2, KILL cr); format %{ "String Compare $str1,$cnt1,$str2,$cnt2 -> $result # KILL $tmp1" %} ins_encode %{ @@ -11349,10 +11349,10 @@ %} instruct string_equals(iRegP_R1 str1, iRegP_R3 str2, iRegI_R4 cnt, - iRegI_R0 result, iRegP tmp, rFlagsReg cr) + iRegI_R0 result, iRegP_R10 tmp, rFlagsReg cr) %{ match(Set result (StrEquals (Binary str1 str2) cnt)); - effect(TEMP tmp, USE_KILL str1, USE_KILL str2, USE_KILL cnt, KILL cr); + effect(KILL tmp, USE_KILL str1, USE_KILL str2, USE_KILL cnt, KILL cr); format %{ "String Equals $str1,$str2,$cnt -> $result // KILL $tmp" %} ins_encode %{ From aph at redhat.com Thu Jul 3 15:08:03 2014 From: aph at redhat.com (aph at redhat.com) Date: Thu, 03 Jul 2014 15:08:03 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: 4 new changesets Message-ID: <201407031508.s63F83oq017534@aojmv0008> Changeset: 1d342713037a Author: aph Date: 2014-06-27 11:25 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/1d342713037a Fast string comparison ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Changeset: 5e653c9bf2aa Author: aph Date: 2014-07-03 13:19 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/5e653c9bf2aa Fast String.equals() ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Changeset: e5a77099a6fa Author: aph Date: 2014-07-03 16:04 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/e5a77099a6fa Correct register usage in string comparisons ! src/cpu/aarch64/vm/aarch64.ad Changeset: c3d17e4167b4 Author: aph Date: 2014-07-03 16:07 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/c3d17e4167b4 Merge ! src/cpu/aarch64/vm/aarch64.ad From ed at camswl.com Thu Jul 3 17:22:42 2014 From: ed at camswl.com (Edward Nevill) Date: Thu, 03 Jul 2014 18:22:42 +0100 Subject: [aarch64-port-dev ] JTREG, SPECjbb2013 and Hadoop/Terasort results for OpenJDK 8 on AArch64 Message-ID: <1404408162.1265.3.camel@mint> This is a summary of the JTREG test results =========================================== The build and test results are cycled every 10 days. For detailed information on the test output please refer to: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/summary/2014/184/summary.html ------------------------------------------------------------------------------- client-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 434; fail: 4 Build 1: aarch64/2014/jun/05 pass: 434; fail: 4 Build 2: aarch64/2014/jun/16 pass: 545; fail: 19 Build 3: aarch64/2014/jun/18 pass: 538; fail: 19 Build 4: aarch64/2014/jun/24 pass: 538; fail: 19 Build 5: aarch64/2014/jun/25 pass: 538; fail: 19 Build 6: aarch64/2014/jun/28 pass: 536; fail: 28 Build 7: aarch64/2014/jul/03 pass: 545; fail: 19 ------------------------------------------------------------------------------- client-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/may/24 pass: 4,906; fail: 472; error: 71 Build 1: aarch64/2014/may/26 pass: 4,906; fail: 473; error: 70 Build 2: aarch64/2014/jun/03 pass: 4,932; fail: 474; error: 43 Build 3: aarch64/2014/jun/05 pass: 4,932; fail: 475; error: 45 Build 4: aarch64/2014/jun/16 pass: 4,968; fail: 498; error: 44 Build 5: aarch64/2014/jun/18 pass: 4,969; fail: 496; error: 45 Build 6: aarch64/2014/jun/24 pass: 4,970; fail: 495; error: 45 Build 7: aarch64/2014/jun/25 pass: 4,967; fail: 498; error: 45 Build 8: aarch64/2014/jun/28 pass: 4,968; fail: 497; error: 45 Build 9: aarch64/2014/jul/03 pass: 4,969; fail: 498; error: 43 ------------------------------------------------------------------------------- client-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 2,958; error: 14 Build 1: aarch64/2014/jun/05 pass: 2,958; error: 14 Build 2: aarch64/2014/jun/16 pass: 2,999; error: 16 Build 3: aarch64/2014/jun/18 pass: 2,999; error: 16 Build 4: aarch64/2014/jun/24 pass: 2,999; error: 16 Build 5: aarch64/2014/jun/25 pass: 3,000; fail: 1; error: 14 Build 6: aarch64/2014/jun/28 pass: 2,999; error: 16 Build 7: aarch64/2014/jul/03 pass: 2,999; error: 16 ------------------------------------------------------------------------------- server-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 437; fail: 1 Build 1: aarch64/2014/jun/05 pass: 437; fail: 1 Build 2: aarch64/2014/jun/16 pass: 554; fail: 10 Build 3: aarch64/2014/jun/18 pass: 554; fail: 3 Build 4: aarch64/2014/jun/24 pass: 554; fail: 3 Build 5: aarch64/2014/jun/25 pass: 555; fail: 2 Build 6: aarch64/2014/jun/28 pass: 553; fail: 11 Build 7: aarch64/2014/jul/03 pass: 562; fail: 2 ------------------------------------------------------------------------------- server-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/may/24 pass: 4,724; fail: 482; error: 243 Build 1: aarch64/2014/may/26 pass: 4,723; fail: 473; error: 253 Build 2: aarch64/2014/jun/03 pass: 4,934; fail: 471; error: 44 Build 3: aarch64/2014/jun/05 pass: 4,935; fail: 473; error: 44 Build 4: aarch64/2014/jun/16 pass: 4,976; fail: 491; error: 43 Build 5: aarch64/2014/jun/18 pass: 4,974; fail: 492; error: 44 Build 6: aarch64/2014/jun/24 pass: 4,973; fail: 492; error: 45 Build 7: aarch64/2014/jun/25 pass: 4,975; fail: 491; error: 44 Build 8: aarch64/2014/jun/28 pass: 4,973; fail: 493; error: 44 Build 9: aarch64/2014/jul/03 pass: 4,973; fail: 493; error: 44 ------------------------------------------------------------------------------- server-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 2,960; error: 12 Build 1: aarch64/2014/jun/05 pass: 2,960; error: 12 Build 2: aarch64/2014/jun/16 pass: 3,004; error: 11 Build 3: aarch64/2014/jun/18 pass: 3,004; error: 11 Build 4: aarch64/2014/jun/24 pass: 3,004; error: 11 Build 5: aarch64/2014/jun/25 pass: 3,004; error: 11 Build 6: aarch64/2014/jun/28 pass: 3,004; error: 11 Build 7: aarch64/2014/jul/03 pass: 3,004; error: 11 Previous results can be found here: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/index.html SPECjbb2013 composite regression test completed =============================================== This test measures the relative performance of the server compiler running the SPECjbb2013 composite tests and compares the performance against the baseline performance of the server compiler taken on 2014-04-01. In accordance with [1], the SPECjbb2013 tests are run on a system which is not production ready and does not meet all the requirements for publishing compliant results. The numbers below shall be treated as non-compliant (nc) and are for experimental purposes only. Relative performance: Server max-jOPS (nc): 1.05x Relative performance: Server critical-jOPS (nc): 0.74x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/SPECjbb2013-1.00-results/ [1] http://www.spec.org/fairuse.html#Academic Regression test Hadoop-Terasort completed ========================================= This test measures the performance of the server and client compilers running Hadoop sorting a 1GB file using Terasort and compares the performance against the baseline performance of the Zero interpreter and against the baseline performance of the client and server compilers on 2014-04-01. Relative performance: Zero: 1.0, Client: 47.37, Server: 78.85 Client 47.37 / Client 2014-04-01 (43.00): 1.10x Server 78.85 / Server 2014-04-01 (71.00): 1.11x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/hadoop-terasort-benchmark-results/ From edward.nevill at linaro.org Fri Jul 4 10:10:32 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Fri, 04 Jul 2014 11:10:32 +0100 Subject: [aarch64-port-dev ] Fix string_compare for chars that have the top bit set Message-ID: <1404468632.16857.17.camel@localhost.localdomain> Hi, string_compare generates incorrect results in cases where one of the characters has the top bit set. Consider the case String1: aaaa bbbb cccc dddd 0001 1110 2222 3333 String2: aaaa bbbb cccc dddd fff0 1111 2222 3333 Here String1 is < than String2 so it should return a negative result. In the existing code // At this point // result = 3333 2222 1110 0001 // cnt1 = 3333 2222 1111 fff0 // rscratch2 = 0000 0000 0001 fff1 rev(rscratch2, rscratch2); // rscratch2 <- f1ff 0100 0000 0000 clz(rscratch2, rscratch2); // rscratch2 <- 0 andr(rscratch2, rscratch2, -16); // rscratch2 <- 0 lsrv(result, result, rscratch2); // result <- 3333 2222 1110 0001 lsrv(cnt1, cnt1, rscratch2); // cnt1 <- 3333 2222 1111 fff0 sub(result, result, cnt1); // result <- ffff ffff fffe 0011 sxthw(result, result); // result <- 0000 0000 0000 0011 which is positive instead of negative. I believe the following generate the required result in all cases. rev(rscratch2, rscratch2); clz(rscratch2, rscratch2); andr(rscratch2, rscratch2, -16); lsrv(result, result, rscratch2); uxth(result, result); lsrv(cnt1, cnt1, rscratch2); uxth(cnt1, cnt1); subw(result, result, cnt1); IE. we zero extend the characters and then do the subtraction. All the best, Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404467207 -3600 # Fri Jul 04 10:46:47 2014 +0100 # Node ID a824f2b2f34634fac79628bb47cbd5e0b13ae28c # Parent c3d17e4167b4109d878bd85b50c1f7fa5758aec7 Fix string_compare for chars that have the top bit set diff -r c3d17e4167b4 -r a824f2b2f346 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Thu Jul 03 16:07:33 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Fri Jul 04 10:46:47 2014 +0100 @@ -3409,9 +3409,10 @@ clz(rscratch2, rscratch2); andr(rscratch2, rscratch2, -16); lsrv(result, result, rscratch2); + uxth(result, result); lsrv(cnt1, cnt1, rscratch2); - sub(result, result, cnt1); - sxthw(result, result); + uxth(cnt1, cnt1); + subw(result, result, cnt1); b(DONE); } --- CUT HERE --- From aph at redhat.com Fri Jul 4 10:21:12 2014 From: aph at redhat.com (Andrew Haley) Date: Fri, 04 Jul 2014 11:21:12 +0100 Subject: [aarch64-port-dev ] Fix string_compare for chars that have the top bit set In-Reply-To: <1404468632.16857.17.camel@localhost.localdomain> References: <1404468632.16857.17.camel@localhost.localdomain> Message-ID: <53B68018.9080104@redhat.com> On 07/04/2014 11:10 AM, Edward Nevill wrote: > I believe the following generate the required result in all cases. > > rev(rscratch2, rscratch2); > clz(rscratch2, rscratch2); > andr(rscratch2, rscratch2, -16); > lsrv(result, result, rscratch2); > uxth(result, result); > lsrv(cnt1, cnt1, rscratch2); > uxth(cnt1, cnt1); > subw(result, result, cnt1); > > IE. we zero extend the characters and then do the subtraction. Yes, I think you're right. It doesn't make any practical difference, but we are working on words rather than xwords, so I kinda think that should be > uxthw(result, result); > lsrv(cnt1, cnt1, rscratch2); > uxthw(cnt1, cnt1); > subw(result, result, cnt1); But that's up to you if you strongly disagree. Approved. Andrew. From ed at camswl.com Fri Jul 4 12:09:46 2014 From: ed at camswl.com (ed at camswl.com) Date: Fri, 04 Jul 2014 12:09:46 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: Fix string_compare for chars that have the top bit set Message-ID: <201407041209.s64C9lc7028798@aojmv0008> Changeset: 2a1ea9fef34d Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-04 13:08 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/2a1ea9fef34d Fix string_compare for chars that have the top bit set ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp From edward.nevill at linaro.org Fri Jul 4 12:56:27 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Fri, 04 Jul 2014 13:56:27 +0100 Subject: [aarch64-port-dev ] JTREG, SPECjbb2013 and Hadoop/Terasort results for OpenJDK 8 on AArch64 Message-ID: <1404478587.16857.23.camel@localhost.localdomain> This is a summary of the JTREG test results =========================================== The build and test results are cycled every 10 days. For detailed information on the test output please refer to: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/summary/2014/185/summary.html ------------------------------------------------------------------------------- client-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 434; fail: 4 Build 1: aarch64/2014/jun/05 pass: 434; fail: 4 Build 2: aarch64/2014/jun/16 pass: 545; fail: 19 Build 3: aarch64/2014/jun/18 pass: 538; fail: 19 Build 4: aarch64/2014/jun/24 pass: 538; fail: 19 Build 5: aarch64/2014/jun/25 pass: 538; fail: 19 Build 6: aarch64/2014/jun/28 pass: 536; fail: 28 Build 7: aarch64/2014/jul/03 pass: 545; fail: 19 Build 8: aarch64/2014/jul/04 pass: 545; fail: 19 ------------------------------------------------------------------------------- client-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/may/26 pass: 4,906; fail: 473; error: 70 Build 1: aarch64/2014/jun/03 pass: 4,932; fail: 474; error: 43 Build 2: aarch64/2014/jun/05 pass: 4,932; fail: 475; error: 45 Build 3: aarch64/2014/jun/16 pass: 4,968; fail: 498; error: 44 Build 4: aarch64/2014/jun/18 pass: 4,969; fail: 496; error: 45 Build 5: aarch64/2014/jun/24 pass: 4,970; fail: 495; error: 45 Build 6: aarch64/2014/jun/25 pass: 4,967; fail: 498; error: 45 Build 7: aarch64/2014/jun/28 pass: 4,968; fail: 497; error: 45 Build 8: aarch64/2014/jul/03 pass: 5,228; fail: 234; error: 48 Build 9: aarch64/2014/jul/04 pass: 5,232; fail: 231; error: 47 ------------------------------------------------------------------------------- client-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 2,958; error: 14 Build 1: aarch64/2014/jun/05 pass: 2,958; error: 14 Build 2: aarch64/2014/jun/16 pass: 2,999; error: 16 Build 3: aarch64/2014/jun/18 pass: 2,999; error: 16 Build 4: aarch64/2014/jun/24 pass: 2,999; error: 16 Build 5: aarch64/2014/jun/25 pass: 3,000; fail: 1; error: 14 Build 6: aarch64/2014/jun/28 pass: 2,999; error: 16 Build 7: aarch64/2014/jul/03 pass: 2,999; error: 16 Build 8: aarch64/2014/jul/04 pass: 2,999; error: 16 ------------------------------------------------------------------------------- server-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 437; fail: 1 Build 1: aarch64/2014/jun/05 pass: 437; fail: 1 Build 2: aarch64/2014/jun/16 pass: 554; fail: 10 Build 3: aarch64/2014/jun/18 pass: 554; fail: 3 Build 4: aarch64/2014/jun/24 pass: 554; fail: 3 Build 5: aarch64/2014/jun/25 pass: 555; fail: 2 Build 6: aarch64/2014/jun/28 pass: 553; fail: 11 Build 7: aarch64/2014/jul/03 pass: 562; fail: 2 Build 8: aarch64/2014/jul/04 pass: 561; fail: 3 ------------------------------------------------------------------------------- server-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/may/26 pass: 4,723; fail: 473; error: 253 Build 1: aarch64/2014/jun/03 pass: 4,934; fail: 471; error: 44 Build 2: aarch64/2014/jun/05 pass: 4,935; fail: 473; error: 44 Build 3: aarch64/2014/jun/16 pass: 4,976; fail: 491; error: 43 Build 4: aarch64/2014/jun/18 pass: 4,974; fail: 492; error: 44 Build 5: aarch64/2014/jun/24 pass: 4,973; fail: 492; error: 45 Build 6: aarch64/2014/jun/25 pass: 4,975; fail: 491; error: 44 Build 7: aarch64/2014/jun/28 pass: 4,973; fail: 493; error: 44 Build 8: aarch64/2014/jul/03 pass: 5,239; fail: 221; error: 50 Build 9: aarch64/2014/jul/04 pass: 5,250; fail: 204; error: 56 ------------------------------------------------------------------------------- server-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 2,960; error: 12 Build 1: aarch64/2014/jun/05 pass: 2,960; error: 12 Build 2: aarch64/2014/jun/16 pass: 3,004; error: 11 Build 3: aarch64/2014/jun/18 pass: 3,004; error: 11 Build 4: aarch64/2014/jun/24 pass: 3,004; error: 11 Build 5: aarch64/2014/jun/25 pass: 3,004; error: 11 Build 6: aarch64/2014/jun/28 pass: 3,004; error: 11 Build 7: aarch64/2014/jul/03 pass: 3,004; error: 11 Build 8: aarch64/2014/jul/04 pass: 3,004; error: 11 Previous results can be found here: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/index.html SPECjbb2013 composite regression test completed =============================================== This test measures the relative performance of the server compiler running the SPECjbb2013 composite tests and compares the performance against the baseline performance of the server compiler taken on 2014-04-01. In accordance with [1], the SPECjbb2013 tests are run on a system which is not production ready and does not meet all the requirements for publishing compliant results. The numbers below shall be treated as non-compliant (nc) and are for experimental purposes only. Relative performance: Server max-jOPS (nc): 1.01x Relative performance: Server critical-jOPS (nc): 0.96x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/SPECjbb2013-1.00-results/ [1] http://www.spec.org/fairuse.html#Academic Regression test Hadoop-Terasort completed ========================================= This test measures the performance of the server and client compilers running Hadoop sorting a 1GB file using Terasort and compares the performance against the baseline performance of the Zero interpreter and against the baseline performance of the client and server compilers on 2014-04-01. Relative performance: Zero: 1.0, Client: 49.18, Server: 80.2 Client 49.18 / Client 2014-04-01 (43.00): 1.14x Server 80.2 / Server 2014-04-01 (71.00): 1.13x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/hadoop-terasort-benchmark-results/ From edward.nevill at linaro.org Fri Jul 4 13:40:40 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Fri, 04 Jul 2014 14:40:40 +0100 Subject: [aarch64-port-dev ] guarantee failure in jcstress Message-ID: <1404481240.16857.44.camel@localhost.localdomain> Hi, The overnight run of jcstress generated a guarantee failure. I have put the hs_err log at http://people.linaro.org/~edward.nevill/jcstress/hs_err_pid3672.log and the JDK image at http://people.linaro.org/~edward.nevill/jcstress/j2sdk-image-184.tgz I have disassembled the image at the location reported in the error log and it seems to be occurring at the following source location. >From macroAssembler_aarch64.cpp around line 75 void MacroAssembler::pd_patch_instruction(address branch, address target) { assert((uint64_t)target < (1ul << 48), "48-bit overflow in address constant"); long offset = (target - branch) >> 2; unsigned insn = *(unsigned*)branch; if ((Instruction_aarch64::extract(insn, 29, 24) & 0b111011) == 0b011000) { // Load register (literal) Instruction_aarch64::spatch(branch, 23, 5, offset); } else if (Instruction_aarch64::extract(insn, 30, 26) == 0b00101) { // Unconditional branch (immediate) <<<< guarantee failure seems to occur on the next line >>>> Instruction_aarch64::spatch(branch, 25, 0, offset); } else if (Instruction_aarch64::extract(insn, 31, 25) == 0b0101010) { // Conditional branch (immediate) Instruction_aarch64::spatch(branch, 23, 5, offset); } else if (Instruction_aarch64::extract(insn, 30, 25) == 0b011010) { >From the hs_err log CodeCache: size=245760Kb used=130322Kb max_used=130339Kb free=115437Kb So 130322Kb is less than 128M but maybe there are holes in the code cache? But I am fairly convinced this is the location. In the hs_err log the error occurs at pd_patch_instruction + 0x1e4. V [libjvm.so+0x812a24] VMError::report_and_die()+0x148 V [libjvm.so+0x39da48] report_vm_error(char const*, int, char const*, char const*)+0x6c V [libjvm.so+0x605d3c] MacroAssembler::pd_patch_instruction(unsigned char*, unsigned char*)+0x1e4 V [libjvm.so+0x338514] CodeBuffer::relocate_code_to(CodeBuffer*) const+0x1b8 and from the objdump of libjvm.so 0000000000608808 <_ZN14MacroAssembler20pd_patch_instructionEPhS0_>: 608808: a9bc7bfd stp x29, x30, [sp,#-64]! 60880c: 910003fd mov x29, sp 608810: a90153f3 stp x19, x20, [sp,#16] 608814: a9025bf5 stp x21, x22, [sp,#32] 608818: f9001bf7 str x23, [sp,#48] 60881c: b9400002 ldr w2, [x0] 608820: aa0003f3 mov x19, x0 608824: aa0103f5 mov x21, x1 608828: 53187c40 lsr w0, w2, #24 60882c: 52800761 mov w1, #0x3b // #59 608830: 0a010001 and w1, w0, w1 608834: cb1302b4 sub x20, x21, x19 608838: 7100603f cmp w1, #0x18 60883c: 9342fe96 asr x22, x20, #2 608840: 540003c0 b.eq 6088b8 <_ZN14MacroAssembler20pd_patch_instructionEPhS0_+0xb0> 608844: d35a7841 ubfx x1, x2, #26, #5 <<<< This is the == 0b00101 case above >>> 608848: 7100143f cmp w1, #0x5 60884c: 54000b80 b.eq 6089bc <_ZN14MacroAssembler20pd_patch_instructionEPhS0_+0x1b4> and at pd_patch_instruction + 0x1b4 6089bc: 935bfe94 asr x20, x20, #27 6089c0: 91000694 add x20, x20, #0x1 6089c4: f100069f cmp x20, #0x1 6089c8: 54000169 b.ls 6089f4 <_ZN14MacroAssembler20pd_patch_instructionEPhS0_+0x1ec> 6089cc: b0001180 adrp x0, 839000 6089d0: b0001182 adrp x2, 839000 6089d4: b0001183 adrp x3, 839000 6089d8: 91350042 add x2, x2, #0xd40 6089dc: 91312000 add x0, x0, #0xc48 6089e0: 52801c01 mov w1, #0xe0 // #224 6089e4: 9133a063 add x3, x3, #0xce8 6089e8: 97f65e25 bl 3a027c <_Z15report_vm_errorPKciS0_S0_> pd_patch_instruction + 0x1e4 6089ec: 9402ad6c bl 6b3f9c I have suggested to Andrew (McDermott) that he use -XX:-TieredCompilation in the overnight tests for jcstress in order that we can get some results. So, what to do? Should we fix the code cache at 128M? All the best, Ed. From aph at redhat.com Fri Jul 4 13:44:23 2014 From: aph at redhat.com (Andrew Haley) Date: Fri, 04 Jul 2014 14:44:23 +0100 Subject: [aarch64-port-dev ] guarantee failure in jcstress In-Reply-To: <1404481240.16857.44.camel@localhost.localdomain> References: <1404481240.16857.44.camel@localhost.localdomain> Message-ID: <53B6AFB7.3030204@redhat.com> On 07/04/2014 02:40 PM, Edward Nevill wrote: > So, what to do? Should we fix the code cache at 128M? We need to see what branch is out of range, really. Andrew. From edward.nevill at linaro.org Mon Jul 7 15:34:13 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Mon, 07 Jul 2014 16:34:13 +0100 Subject: [aarch64-port-dev ] RFR: Optimised multiplyExact patch Message-ID: <1404747253.4274.21.camel@localhost.localdomain> Hi, The following patch optimises multiplyExact to generate the following code Integer case:- 0x0000007f751404e0: smull x8, w19, w11 0x0000007f751404e4: cmp x8, w8, sxtw 0x0000007f751404e8: b.ne 0x0000007f75140530 ;*invokestatic multiplyExact Long case:- 0x0000007f811404e0: mul x8, x19, x10 0x0000007f811404e4: smulh x9, x19, x10 0x0000007f811404e8: cmp x9, x8, asr #31 0x0000007f811404ec: b.ne 0x0000007f81140534 ;*invokestatic multiplyExact The patch has additional rules to convert the bvs after the multiply exact into a bne and therefor no longer needs the ugly code to generate the V flag from the Z flag. OK? Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404746752 -3600 # Mon Jul 07 16:25:52 2014 +0100 # Node ID 76a6867e8c34fb6ac892db0a0d2ea76aaf0c3415 # Parent aafb8a6d2b38862426dda0d3eb8061d7a1291fe0 Add support for multiplyExact diff -r aafb8a6d2b38 -r 76a6867e8c34 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Mon Jul 07 16:24:51 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Mon Jul 07 16:25:52 2014 +0100 @@ -10602,6 +10602,96 @@ ins_pipe(pipe_class_default); %} +instruct overflowMulI_reg(rFlagsReg cr, iRegI op1, iRegI op2) +%{ + match(Set cr (OverflowMulI op1 op2)); + + format %{ "smull rscratch1, $op1, $op2\t# overflow check int\n\t" + "cmp rscratch1, rscratch1, sxtw\n\t" + "movw rscratch1, #0x80000000\n\t" + "cselw rscratch1, rscratch1, zr, NE\n\t" + "cmpw rscratch1, #1" %} + ins_cost(5 * INSN_COST); + ins_encode %{ + __ smull(rscratch1, $op1$$Register, $op2$$Register); + __ subs(zr, rscratch1, rscratch1, ext::sxtw); // NE => overflow + __ movw(rscratch1, 0x80000000); // Develop 0 (EQ), + __ cselw(rscratch1, rscratch1, zr, Assembler::NE); // or 0x80000000 (NE) + __ cmpw(rscratch1, 1); // 0x80000000 - 1 => VS + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowMulI_reg_branch(cmpOp cmp, iRegI op1, iRegI op2, label labl, rFlagsReg cr) +%{ + match(If cmp (OverflowMulI op1 op2)); + predicate(n->in(1)->as_Bool()->_test._test == BoolTest::overflow + || n->in(1)->as_Bool()->_test._test == BoolTest::no_overflow); + effect(USE labl, KILL cr); + + format %{ "smull rscratch1, $op1, $op2\t# overflow check int\n\t" + "cmp rscratch1, rscratch1, sxtw\n\t" + "b$cmp $labl" %} + ins_cost(3 * INSN_COST); // Branch is rare so treat as INSN_COST + ins_encode %{ + Label* L = $labl$$label; + Assembler::Condition cond = (Assembler::Condition)$cmp$$cmpcode; + __ smull(rscratch1, $op1$$Register, $op2$$Register); + __ subs(zr, rscratch1, rscratch1, ext::sxtw); // NE => overflow + __ br(cond == Assembler::VS ? Assembler::NE : Assembler::EQ, *L); + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowMulL_reg(rFlagsReg cr, iRegL op1, iRegL op2) +%{ + match(Set cr (OverflowMulL op1 op2)); + + format %{ "mul rscratch1, $op1, $op2\t#overflow check long\n\t" + "smulh rscratch2, $op1, $op2\n\t" + "cmp rscratch2, rscratch1, ASR #31\n\t" + "movw rscratch1, #0x80000000\n\t" + "cselw rscratch1, rscratch1, zr, NE\n\t" + "cmpw rscratch1, #1" %} + ins_cost(6 * INSN_COST); + ins_encode %{ + __ mul(rscratch1, $op1$$Register, $op2$$Register); // Result bits 0..63 + __ smulh(rscratch2, $op1$$Register, $op2$$Register); // Result bits 64..127 + __ cmp(rscratch2, rscratch1, Assembler::ASR, 31); // Top is pure sign ext + __ movw(rscratch1, 0x80000000); // Develop 0 (EQ), + __ cselw(rscratch1, rscratch1, zr, Assembler::NE); // or 0x80000000 (NE) + __ cmpw(rscratch1, 1); // 0x80000000 - 1 => VS + %} + + ins_pipe(pipe_class_default); +%} + +instruct overflowMulL_reg_branch(cmpOp cmp, iRegL op1, iRegL op2, label labl, rFlagsReg cr) +%{ + match(If cmp (OverflowMulL op1 op2)); + predicate(n->in(1)->as_Bool()->_test._test == BoolTest::overflow + || n->in(1)->as_Bool()->_test._test == BoolTest::no_overflow); + effect(USE labl, KILL cr); + + format %{ "mul rscratch1, $op1, $op2\t#overflow check long\n\t" + "smulh rscratch2, $op1, $op2\n\t" + "cmp rscratch2, rscratch1, ASR #31\n\t" + "b$cmp $labl" %} + ins_cost(4 * INSN_COST); // Branch is rare so treat as INSN_COST + ins_encode %{ + Label* L = $labl$$label; + Assembler::Condition cond = (Assembler::Condition)$cmp$$cmpcode; + __ mul(rscratch1, $op1$$Register, $op2$$Register); // Result bits 0..63 + __ smulh(rscratch2, $op1$$Register, $op2$$Register); // Result bits 64..127 + __ cmp(rscratch2, rscratch1, Assembler::ASR, 31); // Top is pure sign ext + __ br(cond == Assembler::VS ? Assembler::NE : Assembler::EQ, *L); + %} + + ins_pipe(pipe_class_default); +%} + // ============================================================================ // Compare Instructions --- CUT HERE --- From aph at redhat.com Mon Jul 7 15:56:49 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 07 Jul 2014 16:56:49 +0100 Subject: [aarch64-port-dev ] RFR: Optimised multiplyExact patch In-Reply-To: <1404747253.4274.21.camel@localhost.localdomain> References: <1404747253.4274.21.camel@localhost.localdomain> Message-ID: <53BAC341.3000804@redhat.com> On 07/07/2014 04:34 PM, Edward Nevill wrote: > Hi, > > The following patch optimises multiplyExact to generate the following code > > Integer case:- > > 0x0000007f751404e0: smull x8, w19, w11 > 0x0000007f751404e4: cmp x8, w8, sxtw > 0x0000007f751404e8: b.ne 0x0000007f75140530 ;*invokestatic multiplyExact > > Long case:- > > 0x0000007f811404e0: mul x8, x19, x10 > 0x0000007f811404e4: smulh x9, x19, x10 > 0x0000007f811404e8: cmp x9, x8, asr #31 > 0x0000007f811404ec: b.ne 0x0000007f81140534 ;*invokestatic multiplyExact > > The patch has additional rules to convert the bvs after the multiply exact into a bne and therefor no longer needs the ugly code to generate the V flag from the Z flag. > > OK? > Ed. > Great, thanks. Andrew. From aph at redhat.com Mon Jul 7 16:02:24 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 07 Jul 2014 17:02:24 +0100 Subject: [aarch64-port-dev ] guarantee failure in jcstress In-Reply-To: <1404481240.16857.44.camel@localhost.localdomain> References: <1404481240.16857.44.camel@localhost.localdomain> Message-ID: <53BAC490.3060907@redhat.com> On 07/04/2014 02:40 PM, Edward Nevill wrote: > I have suggested to Andrew (McDermott) that he use -XX:-TieredCompilation in the overnight tests for jcstress in order that we can get some results. > > So, what to do? Should we fix the code cache at 128M? Yes, I think so. Andrew. From ed at camswl.com Mon Jul 7 16:53:08 2014 From: ed at camswl.com (ed at camswl.com) Date: Mon, 07 Jul 2014 16:53:08 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: 2 new changesets Message-ID: <201407071653.s67Gr9Et028720@aojmv0008> Changeset: aafb8a6d2b38 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-07 16:24 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/aafb8a6d2b38 Add support for MathExact intrinsics ! src/cpu/aarch64/vm/aarch64.ad ! test/compiler/intrinsics/mathexact/sanity/IntrinsicBase.java ! test/testlibrary/com/oracle/java/testlibrary/Platform.java Changeset: 76a6867e8c34 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-07 16:25 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/76a6867e8c34 Add support for multiplyExact ! src/cpu/aarch64/vm/aarch64.ad From aph at redhat.com Tue Jul 8 09:20:47 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 08 Jul 2014 10:20:47 +0100 Subject: [aarch64-port-dev ] Fix typo in fsqrts Message-ID: <53BBB7EF.1040600@redhat.com> Oops. Let's be careful out there. Andrew. # HG changeset patch # User aph # Date 1404811150 14400 # Tue Jul 08 05:19:10 2014 -0400 # Node ID 2319bbcc24a5bc6871ded7700d3c2d238f81297b # Parent 2a1ea9fef34dcf5e154c2d3d9e2a5aa158a15b8b Fix typo in fsqrts diff -r 2a1ea9fef34d -r 2319bbcc24a5 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Fri Jul 04 13:08:43 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Tue Jul 08 05:19:10 2014 -0400 @@ -9824,7 +9824,7 @@ ins_cost(INSN_COST * 50); format %{ "fsqrts $dst, $src" %} ins_encode %{ - __ fsqrtd(as_FloatRegister($dst$$reg), + __ fsqrts(as_FloatRegister($dst$$reg), as_FloatRegister($src$$reg)); %} From aph at redhat.com Tue Jul 8 09:25:30 2014 From: aph at redhat.com (aph at redhat.com) Date: Tue, 08 Jul 2014 09:25:30 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: 2 new changesets Message-ID: <201407080925.s689PUK6026054@aojmv0008> Changeset: 2319bbcc24a5 Author: aph Date: 2014-07-08 05:19 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/2319bbcc24a5 Fix typo in fsqrts ! src/cpu/aarch64/vm/aarch64.ad Changeset: 2a489b2bb083 Author: aph Date: 2014-07-08 05:25 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/2a489b2bb083 Merge ! src/cpu/aarch64/vm/aarch64.ad From edward.nevill at linaro.org Tue Jul 8 09:35:23 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Tue, 08 Jul 2014 10:35:23 +0100 Subject: [aarch64-port-dev ] Restrict ReservedCodeCache to 128M Message-ID: <1404812123.11399.18.camel@localhost.localdomain> Hi, The following patch restricts the default code cache to 128M. I have chosen to only restrict the default code cache size so it can still be overridden with -XX:ReservedCodeCacheSize Regards, Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404811944 -3600 # Tue Jul 08 10:32:24 2014 +0100 # Node ID f60e306e9ec6f570bba3bdc4a8b65dd459888092 # Parent 2a489b2bb083062d3356ee6c470aaf4d2d0a481d Restrict default ReservedCodeCacheSize to 128M diff -r 2a489b2bb083 -r f60e306e9ec6 src/share/vm/runtime/arguments.cpp --- a/src/share/vm/runtime/arguments.cpp Tue Jul 08 05:25:15 2014 -0400 +++ b/src/share/vm/runtime/arguments.cpp Tue Jul 08 10:32:24 2014 +0100 @@ -1130,7 +1130,7 @@ } // Increase the code cache size - tiered compiles a lot more. if (FLAG_IS_DEFAULT(ReservedCodeCacheSize)) { - FLAG_SET_DEFAULT(ReservedCodeCacheSize, ReservedCodeCacheSize * 5); + FLAG_SET_DEFAULT(ReservedCodeCacheSize, MIN2(ReservedCodeCacheSize * 5, 128*M)); } if (!UseInterpreter) { // -Xcomp Tier3InvokeNotifyFreqLog = 0; --- CUT HERE --- From edward.nevill at linaro.org Tue Jul 8 09:42:30 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Tue, 08 Jul 2014 10:42:30 +0100 Subject: [aarch64-port-dev ] Fix format error Message-ID: <1404812550.11399.21.camel@localhost.localdomain> Hi, The following patch fixes a format error which occurs with some versions of gcc. Thanks to Andy Johnson for pointing this out. All the best, Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404812362 -3600 # Tue Jul 08 10:39:22 2014 +0100 # Node ID e4009a9114af0814e2a6153001dd735ff73b1d4b # Parent f60e306e9ec6f570bba3bdc4a8b65dd459888092 Fix format error diff -r f60e306e9ec6 -r e4009a9114af src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Tue Jul 08 10:32:24 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Tue Jul 08 10:39:22 2014 +0100 @@ -1048,7 +1048,7 @@ if (do_polling() && C->is_method_compilation()) { st->print("# touch polling page\n\t"); - st->print("mov rscratch1, #0x%x\n\t", os::get_polling_page()); + st->print("mov rscratch1, #" INTPTR_FORMAT "\n\t", p2i(os::get_polling_page())); st->print("ldr zr, [rscratch1]"); } } --- CUT HERE --- From aph at redhat.com Tue Jul 8 09:43:25 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 08 Jul 2014 10:43:25 +0100 Subject: [aarch64-port-dev ] Restrict ReservedCodeCache to 128M In-Reply-To: <1404812123.11399.18.camel@localhost.localdomain> References: <1404812123.11399.18.camel@localhost.localdomain> Message-ID: <53BBBD3D.901@redhat.com> On 07/08/2014 10:35 AM, Edward Nevill wrote: > I have chosen to only restrict the default code cache size so it can still be overridden with -XX:ReservedCodeCacheSize Err, this should at least be conditionalized on AARCH64. Couldn't we do it in the back end? Andrew. From aph at redhat.com Tue Jul 8 13:28:53 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 08 Jul 2014 14:28:53 +0100 Subject: [aarch64-port-dev ] Some (very) low-hanging fruit Message-ID: <53BBF215.2050809@redhat.com> Optimized smull. Andrew. # HG changeset patch # User aph # Date 1404822591 14400 # Tue Jul 08 08:29:51 2014 -0400 # Node ID 5ed1bb528b990f293f6abbef834f7c4bf0dea406 # Parent 2a489b2bb083062d3356ee6c470aaf4d2d0a481d AArch64 C2 instruct for smull diff -r 2a489b2bb083 -r 5ed1bb528b99 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Tue Jul 08 05:25:15 2014 -0400 +++ b/src/cpu/aarch64/vm/aarch64.ad Tue Jul 08 08:29:51 2014 -0400 @@ -7471,6 +7471,21 @@ ins_pipe(pipe_class_default); %} +instruct smulI(iRegLNoSp dst, iRegIorL2I src1, iRegIorL2I src2) %{ + match(Set dst (MulL (ConvI2L src1) (ConvI2L src2))); + + ins_cost(INSN_COST * 3); + format %{ "smull $dst, $src1, $src2" %} + + ins_encode %{ + __ smull(as_Register($dst$$reg), + as_Register($src1$$reg), + as_Register($src2$$reg)); + %} + + ins_pipe(pipe_class_default); +%} + // Long Multiply instruct mulL(iRegLNoSp dst, iRegL src1, iRegL src2) %{ From aph at redhat.com Tue Jul 8 13:29:26 2014 From: aph at redhat.com (aph at redhat.com) Date: Tue, 08 Jul 2014 13:29:26 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: AArch64 C2 instruct for smull Message-ID: <201407081329.s68DTQxs002378@aojmv0008> Changeset: 5ed1bb528b99 Author: aph Date: 2014-07-08 08:29 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/5ed1bb528b99 AArch64 C2 instruct for smull ! src/cpu/aarch64/vm/aarch64.ad From edward.nevill at linaro.org Tue Jul 8 18:05:17 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Tue, 8 Jul 2014 19:05:17 +0100 Subject: [aarch64-port-dev ] Restrict ReservedCodeCache to 128M In-Reply-To: <53BBBD3D.901@redhat.com> References: <1404812123.11399.18.camel@localhost.localdomain> <53BBBD3D.901@redhat.com> Message-ID: On 8 July 2014 10:43, Andrew Haley wrote: > On 07/08/2014 10:35 AM, Edward Nevill wrote: > > I have chosen to only restrict the default code cache size so it can > still be overridden with -XX:ReservedCodeCacheSize > > Err, this should at least be conditionalized on AARCH64. > Yes, sorry. > > Couldn't we do it in the back end? > I can see no obvious way to do it in the back end. The code in vm_version_aarch64.cpp where other arch dependant stuff is done like UseCRC32 is called too late, IE. it is called after ReservedCodeCacheSize has already been used to initialise the code heap. Patch below conditionalises on AARCH_ONLY The alternative would be to set ReservedCodeCacheSize to 25M in c2_globals instead of 48M so that 5*ReservedCodeCacheSize < 128M. This would mean however that -XX:-TieredCompilation would only get a heap of 25M. Which is best? Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404842629 -3600 # Tue Jul 08 19:03:49 2014 +0100 # Node ID 6c07d806085bdc65a6a99a8e1394d1890a66c6cb # Parent 5ed1bb528b990f293f6abbef834f7c4bf0dea406 Restrict default ReservedCodeCacheSize to 128M diff -r 5ed1bb528b99 -r 6c07d806085b src/share/vm/runtime/arguments.cpp --- a/src/share/vm/runtime/arguments.cpp Tue Jul 08 08:29:51 2014 -0400 +++ b/src/share/vm/runtime/arguments.cpp Tue Jul 08 19:03:49 2014 +0100 @@ -1131,6 +1131,7 @@ // Increase the code cache size - tiered compiles a lot more. if (FLAG_IS_DEFAULT(ReservedCodeCacheSize)) { FLAG_SET_DEFAULT(ReservedCodeCacheSize, ReservedCodeCacheSize * 5); + AARCH64_ONLY(FLAG_SET_DEFAULT(ReservedCodeCacheSize, MIN2(ReservedCodeCacheSize, 128*M))); } if (!UseInterpreter) { // -Xcomp Tier3InvokeNotifyFreqLog = 0; --- CUT HERE --- From aph at redhat.com Tue Jul 8 18:27:39 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 08 Jul 2014 19:27:39 +0100 Subject: [aarch64-port-dev ] Restrict ReservedCodeCache to 128M In-Reply-To: References: <1404812123.11399.18.camel@localhost.localdomain> <53BBBD3D.901@redhat.com> Message-ID: <53BC381B.8000801@redhat.com> On 07/08/2014 07:05 PM, Edward Nevill wrote: > On 8 July 2014 10:43, Andrew Haley wrote: > >> On 07/08/2014 10:35 AM, Edward Nevill wrote: >>> I have chosen to only restrict the default code cache size so it can >> still be overridden with -XX:ReservedCodeCacheSize >> >> Err, this should at least be conditionalized on AARCH64. >> > > Yes, sorry. > > >> >> Couldn't we do it in the back end? >> > > I can see no obvious way to do it in the back end. > > The code in vm_version_aarch64.cpp where other arch dependant stuff is done > like UseCRC32 is called too late, IE. it is called after > ReservedCodeCacheSize has already been used to initialise the code heap. > > Patch below conditionalises on AARCH_ONLY > > The alternative would be to set ReservedCodeCacheSize to 25M in c2_globals > instead of 48M so that 5*ReservedCodeCacheSize < 128M. This would mean > however that -XX:-TieredCompilation would only get a heap of 25M. > > Which is best? This patch is best. Please add a comment here // The maximum B/BL offset range on AArch64 is 128MB TVM, Andrew. > --- CUT HERE --- > # HG changeset patch > # User Edward Nevill edward.nevill at linaro.org > # Date 1404842629 -3600 > # Tue Jul 08 19:03:49 2014 +0100 > # Node ID 6c07d806085bdc65a6a99a8e1394d1890a66c6cb > # Parent 5ed1bb528b990f293f6abbef834f7c4bf0dea406 > Restrict default ReservedCodeCacheSize to 128M > > diff -r 5ed1bb528b99 -r 6c07d806085b src/share/vm/runtime/arguments.cpp > --- a/src/share/vm/runtime/arguments.cpp Tue Jul 08 08:29:51 2014 -0400 > +++ b/src/share/vm/runtime/arguments.cpp Tue Jul 08 19:03:49 2014 +0100 > @@ -1131,6 +1131,7 @@ > // Increase the code cache size - tiered compiles a lot more. > if (FLAG_IS_DEFAULT(ReservedCodeCacheSize)) { > FLAG_SET_DEFAULT(ReservedCodeCacheSize, ReservedCodeCacheSize * 5); > + AARCH64_ONLY(FLAG_SET_DEFAULT(ReservedCodeCacheSize, > MIN2(ReservedCodeCacheSize, 128*M))); > } > if (!UseInterpreter) { // -Xcomp > Tier3InvokeNotifyFreqLog = 0; > --- CUT HERE --- > From ed at camswl.com Wed Jul 9 07:19:57 2014 From: ed at camswl.com (Edward Nevill) Date: Wed, 09 Jul 2014 08:19:57 +0100 Subject: [aarch64-port-dev ] JTREG, SPECjbb2013 and Hadoop/Terasort results for OpenJDK 8 on AArch64 Message-ID: <1404890397.8532.45.camel@mint> This is a summary of the JTREG test results =========================================== The build and test results are cycled every 10 days. For detailed information on the test output please refer to: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/summary/2014/189/summary.html ------------------------------------------------------------------------------- client-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 434; fail: 4 Build 1: aarch64/2014/jun/05 pass: 434; fail: 4 Build 2: aarch64/2014/jun/16 pass: 545; fail: 19 Build 3: aarch64/2014/jun/18 pass: 538; fail: 19 Build 4: aarch64/2014/jun/24 pass: 538; fail: 19 Build 5: aarch64/2014/jun/25 pass: 538; fail: 19 Build 6: aarch64/2014/jun/28 pass: 536; fail: 28 Build 7: aarch64/2014/jul/03 pass: 545; fail: 19 Build 8: aarch64/2014/jul/08 pass: 545; fail: 19 ------------------------------------------------------------------------------- client-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 4,932; fail: 474; error: 43 Build 1: aarch64/2014/jun/05 pass: 4,932; fail: 475; error: 45 Build 2: aarch64/2014/jun/16 pass: 4,968; fail: 498; error: 44 Build 3: aarch64/2014/jun/18 pass: 4,969; fail: 496; error: 45 Build 4: aarch64/2014/jun/24 pass: 4,970; fail: 495; error: 45 Build 5: aarch64/2014/jun/25 pass: 4,967; fail: 498; error: 45 Build 6: aarch64/2014/jun/28 pass: 4,968; fail: 497; error: 45 Build 7: aarch64/2014/jul/03 pass: 5,228; fail: 234; error: 48 Build 8: aarch64/2014/jul/08 pass: 5,242; fail: 219; error: 49 ------------------------------------------------------------------------------- client-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 2,958; error: 14 Build 1: aarch64/2014/jun/05 pass: 2,958; error: 14 Build 2: aarch64/2014/jun/16 pass: 2,999; error: 16 Build 3: aarch64/2014/jun/18 pass: 2,999; error: 16 Build 4: aarch64/2014/jun/24 pass: 2,999; error: 16 Build 5: aarch64/2014/jun/25 pass: 3,000; fail: 1; error: 14 Build 6: aarch64/2014/jun/28 pass: 2,999; error: 16 Build 7: aarch64/2014/jul/03 pass: 2,999; error: 16 Build 8: aarch64/2014/jul/08 pass: 2,999; error: 16 ------------------------------------------------------------------------------- server-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 437; fail: 1 Build 1: aarch64/2014/jun/05 pass: 437; fail: 1 Build 2: aarch64/2014/jun/16 pass: 554; fail: 10 Build 3: aarch64/2014/jun/18 pass: 554; fail: 3 Build 4: aarch64/2014/jun/24 pass: 554; fail: 3 Build 5: aarch64/2014/jun/25 pass: 555; fail: 2 Build 6: aarch64/2014/jun/28 pass: 553; fail: 11 Build 7: aarch64/2014/jul/03 pass: 562; fail: 2 Build 8: aarch64/2014/jul/08 pass: 562; fail: 2 ------------------------------------------------------------------------------- server-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 4,934; fail: 471; error: 44 Build 1: aarch64/2014/jun/05 pass: 4,935; fail: 473; error: 44 Build 2: aarch64/2014/jun/16 pass: 4,976; fail: 491; error: 43 Build 3: aarch64/2014/jun/18 pass: 4,974; fail: 492; error: 44 Build 4: aarch64/2014/jun/24 pass: 4,973; fail: 492; error: 45 Build 5: aarch64/2014/jun/25 pass: 4,975; fail: 491; error: 44 Build 6: aarch64/2014/jun/28 pass: 4,973; fail: 493; error: 44 Build 7: aarch64/2014/jul/03 pass: 5,239; fail: 221; error: 50 Build 8: aarch64/2014/jul/08 pass: 5,239; fail: 217; error: 54 ------------------------------------------------------------------------------- server-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 2,960; error: 12 Build 1: aarch64/2014/jun/05 pass: 2,960; error: 12 Build 2: aarch64/2014/jun/16 pass: 3,004; error: 11 Build 3: aarch64/2014/jun/18 pass: 3,004; error: 11 Build 4: aarch64/2014/jun/24 pass: 3,004; error: 11 Build 5: aarch64/2014/jun/25 pass: 3,004; error: 11 Build 6: aarch64/2014/jun/28 pass: 3,004; error: 11 Build 7: aarch64/2014/jul/03 pass: 3,004; error: 11 Build 8: aarch64/2014/jul/08 pass: 3,004; error: 11 Previous results can be found here: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/index.html SPECjbb2013 composite regression test completed =============================================== This test measures the relative performance of the server compiler running the SPECjbb2013 composite tests and compares the performance against the baseline performance of the server compiler taken on 2014-04-01. In accordance with [1], the SPECjbb2013 tests are run on a system which is not production ready and does not meet all the requirements for publishing compliant results. The numbers below shall be treated as non-compliant (nc) and are for experimental purposes only. Relative performance: Server max-jOPS (nc): 1.03x Relative performance: Server critical-jOPS (nc): 0.84x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/SPECjbb2013-1.00-results/ [1] http://www.spec.org/fairuse.html#Academic Regression test Hadoop-Terasort completed ========================================= This test measures the performance of the server and client compilers running Hadoop sorting a 1GB file using Terasort and compares the performance against the baseline performance of the Zero interpreter and against the baseline performance of the client and server compilers on 2014-04-01. Relative performance: Zero: 1.0, Client: 49.35, Server: 81.59 Client 49.35 / Client 2014-04-01 (43.00): 1.15x Server 81.59 / Server 2014-04-01 (71.00): 1.15x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/hadoop-terasort-benchmark-results/ From ed at camswl.com Wed Jul 9 07:05:17 2014 From: ed at camswl.com (ed at camswl.com) Date: Wed, 09 Jul 2014 07:05:17 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: 2 new changesets Message-ID: <201407090705.s6975JsX011571@aojmv0008> Changeset: f8ab24f3104d Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-08 20:15 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/f8ab24f3104d Restrict default ReservedCodeCacheSize to 128M ! src/share/vm/runtime/arguments.cpp Changeset: c5b8254a0fe2 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-08 20:17 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/c5b8254a0fe2 Fix format error ! src/cpu/aarch64/vm/aarch64.ad From edward.nevill at linaro.org Thu Jul 10 11:31:40 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Thu, 10 Jul 2014 12:31:40 +0100 Subject: [aarch64-port-dev ] JTREG, SPECjbb2013 and Hadoop/Terasort results for OpenJDK 8 on AArch64 Message-ID: <1404991900.17061.8.camel@localhost.localdomain> This is a summary of the JTREG test results =========================================== The build and test results are cycled every 10 days. For detailed information on the test output please refer to: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/summary/2014/191/summary.html ------------------------------------------------------------------------------- client-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/05 pass: 434; fail: 4 Build 1: aarch64/2014/jun/16 pass: 545; fail: 19 Build 2: aarch64/2014/jun/18 pass: 538; fail: 19 Build 3: aarch64/2014/jun/24 pass: 538; fail: 19 Build 4: aarch64/2014/jun/25 pass: 538; fail: 19 Build 5: aarch64/2014/jun/28 pass: 536; fail: 28 Build 6: aarch64/2014/jul/03 pass: 545; fail: 19 Build 7: aarch64/2014/jul/08 pass: 545; fail: 19 Build 8: aarch64/2014/jul/09 pass: 545; fail: 19 Build 9: aarch64/2014/jul/10 pass: 545; fail: 19 ------------------------------------------------------------------------------- client-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/05 pass: 4,932; fail: 475; error: 45 Build 1: aarch64/2014/jun/16 pass: 4,968; fail: 498; error: 44 Build 2: aarch64/2014/jun/18 pass: 4,969; fail: 496; error: 45 Build 3: aarch64/2014/jun/24 pass: 4,970; fail: 495; error: 45 Build 4: aarch64/2014/jun/25 pass: 4,967; fail: 498; error: 45 Build 5: aarch64/2014/jun/28 pass: 4,968; fail: 497; error: 45 Build 6: aarch64/2014/jul/03 pass: 5,228; fail: 234; error: 48 Build 7: aarch64/2014/jul/08 pass: 5,242; fail: 219; error: 49 Build 8: aarch64/2014/jul/09 pass: 5,238; fail: 217; error: 55 Build 9: aarch64/2014/jul/10 pass: 5,230; fail: 234; error: 46 ------------------------------------------------------------------------------- client-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/05 pass: 2,958; error: 14 Build 1: aarch64/2014/jun/16 pass: 2,999; error: 16 Build 2: aarch64/2014/jun/18 pass: 2,999; error: 16 Build 3: aarch64/2014/jun/24 pass: 2,999; error: 16 Build 4: aarch64/2014/jun/25 pass: 3,000; fail: 1; error: 14 Build 5: aarch64/2014/jun/28 pass: 2,999; error: 16 Build 6: aarch64/2014/jul/03 pass: 2,999; error: 16 Build 7: aarch64/2014/jul/08 pass: 2,999; error: 16 Build 8: aarch64/2014/jul/09 pass: 3,000; error: 15 Build 9: aarch64/2014/jul/10 pass: 2,999; error: 16 ------------------------------------------------------------------------------- server-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/05 pass: 437; fail: 1 Build 1: aarch64/2014/jun/16 pass: 554; fail: 10 Build 2: aarch64/2014/jun/18 pass: 554; fail: 3 Build 3: aarch64/2014/jun/24 pass: 554; fail: 3 Build 4: aarch64/2014/jun/25 pass: 555; fail: 2 Build 5: aarch64/2014/jun/28 pass: 553; fail: 11 Build 6: aarch64/2014/jul/03 pass: 562; fail: 2 Build 7: aarch64/2014/jul/08 pass: 562; fail: 2 Build 8: aarch64/2014/jul/09 pass: 562; fail: 2 Build 9: aarch64/2014/jul/10 pass: 562; fail: 2 ------------------------------------------------------------------------------- server-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/05 pass: 4,935; fail: 473; error: 44 Build 1: aarch64/2014/jun/16 pass: 4,976; fail: 491; error: 43 Build 2: aarch64/2014/jun/18 pass: 4,974; fail: 492; error: 44 Build 3: aarch64/2014/jun/24 pass: 4,973; fail: 492; error: 45 Build 4: aarch64/2014/jun/25 pass: 4,975; fail: 491; error: 44 Build 5: aarch64/2014/jun/28 pass: 4,973; fail: 493; error: 44 Build 6: aarch64/2014/jul/03 pass: 5,239; fail: 221; error: 50 Build 7: aarch64/2014/jul/08 pass: 5,239; fail: 217; error: 54 Build 8: aarch64/2014/jul/09 pass: 5,231; fail: 231; error: 48 Build 9: aarch64/2014/jul/10 pass: 5,246; fail: 212; error: 52 ------------------------------------------------------------------------------- server-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/05 pass: 2,960; error: 12 Build 1: aarch64/2014/jun/16 pass: 3,004; error: 11 Build 2: aarch64/2014/jun/18 pass: 3,004; error: 11 Build 3: aarch64/2014/jun/24 pass: 3,004; error: 11 Build 4: aarch64/2014/jun/25 pass: 3,004; error: 11 Build 5: aarch64/2014/jun/28 pass: 3,004; error: 11 Build 6: aarch64/2014/jul/03 pass: 3,004; error: 11 Build 7: aarch64/2014/jul/08 pass: 3,004; error: 11 Build 8: aarch64/2014/jul/09 pass: 3,004; error: 11 Build 9: aarch64/2014/jul/10 pass: 3,004; error: 11 Previous results can be found here: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/index.html SPECjbb2013 composite regression test completed =============================================== This test measures the relative performance of the server compiler running the SPECjbb2013 composite tests and compares the performance against the baseline performance of the server compiler taken on 2014-04-01. In accordance with [1], the SPECjbb2013 tests are run on a system which is not production ready and does not meet all the requirements for publishing compliant results. The numbers below shall be treated as non-compliant (nc) and are for experimental purposes only. Relative performance: Server max-jOPS (nc): 0.84x Relative performance: Server critical-jOPS (nc): 1.05x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/SPECjbb2013-1.00-results/ [1] http://www.spec.org/fairuse.html#Academic Regression test Hadoop-Terasort completed ========================================= This test measures the performance of the server and client compilers running Hadoop sorting a 1GB file using Terasort and compares the performance against the baseline performance of the Zero interpreter and against the baseline performance of the client and server compilers on 2014-04-01. Relative performance: Zero: 1.0, Client: 48.84, Server: 81.12 Client 48.84 / Client 2014-04-01 (43.00): 1.14x Server 81.12 / Server 2014-04-01 (71.00): 1.14x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/hadoop-terasort-benchmark-results/ From adinn at redhat.com Fri Jul 11 15:09:06 2014 From: adinn at redhat.com (Andrew Dinn) Date: Fri, 11 Jul 2014 16:09:06 +0100 Subject: [aarch64-port-dev ] Bug fix patches for aarch64 jdk7u hotspot Message-ID: <53BFFE12.405@redhat.com> The attached patches apply all outstanding jdk8 bug fixes to the jdk7u hotspot tree. The resulting tree builds with the latest icedtea7-forest on a mustang box and the image can run Hello and compile Hello.java. I have not yet tried anything more demanding for lack of any suitable installed code on the box in question. Note that patch 6757 (fixes for C1 and C2 frame build/remove) was synthesized from several upstream jdk8 patches some of which were made in different branches and had conflicts. regards, Andrew Dinn ----------- -------------- next part -------------- # HG changeset patch # User aph # Date 1404912371 -3600 # Node ID eefd08f120e1d116aff68827d6166390fbceec43 # Parent 360d11d249a68891117ac3d89d62d96199dcaa2f Use explicit barrier instructions in C1. diff -r 360d11d249a6 -r eefd08f120e1 src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Fri Jan 10 15:58:40 2014 +0100 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Wed Jul 09 14:26:11 2014 +0100 @@ -1992,6 +1992,11 @@ void emit_data64(jlong data, RelocationHolder const& rspec, int format = 0); }; +inline Assembler::Membar_mask_bits operator|(Assembler::Membar_mask_bits a, + Assembler::Membar_mask_bits b) { + return Assembler::Membar_mask_bits(unsigned(a)|unsigned(b)); +} + Instruction_aarch64::~Instruction_aarch64() { assem->emit(); } diff -r 360d11d249a6 -r eefd08f120e1 src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Fri Jan 10 15:58:40 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Wed Jul 09 14:26:11 2014 +0100 @@ -177,10 +177,6 @@ return result; } -static bool is_reg(LIR_Opr op) { - return op->is_double_cpu() | op->is_single_cpu(); -} - Address LIR_Assembler::as_Address(LIR_Address* addr, Register tmp) { Register base = addr->base()->as_pointer_register(); LIR_Opr opr = addr->index(); @@ -2745,148 +2741,12 @@ } void LIR_Assembler::volatile_move_op(LIR_Opr src, LIR_Opr dest, BasicType type, CodeEmitInfo* info) { - if (dest->is_address()) { - LIR_Address* to_addr = dest->as_address_ptr(); - Register compressed_src = noreg; - if (is_reg(src)) { - compressed_src = as_reg(src); - if (type == T_ARRAY || type == T_OBJECT) { - __ verify_oop(src->as_register()); - if (UseCompressedOops) { - compressed_src = rscratch2; - __ mov(compressed_src, src->as_register()); - __ encode_heap_oop(compressed_src); - } - } - } else if (src->is_single_fpu()) { - __ fmovs(rscratch2, src->as_float_reg()); - src = FrameMap::rscratch2_opr, type = T_INT; - } else if (src->is_double_fpu()) { - __ fmovd(rscratch2, src->as_double_reg()); - src = FrameMap::rscratch2_long_opr, type = T_LONG; - } - - if (dest->is_double_cpu()) - __ lea(rscratch1, as_Address(to_addr)); - else - __ lea(rscratch1, as_Address_lo(to_addr)); - - int null_check_here = code_offset(); - switch (type) { - case T_ARRAY: // fall through - case T_OBJECT: // fall through - if (UseCompressedOops) { - __ stlrw(compressed_src, rscratch1); - } else { - __ stlr(compressed_src, rscratch1); - } - break; - case T_METADATA: - // We get here to store a method pointer to the stack to pass to - // a dtrace runtime call. This can't work on 64 bit with - // compressed klass ptrs: T_METADATA can be a compressed klass - // ptr or a 64 bit method pointer. - LP64_ONLY(ShouldNotReachHere()); - __ stlr(src->as_register(), rscratch1); - break; - case T_ADDRESS: - __ stlr(src->as_register(), rscratch1); - break; - case T_INT: - __ stlrw(src->as_register(), rscratch1); - break; - - case T_LONG: { - __ stlr(src->as_register_lo(), rscratch1); - break; - } - - case T_BYTE: // fall through - case T_BOOLEAN: { - __ stlrb(src->as_register(), rscratch1); - break; - } - - case T_CHAR: // fall through - case T_SHORT: - __ stlrh(src->as_register(), rscratch1); - break; - - default: - ShouldNotReachHere(); - } - if (info != NULL) { - add_debug_info_for_null_check(null_check_here, info); - } - } else if (src->is_address()) { - LIR_Address* from_addr = src->as_address_ptr(); - - if (src->is_double_cpu()) - __ lea(rscratch1, as_Address(from_addr)); - else - __ lea(rscratch1, as_Address_lo(from_addr)); - - int null_check_here = code_offset(); - switch (type) { - case T_ARRAY: // fall through - case T_OBJECT: // fall through - if (UseCompressedOops) { - __ ldarw(dest->as_register(), rscratch1); - } else { - __ ldar(dest->as_register(), rscratch1); - } - break; - case T_ADDRESS: - __ ldar(dest->as_register(), rscratch1); - break; - case T_INT: - __ ldarw(dest->as_register(), rscratch1); - break; - case T_LONG: { - __ ldar(dest->as_register_lo(), rscratch1); - break; - } - - case T_BYTE: // fall through - case T_BOOLEAN: { - __ ldarb(dest->as_register(), rscratch1); - break; - } - - case T_CHAR: // fall through - case T_SHORT: - __ ldarh(dest->as_register(), rscratch1); - break; - - case T_FLOAT: - __ ldarw(rscratch2, rscratch1); - __ fmovs(dest->as_float_reg(), rscratch2); - break; - - case T_DOUBLE: - __ ldar(rscratch2, rscratch1); - __ fmovd(dest->as_double_reg(), rscratch2); - break; - - default: - ShouldNotReachHere(); - } - if (info != NULL) { - add_debug_info_for_null_check(null_check_here, info); - } - - if (type == T_ARRAY || type == T_OBJECT) { - if (UseCompressedOops) { - __ decode_heap_oop(dest->as_register()); - } - __ verify_oop(dest->as_register()); - } else if (type == T_ADDRESS && from_addr->disp() == oopDesc::klass_offset_in_bytes()) { - if (UseCompressedClassPointers) { - __ decode_klass_not_null(dest->as_register()); - } - } - } else + if (dest->is_address() || src->is_address()) { + move_op(src, dest, type, lir_patch_none, info, + /*pop_fpu_stack*/false, /*unaligned*/false, /*wide*/false); + } else { ShouldNotReachHere(); + } } #ifdef ASSERT @@ -2940,17 +2800,18 @@ } void LIR_Assembler::membar_acquire() { - __ block_comment("membar_acquire"); + __ membar(Assembler::LoadLoad|Assembler::LoadStore); } void LIR_Assembler::membar_release() { - __ block_comment("membar_release"); + __ membar(Assembler::LoadStore|Assembler::StoreStore); } -void LIR_Assembler::membar_loadload() { Unimplemented(); } +void LIR_Assembler::membar_loadload() { + __ membar(Assembler::LoadLoad); +} void LIR_Assembler::membar_storestore() { - COMMENT("membar_storestore"); __ membar(MacroAssembler::StoreStore); } -------------- next part -------------- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404912935 -3600 # Node ID da8c7403f77e111a424a27f498208bde35992a59 # Parent eefd08f120e1d116aff68827d6166390fbceec43 Fix register misuse in verify_method_data_pointer diff -r eefd08f120e1 -r da8c7403f77e src/cpu/aarch64/vm/interp_masm_aarch64.cpp --- a/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Wed Jul 09 14:26:11 2014 +0100 +++ b/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Wed Jul 09 14:35:35 2014 +0100 @@ -803,10 +803,10 @@ cmp(r2, rbcp); br(Assembler::EQ, verify_continue); // r1: method - // r13: bcp + // rbcp: bcp // rbcp == 22 // r3: mdp call_VM_leaf(CAST_FROM_FN_PTR(address, InterpreterRuntime::verify_mdp), - r1, r13, r3); + r1, rbcp, r3); bind(verify_continue); ldp(r2, r3, Address(post(sp, 2 * wordSize))); ldp(r0, r1, Address(post(sp, 2 * wordSize))); -------------- next part -------------- # HG changeset patch # User aph # Date 1404917518 -3600 # Node ID 22313a11db519b69b2fe3dff3252b2c6ea78470f # Parent da8c7403f77e111a424a27f498208bde35992a59 Fix register usage in generate_verify_oop(). diff -r da8c7403f77e -r 22313a11db51 src/cpu/aarch64/vm/stubGenerator_aarch64.cpp --- a/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Wed Jul 09 14:35:35 2014 +0100 +++ b/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Wed Jul 09 15:51:58 2014 +0100 @@ -754,10 +754,10 @@ // Stack after saving c_rarg3: // [tos + 0]: saved c_rarg3 // [tos + 1]: saved c_rarg2 - // [tos + 2]: saved rscratch2 - // [tos + 3]: saved lr - // [tos + 4]: saved rscratch1 - // [tos + 5]: saved r0 + // [tos + 2]: saved lr + // [tos + 3]: saved rscratch2 + // [tos + 4]: saved r0 + // [tos + 5]: saved rscratch1 address generate_verify_oop() { StubCodeMark mark(this, "StubRoutines", "verify_oop"); @@ -765,9 +765,6 @@ Label exit, error; - // __ pushf(); - // __ push(r12); - // save c_rarg2 and c_rarg3 __ stp(c_rarg3, c_rarg2, Address(__ pre(sp, -16))); @@ -807,21 +804,15 @@ __ push(RegSet::range(r0, r29), sp); // debug(char* msg, int64_t pc, int64_t regs[]) - __ ldr(c_rarg0, Address(sp, rscratch1->encoding())); // pass address of error message - __ mov(c_rarg1, Address(sp, lr)); // pass return address - __ mov(c_rarg2, sp); // pass address of regs on stack + __ mov(c_rarg0, rscratch1); // pass address of error message + __ mov(c_rarg1, lr); // pass return address + __ mov(c_rarg2, sp); // pass address of regs on stack #ifndef PRODUCT assert(frame::arg_reg_save_area_bytes == 0, "not expecting frame reg save area"); #endif BLOCK_COMMENT("call MacroAssembler::debug"); __ mov(rscratch1, CAST_FROM_FN_PTR(address, MacroAssembler::debug64)); __ blrt(rscratch1, 3, 0, 1); - __ pop(RegSet::range(r0, r29), sp); - - __ ldp(rscratch2, lr, Address(__ post(sp, 2 * wordSize))); - __ ldp(r0, rscratch1, Address(__ post(sp, 2 * wordSize))); - - __ ret(lr); return start; } -------------- next part -------------- # HG changeset patch # User adinn # Date 1404993900 -3600 # Node ID de03075e4aaf09c2cb4d198537730cc73837a9f1 # Parent 22313a11db519b69b2fe3dff3252b2c6ea78470f Common frame handling for C1/C2 which correctly handle all frame sizes This patch merges several changes from the upstream JDK8 code diff -r 22313a11db51 -r de03075e4aaf src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Wed Jul 09 15:51:58 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Thu Jul 10 13:05:00 2014 +0100 @@ -868,7 +868,7 @@ if (framesize == 0) { // Is this even possible? st->print("stp lr, rfp, [sp, #%d]!", -(2 * wordSize)); - } else if (framesize < (1 << 12)) { + } else if (framesize < ((1 << 9) + 2 * wordSize)) { st->print("sub sp, sp, #%d\n\t", framesize); st->print("stp rfp, lr, [sp, #%d]", framesize - 2 * wordSize); } else { @@ -894,17 +894,7 @@ if (C->need_stack_bang(framesize)) __ generate_stack_overflow_check(framesize); - if (framesize == 0) { - // Is this even possible? - __ stp(rfp, lr, Address(__ pre(sp, -2 * wordSize))); - } else if (framesize < (1 << 12)) { - __ sub(sp, sp, framesize); - __ stp(rfp, lr, Address(sp, framesize - 2 * wordSize)); - } else { - __ stp(rfp, lr, Address(__ pre(sp, -2 * wordSize))); - __ mov(rscratch1, framesize - 2 * wordSize); - __ sub(sp, sp, rscratch1); - } + __ build_frame(framesize); if (NotifySimulator) { __ notify(Assembler::method_entry); @@ -946,7 +936,7 @@ if (framesize == 0) { st->print("ldp lr, rfp, [sp],#%d\n\t", (2 * wordSize)); - } else if (framesize < (1 << 12)) { + } else if (framesize < ((1 << 9) + 2 * wordSize)) { st->print("ldp lr, rfp, [sp,#%d]\n\t", framesize - 2 * wordSize); st->print("add sp, sp, #%d\n\t", framesize); } else { @@ -968,16 +958,7 @@ MacroAssembler _masm(&cbuf); int framesize = C->frame_slots() << LogBytesPerInt; - if (framesize == 0) { - __ ldp(rfp, lr, Address(__ post(sp, 2 * wordSize))); - } else if (framesize < (1 << 12)) { - __ ldp(rfp, lr, Address(sp, framesize - 2 * wordSize)); - __ add(sp, sp, framesize); - } else { - __ mov(rscratch1, framesize - 2 * wordSize); - __ add(sp, sp, rscratch1); - __ ldp(rfp, lr, Address(__ post(sp, 2 * wordSize))); - } + __ remove_frame(framesize); if (NotifySimulator) { __ notify(Assembler::method_reentry); diff -r 22313a11db51 -r de03075e4aaf src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Wed Jul 09 15:51:58 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Thu Jul 10 13:05:00 2014 +0100 @@ -420,7 +420,7 @@ } -void C1_MacroAssembler::build_frame(int frame_size_in_bytes) { +void C1_MacroAssembler::build_frame(int framesize) { // If we have to make this method not-entrant we'll overwrite its // first instruction with a jump. For this action to be legal we // must ensure that this first instruction is a B, BL, NOP, BKPT, @@ -428,18 +428,16 @@ nop(); // Make sure there is enough stack space for this method's activation. // Note that we do this before doing an enter(). - generate_stack_overflow_check(frame_size_in_bytes); - enter(); - sub(sp, sp, frame_size_in_bytes); // does not emit code for frame_size == 0 + generate_stack_overflow_check(framesize); + MacroAssembler::build_frame(framesize + 2 * wordSize); if (NotifySimulator) { notify(Assembler::method_entry); } } -void C1_MacroAssembler::remove_frame(int frame_size_in_bytes) { - add(sp, sp, frame_size_in_bytes); // Does not emit code for frame_size == 0 - ldp(rfp, lr, Address(post(sp, 2 * wordSize))); +void C1_MacroAssembler::remove_frame(int framesize) { + MacroAssembler::remove_frame(framesize + 2 * wordSize); if (NotifySimulator) { notify(Assembler::method_reentry); } diff -r 22313a11db51 -r de03075e4aaf src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Wed Jul 09 15:51:58 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Thu Jul 10 13:05:00 2014 +0100 @@ -3099,3 +3099,39 @@ return UseAcqRelForVolatileFields; #endif } + +void MacroAssembler::build_frame(int framesize) { + if (framesize == 0) { + // Is this even possible? + stp(rfp, lr, Address(pre(sp, -2 * wordSize))); + } else if (framesize < ((1 << 9) + 2 * wordSize)) { + sub(sp, sp, framesize); + stp(rfp, lr, Address(sp, framesize - 2 * wordSize)); + } else { + stp(rfp, lr, Address(pre(sp, -2 * wordSize))); + if (framesize < ((1 << 12) + 2 * wordSize)) + sub(sp, sp, framesize - 2 * wordSize); + else { + mov(rscratch1, framesize - 2 * wordSize); + sub(sp, sp, rscratch1); + } + } +} + +void MacroAssembler::remove_frame(int framesize) { + if (framesize == 0) { + ldp(rfp, lr, Address(post(sp, 2 * wordSize))); + } else if (framesize < ((1 << 9) + 2 * wordSize)) { + ldp(rfp, lr, Address(sp, framesize - 2 * wordSize)); + add(sp, sp, framesize); + } else { + if (framesize < ((1 << 12) + 2 * wordSize)) + add(sp, sp, framesize - 2 * wordSize); + else { + mov(rscratch1, framesize - 2 * wordSize); + add(sp, sp, rscratch1); + } + ldp(rfp, lr, Address(post(sp, 2 * wordSize))); + } +} + diff -r 22313a11db51 -r de03075e4aaf src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Wed Jul 09 15:51:58 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Thu Jul 10 13:05:00 2014 +0100 @@ -151,6 +151,10 @@ strw(scratch, a); } + // Frame creation and destruction shared between JITs. + void build_frame(int framesize); + void remove_frame(int framesize); + virtual void _call_Unimplemented(address call_site) { mov(rscratch2, call_site); haltsim(); -------------- next part -------------- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1404846956 -3600 # Node ID a03843f2ff15e2ac97af1c0e0eec76c7819a2a1c # Parent de03075e4aaf09c2cb4d198537730cc73837a9f1 Restrict default ReservedCodeCacheSize to 128M diff -r de03075e4aaf -r a03843f2ff15 src/share/vm/runtime/arguments.cpp --- a/src/share/vm/runtime/arguments.cpp Thu Jul 10 13:05:00 2014 +0100 +++ b/src/share/vm/runtime/arguments.cpp Tue Jul 08 20:15:56 2014 +0100 @@ -1129,6 +1129,8 @@ // Increase the code cache size - tiered compiles a lot more. if (FLAG_IS_DEFAULT(ReservedCodeCacheSize)) { FLAG_SET_DEFAULT(ReservedCodeCacheSize, ReservedCodeCacheSize * 5); + // The maximum B/BL offset range on AArch64 is 128MB + AARCH64_ONLY(FLAG_SET_DEFAULT(ReservedCodeCacheSize, MIN2(ReservedCodeCacheSize, 128*M))); } if (!UseInterpreter) { // -Xcomp Tier3InvokeNotifyFreqLog = 0; From adinn at redhat.com Mon Jul 14 11:35:56 2014 From: adinn at redhat.com (Andrew Dinn) Date: Mon, 14 Jul 2014 12:35:56 +0100 Subject: [aarch64-port-dev ] Bug fix patches for aarch64 jdk7u hotspot In-Reply-To: <53BFFE12.405@redhat.com> References: <53BFFE12.405@redhat.com> Message-ID: <53C3C09C.3040705@redhat.com> On 11/07/14 16:09, Andrew Dinn wrote: > The attached patches apply all outstanding jdk8 bug fixes to the jdk7u > hotspot tree. The resulting tree builds with the latest icedtea7-forest > on a mustang box and the image can run Hello and compile Hello.java. > > I have not yet tried anything more demanding for lack of any suitable > installed code on the box in question. > > Note that patch 6757 (fixes for C1 and C2 frame build/remove) was > synthesized from several upstream jdk8 patches some of which were made > in different branches and had conflicts. Any comments on these patches? Ok to push them? regards, Andrew Dinn ----------- From aph at redhat.com Mon Jul 14 11:41:00 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 14 Jul 2014 12:41:00 +0100 Subject: [aarch64-port-dev ] Bug fix patches for aarch64 jdk7u hotspot In-Reply-To: <53C3C09C.3040705@redhat.com> References: <53BFFE12.405@redhat.com> <53C3C09C.3040705@redhat.com> Message-ID: <53C3C1CC.90403@redhat.com> On 07/14/2014 12:35 PM, Andrew Dinn wrote: > On 11/07/14 16:09, Andrew Dinn wrote: >> The attached patches apply all outstanding jdk8 bug fixes to the jdk7u >> hotspot tree. The resulting tree builds with the latest icedtea7-forest >> on a mustang box and the image can run Hello and compile Hello.java. >> >> I have not yet tried anything more demanding for lack of any suitable >> installed code on the box in question. >> >> Note that patch 6757 (fixes for C1 and C2 frame build/remove) was >> synthesized from several upstream jdk8 patches some of which were made >> in different branches and had conflicts. > > Any comments on these patches? Ok to push them? Sure. Sorry. Andrew. From adinn at redhat.com Mon Jul 14 12:48:18 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Mon, 14 Jul 2014 12:48:18 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/hotspot: 5 new changesets Message-ID: <201407141248.s6ECmJdT009775@aojmv0008> Changeset: eefd08f120e1 Author: aph Date: 2014-07-09 14:26 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/eefd08f120e1 Use explicit barrier instructions in C1. ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Changeset: da8c7403f77e Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-09 14:35 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/da8c7403f77e Fix register misuse in verify_method_data_pointer ! src/cpu/aarch64/vm/interp_masm_aarch64.cpp Changeset: 22313a11db51 Author: aph Date: 2014-07-09 15:51 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/22313a11db51 Fix register usage in generate_verify_oop(). ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Changeset: de03075e4aaf Author: adinn Date: 2014-07-10 13:05 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/de03075e4aaf Common frame handling for C1/C2 which correctly handle all frame sizes This patch merges several changes from the upstream JDK8 code ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Changeset: a03843f2ff15 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-08 20:15 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/a03843f2ff15 Restrict default ReservedCodeCacheSize to 128M ! src/share/vm/runtime/arguments.cpp From aph at redhat.com Wed Jul 16 10:10:42 2014 From: aph at redhat.com (Andrew Haley) Date: Wed, 16 Jul 2014 11:10:42 +0100 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 Message-ID: <53C64FA2.6090406@redhat.com> Webrev at http://cr.openjdk.java.net/~aph/webrev.aarch64-jdk9-merge-2014jul16/ changeset: 6309:b1ea1b7aff74 user: Edward Nevill edward.nevill at linaro.org date: Wed Jun 11 13:47:40 2014 +0100 summary: Fix format errors changeset: 6310:0aa3e78064a8 user: Edward Nevill edward.nevill at linaro.org date: Wed Jun 11 13:49:18 2014 +0100 summary: Fix C2 failure with frame sizes larger than 520 changeset: 6311:6c5fcafd1a4e user: Edward Nevill edward.nevill at linaro.org date: Wed Jun 11 13:51:03 2014 +0100 summary: Fix register misuse in verify_method_data_pointer changeset: 6312:6b7117cad7bd user: Edward Nevill edward.nevill at linaro.org date: Sat May 24 20:31:23 2014 +0100 summary: Add support for CRC32 intrinsic changeset: 6313:133756601547 user: Edward Nevill edward.nevill at linaro.org date: Wed May 28 10:08:48 2014 +0100 summary: Restore sp from sender sp, r13 in crc32 code changeset: 6314:ac79d79e00c0 user: Edward Nevill edward.nevill at linaro.org date: Thu Jun 12 11:28:16 2014 +0100 summary: Add support for Neon implementation of CRC32 changeset: 6315:c703a0afb9d9 user: Edward Nevill edward.nevill at linaro.org date: Mon Jun 16 21:20:43 2014 +0100 summary: Add support for builtin crc32 instructions changeset: 6316:f1204d1f93d9 user: aph date: Mon Jul 14 12:22:57 2014 -0400 summary: All address constants are 48 bits in size. changeset: 6317:4841c2c4c62b user: aph date: Tue Jun 17 09:30:17 2014 -0400 summary: Fix register usage in generate_verify_oop(). changeset: 6318:effbb18a26ae user: aph date: Mon Jul 14 12:38:09 2014 -0400 summary: Backout 6309:b1ea1b7aff74 changeset: 6319:413dc299f077 user: aph date: Mon Jul 14 13:37:54 2014 -0400 summary: Use 2- and 3-instruction immediate form of movoop and mov_metadata in C2-generat changeset: 6320:876d42d76299 user: aph date: Mon Jul 14 13:47:52 2014 -0400 summary: Save intermediate state before removing C1 patching code. changeset: 6321:69031680cc07 user: aph date: Tue Jul 15 05:02:14 2014 -0400 summary: Remove obsolete C1 patching code. changeset: 6322:8494df4c993f user: aph date: Fri Jun 20 09:21:08 2014 -0400 summary: Improve C1 performance improvements in frame creation and ic_cache checks changeset: 6323:8f4c6eb7351e user: aph date: Fri Jun 20 17:33:09 2014 +0100 summary: Implement type profiling in C1. changeset: 6324:7308ebb986c5 user: aph date: Mon Jun 23 18:56:33 2014 +0100 summary: AArch64 type profiling support changeset: 6325:c19d703460f6 user: aph date: Fri Jun 27 11:25:47 2014 +0100 summary: Fast string comparison changeset: 6326:a505af70b5b3 user: aph date: Thu Jul 03 13:19:59 2014 +0100 summary: Fast String.equals() changeset: 6327:c0aa09b097eb user: aph date: Thu Jul 03 16:04:18 2014 +0100 summary: Correct register usage in string comparisons changeset: 6328:6d1eb411b448 user: Edward Nevill edward.nevill at linaro.org date: Tue Jul 01 16:29:03 2014 +0100 summary: Add support for a few simple intrinsics changeset: 6329:92081f79c237 user: Edward Nevill edward.nevill at linaro.org date: Fri Jul 04 13:08:43 2014 +0100 summary: Fix string_compare for chars that have the top bit set changeset: 6330:67244cce662user: aph date: Tue Jul 08 05:19:10 2014 -0400 summary: Fix typo in fsqrts changeset: 6331:fd0aa4fe777b user: Edward Nevill edward.nevill at linaro.org date: Mon Jul 07 16:24:51 2014 +0100 summary: Add support for MathExact intrinsics changeset: 6332:f04f8a7e1132 user: Edward Nevill edward.nevill at linaro.org date: Mon Jul 07 16:25:52 2014 +0100 summary: Add support for multiplyExact changeset: 6333:3e9239634cff user: aph date: Tue Jul 15 06:18:52 2014 -0400 summary: Correct type profiling for JDK9 merge. changeset: 6334:3ce8cf27e036 tag: tip user: aph date: Tue Jul 08 08:29:51 2014 -0400 summary: AArch64 C2 instruct for smull From thuhc at yahoo.com Wed Jul 16 16:34:56 2014 From: thuhc at yahoo.com (Cao Hoang Thu) Date: Wed, 16 Jul 2014 09:34:56 -0700 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <53C64FA2.6090406@redhat.com> References: <53C64FA2.6090406@redhat.com> Message-ID: <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> Hi Andrew, Do I build OpenJDK9 cross-compile? Now I only built OpenJDK8 cross-compile. My system can't native compile now. Regards, Thu Cao ________________________________ From: Andrew Haley To: "aarch64-port-dev at openjdk.java.net" Sent: Wednesday, July 16, 2014 5:10 PM Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 Webrev at http://cr.openjdk.java.net/~aph/webrev.aarch64-jdk9-merge-2014jul16/ changeset:? 6309:b1ea1b7aff74 user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Wed Jun 11 13:47:40 2014 +0100 summary:? ? Fix format errors changeset:? 6310:0aa3e78064a8 user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Wed Jun 11 13:49:18 2014 +0100 summary:? ? Fix C2 failure with frame sizes larger than 520 changeset:? 6311:6c5fcafd1a4e user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Wed Jun 11 13:51:03 2014 +0100 summary:? ? Fix register misuse in verify_method_data_pointer changeset:? 6312:6b7117cad7bd user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Sat May 24 20:31:23 2014 +0100 summary:? ? Add support for CRC32 intrinsic changeset:? 6313:133756601547 user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Wed May 28 10:08:48 2014 +0100 summary:? ? Restore sp from sender sp, r13 in crc32 code changeset:? 6314:ac79d79e00c0 user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Thu Jun 12 11:28:16 2014 +0100 summary:? ? Add support for Neon implementation of CRC32 changeset:? 6315:c703a0afb9d9 user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Mon Jun 16 21:20:43 2014 +0100 summary:? ? Add support for builtin crc32 instructions changeset:? 6316:f1204d1f93d9 user:? ? ? ? aph date:? ? ? ? Mon Jul 14 12:22:57 2014 -0400 summary:? ? All address constants are 48 bits in size. changeset:? 6317:4841c2c4c62b user:? ? ? ? aph date:? ? ? ? Tue Jun 17 09:30:17 2014 -0400 summary:? ? Fix register usage in generate_verify_oop(). changeset:? 6318:effbb18a26ae user:? ? ? ? aph date:? ? ? ? Mon Jul 14 12:38:09 2014 -0400 summary:? ? Backout 6309:b1ea1b7aff74 changeset:? 6319:413dc299f077 user:? ? ? ? aph date:? ? ? ? Mon Jul 14 13:37:54 2014 -0400 summary:? ? Use 2- and 3-instruction immediate form of movoop and mov_metadata in C2-generat changeset:? 6320:876d42d76299 user:? ? ? ? aph date:? ? ? ? Mon Jul 14 13:47:52 2014 -0400 summary:? ? Save intermediate state before removing C1 patching code. changeset:? 6321:69031680cc07 user:? ? ? ? aph date:? ? ? ? Tue Jul 15 05:02:14 2014 -0400 summary:? ? Remove obsolete C1 patching code. changeset:? 6322:8494df4c993f user:? ? ? ? aph date:? ? ? ? Fri Jun 20 09:21:08 2014 -0400 summary:? ? Improve C1 performance improvements in frame creation and ic_cache checks changeset:? 6323:8f4c6eb7351e user:? ? ? ? aph date:? ? ? ? Fri Jun 20 17:33:09 2014 +0100 summary:? ? Implement type profiling in C1. changeset:? 6324:7308ebb986c5 user:? ? ? ? aph date:? ? ? ? Mon Jun 23 18:56:33 2014 +0100 summary:? ? AArch64 type profiling support changeset:? 6325:c19d703460f6 user:? ? ? ? aph date:? ? ? ? Fri Jun 27 11:25:47 2014 +0100 summary:? ? Fast string comparison changeset:? 6326:a505af70b5b3 user:? ? ? ? aph date:? ? ? ? Thu Jul 03 13:19:59 2014 +0100 summary:? ? Fast String.equals() changeset:? 6327:c0aa09b097eb user:? ? ? ? aph date:? ? ? ? Thu Jul 03 16:04:18 2014 +0100 summary:? ? Correct register usage in string comparisons changeset:? 6328:6d1eb411b448 user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Tue Jul 01 16:29:03 2014 +0100 summary:? ? Add support for a few simple intrinsics changeset:? 6329:92081f79c237 user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Fri Jul 04 13:08:43 2014 +0100 summary:? ? Fix string_compare for chars that have the top bit set changeset:? 6330:67244cce662user:? ? ? ? aph date:? ? ? ? Tue Jul 08 05:19:10 2014 -0400 summary:? ? Fix typo in fsqrts changeset:? 6331:fd0aa4fe777b user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Mon Jul 07 16:24:51 2014 +0100 summary:? ? Add support for MathExact intrinsics changeset:? 6332:f04f8a7e1132 user:? ? ? ? Edward Nevill edward.nevill at linaro.org date:? ? ? ? Mon Jul 07 16:25:52 2014 +0100 summary:? ? Add support for multiplyExact changeset:? 6333:3e9239634cff user:? ? ? ? aph date:? ? ? ? Tue Jul 15 06:18:52 2014 -0400 summary:? ? Correct type profiling for JDK9 merge. changeset:? 6334:3ce8cf27e036 tag:? ? ? ? tip user:? ? ? ? aph date:? ? ? ? Tue Jul 08 08:29:51 2014 -0400 summary:? ? AArch64 C2 instruct for smull From aph at redhat.com Thu Jul 17 09:54:54 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 17 Jul 2014 10:54:54 +0100 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> Message-ID: <53C79D6E.3010005@redhat.com> On 07/16/2014 05:34 PM, Cao Hoang Thu wrote: > Do I build OpenJDK9 cross-compile? Now I only built OpenJDK8 cross-compile. My system can't native compile now. I don't understand. Why do you not natively compile? Andrew. From thuhc at yahoo.com Thu Jul 17 10:00:44 2014 From: thuhc at yahoo.com (Cao Hoang Thu) Date: Thu, 17 Jul 2014 03:00:44 -0700 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <53C79D6E.3010005@redhat.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> Message-ID: <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> Hi Andrew, When I natively compile OpenJDK7, I got some issues about libraries on my rootfs? Regards, Thu Cao ________________________________ From: Andrew Haley To: Cao Hoang Thu ; "aarch64-port-dev at openjdk.java.net" Sent: Thursday, July 17, 2014 4:54 PM Subject: Re: [aarch64-port-dev ] Merge JDK8 -> JDK9 On 07/16/2014 05:34 PM, Cao Hoang Thu wrote: > Do I build OpenJDK9 cross-compile? Now I only built OpenJDK8 cross-compile. My system can't native compile now. I don't understand.? Why do you not natively compile? Andrew. From aph at redhat.com Thu Jul 17 10:03:41 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 17 Jul 2014 11:03:41 +0100 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> Message-ID: <53C79F7D.4030706@redhat.com> Hi, On 07/17/2014 11:00 AM, Cao Hoang Thu wrote: > Hi Andrew, > > When I natively compile OpenJDK7, I got some issues about libraries on my rootfs Okay. So, there is a problem with your rootfs, right? I don't know why you don't fix your local problems. Or do you think it in a JDK problem? Andrew. From thuhc at yahoo.com Thu Jul 17 10:10:22 2014 From: thuhc at yahoo.com (Cao Hoang Thu) Date: Thu, 17 Jul 2014 03:10:22 -0700 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <53C79F7D.4030706@redhat.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79F7D.4030706@redhat.com> Message-ID: <1405591822.32757.YahooMailNeo@web164606.mail.gq1.yahoo.com> Hi, No, I don't think JDK problem.?Because I cross-compile OpenJDK8 ok, so I ask about cross-compile on OpenJDK7/OpenJDK9 Regards, Thu Cao ________________________________ From: Andrew Haley To: Cao Hoang Thu ; "aarch64-port-dev at openjdk.java.net" Sent: Thursday, July 17, 2014 5:03 PM Subject: Re: [aarch64-port-dev ] Merge JDK8 -> JDK9 Hi, On 07/17/2014 11:00 AM, Cao Hoang Thu wrote: > Hi Andrew, > > When I natively compile OpenJDK7, I got some issues about libraries on my rootfs Okay.? So, there is a problem with your rootfs, right?? I don't know why you don't fix your local problems.? Or do you think it in a JDK problem? Andrew. From aph at redhat.com Thu Jul 17 10:26:17 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 17 Jul 2014 11:26:17 +0100 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <1405591822.32757.YahooMailNeo@web164606.mail.gq1.yahoo.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79F7D.4030706@redhat.com> <1405591822.32757.YahooMailNeo@web164606.mail.gq1.yahoo.com> Message-ID: <53C7A4C9.8050002@redhat.com> On 07/17/2014 11:10 AM, Cao Hoang Thu wrote: > No, I don't think JDK problem. Because I cross-compile OpenJDK8 ok, so I ask about cross-compile on OpenJDK7/OpenJDK9 I'm cross-compiling JDK9 OK. I found one bug building JDK9, and it is fixed by this patch. I don't know if that's the correct fix, though. diff -r 7adc2f18b573 make/common/NativeCompilation.gmk --- a/make/common/NativeCompilation.gmk Fri May 16 11:41:46 2014 -0400 +++ b/make/common/NativeCompilation.gmk Thu Jul 17 11:25:25 2014 +0100 @@ -370,8 +370,8 @@ endif # Add sys root specific cflags last - $1_EXTRA_CFLAGS += $(SYSROOT_CFLAGS) - $1_EXTRA_CXXFLAGS += $(SYSROOT_CFLAGS) + # $1_EXTRA_CFLAGS += $(SYSROOT_CFLAGS) + # $1_EXTRA_CXXFLAGS += $(SYSROOT_CFLAGS) # Now call add_native_source for each source file we are going to compile. $$(foreach p,$$($1_SRCS), \ @@ -418,7 +418,7 @@ $1_EXTRA_LDFLAGS += $(call SET_SHARED_LIBRARY_MAPFILE,$$($1_REAL_MAPFILE)) endif - $1_EXTRA_LDFLAGS += $(SYSROOT_LDFLAGS) + # $1_EXTRA_LDFLAGS += $(SYSROOT_LDFLAGS) # Need to make sure TARGET is first on list $1 := $$($1_TARGET) From edward.nevill at linaro.org Thu Jul 17 11:11:48 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Thu, 17 Jul 2014 12:11:48 +0100 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <53C7A4C9.8050002@redhat.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79F7D.4030706@redhat.com> <1405591822.32757.YahooMailNeo@web164606.mail.gq1.yahoo.com> <53C7A4C9.8050002@redhat.com> Message-ID: <1405595508.13491.6.camel@localhost.localdomain> Hi Thu Cao The OpenJDK build depends on many packages which must be installed before it will build. You can find a selection of populated rootfs at http://people.linaro.org/~edward.nevill/apm_rootfs In there are 3 rootfs fedora.ext4.gz oe_rootfs.ext4.gz ubuntu.ext4.gz All the best, Ed. From aph at redhat.com Thu Jul 17 11:18:20 2014 From: aph at redhat.com (aph at redhat.com) Date: Thu, 17 Jul 2014 11:18:20 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/hotspot: 26 new changesets Message-ID: <201407171118.s6HBIK9H013579@aojmv0008> Changeset: b1ea1b7aff74 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-06-11 13:47 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b1ea1b7aff74 Fix format errors ! src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp ! src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp ! src/cpu/aarch64/vm/compiledIC_aarch64.cpp ! src/cpu/aarch64/vm/frame_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/vtableStubs_aarch64.cpp ! src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp Changeset: 0aa3e78064a8 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-06-11 13:49 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0aa3e78064a8 Fix C2 failure with frame sizes larger than 520 ! src/cpu/aarch64/vm/aarch64.ad Changeset: 6c5fcafd1a4e Author: Edward Nevill edward.nevill at linaro.org Date: 2014-06-11 13:51 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6c5fcafd1a4e Fix register misuse in verify_method_data_pointer ! src/cpu/aarch64/vm/interp_masm_aarch64.cpp Changeset: 6b7117cad7bd Author: Edward Nevill edward.nevill at linaro.org Date: 2014-05-24 20:31 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6b7117cad7bd Add support for CRC32 intrinsic ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp ! src/cpu/aarch64/vm/interpreterGenerator_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp ! src/cpu/aarch64/vm/stubRoutines_aarch64.cpp ! src/cpu/aarch64/vm/stubRoutines_aarch64.hpp ! src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp ! src/cpu/aarch64/vm/vm_version_aarch64.cpp Changeset: 133756601547 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-05-28 10:08 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/133756601547 Restore sp from sender sp, r13 in crc32 code ! src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp Changeset: ac79d79e00c0 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-06-12 11:28 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ac79d79e00c0 Add support for Neon implementation of CRC32 ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/globals_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/stubRoutines_aarch64.cpp Changeset: c703a0afb9d9 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-06-16 21:20 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c703a0afb9d9 Add support for builtin crc32 instructions ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/globals_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/vm_version_aarch64.cpp Changeset: f1204d1f93d9 Author: aph Date: 2014-07-14 12:22 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f1204d1f93d9 All address constants are 48 bits in size. ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/assembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.hpp Changeset: 4841c2c4c62b Author: aph Date: 2014-06-17 09:30 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/4841c2c4c62b Fix register usage in generate_verify_oop(). ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Changeset: effbb18a26ae Author: aph Date: 2014-07-14 12:38 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/effbb18a26ae Backout 6309:b1ea1b7aff74 ! src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp ! src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp ! src/cpu/aarch64/vm/compiledIC_aarch64.cpp ! src/cpu/aarch64/vm/frame_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/vtableStubs_aarch64.cpp ! src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp Changeset: 413dc299f077 Author: aph Date: 2014-07-14 13:37 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/413dc299f077 Use 2- and 3-instruction immediate form of movoop and mov_metadata in C2-generat ed code. Fix patching code to handle 2- and 3-word forms. Fix offset out of range bug in frame generation. Use lea (rather than mov) in mov(reg, Address) form. ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/relocInfo_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/aarch64/vm/templateTable_aarch64.cpp Changeset: 876d42d76299 Author: aph Date: 2014-07-14 13:47 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/876d42d76299 Save intermediate state before removing C1 patching code. ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/compiledIC_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.hpp ! src/cpu/aarch64/vm/relocInfo_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp Changeset: 69031680cc07 Author: aph Date: 2014-07-15 05:02 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/69031680cc07 Remove obsolete C1 patching code. ! src/cpu/aarch64/vm/c1_CodeStubs_aarch64.cpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.hpp ! src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp ! src/cpu/aarch64/vm/globals_aarch64.hpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/relocInfo_aarch64.cpp ! src/share/vm/code/relocInfo.hpp Changeset: 8494df4c993f Author: aph Date: 2014-06-20 09:21 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8494df4c993f Improve C1 performance improvements in frame creation and ic_cache checks ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Changeset: 8f4c6eb7351e Author: aph Date: 2014-06-20 17:33 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8f4c6eb7351e Implement type profiling in C1. ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/share/vm/c1/c1_LIR.cpp Changeset: 7308ebb986c5 Author: aph Date: 2014-06-23 18:56 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/7308ebb986c5 AArch64 type profiling support ! src/cpu/aarch64/vm/globals_aarch64.hpp ! src/cpu/aarch64/vm/interp_masm_aarch64.cpp ! src/cpu/aarch64/vm/interp_masm_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/templateTable_aarch64.cpp Changeset: c19d703460f6 Author: aph Date: 2014-06-27 11:25 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c19d703460f6 Fast string comparison ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Changeset: a505af70b5b3 Author: aph Date: 2014-07-03 13:19 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a505af70b5b3 Fast String.equals() ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Changeset: c0aa09b097eb Author: aph Date: 2014-07-03 16:04 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c0aa09b097eb Correct register usage in string comparisons ! src/cpu/aarch64/vm/aarch64.ad Changeset: 6d1eb411b448 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-01 16:29 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6d1eb411b448 Add support for a few simple intrinsics ! src/cpu/aarch64/vm/aarch64.ad Changeset: 92081f79c237 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-04 13:08 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/92081f79c237 Fix string_compare for chars that have the top bit set ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Changeset: 67244cce6623 Author: aph Date: 2014-07-08 05:19 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/67244cce6623 Fix typo in fsqrts ! src/cpu/aarch64/vm/aarch64.ad Changeset: fd0aa4fe777b Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-07 16:24 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/fd0aa4fe777b Add support for MathExact intrinsics ! src/cpu/aarch64/vm/aarch64.ad ! test/compiler/intrinsics/mathexact/sanity/IntrinsicBase.java ! test/testlibrary/com/oracle/java/testlibrary/Platform.java Changeset: f04f8a7e1132 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-07 16:25 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f04f8a7e1132 Add support for multiplyExact ! src/cpu/aarch64/vm/aarch64.ad Changeset: 3e9239634cff Author: aph Date: 2014-07-15 06:18 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3e9239634cff Correct type profiling for JDK9 merge. ! src/cpu/aarch64/vm/interp_masm_aarch64.cpp Changeset: 3ce8cf27e036 Author: aph Date: 2014-07-08 08:29 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3ce8cf27e036 AArch64 C2 instruct for smull ! src/cpu/aarch64/vm/aarch64.ad From thuhc at yahoo.com Thu Jul 17 14:21:57 2014 From: thuhc at yahoo.com (Cao Hoang Thu) Date: Thu, 17 Jul 2014 07:21:57 -0700 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <53C7A4C9.8050002@redhat.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79F7D.4030706@redhat.com> <1405591822.32757.YahooMailNeo@web164606.mail.gq1.yahoo.com> <53C7A4C9.8050002@redhat.com> Message-ID: <1405606917.89880.YahooMailNeo@web164601.mail.gq1.yahoo.com> Hi Andrew, It's cool! Can I ?get current source OpenJDK9 to cross-compile ? Regards, Thu Cao? ________________________________ From: Andrew Haley To: Cao Hoang Thu ; "aarch64-port-dev at openjdk.java.net" Sent: Thursday, July 17, 2014 5:26 PM Subject: Re: [aarch64-port-dev ] Merge JDK8 -> JDK9 On 07/17/2014 11:10 AM, Cao Hoang Thu wrote: > No, I don't think JDK problem. Because I cross-compile OpenJDK8 ok, so I ask about cross-compile on OpenJDK7/OpenJDK9 I'm cross-compiling JDK9 OK.? I found one bug building JDK9, and it is fixed by this patch.? I don't know if that's the correct fix, though. diff -r 7adc2f18b573 make/common/NativeCompilation.gmk --- a/make/common/NativeCompilation.gmk Fri May 16 11:41:46 2014 -0400 +++ b/make/common/NativeCompilation.gmk Thu Jul 17 11:25:25 2014 +0100 @@ -370,8 +370,8 @@ ? endif ? # Add sys root specific cflags last -? $1_EXTRA_CFLAGS += $(SYSROOT_CFLAGS) -? $1_EXTRA_CXXFLAGS += $(SYSROOT_CFLAGS) +? # $1_EXTRA_CFLAGS += $(SYSROOT_CFLAGS) +? # $1_EXTRA_CXXFLAGS += $(SYSROOT_CFLAGS) ? # Now call add_native_source for each source file we are going to compile. ? $$(foreach p,$$($1_SRCS), \ @@ -418,7 +418,7 @@ ? ? $1_EXTRA_LDFLAGS += $(call SET_SHARED_LIBRARY_MAPFILE,$$($1_REAL_MAPFILE)) ? endif -? $1_EXTRA_LDFLAGS += $(SYSROOT_LDFLAGS) +? # $1_EXTRA_LDFLAGS += $(SYSROOT_LDFLAGS) ? # Need to make sure TARGET is first on list ? $1 := $$($1_TARGET) From aph at redhat.com Thu Jul 17 14:23:00 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 17 Jul 2014 15:23:00 +0100 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <1405606917.89880.YahooMailNeo@web164601.mail.gq1.yahoo.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79F7D.4030706@redhat.com> <1405591822.32757.YahooMailNeo@web164606.mail.gq1.yahoo.com> <53C7A4C9.8050002@redhat.com> <1405606917.89880.YahooMailNeo@web164601.mail.gq1.yahoo.com> Message-ID: <53C7DC44.7010908@redhat.com> On 07/17/2014 03:21 PM, Cao Hoang Thu wrote: > It's cool! Can I get current source OpenJDK9 to cross-compile ? I use the exact same scripts as JDK8. It works. Andrew. From thuhc at yahoo.com Thu Jul 17 14:25:28 2014 From: thuhc at yahoo.com (Cao Hoang Thu) Date: Thu, 17 Jul 2014 07:25:28 -0700 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <1405595508.13491.6.camel@localhost.localdomain> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79F7D.4030706@redhat.com> <1405591822.32757.YahooMailNeo@web164606.mail.gq1.yahoo.com> <53C7A4C9.8050002@redhat.com> <1405595508.13491.6.camel@localhost.localdomain> Message-ID: <1405607128.40355.YahooMailNeo@web164601.mail.gq1.yahoo.com> Thanks Ed, Regards, Thu Cao ________________________________ From: Edward Nevill To: "aarch64-port-dev at openjdk.java.net" Sent: Thursday, July 17, 2014 6:11 PM Subject: Re: [aarch64-port-dev ] Merge JDK8 -> JDK9 Hi Thu Cao The OpenJDK build depends on many packages which must be installed before it will build. You can find a selection of populated rootfs at http://people.linaro.org/~edward.nevill/apm_rootfs In there are 3 rootfs fedora.ext4.gz oe_rootfs.ext4.gz ubuntu.ext4.gz All the best, Ed. From thuhc at yahoo.com Thu Jul 17 14:35:07 2014 From: thuhc at yahoo.com (Cao Hoang Thu) Date: Thu, 17 Jul 2014 07:35:07 -0700 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <53C7DC44.7010908@redhat.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79F7D.4030706@redhat.com> <1405591822.32757.YahooMailNeo@web164606.mail.gq1.yahoo.com> <53C7A4C9.8050002@redhat.com> <1405606917.89880.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C7DC44.7010908@redhat.com> Message-ID: <1405607707.83217.YahooMailNeo@web164603.mail.gq1.yahoo.com> Hi Andrew, I will try cross-compile OpenJDK9. Thanks for your help! Regards, Thu Cao ________________________________ From: Andrew Haley To: Cao Hoang Thu ; "aarch64-port-dev at openjdk.java.net" Sent: Thursday, July 17, 2014 9:23 PM Subject: Re: [aarch64-port-dev ] Merge JDK8 -> JDK9 On 07/17/2014 03:21 PM, Cao Hoang Thu wrote: > It's cool! Can I? get current source OpenJDK9 to cross-compile ? I use the exact same scripts as JDK8.? It works. Andrew. From edward.nevill at linaro.org Mon Jul 21 10:00:07 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Mon, 21 Jul 2014 11:00:07 +0100 Subject: [aarch64-port-dev ] RFR: Add support for AES Intrinsics Message-ID: <1405936807.25467.10.camel@localhost.localdomain> Hi, The following patch adds support for AES Intrinsics. I have tested it with TestAESMain from JTreg hotspot and it shows up to 8.5x improvement. I have also done a smoke test with JTreg hotspot and tested on AES and non AES hw to check the switching it OK. OK to push? Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1405936007 -3600 # Mon Jul 21 10:46:47 2014 +0100 # Node ID 135fb0fc41236934277396d7d0d6bb2714093ad6 # Parent c5b8254a0fe25e31a2fc4fe8c5a4854f52a6ebb0 Add support for AES Intrinsics diff -r c5b8254a0fe2 -r 135fb0fc4123 src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Tue Jul 08 20:17:05 2014 +0100 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Mon Jul 21 10:46:47 2014 +0100 @@ -2035,6 +2035,63 @@ f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); } + void v_st1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((8 << ((int)T & 1)) == imm, "size/imm mismatch"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0111, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0111, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((16 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b1010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b1010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((24 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0110, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0110, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((32 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1r(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { starti; f(0, 31), f((int)T & 1, 30), f(0b001101010000001100, 29, 12); @@ -2059,6 +2116,46 @@ rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); } + void v_orr(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn, FloatRegister Vm) { + starti; + assert(T == T8B || T == T16B, "must be T8B or T16B"); + f(0, 31), f((int)T & 1, 30), f(0b001110101, 29, 21); + rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_aese(FloatRegister Vd, FloatRegister Vn) + { + starti; + f(0b0100111000101000010010, 31, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_aesd(FloatRegister Vd, FloatRegister Vn) + { + starti; + f(0b0100111000101000010110, 31, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_aesmc(FloatRegister Vd, FloatRegister Vn) + { + starti; + f(0b0100111000101000011010, 31, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_aesimc(FloatRegister Vd, FloatRegister Vn) + { + starti; + f(0b0100111000101000011110, 31, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_rev32(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn) + { + starti; + assert(T <= T8H, "must be one of T8B, T16B, T4H, T8H"); + f(0, 31), f((int)T & 1, 30), f(0b101110, 29, 24); + f(T <= T16B ? 0b00 : 0b01, 23, 22), f(0b100000000010, 21, 10); + rf(Vn, 5), rf(Vd, 0); + } + // CRC32 instructions #define INSN(NAME, sf, sz) \ void NAME(Register Rd, Register Rn, Register Rm) { \ diff -r c5b8254a0fe2 -r 135fb0fc4123 src/cpu/aarch64/vm/stubGenerator_aarch64.cpp --- a/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Tue Jul 08 20:17:05 2014 +0100 +++ b/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Mon Jul 21 10:46:47 2014 +0100 @@ -1878,6 +1878,414 @@ void generate_math_stubs() { Unimplemented(); } + // Arguments: + // + // Inputs: + // c_rarg0 - source byte array address + // c_rarg1 - destination byte array address + // c_rarg2 - K (key) in little endian int array + // + address generate_aescrypt_encryptBlock() { + __ align(CodeEntryAlignment); + StubCodeMark mark(this, "StubRoutines", "aescrypt_encryptBlock"); + + Label L_doLast; + + const Register from = c_rarg0; // source array address + const Register to = c_rarg1; // destination array address + const Register key = c_rarg2; // key array address + const Register keylen = rscratch1; + + address start = __ pc(); + __ enter(); + + __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); + + __ v_ld1(v0, __ T16B, from); // get 16 bytes of input + + __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + __ v_rev32(v3, __ T16B, v3); + __ v_rev32(v4, __ T16B, v4); + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + __ v_aesmc(v0, v0); + __ v_aese(v0, v3); + __ v_aesmc(v0, v0); + __ v_aese(v0, v4); + __ v_aesmc(v0, v0); + + __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + __ v_rev32(v3, __ T16B, v3); + __ v_rev32(v4, __ T16B, v4); + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + __ v_aesmc(v0, v0); + __ v_aese(v0, v3); + __ v_aesmc(v0, v0); + __ v_aese(v0, v4); + __ v_aesmc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ cmpw(keylen, 44); + __ br(Assembler::EQ, L_doLast); + + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + __ v_aesmc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ cmpw(keylen, 52); + __ br(Assembler::EQ, L_doLast); + + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + __ v_aesmc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ BIND(L_doLast); + + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + + __ v_ld1(v1, __ T16B, key); + __ v_rev32(v1, __ T16B, v1); + __ v_eor(v0, __ T16B, v0, v1); + + __ v_st1(v0, __ T16B, to); + + __ mov(r0, 0); + + __ leave(); + __ ret(lr); + + return start; + } + + // Arguments: + // + // Inputs: + // c_rarg0 - source byte array address + // c_rarg1 - destination byte array address + // c_rarg2 - K (key) in little endian int array + // + address generate_aescrypt_decryptBlock() { + assert(UseAES, "need AES instructions and misaligned SSE support"); + __ align(CodeEntryAlignment); + StubCodeMark mark(this, "StubRoutines", "aescrypt_decryptBlock"); + Label L_doLast; + + const Register from = c_rarg0; // source array address + const Register to = c_rarg1; // destination array address + const Register key = c_rarg2; // key array address + const Register keylen = rscratch1; + + address start = __ pc(); + __ enter(); // required for proper stackwalking of RuntimeStub frame + + __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); + + __ v_ld1(v0, __ T16B, from); // get 16 bytes of input + + __ v_ld1(v5, __ T16B, key, 16); + __ v_rev32(v5, __ T16B, v5); + + __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + __ v_rev32(v3, __ T16B, v3); + __ v_rev32(v4, __ T16B, v4); + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v3); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v4); + __ v_aesimc(v0, v0); + + __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + __ v_rev32(v3, __ T16B, v3); + __ v_rev32(v4, __ T16B, v4); + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v3); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v4); + __ v_aesimc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ cmpw(keylen, 44); + __ br(Assembler::EQ, L_doLast); + + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + __ v_aesimc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ cmpw(keylen, 52); + __ br(Assembler::EQ, L_doLast); + + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + __ v_aesimc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ BIND(L_doLast); + + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + + __ v_eor(v0, __ T16B, v0, v5); + + __ v_st1(v0, __ T16B, to); + + __ mov(r0, 0); + + __ leave(); + __ ret(lr); + + return start; + } + + // Arguments: + // + // Inputs: + // c_rarg0 - source byte array address + // c_rarg1 - destination byte array address + // c_rarg2 - K (key) in little endian int array + // c_rarg3 - r vector byte array address + // c_rarg4 - input length + // + // Output: + // x0 - input length + // + address generate_cipherBlockChaining_encryptAESCrypt() { + assert(UseAES, "need AES instructions and misaligned SSE support"); + __ align(CodeEntryAlignment); + StubCodeMark mark(this, "StubRoutines", "cipherBlockChaining_encryptAESCrypt"); + + Label L_loadkeys_44, L_loadkeys_52, L_aes_loop, L_rounds_44, L_rounds_52; + + const Register from = c_rarg0; // source array address + const Register to = c_rarg1; // destination array address + const Register key = c_rarg2; // key array address + const Register rvec = c_rarg3; // r byte array initialized from initvector array address + // and left with the results of the last encryption block + const Register len_reg = c_rarg4; // src len (must be multiple of blocksize 16) + const Register keylen = rscratch1; + + address start = __ pc(); + __ enter(); + + __ mov(rscratch1, len_reg); + __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); + + __ v_ld1(v0, __ T16B, rvec); + + __ cmpw(keylen, 52); + __ br(Assembler::CC, L_loadkeys_44); + __ br(Assembler::EQ, L_loadkeys_52); + + __ v_ld1(v17, v18, __ T16B, key, 32); + __ v_rev32(v17, __ T16B, v17); + __ v_rev32(v18, __ T16B, v18); + __ BIND(L_loadkeys_52); + __ v_ld1(v19, v20, __ T16B, key, 32); + __ v_rev32(v19, __ T16B, v19); + __ v_rev32(v20, __ T16B, v20); + __ BIND(L_loadkeys_44); + __ v_ld1(v21, v22, v23, v24, __ T16B, key, 64); + __ v_rev32(v21, __ T16B, v21); + __ v_rev32(v22, __ T16B, v22); + __ v_rev32(v23, __ T16B, v23); + __ v_rev32(v24, __ T16B, v24); + __ v_ld1(v25, v26, v27, v28, __ T16B, key, 64); + __ v_rev32(v25, __ T16B, v25); + __ v_rev32(v26, __ T16B, v26); + __ v_rev32(v27, __ T16B, v27); + __ v_rev32(v28, __ T16B, v28); + __ v_ld1(v29, v30, v31, __ T16B, key); + __ v_rev32(v29, __ T16B, v29); + __ v_rev32(v30, __ T16B, v30); + __ v_rev32(v31, __ T16B, v31); + + __ BIND(L_aes_loop); + __ v_ld1(v1, __ T16B, from, 16); + __ v_eor(v0, __ T16B, v0, v1); + + __ br(Assembler::CC, L_rounds_44); + __ br(Assembler::EQ, L_rounds_52); + + __ v_aese(v0, v17); __ v_aesmc(v0, v0); + __ v_aese(v0, v18); __ v_aesmc(v0, v0); + __ BIND(L_rounds_52); + __ v_aese(v0, v19); __ v_aesmc(v0, v0); + __ v_aese(v0, v20); __ v_aesmc(v0, v0); + __ BIND(L_rounds_44); + __ v_aese(v0, v21); __ v_aesmc(v0, v0); + __ v_aese(v0, v22); __ v_aesmc(v0, v0); + __ v_aese(v0, v23); __ v_aesmc(v0, v0); + __ v_aese(v0, v24); __ v_aesmc(v0, v0); + __ v_aese(v0, v25); __ v_aesmc(v0, v0); + __ v_aese(v0, v26); __ v_aesmc(v0, v0); + __ v_aese(v0, v27); __ v_aesmc(v0, v0); + __ v_aese(v0, v28); __ v_aesmc(v0, v0); + __ v_aese(v0, v29); __ v_aesmc(v0, v0); + __ v_aese(v0, v30); + __ v_eor(v0, __ T16B, v0, v31); + + __ v_st1(v0, __ T16B, to, 16); + __ sub(len_reg, len_reg, 16); + __ cbnz(len_reg, L_aes_loop); + + __ v_st1(v0, __ T16B, rvec); + + __ mov(r0, rscratch2); + + __ leave(); + __ ret(lr); + } + + // Arguments: + // + // Inputs: + // c_rarg0 - source byte array address + // c_rarg1 - destination byte array address + // c_rarg2 - K (key) in little endian int array + // c_rarg3 - r vector byte array address + // c_rarg4 - input length + // + // Output: + // rax - input length + // + address generate_cipherBlockChaining_decryptAESCrypt() { + assert(UseAES, "need AES instructions and misaligned SSE support"); + __ align(CodeEntryAlignment); + StubCodeMark mark(this, "StubRoutines", "cipherBlockChaining_decryptAESCrypt"); + + Label L_loadkeys_44, L_loadkeys_52, L_aes_loop, L_rounds_44, L_rounds_52; + + const Register from = c_rarg0; // source array address + const Register to = c_rarg1; // destination array address + const Register key = c_rarg2; // key array address + const Register rvec = c_rarg3; // r byte array initialized from initvector array address + // and left with the results of the last encryption block + const Register len_reg = c_rarg4; // src len (must be multiple of blocksize 16) + const Register keylen = rscratch1; + + address start = __ pc(); + __ enter(); + + __ mov(rscratch2, len_reg); + __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); + + __ v_ld1(v2, __ T16B, rvec); + + __ v_ld1(v31, __ T16B, key, 16); + __ v_rev32(v31, __ T16B, v31); + + __ cmpw(keylen, 52); + __ br(Assembler::CC, L_loadkeys_44); + __ br(Assembler::EQ, L_loadkeys_52); + + __ v_ld1(v17, v18, __ T16B, key, 32); + __ v_rev32(v17, __ T16B, v17); + __ v_rev32(v18, __ T16B, v18); + __ BIND(L_loadkeys_52); + __ v_ld1(v19, v20, __ T16B, key, 32); + __ v_rev32(v19, __ T16B, v19); + __ v_rev32(v20, __ T16B, v20); + __ BIND(L_loadkeys_44); + __ v_ld1(v21, v22, v23, v24, __ T16B, key, 64); + __ v_rev32(v21, __ T16B, v21); + __ v_rev32(v22, __ T16B, v22); + __ v_rev32(v23, __ T16B, v23); + __ v_rev32(v24, __ T16B, v24); + __ v_ld1(v25, v26, v27, v28, __ T16B, key, 64); + __ v_rev32(v25, __ T16B, v25); + __ v_rev32(v26, __ T16B, v26); + __ v_rev32(v27, __ T16B, v27); + __ v_rev32(v28, __ T16B, v28); + __ v_ld1(v29, v30, __ T16B, key); + __ v_rev32(v29, __ T16B, v29); + __ v_rev32(v30, __ T16B, v30); + + __ BIND(L_aes_loop); + __ v_ld1(v0, __ T16B, from, 16); + __ v_orr(v1, __ T16B, v0, v0); + + __ br(Assembler::CC, L_rounds_44); + __ br(Assembler::EQ, L_rounds_52); + + __ v_aesd(v0, v17); __ v_aesimc(v0, v0); + __ v_aesd(v0, v17); __ v_aesimc(v0, v0); + __ BIND(L_rounds_52); + __ v_aesd(v0, v19); __ v_aesimc(v0, v0); + __ v_aesd(v0, v20); __ v_aesimc(v0, v0); + __ BIND(L_rounds_44); + __ v_aesd(v0, v21); __ v_aesimc(v0, v0); + __ v_aesd(v0, v22); __ v_aesimc(v0, v0); + __ v_aesd(v0, v23); __ v_aesimc(v0, v0); + __ v_aesd(v0, v24); __ v_aesimc(v0, v0); + __ v_aesd(v0, v25); __ v_aesimc(v0, v0); + __ v_aesd(v0, v26); __ v_aesimc(v0, v0); + __ v_aesd(v0, v27); __ v_aesimc(v0, v0); + __ v_aesd(v0, v28); __ v_aesimc(v0, v0); + __ v_aesd(v0, v29); __ v_aesimc(v0, v0); + __ v_aesd(v0, v30); + __ v_eor(v0, __ T16B, v0, v31); + __ v_eor(v0, __ T16B, v0, v2); + + __ v_st1(v0, __ T16B, to, 16); + __ v_orr(v2, __ T16B, v1, v1); + + __ sub(len_reg, len_reg, 16); + __ cbnz(len_reg, L_aes_loop); + + __ v_st1(v2, __ T16B, rvec); + + __ mov(r0, rscratch2); + + __ leave(); + __ ret(lr); + + return start; + } + #ifndef BUILTIN_SIM // Safefetch stubs. void generate_safefetch(const char* name, int size, address* entry, @@ -2174,6 +2582,13 @@ generate_arraycopy_stubs(); #ifndef BUILTIN_SIM + if (UseAESIntrinsics) { + StubRoutines::_aescrypt_encryptBlock = generate_aescrypt_encryptBlock(); + StubRoutines::_aescrypt_decryptBlock = generate_aescrypt_decryptBlock(); + StubRoutines::_cipherBlockChaining_encryptAESCrypt = generate_cipherBlockChaining_encryptAESCrypt(); + StubRoutines::_cipherBlockChaining_decryptAESCrypt = generate_cipherBlockChaining_decryptAESCrypt(); + } + // Safefetch stubs. generate_safefetch("SafeFetch32", sizeof(int), &StubRoutines::_safefetch32_entry, &StubRoutines::_safefetch32_fault_pc, diff -r c5b8254a0fe2 -r 135fb0fc4123 src/cpu/aarch64/vm/vm_version_aarch64.cpp --- a/src/cpu/aarch64/vm/vm_version_aarch64.cpp Tue Jul 08 20:17:05 2014 +0100 +++ b/src/cpu/aarch64/vm/vm_version_aarch64.cpp Mon Jul 21 10:46:47 2014 +0100 @@ -39,6 +39,10 @@ #include #include +#ifndef HWCAP_AES +#define HWCAP_AES (1<<3) +#endif + #ifndef HWCAP_CRC32 #define HWCAP_CRC32 (1<<7) #endif @@ -110,6 +114,22 @@ if (UseCRC32 && (auxv & HWCAP_CRC32) == 0) { warning("UseCRC32 specified, but not supported on this CPU"); } + if (auxv & HWCAP_AES) { + UseAES = UseAES || FLAG_IS_DEFAULT(UseAES); + UseAESIntrinsics = + UseAESIntrinsics || (UseAES && FLAG_IS_DEFAULT(UseAESIntrinsics)); + if (UseAESIntrinsics && !UseAES) { + warning("UseAESIntrinsics enabled, but UseAES not, enabling"); + UseAES = true; + } + } else { + if (UseAES) { + warning("UseAES specified, but not supported on this CPU"); + } + if (UseAESIntrinsics) { + warning("UseAESIntrinsics specified, but not supported on this CPU"); + } + } #endif if (FLAG_IS_DEFAULT(UseCRC32Intrinsics)) { --- CUT HERE --- From adinn at redhat.com Mon Jul 21 10:22:58 2014 From: adinn at redhat.com (Andrew Dinn) Date: Mon, 21 Jul 2014 11:22:58 +0100 Subject: [aarch64-port-dev ] Performance patches for aarch64 jdk7u hotspot Message-ID: <53CCEA02.8020202@redhat.com> Attached for review are jdk7u hotspot patches for all outstanding performance enhancements which can be merged from upstream JDK8. n.b. some of these patches have been tweaked relative to their corresponding original in JDK8 to elide changes which related to upstream Oracle shared code modifications. Also, I tweaked a couple of patches to merge an original change set with a subsequent minor correction. Is it ok to push? regards, Andrew Dinn ----------- -------------- next part -------------- # HG changeset patch # User adinn # Date 1405348875 -3600 # Node ID 8a6e776a1fa00060e38420a9ecbeaad3eea28b76 # Parent a03843f2ff15e2ac97af1c0e0eec76c7819a2a1c Performance improvement and ease of use changes pulled from upstream These are some of the changes originally introduced in upstream jdk8 as extra edits sneaked into change set 7168 whose main purpose was to fix AArch64 after the merge from upstream Oracle jdk8u20-b16. Other bug fix changes also sneaked into that same change set have already been included in previous patch to jdk7. diff -r a03843f2ff15 -r 8a6e776a1fa0 agent/src/os/linux/LinuxDebuggerLocal.c --- a/agent/src/os/linux/LinuxDebuggerLocal.c Tue Jul 08 20:15:56 2014 +0100 +++ b/agent/src/os/linux/LinuxDebuggerLocal.c Mon Jul 14 15:41:15 2014 +0100 @@ -365,7 +365,6 @@ #undef REG_INDEX -// ECN: FIXME - add case for aarch64 #ifdef i386 #define REG_INDEX(reg) sun_jvm_hotspot_debugger_x86_X86ThreadContext_##reg @@ -458,6 +457,13 @@ regs[REG_INDEX(R_O7)] = gregs.u_regs[14]; #endif /* sparc */ +#if defined(aarch64) + +#define REG_INDEX(reg) sun_jvm_hotspot_debugger_aarch64_AARCH64ThreadContext_##reg + +#endif /* aarch64 */ + + (*env)->ReleaseLongArrayElements(env, array, regs, JNI_COMMIT); return array; diff -r a03843f2ff15 -r 8a6e776a1fa0 make/linux/makefiles/buildtree.make --- a/make/linux/makefiles/buildtree.make Tue Jul 08 20:15:56 2014 +0100 +++ b/make/linux/makefiles/buildtree.make Mon Jul 14 15:41:15 2014 +0100 @@ -193,6 +193,7 @@ DATA_MODE/sparc = 32 DATA_MODE/sparcv9 = 64 DATA_MODE/amd64 = 64 +DATA_MODE/aarch64 = 64 DATA_MODE = $(DATA_MODE/$(BUILDARCH)) diff -r a03843f2ff15 -r 8a6e776a1fa0 make/linux/makefiles/compiler1.make --- a/make/linux/makefiles/compiler1.make Tue Jul 08 20:15:56 2014 +0100 +++ b/make/linux/makefiles/compiler1.make Mon Jul 14 15:41:15 2014 +0100 @@ -28,7 +28,4 @@ VM_SUBDIR = client -# for now don't make compiler1 if building aarch64 -#ifneq ($(SRCARCH), aarch64) CFLAGS += -DCOMPILER1 -#endif diff -r a03843f2ff15 -r 8a6e776a1fa0 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Tue Jul 08 20:15:56 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Mon Jul 14 15:41:15 2014 +0100 @@ -2807,9 +2807,6 @@ __ call_Unimplemented(); } %} - // TODO - // this only works ifdef BUILTIN_SIM - // provide version for native AArch64 build enc_class aarch64_enc_java_to_runtime(method meth) %{ MacroAssembler _masm(&cbuf); diff -r a03843f2ff15 -r 8a6e776a1fa0 src/cpu/aarch64/vm/bytecodeInterpreter_aarch64.hpp --- a/src/cpu/aarch64/vm/bytecodeInterpreter_aarch64.hpp Tue Jul 08 20:15:56 2014 +0100 +++ b/src/cpu/aarch64/vm/bytecodeInterpreter_aarch64.hpp Mon Jul 14 15:41:15 2014 +0100 @@ -96,7 +96,7 @@ #define LOCALS_ADDR(offset) ((address)locals[-(offset)]) #define LOCALS_INT(offset) ((jint)(locals[-(offset)])) #define LOCALS_FLOAT(offset) (*((jfloat*)&locals[-(offset)])) -#define LOCALS_OBJECT(offset) ((oop)locals[-(offset)]) +#define LOCALS_OBJECT(offset) (cast_to_oop(locals[-(offset)])) #define LOCALS_DOUBLE(offset) (((VMJavaVal64*)&locals[-((offset) + 1)])->d) #define LOCALS_LONG(offset) (((VMJavaVal64*)&locals[-((offset) + 1)])->l) #define LOCALS_LONG_AT(offset) (((address)&locals[-((offset) + 1)])) diff -r a03843f2ff15 -r 8a6e776a1fa0 src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Tue Jul 08 20:15:56 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Mon Jul 14 15:41:15 2014 +0100 @@ -515,7 +515,7 @@ __ pop(0x3, sp); // r0 & r1 __ leave(); __ br(rscratch1); - address polling_page(os::get_polling_page() + (SafepointPollOffset % os::vm_page_size())); + address polling_page(os::get_polling_page()); assert(os::is_poll_address(polling_page), "should be"); unsigned long off; __ adrp(rscratch1, Address(polling_page, rtype), off); @@ -534,7 +534,7 @@ // Pop the stack before the safepoint code __ remove_frame(initial_frame_size_in_bytes()); if (UseCompilerSafepoints) { - address polling_page(os::get_polling_page() + (SafepointPollOffset % os::vm_page_size())); + address polling_page(os::get_polling_page()); __ read_polling_page(rscratch1, polling_page, relocInfo::poll_return_type); } else { poll_for_safepoint(relocInfo::poll_return_type); @@ -543,8 +543,7 @@ } int LIR_Assembler::safepoint_poll(LIR_Opr tmp, CodeEmitInfo* info) { - address polling_page(os::get_polling_page() - + (SafepointPollOffset % os::vm_page_size())); + address polling_page(os::get_polling_page()); if (UseCompilerSafepoints) { guarantee(info != NULL, "Shouldn't be NULL"); assert(os::is_poll_address(polling_page), "should be"); diff -r a03843f2ff15 -r 8a6e776a1fa0 src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp Tue Jul 08 20:15:56 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp Mon Jul 14 15:41:15 2014 +0100 @@ -1082,6 +1082,21 @@ } break; + case deoptimize_id: + { + StubFrame f(sasm, "deoptimize", dont_gc_arguments); + OopMap* oop_map = save_live_registers(sasm); + int call_offset = __ call_RT(noreg, noreg, CAST_FROM_FN_PTR(address, deoptimize)); + oop_maps = new OopMapSet(); + oop_maps->add_gc_map(call_offset, oop_map); + restore_live_registers(sasm); + DeoptimizationBlob* deopt_blob = SharedRuntime::deopt_blob(); + assert(deopt_blob != NULL, "deoptimization blob must have been created"); + __ leave(); + __ b(RuntimeAddress(deopt_blob->unpack_with_reexecution())); + } + break; + case throw_range_check_failed_id: { StubFrame f(sasm, "range_check_failed", dont_gc_arguments); oop_maps = generate_exception_throw(sasm, CAST_FROM_FN_PTR(address, throw_range_check_exception), true); diff -r a03843f2ff15 -r 8a6e776a1fa0 src/cpu/aarch64/vm/frame_aarch64.inline.hpp --- a/src/cpu/aarch64/vm/frame_aarch64.inline.hpp Tue Jul 08 20:15:56 2014 +0100 +++ b/src/cpu/aarch64/vm/frame_aarch64.inline.hpp Mon Jul 14 15:41:15 2014 +0100 @@ -47,10 +47,12 @@ inline frame::frame(intptr_t* sp, intptr_t* fp, address pc) { intptr_t a = intptr_t(sp); intptr_t b = intptr_t(fp); +#ifndef PRODUCT if (fp) if (sp > fp || (fp - sp > 0x100000)) for(;;) asm("nop"); +#endif _sp = sp; _unextended_sp = sp; _fp = fp; @@ -71,10 +73,12 @@ inline frame::frame(intptr_t* sp, intptr_t* unextended_sp, intptr_t* fp, address pc) { intptr_t a = intptr_t(sp); intptr_t b = intptr_t(fp); +#ifndef PRODUCT if (fp) if (sp > fp || (fp - sp > 0x100000)) for(;;) asm("nop"); +#endif _sp = sp; _unextended_sp = unextended_sp; _fp = fp; @@ -96,10 +100,12 @@ inline frame::frame(intptr_t* sp, intptr_t* fp) { intptr_t a = intptr_t(sp); intptr_t b = intptr_t(fp); +#ifndef PRODUCT if (fp) if (sp > fp || (fp - sp > 0x100000)) for(;;) asm("nop"); +#endif _sp = sp; _unextended_sp = sp; _fp = fp; diff -r a03843f2ff15 -r 8a6e776a1fa0 src/cpu/aarch64/vm/interp_masm_aarch64.cpp --- a/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Tue Jul 08 20:15:56 2014 +0100 +++ b/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Mon Jul 14 15:41:15 2014 +0100 @@ -1417,10 +1417,10 @@ Register scratch, bool preloaded, Condition cond, Label* where) { if (!preloaded) { - ldr(scratch, counter_addr); + ldrw(scratch, counter_addr); } add(scratch, scratch, increment); - str(scratch, counter_addr); + strw(scratch, counter_addr); ands(scratch, scratch, mask); br(cond, *where); } diff -r a03843f2ff15 -r 8a6e776a1fa0 src/cpu/aarch64/vm/jniFastGetField_aarch64.cpp --- a/src/cpu/aarch64/vm/jniFastGetField_aarch64.cpp Tue Jul 08 20:15:56 2014 +0100 +++ b/src/cpu/aarch64/vm/jniFastGetField_aarch64.cpp Mon Jul 14 15:41:15 2014 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Red Hat Inc. + * Copyright (c) 2014, Red Hat Inc. * Copyright (c) 2004, 2010, Oracle and/or its affiliates. * All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. @@ -35,39 +35,136 @@ #define BUFFER_SIZE 30*wordSize -// Instead of issuing lfence for LoadLoad barrier, we create data dependency -// between loads, which is more efficient than lfence. +// Instead of issuing a LoadLoad barrier we create an address +// dependency between loads; this might be more efficient. + // Common register usage: -// rax/xmm0: result +// r0/v0: result // c_rarg0: jni env // c_rarg1: obj // c_rarg2: jfield id -// static const Register robj = r9; -// static const Register rcounter = r10; -// static const Register roffset = r11; -// static const Register rcounter_addr = r11; +static const Register robj = r3; +static const Register rcounter = r4; +static const Register roffset = r5; +static const Register rcounter_addr = r6; +static const Register result = r7; -// Warning: do not use rip relative addressing after the first counter load -// since that may scratch r10! +address JNI_FastGetField::generate_fast_get_int_field0(BasicType type) { + const char *name; + switch (type) { + case T_BOOLEAN: name = "jni_fast_GetBooleanField"; break; + case T_BYTE: name = "jni_fast_GetByteField"; break; + case T_CHAR: name = "jni_fast_GetCharField"; break; + case T_SHORT: name = "jni_fast_GetShortField"; break; + case T_INT: name = "jni_fast_GetIntField"; break; + case T_LONG: name = "jni_fast_GetLongField"; break; + case T_FLOAT: name = "jni_fast_GetFloatField"; break; + case T_DOUBLE: name = "jni_fast_GetDoubleField"; break; + default: ShouldNotReachHere(); + } + ResourceMark rm; + BufferBlob* blob = BufferBlob::create(name, BUFFER_SIZE); + CodeBuffer cbuf(blob); + MacroAssembler* masm = new MacroAssembler(&cbuf); + address fast_entry = __ pc(); -address JNI_FastGetField::generate_fast_get_int_field0(BasicType type) { Unimplemented(); return 0; } + Label slow; -address JNI_FastGetField::generate_fast_get_boolean_field() { Unimplemented(); return 0; } + unsigned long offset; + __ adrp(rcounter_addr, + SafepointSynchronize::safepoint_counter_addr(), offset); + Address safepoint_counter_addr(rcounter_addr, offset); + __ ldrw(rcounter, safepoint_counter_addr); + __ andw(rscratch1, rcounter, 1); + __ cbnzw(rscratch1, slow); + __ eor(robj, c_rarg1, rcounter); + __ eor(robj, robj, rcounter); // obj, since + // robj ^ rcounter ^ rcounter == robj + // robj is address dependent on rcounter. + __ ldr(robj, Address(robj, 0)); // *obj + __ lsr(roffset, c_rarg2, 2); // offset -address JNI_FastGetField::generate_fast_get_byte_field() { Unimplemented(); return 0; } + assert(count < LIST_CAPACITY, "LIST_CAPACITY too small"); + speculative_load_pclist[count] = __ pc(); // Used by the segfault handler + switch (type) { + case T_BOOLEAN: __ ldrb (result, Address(robj, roffset)); break; + case T_BYTE: __ ldrsb (result, Address(robj, roffset)); break; + case T_CHAR: __ ldrh (result, Address(robj, roffset)); break; + case T_SHORT: __ ldrsh (result, Address(robj, roffset)); break; + case T_FLOAT: __ ldrw (result, Address(robj, roffset)); break; + case T_INT: __ ldrsw (result, Address(robj, roffset)); break; + case T_DOUBLE: + case T_LONG: __ ldr (result, Address(robj, roffset)); break; + default: ShouldNotReachHere(); + } -address JNI_FastGetField::generate_fast_get_char_field() { Unimplemented(); return 0; } + // counter_addr is address dependent on result. + __ eor(rcounter_addr, rcounter_addr, result); + __ eor(rcounter_addr, rcounter_addr, result); + __ ldrw(rscratch1, safepoint_counter_addr); + __ cmpw(rcounter, rscratch1); + __ br (Assembler::NE, slow); -address JNI_FastGetField::generate_fast_get_short_field() { Unimplemented(); return 0; } + switch (type) { + case T_FLOAT: __ fmovs(v0, result); break; + case T_DOUBLE: __ fmovd(v0, result); break; + default: __ mov(r0, result); break; + } + __ ret(lr); -address JNI_FastGetField::generate_fast_get_int_field() { Unimplemented(); return 0; } + slowcase_entry_pclist[count++] = __ pc(); + __ bind(slow); + address slow_case_addr; + switch (type) { + case T_BOOLEAN: slow_case_addr = jni_GetBooleanField_addr(); break; + case T_BYTE: slow_case_addr = jni_GetByteField_addr(); break; + case T_CHAR: slow_case_addr = jni_GetCharField_addr(); break; + case T_SHORT: slow_case_addr = jni_GetShortField_addr(); break; + case T_INT: slow_case_addr = jni_GetIntField_addr(); break; + case T_LONG: slow_case_addr = jni_GetLongField_addr(); break; + case T_FLOAT: slow_case_addr = jni_GetFloatField_addr(); break; + case T_DOUBLE: slow_case_addr = jni_GetDoubleField_addr(); break; + default: ShouldNotReachHere(); + } + // tail call + __ lea(rscratch1, ExternalAddress(slow_case_addr)); + __ br(rscratch1); -address JNI_FastGetField::generate_fast_get_long_field() { Unimplemented(); return 0; } + __ flush (); -address JNI_FastGetField::generate_fast_get_float_field0(BasicType type) { Unimplemented(); return 0; } + return fast_entry; +} -address JNI_FastGetField::generate_fast_get_float_field() { Unimplemented(); return 0; } +address JNI_FastGetField::generate_fast_get_boolean_field() { + return generate_fast_get_int_field0(T_BOOLEAN); +} -address JNI_FastGetField::generate_fast_get_double_field() { Unimplemented(); return 0; } +address JNI_FastGetField::generate_fast_get_byte_field() { + return generate_fast_get_int_field0(T_BYTE); +} + +address JNI_FastGetField::generate_fast_get_char_field() { + return generate_fast_get_int_field0(T_CHAR); +} + +address JNI_FastGetField::generate_fast_get_short_field() { + return generate_fast_get_int_field0(T_SHORT); +} + +address JNI_FastGetField::generate_fast_get_int_field() { + return generate_fast_get_int_field0(T_INT); +} + +address JNI_FastGetField::generate_fast_get_long_field() { + return generate_fast_get_int_field0(T_LONG); +} + +address JNI_FastGetField::generate_fast_get_float_field() { + return generate_fast_get_int_field0(T_FLOAT); +} + +address JNI_FastGetField::generate_fast_get_double_field() { + return generate_fast_get_int_field0(T_DOUBLE); +} diff -r a03843f2ff15 -r 8a6e776a1fa0 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 08 20:15:56 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Mon Jul 14 15:41:15 2014 +0100 @@ -3079,6 +3079,7 @@ } void MacroAssembler::adrp(Register reg1, const Address &dest, unsigned long &byte_offset) { + relocInfo::relocType rtype = dest.rspec().reloc()->type(); if (labs(pc() - dest.target()) >= (1LL << 32)) { // Out of range. This doesn't happen very often, but we have to // handle it diff -r a03843f2ff15 -r 8a6e776a1fa0 src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp --- a/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Tue Jul 08 20:15:56 2014 +0100 +++ b/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Mon Jul 14 15:41:15 2014 +0100 @@ -1924,7 +1924,7 @@ if(os::is_MP()) { if (UseMembar) { // Force this write out before the read below - __ dsb(Assembler::SY); + __ dmb(Assembler::SY); } else { // Write serialization page so VM thread can do a pseudo remote membar. // We use the current thread pointer to calculate a thread specific diff -r a03843f2ff15 -r 8a6e776a1fa0 src/share/vm/c1/c1_Runtime1.cpp --- a/src/share/vm/c1/c1_Runtime1.cpp Tue Jul 08 20:15:56 2014 +0100 +++ b/src/share/vm/c1/c1_Runtime1.cpp Mon Jul 14 15:41:15 2014 +0100 @@ -225,11 +225,6 @@ #if defined(SPARC) || defined(PPC) case handle_exception_nofpu_id: // Unused on sparc #endif -#ifdef TARGET_ARCH_aarch64 - case throw_index_exception_id: - case throw_array_store_exception_id: - case deoptimize_id: -#endif break; // All other stubs should have oopmaps -------------- next part -------------- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1402568896 -3600 # Node ID 55084fca52d279e90686b5cc53bf87aa853a3c75 # Parent 1b3757e98d39e89faa65c719951d4b273908433c Add support for Neon implementation of CRC32 diff -r 1b3757e98d39 -r 55084fca52d2 src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Wed Jun 11 13:51:03 2014 +0100 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Thu Jun 12 11:28:16 2014 +0100 @@ -1842,6 +1842,225 @@ fmovd(Vn, zr); } +/* SIMD extensions + * + * We just use FloatRegister in the following. They are exactly the same + * as SIMD registers. + */ +public: + + enum SIMD_Arrangement { + T8B, T16B, T4H, T8H, T2S, T4S, T1D, T2D + }; + + enum SIMD_RegVariant { + S32, D64, Q128 + }; + + void v_shl(FloatRegister Vd, FloatRegister Vn, SIMD_Arrangement T, int shift){ + starti; + /* The encodings for the immh:immb fields (bits 22:16) are + * 0001 xxx 8B/16B, shift = xxx + * 001x xxx 4H/8H, shift = xxxx + * 01xx xxx 2S/4S, shift = xxxxx + * 1xxx xxx 1D/2D, shift = xxxxxx (1D is RESERVED) + */ + assert((1 << ((T>>1)+3)) > shift, "Invalid Shift value"); + f(0, 31), f(T & 1, 30), f(0b0011110, 29, 23), f((1 << ((T>>1)+3))|shift, 22, 16); + f(0b010101, 15, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_ushll(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, SIMD_Arrangement Tb, int shift) { + starti; + /* The encodings for the immh:immb fields (bits 22:16) are + * 0001 xxx 8H, 8B/16b shift = xxx + * 001x xxx 4S, 4H/8H shift = xxxx + * 01xx xxx 2D, 2S/4S shift = xxxxx + * 1xxx xxx RESERVED + */ + assert((Tb >> 1) + 1 == (Ta >> 1), "Incompatible arrangement"); + assert((1 << ((Tb>>1)+3)) > shift, "Invalid shift value"); + f(0, 31), f(Tb & 1, 30), f(0b1011110, 29, 23), f((1 << ((Tb>>1)+3))|shift, 22, 16); + f(0b101001, 15, 10), rf(Vn, 5), rf(Vd, 0); + } + void v_ushll2(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, SIMD_Arrangement Tb, int shift) { + v_ushll(Vd, Ta, Vn, Tb, shift); + } + + void v_uzp1(FloatRegister Vd, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement T, int op = 0){ + starti; + f(0, 31), f((T & 0x1), 30), f(0b001110, 29, 24), f((T >> 1), 23, 22), f(0, 21); + rf(Vm, 16), f(0, 15), f(op, 14), f(0b0110, 13, 10), rf(Vn, 5), rf(Vd, 0); + } + void v_uzp2(FloatRegister Vd, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement T){ + v_uzp1(Vd, Vn, Vm, T, 1); + } + + // Move from general purpose register + // mov Vd.T[index], Rn + void v_mov(FloatRegister Vd, SIMD_Arrangement T, int index, Register Xn) { + starti; + f(0b01001110000, 31, 21), f(((1 << (T >> 1)) | (index << ((T >> 1) + 1))), 20, 16); + f(0b000111, 15, 10), rf(Xn, 5), rf(Vd, 0); + } + + // Move to general purpose register + // mov Rd, Vn.T[index] + void v_mov(Register Xd, FloatRegister Vn, SIMD_Arrangement T, int index) { + starti; + f(0, 31), f((T >= T1D) ? 1:0, 30), f(0b001110000, 29, 21); + f(((1 << (T >> 1)) | (index << ((T >> 1) + 1))), 20, 16); + f(0b001111, 15, 10), rf(Vn, 5), rf(Xd, 0); + } + + // We do not handle the 1Q arrangement. + void v_pmull(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement Tb) { + starti; + assert(Ta == T8H && (Tb == T8B || Tb == T16B), "Invalid Size specifier"); + f(0, 31), f(Tb & 1, 30), f(0b001110001, 29, 21), rf(Vm, 16), f(0b111000, 15, 10); + rf(Vn, 5), rf(Vd, 0); + } + void v_pmull2(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement Tb) { + v_pmull(Vd, Ta, Vn, Vm, Tb); + } + + void v_ld1(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { + starti; + f(0,31), f((int)T & 1, 30), f(0b00110001000000, 29, 16), f(0b0111, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + f(0,31), f((int)T & 1, 30), f(0b00110001000000, 29, 16), f(0b1010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + f(0,31), f((int)T & 1, 30), f(0b00110001000000, 29, 16), f(0b0110, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0,31), f((int)T & 1, 30), f(0b00110001000000, 29, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + + void v_ld1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((8 << ((int)T & 1)) == imm, "size/imm mismatch"); + f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), f(0b11111, 20, 16), f(0b0111, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), rf(Xm, 16), f(0b0111, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((16 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), f(0b11111, 20, 16), f(0b1010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), rf(Xm, 16), f(0b1010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((24 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), f(0b11111, 20, 16), f(0b0110, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), rf(Xm, 16), f(0b0110, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((32 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), f(0b11111, 20, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), rf(Xm, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + + void v_st1(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { + starti; + f(0, 31), f((int)T & 1, 30), f(0b00110000000000, 29, 16), f(0b0111, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + f(0, 31), f((int)T & 1, 30), f(0b00110000000000, 29, 16), f(0b1010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + f(0, 31), f((int)T & 1, 30), f(0b00110000000000, 29, 16), f(0b0110, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0, 31), f((int)T & 1, 30), f(0b00110000000000, 29, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + + void v_ld1r(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { + starti; + f(0, 31), f((int)T & 1, 30), f(0b001101010000001100, 29, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1r(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + f(0, 31), f((int)T & 1, 30), f(0b001101110, 29, 21), rf(Xm, 16); + f(0b1100, 15, 12), f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1r(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((1 << ((int)T & 3)) == imm, "size/imm mismatch"); + f(0, 31), f((int)T & 1, 30), f(0b001101110111111100, 29, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + + void v_eor(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn, FloatRegister Vm) { + starti; + assert(T == T8B || T == T16B, "must be T8B or T16B"); + f(0, 31), f((int)T & 1, 30), f(0b101110001, 29, 21); + rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); + } + + + /* Simulator extensions to the ISA haltsim diff -r 1b3757e98d39 -r 55084fca52d2 src/cpu/aarch64/vm/globals_aarch64.hpp --- a/src/cpu/aarch64/vm/globals_aarch64.hpp Wed Jun 11 13:51:03 2014 +0100 +++ b/src/cpu/aarch64/vm/globals_aarch64.hpp Thu Jun 12 11:28:16 2014 +0100 @@ -100,6 +100,8 @@ notproduct(bool, UseAcqRelForVolatileFields, false, \ "Use acquire and release insns for volatile fields") +// Don't attempt to use Neon on builtin sim until builtin sim supports it +#define UseNeon false #else #define UseBuiltinSim false @@ -115,7 +117,9 @@ "doptimize instead of patching instructions") \ \ notproduct(bool, UseAcqRelForVolatileFields, false, \ - "Use acquire and release insns for volatile fields") + "Use acquire and release insns for volatile fields") \ + product(bool, UseNeon, false, \ + "Use Neon for CRC32 computation") #endif diff -r 1b3757e98d39 -r 55084fca52d2 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Wed Jun 11 13:51:03 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Thu Jun 12 11:28:16 2014 +0100 @@ -2152,14 +2152,151 @@ void MacroAssembler::kernel_crc32(Register crc, Register buf, Register len, Register table0, Register table1, Register table2, Register table3, Register tmp, Register tmp2, Register tmp3) { - Label L_by16_loop, L_by4, L_by4_loop, L_by1, L_by1_loop, L_exit; + Label L_by16, L_by16_loop, L_by4, L_by4_loop, L_by1, L_by1_loop, L_exit; unsigned long offset; + ornw(crc, zr, crc); adrp(table0, ExternalAddress(StubRoutines::crc_table_addr()), offset); if (offset) add(table0, table0, offset); add(table1, table0, 1*256*sizeof(juint)); add(table2, table0, 2*256*sizeof(juint)); add(table3, table0, 3*256*sizeof(juint)); + + if (UseNeon) { + cmp(len, 64); + br(Assembler::LT, L_by16); + v_eor(v16, T16B, v16, v16); + + Label L_fold; + + add(tmp, table0, 4*256*sizeof(juint)); // Point at the Neon constants + + v_ld1(v0, v1, T2D, buf, 32); + v_ld1r(v4, T2D, tmp, 8); + v_ld1r(v5, T2D, tmp, 8); + v_ld1r(v6, T2D, tmp, 8); + v_ld1r(v7, T2D, tmp, 8); + v_mov(v16, T4S, 0, crc); + + v_eor(v0, T16B, v0, v16); + sub(len, len, 64); + + BIND(L_fold); + v_pmull(v22, T8H, v0, v5, T8B); + v_pmull(v20, T8H, v0, v7, T8B); + v_pmull(v23, T8H, v0, v4, T8B); + v_pmull(v21, T8H, v0, v6, T8B); + + v_pmull2(v18, T8H, v0, v5, T16B); + v_pmull2(v16, T8H, v0, v7, T16B); + v_pmull2(v19, T8H, v0, v4, T16B); + v_pmull2(v17, T8H, v0, v6, T16B); + + v_uzp1(v24, v20, v22, T8H); + v_uzp2(v25, v20, v22, T8H); + v_eor(v20, T16B, v24, v25); + + v_uzp1(v26, v16, v18, T8H); + v_uzp2(v27, v16, v18, T8H); + v_eor(v16, T16B, v26, v27); + + v_ushll2(v22, T4S, v20, T8H, 8); + v_ushll(v20, T4S, v20, T4H, 8); + + v_ushll2(v18, T4S, v16, T8H, 8); + v_ushll(v16, T4S, v16, T4H, 8); + + v_eor(v22, T16B, v23, v22); + v_eor(v18, T16B, v19, v18); + v_eor(v20, T16B, v21, v20); + v_eor(v16, T16B, v17, v16); + + v_uzp1(v17, v16, v20, T2D); + v_uzp2(v21, v16, v20, T2D); + v_eor(v17, T16B, v17, v21); + + v_ushll2(v20, T2D, v17, T4S, 16); + v_ushll(v16, T2D, v17, T2S, 16); + + v_eor(v20, T16B, v20, v22); + v_eor(v16, T16B, v16, v18); + + v_uzp1(v17, v20, v16, T2D); + v_uzp2(v21, v20, v16, T2D); + v_eor(v28, T16B, v17, v21); + + v_pmull(v22, T8H, v1, v5, T8B); + v_pmull(v20, T8H, v1, v7, T8B); + v_pmull(v23, T8H, v1, v4, T8B); + v_pmull(v21, T8H, v1, v6, T8B); + + v_pmull2(v18, T8H, v1, v5, T16B); + v_pmull2(v16, T8H, v1, v7, T16B); + v_pmull2(v19, T8H, v1, v4, T16B); + v_pmull2(v17, T8H, v1, v6, T16B); + + v_ld1(v0, v1, T2D, buf, 32); + + v_uzp1(v24, v20, v22, T8H); + v_uzp2(v25, v20, v22, T8H); + v_eor(v20, T16B, v24, v25); + + v_uzp1(v26, v16, v18, T8H); + v_uzp2(v27, v16, v18, T8H); + v_eor(v16, T16B, v26, v27); + + v_ushll2(v22, T4S, v20, T8H, 8); + v_ushll(v20, T4S, v20, T4H, 8); + + v_ushll2(v18, T4S, v16, T8H, 8); + v_ushll(v16, T4S, v16, T4H, 8); + + v_eor(v22, T16B, v23, v22); + v_eor(v18, T16B, v19, v18); + v_eor(v20, T16B, v21, v20); + v_eor(v16, T16B, v17, v16); + + v_uzp1(v17, v16, v20, T2D); + v_uzp2(v21, v16, v20, T2D); + v_eor(v16, T16B, v17, v21); + + v_ushll2(v20, T2D, v16, T4S, 16); + v_ushll(v16, T2D, v16, T2S, 16); + + v_eor(v20, T16B, v22, v20); + v_eor(v16, T16B, v16, v18); + + v_uzp1(v17, v20, v16, T2D); + v_uzp2(v21, v20, v16, T2D); + v_eor(v20, T16B, v17, v21); + + v_shl(v16, v28, T2D, 1); + v_shl(v17, v20, T2D, 1); + + v_eor(v0, T16B, v0, v16); + v_eor(v1, T16B, v1, v17); + + subs(len, len, 32); + br(Assembler::GE, L_fold); + + mov(crc, 0); + v_mov(tmp, v0, T1D, 0); + update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, false); + update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, true); + v_mov(tmp, v0, T1D, 1); + update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, false); + update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, true); + v_mov(tmp, v1, T1D, 0); + update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, false); + update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, true); + v_mov(tmp, v1, T1D, 1); + update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, false); + update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, true); + + add(len, len, 32); + } + + BIND(L_by16); subs(len, len, 16); br(Assembler::GE, L_by16_loop); adds(len, len, 16-4); diff -r 1b3757e98d39 -r 55084fca52d2 src/cpu/aarch64/vm/stubRoutines_aarch64.cpp --- a/src/cpu/aarch64/vm/stubRoutines_aarch64.cpp Wed Jun 11 13:51:03 2014 +0100 +++ b/src/cpu/aarch64/vm/stubRoutines_aarch64.cpp Thu Jun 12 11:28:16 2014 +0100 @@ -265,5 +265,12 @@ 0x866616a7UL, 0x3eda71c2UL, 0x2c6fde2cUL, 0x94d3b949UL, 0x090481f0UL, 0xb1b8e695UL, 0xa30d497bUL, 0x1bb12e1eUL, 0x43d23e48UL, 0xfb6e592dUL, 0xe9dbf6c3UL, 0x516791a6UL, 0xccb0a91fUL, 0x740cce7aUL, 0x66b96194UL, - 0xde0506f1UL + 0xde0506f1UL, + // Constants for Neon CRC232 implementation + // k3 = 0x78ED02D5 = x^288 mod poly - bit reversed + // k4 = 0xED627DAE = x^256 mod poly - bit reversed + 0x78ED02D5UL, 0xED627DAEUL, // k4:k3 + 0xED78D502UL, 0x62EDAE7DUL, // byte swap + 0x02D578EDUL, 0x7DAEED62UL, // word swap + 0xD502ED78UL, 0xAE7D62EDUL, // byte swap of word swap }; -------------- next part -------------- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1402950043 -3600 # Node ID ca4f6b4fdf4cb9bfee38eade22b6fff1407c5825 # Parent 55084fca52d279e90686b5cc53bf87aa853a3c75 Add support for builtin crc32 instructions diff -r 55084fca52d2 -r ca4f6b4fdf4c src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Thu Jun 12 11:28:16 2014 +0100 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Mon Jun 16 21:20:43 2014 +0100 @@ -2059,6 +2059,20 @@ rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); } + // CRC32 instructions +#define INSN(NAME, sf, sz) \ + void NAME(Register Rd, Register Rn, Register Rm) { \ + starti; \ + f(sf, 31), f(0b0011010110, 30, 21), f(0b0100, 15, 12), f(sz, 11, 10); \ + rf(Rm, 16), rf(Rn, 5), rf(Rd, 0); \ + } + + INSN(crc32b, 0, 0b00); + INSN(crc32h, 0, 0b01); + INSN(crc32w, 0, 0b10); + INSN(crc32x, 1, 0b11); + +#undef INSN /* Simulator extensions to the ISA diff -r 55084fca52d2 -r ca4f6b4fdf4c src/cpu/aarch64/vm/globals_aarch64.hpp --- a/src/cpu/aarch64/vm/globals_aarch64.hpp Thu Jun 12 11:28:16 2014 +0100 +++ b/src/cpu/aarch64/vm/globals_aarch64.hpp Mon Jun 16 21:20:43 2014 +0100 @@ -102,6 +102,7 @@ // Don't attempt to use Neon on builtin sim until builtin sim supports it #define UseNeon false +#define UseCRC32 false #else #define UseBuiltinSim false @@ -119,7 +120,9 @@ notproduct(bool, UseAcqRelForVolatileFields, false, \ "Use acquire and release insns for volatile fields") \ product(bool, UseNeon, false, \ - "Use Neon for CRC32 computation") + "Use Neon for CRC32 computation") \ + product(bool, UseCRC32, false, \ + "Use CRC32 instructions for CRC32 computation") #endif diff -r 55084fca52d2 -r ca4f6b4fdf4c src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Thu Jun 12 11:28:16 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Mon Jun 16 21:20:43 2014 +0100 @@ -2156,6 +2156,57 @@ unsigned long offset; ornw(crc, zr, crc); + + if (UseCRC32) { + Label CRC_by64_loop, CRC_by4_loop, CRC_by1_loop; + + subs(len, len, 64); + br(Assembler::GE, CRC_by64_loop); + adds(len, len, 64-4); + br(Assembler::GE, CRC_by4_loop); + adds(len, len, 4); + br(Assembler::GT, CRC_by1_loop); + b(L_exit); + + BIND(CRC_by4_loop); + ldrw(tmp, Address(post(buf, 4))); + subs(len, len, 4); + crc32w(crc, crc, tmp); + br(Assembler::GE, CRC_by4_loop); + adds(len, len, 4); + br(Assembler::LE, L_exit); + BIND(CRC_by1_loop); + ldrb(tmp, Address(post(buf, 1))); + subs(len, len, 1); + crc32b(crc, crc, tmp); + br(Assembler::GT, CRC_by1_loop); + b(L_exit); + + align(CodeEntryAlignment); + BIND(CRC_by64_loop); + subs(len, len, 64); + ldp(tmp, tmp3, Address(post(buf, 16))); + crc32x(crc, crc, tmp); + crc32x(crc, crc, tmp3); + ldp(tmp, tmp3, Address(post(buf, 16))); + crc32x(crc, crc, tmp); + crc32x(crc, crc, tmp3); + ldp(tmp, tmp3, Address(post(buf, 16))); + crc32x(crc, crc, tmp); + crc32x(crc, crc, tmp3); + ldp(tmp, tmp3, Address(post(buf, 16))); + crc32x(crc, crc, tmp); + crc32x(crc, crc, tmp3); + br(Assembler::GE, CRC_by64_loop); + adds(len, len, 64-4); + br(Assembler::GE, CRC_by4_loop); + adds(len, len, 4); + br(Assembler::GT, CRC_by1_loop); + BIND(L_exit); + ornw(crc, zr, crc); + return; + } + adrp(table0, ExternalAddress(StubRoutines::crc_table_addr()), offset); if (offset) add(table0, table0, offset); add(table1, table0, 1*256*sizeof(juint)); diff -r 55084fca52d2 -r ca4f6b4fdf4c src/cpu/aarch64/vm/vm_version_aarch64.cpp --- a/src/cpu/aarch64/vm/vm_version_aarch64.cpp Thu Jun 12 11:28:16 2014 +0100 +++ b/src/cpu/aarch64/vm/vm_version_aarch64.cpp Mon Jun 16 21:20:43 2014 +0100 @@ -35,6 +35,16 @@ # include "os_linux.inline.hpp" #endif +#ifndef BUILTIN_SIM +#include +#include + +#ifndef HWCAP_CRC32 +#define HWCAP_CRC32 (1<<7) +#endif + +#endif + int VM_Version::_cpu; int VM_Version::_model; int VM_Version::_stepping; @@ -92,6 +102,16 @@ FLAG_SET_DEFAULT(PrefetchFieldsAhead, 256); FLAG_SET_DEFAULT(PrefetchCopyIntervalInBytes, 256); +#ifndef BUILTIN_SIM + unsigned long auxv = getauxval(AT_HWCAP); + if (FLAG_IS_DEFAULT(UseCRC32)) { + UseCRC32 = (auxv & HWCAP_CRC32) != 0; + } + if (UseCRC32 && (auxv & HWCAP_CRC32) == 0) { + warning("UseCRC32 specified, but not supported on this CPU"); + } +#endif + if (FLAG_IS_DEFAULT(UseCRC32Intrinsics)) { UseCRC32Intrinsics = true; } -------------- next part -------------- # HG changeset patch # User aph # Date 1402917903 14400 # Node ID e1af2a22237811f065ecadbcbc2113e102fc7a29 # Parent 8cb098504801769e6c53eec016a1767b0aa59c79 All address constants are 48 bits in size. diff -r 8cb098504801 -r e1af2a222378 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Thu Jun 05 13:48:13 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Mon Jun 16 07:25:03 2014 -0400 @@ -864,7 +864,8 @@ if (cb) { return 4; } else { - return 20; + // A 48-bit address. See movptr(). + return 16; } } @@ -2099,7 +2100,6 @@ // movz xscratch1 0xnnnn <-- current pc is here // movk xscratch1 0xnnnn // movk xscratch1 0xnnnn - // movk xscratch1 0xnnnn // str xscratch1, [xthread,#anchor_pc_off] // mov xscratch2, sp // str xscratch2, [xthread,#anchor_sp_off @@ -2111,7 +2111,6 @@ // movz xscratch1 0xnnnn // movk xscratch1 0xnnnn // movk xscratch1 0xnnnn - // movk xscratch1 0xnnnn // blrt xscratch1 // . . . // @@ -2121,18 +2120,18 @@ // stub. we assert that nargs is < 7. // // so the offset we need to add to the pc (in 32-bit words) is - // 4 + <-- load 64 bit constant return pc + // 3 + <-- load 48-bit constant return pc // 1 + <-- write anchor pc // 1 + <-- copy sp // 1 + <-- write anchor sp // nargs + <-- java stub arg count // 1 + <-- extra thread arg // [ 1 + ] <-- optional ret address of stub caller - // 4 + <-- load 64 bit call target address + // 3 + <-- load 64 bit call target address // 1 <-- blrt instruction // - // i.e we need to add (nargs + 13) * 4 bytes or (nargs + 14) * 4 bytes - // + // i.e we need to add (nargs + 11) * 4 bytes or (nargs + 12) * 4 bytes + // enc_class aarch64_enc_save_pc() %{ Compile* C = ra_->C; @@ -2141,7 +2140,7 @@ assert(nargs <= 8, "opto runtime stub has more than 8 args!"); MacroAssembler _masm(&cbuf); address pc = __ pc(); - int call_offset = (nargs + 13) * 4; + int call_offset = (nargs + 11) * 4; int field_offset = in_bytes(JavaThread::frame_anchor_offset()) + in_bytes(JavaFrameAnchor::last_Java_pc_offset()); __ mov(rscratch1, InternalAddress(pc + call_offset)); diff -r 8cb098504801 -r e1af2a222378 src/cpu/aarch64/vm/assembler_aarch64.cpp --- a/src/cpu/aarch64/vm/assembler_aarch64.cpp Thu Jun 05 13:48:13 2014 +0100 +++ b/src/cpu/aarch64/vm/assembler_aarch64.cpp Mon Jun 16 07:25:03 2014 -0400 @@ -1273,7 +1273,7 @@ if (rtype == relocInfo::none) __ mov(r, target()); else - __ mov64(r, (uint64_t)target()); + __ movptr(r, (uint64_t)target()); break; } default: diff -r 8cb098504801 -r e1af2a222378 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Thu Jun 05 13:48:13 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Mon Jun 16 07:25:03 2014 -0400 @@ -65,6 +65,7 @@ #define BIND(label) bind(label); BLOCK_COMMENT(#label ":") void MacroAssembler::pd_patch_instruction(address branch, address target) { + assert((uint64_t)target < (1ul << 48), "48-bit overflow in address constant"); long offset = (target - branch) >> 2; unsigned insn = *(unsigned*)branch; if ((Instruction_aarch64::extract(insn, 29, 24) & 0b111011) == 0b011000) { @@ -139,10 +140,11 @@ } else if (Instruction_aarch64::extract(insn, 31, 23) == 0b110100101) { // Move wide constant u_int64_t dest = (u_int64_t)target; + assert(nativeInstruction_at(branch+4)->is_movk(), "wrong insns in patch"); + assert(nativeInstruction_at(branch+8)->is_movk(), "wrong insns in patch"); Instruction_aarch64::patch(branch, 20, 5, dest & 0xffff); Instruction_aarch64::patch(branch += 4, 20, 5, (dest >>= 16) & 0xffff); Instruction_aarch64::patch(branch += 4, 20, 5, (dest >>= 16) & 0xffff); - Instruction_aarch64::patch(branch += 4, 20, 5, (dest >>= 16)); } else if (Instruction_aarch64::extract(insn, 31, 22) == 0b1011100101 && Instruction_aarch64::extract(insn, 4, 0) == 0b11111) { // nothing to do @@ -216,14 +218,13 @@ ShouldNotReachHere(); } } else if (Instruction_aarch64::extract(insn, 31, 23) == 0b110100101) { - // Move wide constant - // FIXME: We assume these instructions are movz, movk, movk, movk. - // We don't assert this; we should. + // Move address constant: movz, movk, movk. See movptr(). u_int32_t *insns = (u_int32_t *)insn_addr; + assert(nativeInstruction_at(insns+1)->is_movk(), "wrong insns in patch"); + assert(nativeInstruction_at(insns+2)->is_movk(), "wrong insns in patch"); return address(u_int64_t(Instruction_aarch64::extract(insns[0], 20, 5)) + (u_int64_t(Instruction_aarch64::extract(insns[1], 20, 5)) << 16) - + (u_int64_t(Instruction_aarch64::extract(insns[2], 20, 5)) << 32) - + (u_int64_t(Instruction_aarch64::extract(insns[3], 20, 5)) << 48)); + + (u_int64_t(Instruction_aarch64::extract(insns[2], 20, 5)) << 32)); } else if (Instruction_aarch64::extract(insn, 31, 22) == 0b1011100101 && Instruction_aarch64::extract(insn, 4, 0) == 0b11111) { return 0; @@ -1246,10 +1247,14 @@ InstructionMark im(this); code_section()->relocate(inst_mark(), dest.rspec()); u_int64_t imm64 = (u_int64_t)dest.target(); - mov64(r, imm64); + movptr(r, imm64); } -void MacroAssembler::mov64(Register r, uintptr_t imm64) { +// Move a constant pointer into r. In AArch64 mode the virtual +// address space is 48 bits in size, so we only need three +// instructions to create a patchable instruction sequence that can +// reach anywhere. +void MacroAssembler::movptr(Register r, uintptr_t imm64) { #ifndef PRODUCT { char buffer[64]; @@ -1257,13 +1262,12 @@ block_comment(buffer); } #endif + assert(imm64 < (1ul << 48), "48-bit overflow in address constant"); movz(r, imm64 & 0xffff); imm64 >>= 16; movk(r, imm64 & 0xffff, 16); imm64 >>= 16; movk(r, imm64 & 0xffff, 32); - imm64 >>= 16; - movk(r, imm64 & 0xffff, 48); } void MacroAssembler::mov_immediate64(Register dst, u_int64_t imm64) diff -r 8cb098504801 -r e1af2a222378 src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Thu Jun 05 13:48:13 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Mon Jun 16 07:25:03 2014 -0400 @@ -439,7 +439,7 @@ } void mov(Register dst, Address a); - void mov64(Register r, uintptr_t imm64); + void movptr(Register r, uintptr_t imm64); // macro instructions for accessing and updating floating point // status register diff -r 8cb098504801 -r e1af2a222378 src/cpu/aarch64/vm/nativeInst_aarch64.cpp --- a/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Thu Jun 05 13:48:13 2014 +0100 +++ b/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Mon Jun 16 07:25:03 2014 -0400 @@ -207,6 +207,14 @@ Instruction_aarch64::extract(insn, 4, 0) == 0b11111); } +bool NativeInstruction::is_movz() { + return Instruction_aarch64::extract(int_at(0), 30, 23) == 0b10100101; +} + +bool NativeInstruction::is_movk() { + return Instruction_aarch64::extract(int_at(0), 30, 23) == 0b11100101; +} + // MT safe inserting of a jump over an unknown instruction sequence (used by nmethod::makeZombie) void NativeJump::patch_verified_entry(address entry, address verified_entry, address dest) { diff -r 8cb098504801 -r e1af2a222378 src/cpu/aarch64/vm/nativeInst_aarch64.hpp --- a/src/cpu/aarch64/vm/nativeInst_aarch64.hpp Thu Jun 05 13:48:13 2014 +0100 +++ b/src/cpu/aarch64/vm/nativeInst_aarch64.hpp Mon Jun 16 07:25:03 2014 -0400 @@ -65,6 +65,8 @@ inline bool is_cond_jump(); bool is_safepoint_poll(); inline bool is_mov_literal64(); + bool is_movz(); + bool is_movk(); protected: address addr_at(int offset) const { return address(this) + offset; } @@ -105,11 +107,12 @@ }; inline NativeInstruction* nativeInstruction_at(address address) { - NativeInstruction* inst = (NativeInstruction*)address; -#ifdef ASSERT - //inst->verify(); -#endif - return inst; + return (NativeInstruction*)address; +} + +// The natural type of an AArch64 instruction is uint32_t +inline NativeInstruction* nativeInstruction_at(uint32_t *address) { + return (NativeInstruction*)address; } inline NativeCall* nativeCall_at(address address); @@ -204,19 +207,21 @@ class NativeMovConstReg: public NativeInstruction { public: enum Aarch64_specific_constants { - instruction_size = 4 * 4, + instruction_size = 3 * 4, // movz, movk, movk. See movptr(). instruction_offset = 0, displacement_offset = 0, }; address instruction_address() const { return addr_at(instruction_offset); } address next_instruction_address() const { - if (is_adrp_at(instruction_address())) + if (nativeInstruction_at(instruction_address())->is_movz()) + // Assume movz, movk, movk + return addr_at(instruction_size); + else if (is_adrp_at(instruction_address())) return addr_at(2*4); else if (is_ldr_literal_at(instruction_address())) return(addr_at(4)); - else - return addr_at(instruction_size); + assert(false, "Unknown instruction in NativeMovConstReg"); } intptr_t data() const; -------------- next part -------------- # HG changeset patch # User adinn # Date 1405428701 -3600 # Node ID df067bdbe075d945fa818c5b92b3054bf845f7a2 # Parent c6a46cb37f857ff67e38f2ecc008760492048204 Use 2- and 3-instruction immediate form of movoop and mov_metadata in C2-generated code. Fix patching code to handle 2- and 3-word forms. Use lea (rather than mov) in mov(reg, Address) form. diff -r c6a46cb37f85 -r df067bdbe075 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Mon Jun 16 07:25:03 2014 -0400 +++ b/src/cpu/aarch64/vm/aarch64.ad Tue Jul 15 13:51:41 2014 +0100 @@ -2058,7 +2058,7 @@ int call_offset = (nargs + 11) * 4; int field_offset = in_bytes(JavaThread::frame_anchor_offset()) + in_bytes(JavaFrameAnchor::last_Java_pc_offset()); - __ mov(rscratch1, InternalAddress(pc + call_offset)); + __ lea(rscratch1, InternalAddress(pc + call_offset)); __ str(rscratch1, Address(rthread, field_offset)); %} @@ -2487,9 +2487,9 @@ } else { relocInfo::relocType rtype = $src->constant_reloc(); if (rtype == relocInfo::oop_type) { - __ movoop(dst_reg, (jobject)con); + __ movoop(dst_reg, (jobject)con, /*mt_safe*/false); } else if (rtype == relocInfo::metadata_type) { - __ mov_metadata(dst_reg, (Metadata*)con); + __ mov_metadata(dst_reg, (Metadata*)con, /*mt_safe*/false); } else { assert(rtype == relocInfo::none, "unexpected reloc type"); __ lea(dst_reg, Address(con, rtype)); @@ -2536,7 +2536,7 @@ } else { relocInfo::relocType rtype = $src->constant_reloc(); assert(rtype == relocInfo::oop_type, "unexpected reloc type"); - __ set_narrow_oop(dst_reg, (jobject)con); + __ set_narrow_oop(dst_reg, (jobject)con, /*mt_safe*/false); } %} @@ -2555,7 +2555,7 @@ } else { relocInfo::relocType rtype = $src->constant_reloc(); assert(rtype == relocInfo::metadata_type, "unexpected reloc type"); - __ set_narrow_klass(dst_reg, (Klass *)con); + __ set_narrow_klass(dst_reg, (Klass *)con, /*mt_safe*/false); } %} @@ -2823,7 +2823,7 @@ int fpcnt; int rtype; getCallInfo(tf(), gpcnt, fpcnt, rtype); - __ mov(rscratch1, RuntimeAddress(entry)); + __ lea(rscratch1, RuntimeAddress(entry)); __ blrt(rscratch1, gpcnt, fpcnt, rtype); } %} diff -r c6a46cb37f85 -r df067bdbe075 src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp Mon Jun 16 07:25:03 2014 -0400 +++ b/src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 @@ -63,7 +63,7 @@ set_last_Java_frame(sp, rfp, retaddr, rscratch1); // do the call - mov(rscratch1, RuntimeAddress(entry)); + lea(rscratch1, RuntimeAddress(entry)); blrt(rscratch1, args_size + 1, 8, 1); bind(retaddr); int call_offset = offset(); @@ -553,7 +553,7 @@ Label retaddr; __ set_last_Java_frame(sp, rfp, retaddr, rscratch1); // do the call - __ mov(rscratch1, RuntimeAddress(target)); + __ lea(rscratch1, RuntimeAddress(target)); __ blrt(rscratch1, 1, 0, 1); __ bind(retaddr); OopMapSet* oop_maps = new OopMapSet(); diff -r c6a46cb37f85 -r df067bdbe075 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Mon Jun 16 07:25:03 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 @@ -137,14 +137,15 @@ offset >>= 2; Instruction_aarch64::spatch(branch, 23, 5, offset); Instruction_aarch64::patch(branch, 30, 29, offset_lo); - } else if (Instruction_aarch64::extract(insn, 31, 23) == 0b110100101) { + } else if (Instruction_aarch64::extract(insn, 31, 21) == 0b11010010100) { + u_int64_t dest = (u_int64_t)target; // Move wide constant - u_int64_t dest = (u_int64_t)target; assert(nativeInstruction_at(branch+4)->is_movk(), "wrong insns in patch"); assert(nativeInstruction_at(branch+8)->is_movk(), "wrong insns in patch"); Instruction_aarch64::patch(branch, 20, 5, dest & 0xffff); - Instruction_aarch64::patch(branch += 4, 20, 5, (dest >>= 16) & 0xffff); - Instruction_aarch64::patch(branch += 4, 20, 5, (dest >>= 16) & 0xffff); + Instruction_aarch64::patch(branch+4, 20, 5, (dest >>= 16) & 0xffff); + Instruction_aarch64::patch(branch+8, 20, 5, (dest >>= 16) & 0xffff); + assert(pd_call_destination(branch) == target, "should be"); } else if (Instruction_aarch64::extract(insn, 31, 22) == 0b1011100101 && Instruction_aarch64::extract(insn, 4, 0) == 0b11111) { // nothing to do @@ -154,6 +155,19 @@ } } +void MacroAssembler::patch_oop(address insn_addr, address o) { + unsigned insn = *(unsigned*)insn_addr; + if (Instruction_aarch64::extract(insn, 31, 21) == 0b11010010101) { + // Move narrow constant + assert(nativeInstruction_at(insn_addr+4)->is_movk(), "wrong insns in patch"); + narrowOop n = oopDesc::encode_heap_oop((oop)o); + Instruction_aarch64::patch(insn_addr, 20, 5, n >> 16); + Instruction_aarch64::patch(insn_addr+4, 20, 5, n & 0xffff); + } else { + pd_patch_instruction(insn_addr, o); + } +} + address MacroAssembler::target_addr_for_insn(address insn_addr, unsigned insn) { long offset = 0; if ((Instruction_aarch64::extract(insn, 29, 24) & 0b011011) == 0b00011000) { @@ -218,8 +232,8 @@ ShouldNotReachHere(); } } else if (Instruction_aarch64::extract(insn, 31, 23) == 0b110100101) { - // Move address constant: movz, movk, movk. See movptr(). u_int32_t *insns = (u_int32_t *)insn_addr; + // Move wide constant: movz, movk, movk. See movptr(). assert(nativeInstruction_at(insns+1)->is_movk(), "wrong insns in patch"); assert(nativeInstruction_at(insns+2)->is_movk(), "wrong insns in patch"); return address(u_int64_t(Instruction_aarch64::extract(insns[0], 20, 5)) @@ -2708,29 +2722,33 @@ decode_klass_not_null(r, r); } -// TODO -// -// these next two methods load a narrow oop or klass constant into a -// register. they currently do the dumb thing of installing 64 bits of -// unencoded constant into the register and then encoding it. -// installing the encoded 32 bit constant directly requires updating -// the relocation code so it can recognize that this is a 32 bit load -// rather than a 64 bit load. - -void MacroAssembler::set_narrow_oop(Register dst, jobject obj) { - assert (UseCompressedOops, "should only be used for compressed headers"); +void MacroAssembler::set_narrow_oop(Register dst, jobject obj, bool mt_safe) { + assert (UseCompressedOops, "should only be used for compressed oops"); assert (Universe::heap() != NULL, "java heap should be initialized"); assert (oop_recorder() != NULL, "this assembler needs an OopRecorder"); - movoop(dst, obj); - encode_heap_oop_not_null(dst); + + int oop_index = oop_recorder()->find_index(obj); + assert(Universe::heap()->is_in_reserved(JNIHandles::resolve(obj)), "should be real oop"); + + InstructionMark im(this); + RelocationHolder rspec = oop_Relocation::spec(oop_index); + code_section()->relocate(inst_mark(), rspec); + movz(dst, 0xDEAD, 16); + movk(dst, 0xBEEF); } - -void MacroAssembler::set_narrow_klass(Register dst, Klass* k) { +void MacroAssembler::set_narrow_klass(Register dst, Klass* k, bool mt_safe) { assert (UseCompressedClassPointers, "should only be used for compressed headers"); assert (oop_recorder() != NULL, "this assembler needs an OopRecorder"); - mov_metadata(dst, k); - encode_klass_not_null(dst); + int index = oop_recorder()->find_index(k); + assert(! Universe::heap()->is_in_reserved(k), "should not be an oop"); + + InstructionMark im(this); + RelocationHolder rspec = metadata_Relocation::spec(index); + code_section()->relocate(inst_mark(), rspec); + narrowKlass nk = Klass::encode_klass(k); + movz(dst, (nk >> 16), 16); + movk(dst, nk & 0xffff); } void MacroAssembler::load_heap_oop(Register dst, Address src) @@ -2750,7 +2768,7 @@ decode_heap_oop_not_null(dst); } else { ldr(dst, src); - } + } } void MacroAssembler::store_heap_oop(Address dst, Register src) { @@ -2952,7 +2970,11 @@ return Address((address)obj, rspec); } -void MacroAssembler::movoop(Register dst, jobject obj) { +// Move an oop into a register. mt_safe is true iff we are not going +// to patch this instruction while the code is being executed by +// another thread. In that case we can use move immediates rather +// than the constant pool. +void MacroAssembler::movoop(Register dst, jobject obj, bool mt_safe) { int oop_index; if (obj == NULL) { oop_index = oop_recorder()->allocate_oop_index(obj); @@ -2961,7 +2983,7 @@ assert(Universe::heap()->is_in_reserved(JNIHandles::resolve(obj)), "should be real oop"); } RelocationHolder rspec = oop_Relocation::spec(oop_index); - address const_ptr = long_constant((jlong)obj); + address const_ptr = mt_safe ? long_constant((jlong)obj) : NULL; if (! const_ptr) { mov(dst, Address((address)obj, rspec)); } else { @@ -2970,7 +2992,8 @@ } } -void MacroAssembler::mov_metadata(Register dst, Metadata* obj) { +// Move a metadata address into a register. +void MacroAssembler::mov_metadata(Register dst, Metadata* obj, bool mt_safe) { int oop_index; if (obj == NULL) { oop_index = oop_recorder()->allocate_metadata_index(obj); @@ -2978,7 +3001,7 @@ oop_index = oop_recorder()->find_index(obj); } RelocationHolder rspec = metadata_Relocation::spec(oop_index); - address const_ptr = long_constant((jlong)obj); + address const_ptr = mt_safe ? long_constant((jlong)obj) : NULL; if (! const_ptr) { mov(dst, Address((address)obj, rspec)); } else { diff -r c6a46cb37f85 -r df067bdbe075 src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Mon Jun 16 07:25:03 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Tue Jul 15 13:51:41 2014 +0100 @@ -410,6 +410,8 @@ int push(unsigned int bitset, Register stack); int pop(unsigned int bitset, Register stack); + void mov(Register dst, Address a); + public: int push(RegSet regs, Register stack) { if (regs.bits()) push(regs.bits(), stack); } int pop(RegSet regs, Register stack) { if (regs.bits()) pop(regs.bits(), stack); } @@ -442,7 +444,6 @@ mov(dst, (long)i); } - void mov(Register dst, Address a); void movptr(Register r, uintptr_t imm64); // macro instructions for accessing and updating floating point @@ -497,6 +498,8 @@ static void pd_print_patched_instruction(address branch); #endif + static void patch_oop(address insn_addr, address o); + // The following 4 methods return the offset of the appropriate move instruction // Support for fast byte/short loading with zero extension (depending on particular CPU) @@ -738,7 +741,7 @@ void encode_heap_oop_not_null(Register dst, Register src); void decode_heap_oop_not_null(Register dst, Register src); - void set_narrow_oop(Register dst, jobject obj); + void set_narrow_oop(Register dst, jobject obj, bool mt_safe = true); // currently unimplemented #if 0 void set_narrow_oop(Address dst, jobject obj); @@ -751,7 +754,7 @@ void encode_klass_not_null(Register dst, Register src); void decode_klass_not_null(Register dst, Register src); - void set_narrow_klass(Register dst, Klass* k); + void set_narrow_klass(Register dst, Klass* k, bool mt_safe = true); // currently unimplemented #if 0 void set_narrow_klass(Address dst, Klass* k); @@ -1107,7 +1110,7 @@ // Data - void mov_metadata(Register dst, Metadata* obj); + void mov_metadata(Register dst, Metadata* obj, bool mt_safe = true); Address allocate_metadata_address(Metadata* obj); Address constant_oop_address(jobject obj); // unimplemented @@ -1115,7 +1118,7 @@ void pushoop(jobject obj); #endif - void movoop(Register dst, jobject obj); + void movoop(Register dst, jobject obj, bool mt_safe = true); // sign extend as need a l to ptr sized element void movl2ptr(Register dst, Address src) { Unimplemented(); } diff -r c6a46cb37f85 -r df067bdbe075 src/cpu/aarch64/vm/relocInfo_aarch64.cpp --- a/src/cpu/aarch64/vm/relocInfo_aarch64.cpp Mon Jun 16 07:25:03 2014 -0400 +++ b/src/cpu/aarch64/vm/relocInfo_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 @@ -33,10 +33,15 @@ void Relocation::pd_set_data_value(address x, intptr_t o, bool verify_only) { - MacroAssembler::pd_patch_instruction(addr(), x); + switch(type()) { + case relocInfo::oop_type: + MacroAssembler::patch_oop(addr(), x); + break; + default: + MacroAssembler::pd_patch_instruction(addr(), x); + } } - address Relocation::pd_call_destination(address orig_addr) { if (orig_addr != NULL) { return MacroAssembler::pd_call_destination(orig_addr); diff -r c6a46cb37f85 -r df067bdbe075 src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp --- a/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Mon Jun 16 07:25:03 2014 -0400 +++ b/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 @@ -316,7 +316,7 @@ __ mov(c_rarg0, rmethod); __ mov(c_rarg1, lr); - __ mov(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, SharedRuntime::fixup_callers_callsite))); + __ lea(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, SharedRuntime::fixup_callers_callsite))); __ blrt(rscratch1, 2, 0, 0); __ pop_CPU_state(); @@ -1166,7 +1166,7 @@ } else { assert((unsigned)gpargs < 256, "eek!"); assert((unsigned)fpargs < 32, "eek!"); - __ mov(rscratch1, RuntimeAddress(dest)); + __ lea(rscratch1, RuntimeAddress(dest)); __ mov(rscratch2, (gpargs << 6) | (fpargs << 2) | type); __ blrt(rscratch1, rscratch2); // __ blrt(rscratch1, gpargs, fpargs, type); @@ -1963,9 +1963,9 @@ assert(frame::arg_reg_save_area_bytes == 0, "not expecting frame reg save area"); #endif if (!is_critical_native) { - __ mov(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, JavaThread::check_special_condition_for_native_trans))); + __ lea(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, JavaThread::check_special_condition_for_native_trans))); } else { - __ mov(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, JavaThread::check_special_condition_for_native_trans_and_transition))); + __ lea(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, JavaThread::check_special_condition_for_native_trans_and_transition))); } __ blrt(rscratch1, 1, 0, 1); // Restore any method result value @@ -2386,7 +2386,7 @@ } #endif // ASSERT __ mov(c_rarg0, rthread); - __ mov(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, Deoptimization::fetch_unroll_info))); + __ lea(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, Deoptimization::fetch_unroll_info))); __ blrt(rscratch1, 1, 0, 1); __ bind(retaddr); @@ -2516,7 +2516,7 @@ __ mov(c_rarg0, rthread); __ movw(c_rarg1, rcpool); // second arg: exec_mode - __ mov(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, Deoptimization::unpack_frames))); + __ lea(rscratch1, RuntimeAddress(CAST_FROM_FN_PTR(address, Deoptimization::unpack_frames))); __ blrt(rscratch1, 2, 0, 0); // Set an oopmap for the call site @@ -2869,7 +2869,7 @@ __ set_last_Java_frame(sp, noreg, retaddr, rscratch1); __ mov(c_rarg0, rthread); - __ mov(rscratch1, RuntimeAddress(destination)); + __ lea(rscratch1, RuntimeAddress(destination)); __ blrt(rscratch1, 1, 0, 1); __ bind(retaddr); diff -r c6a46cb37f85 -r df067bdbe075 src/cpu/aarch64/vm/templateTable_aarch64.cpp --- a/src/cpu/aarch64/vm/templateTable_aarch64.cpp Mon Jun 16 07:25:03 2014 -0400 +++ b/src/cpu/aarch64/vm/templateTable_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 @@ -2432,7 +2432,7 @@ // we take the time to call into the VM. Label L1; assert_different_registers(cache, index, r0); - __ mov(rscratch1, ExternalAddress((address)JvmtiExport::get_field_modification_count_addr())); + __ lea(rscratch1, ExternalAddress((address)JvmtiExport::get_field_modification_count_addr())); __ ldrw(r0, Address(rscratch1)); __ cbz(r0, L1); -------------- next part -------------- # HG changeset patch # User adinn # Date 1405431794 -3600 # Node ID 632fea5ccac12d83ff4fb476e10d644c81bc7c35 # Parent df067bdbe075d945fa818c5b92b3054bf845f7a2 Save intermediate state before removing C1 patching code. diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Tue Jul 15 14:43:14 2014 +0100 @@ -751,19 +751,7 @@ int MachCallDynamicJavaNode::ret_addr_offset() { - // call should be - // ldr_constant - // bl - // where ldr_constant is either - // ldr // if NearCpool - // or - // adrp // if !NearCPool - // ldr - int off = 8; - if (!NearCpool) { - off += 4; - } - return off; + return 16; // movz, movk, movk, bl } int MachCallRuntimeNode::ret_addr_offset() { @@ -2487,9 +2475,9 @@ } else { relocInfo::relocType rtype = $src->constant_reloc(); if (rtype == relocInfo::oop_type) { - __ movoop(dst_reg, (jobject)con, /*mt_safe*/false); + __ movoop(dst_reg, (jobject)con); } else if (rtype == relocInfo::metadata_type) { - __ mov_metadata(dst_reg, (Metadata*)con, /*mt_safe*/false); + __ mov_metadata(dst_reg, (Metadata*)con); } else { assert(rtype == relocInfo::none, "unexpected reloc type"); __ lea(dst_reg, Address(con, rtype)); @@ -2536,7 +2524,7 @@ } else { relocInfo::relocType rtype = $src->constant_reloc(); assert(rtype == relocInfo::oop_type, "unexpected reloc type"); - __ set_narrow_oop(dst_reg, (jobject)con, /*mt_safe*/false); + __ set_narrow_oop(dst_reg, (jobject)con); } %} @@ -2555,7 +2543,7 @@ } else { relocInfo::relocType rtype = $src->constant_reloc(); assert(rtype == relocInfo::metadata_type, "unexpected reloc type"); - __ set_narrow_klass(dst_reg, (Klass *)con, /*mt_safe*/false); + __ set_narrow_klass(dst_reg, (Klass *)con); } %} @@ -2747,8 +2735,6 @@ address mark = __ pc(); address addr = (address)$meth$$method; if (!_method) { - // TODO check this - // think we are calling generated Java here not x86 // A call to a runtime wrapper, e.g. new, new_typeArray_Java, uncommon_trap. __ bl(Address(addr, relocInfo::runtime_call_type)); } else if (_optimized_virtual) { diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Tue Jul 15 14:43:14 2014 +0100 @@ -1243,7 +1243,7 @@ f(size & 0b01, 31, 30), f(0b011, 29, 27), f(0b00, 25, 24); long offset = (adr.target() - pc()) >> 2; sf(offset, 23, 5); -#ifdef ASSERT +#if 0 Relocation* reloc = adr.rspec().reloc(); relocInfo::relocType rtype = (relocInfo::relocType) reloc->type(); assert(rtype == relocInfo::internal_word_type, diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 @@ -200,7 +200,9 @@ if (Address::offset_ok_for_immed(addr_offset, addr->scale())) return Address(base, addr_offset, Address::lsl(addr->scale())); else { - address const_addr = int_constant(addr_offset); + // This is a rather long-winded instruction sequence, but the + // offset is atomically patchable. See PatchingStub::install(). + Address const_addr = InternalAddress(int_constant(addr_offset)); __ ldr_constant(tmp, const_addr); return Address(base, tmp, Address::lsl(addr->scale())); } @@ -314,19 +316,7 @@ if (o == NULL) { __ mov(reg, zr); } else { - int oop_index = __ oop_recorder()->find_index(o); - assert(Universe::heap()->is_in_reserved(JNIHandles::resolve(o)), "should be real oop"); - RelocationHolder rspec = oop_Relocation::spec(oop_index); - address const_ptr = int_constant(jlong(o)); - __ code()->consts()->relocate(const_ptr, rspec); - __ ldr_constant(reg, const_ptr); - - if (PrintRelocations && Verbose) { - puts("jobject2reg:\n"); - printf("oop %p at %p\n", o, const_ptr); - fflush(stdout); - das((uint64_t)__ pc(), -2); - } + __ movoop(reg, o, /*immediate*/true); } } @@ -334,13 +324,16 @@ void LIR_Assembler::jobject2reg_with_patching(Register reg, CodeEmitInfo *info) { // Allocate a new index in table to hold the object once it's been patched int oop_index = __ oop_recorder()->allocate_oop_index(NULL); -// PatchingStub* patch = new PatchingStub(_masm, PatchingStub::load_mirror_id, oop_index); PatchingStub* patch = new PatchingStub(_masm, patching_id(info), oop_index); - RelocationHolder rspec = oop_Relocation::spec(oop_index); - address const_ptr = int_constant(-1); - __ code()->consts()->relocate(const_ptr, rspec); - __ ldr_constant(reg, const_ptr); + if (DeoptimizeWhenPatching) { + __ nop(); + } else { + RelocationHolder rspec = oop_Relocation::spec(oop_index); + address const_ptr = int_constant(-1); + __ code()->consts()->relocate(const_ptr, rspec); + __ ldr_constant(reg, InternalAddress(const_ptr)); + } patching_epilog(patch, lir_patch_normal, reg, info); } @@ -924,7 +917,10 @@ void LIR_Assembler::klass2reg_with_patching(Register reg, CodeEmitInfo* info) { Metadata* o = NULL; PatchingStub* patch = new PatchingStub(_masm, PatchingStub::load_klass_id); - __ mov_metadata(reg, o); + if (DeoptimizeWhenPatching) + __ nop(); + else + __ mov_metadata(reg, o); patching_epilog(patch, lir_patch_normal, reg, info); } diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/compiledIC_aarch64.cpp --- a/src/cpu/aarch64/vm/compiledIC_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/compiledIC_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 @@ -139,6 +139,7 @@ // Update stub. method_holder->set_data((intptr_t)callee()); + method_holder->flush(); jump->set_jump_destination(entry); // Update jump to call. diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 @@ -622,9 +622,10 @@ void MacroAssembler::ic_call(address entry) { RelocationHolder rh = virtual_call_Relocation::spec(pc()); - address const_ptr = long_constant((jlong)Universe::non_oop_word()); - unsigned long offset; - ldr_constant(rscratch2, const_ptr); + // address const_ptr = long_constant((jlong)Universe::non_oop_word()); + // unsigned long offset; + // ldr_constant(rscratch2, const_ptr); + movptr(rscratch2, (uintptr_t)Universe::non_oop_word()); call(Address(entry, rh)); } @@ -2722,7 +2723,7 @@ decode_klass_not_null(r, r); } -void MacroAssembler::set_narrow_oop(Register dst, jobject obj, bool mt_safe) { +void MacroAssembler::set_narrow_oop(Register dst, jobject obj) { assert (UseCompressedOops, "should only be used for compressed oops"); assert (Universe::heap() != NULL, "java heap should be initialized"); assert (oop_recorder() != NULL, "this assembler needs an OopRecorder"); @@ -2737,7 +2738,7 @@ movk(dst, 0xBEEF); } -void MacroAssembler::set_narrow_klass(Register dst, Klass* k, bool mt_safe) { +void MacroAssembler::set_narrow_klass(Register dst, Klass* k) { assert (UseCompressedClassPointers, "should only be used for compressed headers"); assert (oop_recorder() != NULL, "this assembler needs an OopRecorder"); int index = oop_recorder()->find_index(k); @@ -2970,11 +2971,11 @@ return Address((address)obj, rspec); } -// Move an oop into a register. mt_safe is true iff we are not going -// to patch this instruction while the code is being executed by -// another thread. In that case we can use move immediates rather -// than the constant pool. -void MacroAssembler::movoop(Register dst, jobject obj, bool mt_safe) { +// Move an oop into a register. immediate is true if we want +// immediate instrcutions, i.e. we are not going to patch this +// instruction while the code is being executed by another thread. In +// that case we can use move immediates rather than the constant pool. +void MacroAssembler::movoop(Register dst, jobject obj, bool immediate) { int oop_index; if (obj == NULL) { oop_index = oop_recorder()->allocate_oop_index(obj); @@ -2983,17 +2984,16 @@ assert(Universe::heap()->is_in_reserved(JNIHandles::resolve(obj)), "should be real oop"); } RelocationHolder rspec = oop_Relocation::spec(oop_index); - address const_ptr = mt_safe ? long_constant((jlong)obj) : NULL; - if (! const_ptr) { + if (! immediate) { + address dummy = address(uintptr_t(pc()) & -wordSize); // A nearby aligned address + ldr_constant(dst, Address(dummy, rspec)); + } else mov(dst, Address((address)obj, rspec)); - } else { - code()->consts()->relocate(const_ptr, rspec); - ldr_constant(dst, const_ptr); - } + } // Move a metadata address into a register. -void MacroAssembler::mov_metadata(Register dst, Metadata* obj, bool mt_safe) { +void MacroAssembler::mov_metadata(Register dst, Metadata* obj) { int oop_index; if (obj == NULL) { oop_index = oop_recorder()->allocate_metadata_index(obj); @@ -3001,13 +3001,7 @@ oop_index = oop_recorder()->find_index(obj); } RelocationHolder rspec = metadata_Relocation::spec(oop_index); - address const_ptr = mt_safe ? long_constant((jlong)obj) : NULL; - if (! const_ptr) { - mov(dst, Address((address)obj, rspec)); - } else { - code()->consts()->relocate(const_ptr, rspec); - ldr_constant(dst, const_ptr); - } + mov(dst, Address((address)obj, rspec)); } Address MacroAssembler::constant_oop_address(jobject obj) { @@ -3296,6 +3290,11 @@ void MacroAssembler::adrp(Register reg1, const Address &dest, unsigned long &byte_offset) { relocInfo::relocType rtype = dest.rspec().reloc()->type(); if (labs(pc() - dest.target()) >= (1LL << 32)) { + guarantee(rtype == relocInfo::none + || rtype == relocInfo::external_word_type + || rtype == relocInfo::poll_type + || rtype == relocInfo::poll_return_type, + "can only use a fixed address with an ADRP"); // Out of range. This doesn't happen very often, but we have to // handle it mov(reg1, dest); diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Tue Jul 15 14:43:14 2014 +0100 @@ -741,7 +741,7 @@ void encode_heap_oop_not_null(Register dst, Register src); void decode_heap_oop_not_null(Register dst, Register src); - void set_narrow_oop(Register dst, jobject obj, bool mt_safe = true); + void set_narrow_oop(Register dst, jobject obj); // currently unimplemented #if 0 void set_narrow_oop(Address dst, jobject obj); @@ -754,7 +754,7 @@ void encode_klass_not_null(Register dst, Register src); void decode_klass_not_null(Register dst, Register src); - void set_narrow_klass(Register dst, Klass* k, bool mt_safe = true); + void set_narrow_klass(Register dst, Klass* k); // currently unimplemented #if 0 void set_narrow_klass(Address dst, Klass* k); @@ -1110,7 +1110,7 @@ // Data - void mov_metadata(Register dst, Metadata* obj, bool mt_safe = true); + void mov_metadata(Register dst, Metadata* obj); Address allocate_metadata_address(Metadata* obj); Address constant_oop_address(jobject obj); // unimplemented @@ -1118,7 +1118,7 @@ void pushoop(jobject obj); #endif - void movoop(Register dst, jobject obj, bool mt_safe = true); + void movoop(Register dst, jobject obj, bool immediate = false); // sign extend as need a l to ptr sized element void movl2ptr(Register dst, Address src) { Unimplemented(); } @@ -1260,13 +1260,12 @@ Label* retaddr = NULL ); - void ldr_constant(Register dest, address const_addr) { - guarantee(const_addr, "constant pool overflow"); + void ldr_constant(Register dest, const Address &const_addr) { if (NearCpool) { - ldr(dest, const_addr, relocInfo::internal_word_type); + ldr(dest, const_addr); } else { unsigned long offset; - adrp(dest, InternalAddress(const_addr), offset); + adrp(dest, InternalAddress(const_addr.target()), offset); ldr(dest, Address(dest, offset)); } } diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/nativeInst_aarch64.cpp --- a/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 @@ -53,13 +53,6 @@ // Inserts a native call instruction at a given pc void NativeCall::insert(address code_pos, address entry) { Unimplemented(); } -// MT-safe patching of a call instruction. -// First patches first word of instruction to two jmp's that jmps to them -// selfs (spinlock). Then patches the last byte, and then atomicly replaces -// the jmp's with the first 4 byte of the new instruction. -void NativeCall::replace_mt_safe(address instr_addr, address code_buffer) { Unimplemented(); } - - void NativeMovConstReg::verify() { // make sure code pattern is actually mov reg64, imm64 instructions } @@ -83,7 +76,6 @@ } }; - void NativeMovConstReg::print() { tty->print_cr(PTR_FORMAT ": mov reg, " INTPTR_FORMAT, instruction_address(), data()); diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/nativeInst_aarch64.hpp --- a/src/cpu/aarch64/vm/nativeInst_aarch64.hpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/nativeInst_aarch64.hpp Tue Jul 15 14:43:14 2014 +0100 @@ -202,8 +202,8 @@ return call; } -// An interface for accessing/manipulating native mov reg, imm32 instructions. -// (used to manipulate inlined 32bit data dll calls, etc.) +// An interface for accessing/manipulating native mov reg, imm instructions. +// (used to manipulate inlined 64-bit data calls, etc.) class NativeMovConstReg: public NativeInstruction { public: enum Aarch64_specific_constants { @@ -227,6 +227,12 @@ intptr_t data() const; void set_data(intptr_t x); + void flush() { + if (! maybe_cpool_ref(instruction_address())) { + ICache::invalidate_range(instruction_address(), instruction_size); + } + } + void verify(); void print(); diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/relocInfo_aarch64.cpp --- a/src/cpu/aarch64/vm/relocInfo_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/relocInfo_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 @@ -35,10 +35,20 @@ void Relocation::pd_set_data_value(address x, intptr_t o, bool verify_only) { switch(type()) { case relocInfo::oop_type: - MacroAssembler::patch_oop(addr(), x); + { + oop_Relocation *reloc = (oop_Relocation *)this; + if (NativeInstruction::is_ldr_literal_at(addr())) { + address constptr = (address)code()->oop_addr_at(reloc->oop_index()); + MacroAssembler::pd_patch_instruction(addr(), constptr); + assert(*(address*)constptr == x, "error in oop relocation"); + } else{ + MacroAssembler::patch_oop(addr(), x); + } + } break; default: MacroAssembler::pd_patch_instruction(addr(), x); + break; } } diff -r df067bdbe075 -r 632fea5ccac1 src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp --- a/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 @@ -1733,7 +1733,9 @@ if (method->is_static() && !is_critical_native) { // load oop into a register - __ movoop(oop_handle_reg, JNIHandles::make_local(method->method_holder()->java_mirror())); + __ movoop(oop_handle_reg, + JNIHandles::make_local(method->method_holder()->java_mirror()), + /*immediate*/true); // Now handlize the static class mirror it's known not-null. __ str(oop_handle_reg, Address(sp, klass_offset)); diff -r df067bdbe075 -r 632fea5ccac1 src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp --- a/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp Tue Jul 15 13:51:41 2014 +0100 +++ b/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 @@ -100,7 +100,7 @@ // even in its subfields (as defined by the CPU immediate fields, // if the CPU splits constants across multiple instructions). - return (char*) -1; + return (char*) 0xffffffffffff; } void os::initialize_thread(Thread *thr) { -------------- next part -------------- # HG changeset patch # User adinn # Date 1405437601 -3600 # Node ID 11351da11922e5298def06ef484fd977bc6b3970 # Parent 632fea5ccac12d83ff4fb476e10d644c81bc7c35 Remove obsolete C1 patching code. diff -r 632fea5ccac1 -r 11351da11922 src/cpu/aarch64/vm/c1_CodeStubs_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_CodeStubs_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_CodeStubs_aarch64.cpp Tue Jul 15 16:20:01 2014 +0100 @@ -320,133 +320,7 @@ } void PatchingStub::emit_code(LIR_Assembler* ce) { - assert(NativeCall::instruction_size <= _bytes_to_copy && _bytes_to_copy <= 0xFF, "not enough room for call"); - - Label call_patch; - - // static field accesses have special semantics while the class - // initializer is being run so we emit a test which can be used to - // check that this code is being executed by the initializing - // thread. - address being_initialized_entry = __ pc(); - if (CommentedAssembly) { - __ block_comment(" patch template"); - } - - // make a copy the code which is going to be patched. - for (int i = 0; i < _bytes_to_copy; i++) { - address ptr = (address)(_pc_start + i); - int a_byte = (*ptr) & 0xFF; - __ emit_int8(a_byte); - } - - address end_of_patch = __ pc(); - int bytes_to_skip = 0; - if (_id == load_mirror_id) { - int offset = __ offset(); - if (CommentedAssembly) { - __ block_comment(" being_initialized check"); - } - assert(_obj != noreg, "must be a valid register"); - Register tmp = r0; - Register tmp2 = r19; - __ stp(tmp, tmp2, Address(__ pre(sp, -2 * wordSize))); - // Load without verification to keep code size small. We need it because - // begin_initialized_entry_offset has to fit in a byte. Also, we know it's not null. - __ ldr(tmp2, Address(_obj, java_lang_Class::klass_offset_in_bytes())); - __ ldr(tmp, Address(tmp2, InstanceKlass::init_thread_offset())); - __ cmp(rthread, tmp); - __ ldp(tmp, tmp2, Address(__ post(sp, 2 * wordSize))); - __ br(Assembler::NE, call_patch); - - // access_field patches may execute the patched code before it's - // copied back into place so we need to jump back into the main - // code of the nmethod to continue execution. - __ b(_patch_site_continuation); - - // make sure this extra code gets skipped - bytes_to_skip += __ offset() - offset; - } - if (CommentedAssembly) { - __ block_comment("patch data"); - } - // Now emit the patch record telling the runtime how to find the - // pieces of the patch. - int sizeof_patch_record = 8; - bytes_to_skip += sizeof_patch_record; - - // emit the offsets needed to find the code to patch - int being_initialized_entry_offset = __ pc() - being_initialized_entry + sizeof_patch_record; - - // If this is a field access, the offset is held in the constant - // pool rather than embedded in the instruction, so we don't copy - // any instructions: we set the value in the constant pool and - // overwrite the NativeGeneralJump. - { - Label L; - __ br(Assembler::AL, L); - __ emit_int8(0); - __ emit_int8(being_initialized_entry_offset); - if (_id == access_field_id) { - __ emit_int8(bytes_to_skip + _bytes_to_copy); - __ emit_int8(0); - } else { - __ emit_int8(bytes_to_skip); - __ emit_int8(_bytes_to_copy); - } - __ bind(L); - } - - address patch_info_pc = __ pc(); - assert(patch_info_pc - end_of_patch == bytes_to_skip, "incorrect patch info"); - - address entry = __ pc(); - NativeGeneralJump::insert_unconditional((address)_pc_start, entry); - address target = NULL; - relocInfo::relocType reloc_type = relocInfo::none; - - switch (_id) { - case access_field_id: - target = Runtime1::entry_for(Runtime1::access_field_patching_id); - reloc_type = relocInfo::section_word_type; - break; - case load_klass_id: - target = Runtime1::entry_for(Runtime1::load_klass_patching_id); - reloc_type = relocInfo::metadata_type; - break; - case load_mirror_id: - target = Runtime1::entry_for(Runtime1::load_mirror_patching_id); - reloc_type = relocInfo::oop_type; - break; - case load_appendix_id: - target = Runtime1::entry_for(Runtime1::load_appendix_patching_id); - reloc_type = relocInfo::oop_type; - break; - default: ShouldNotReachHere(); - } - - __ bind(call_patch); - - if (CommentedAssembly) { - __ block_comment("patch entry point"); - } - __ bl(RuntimeAddress(target)); - assert(_patch_info_offset == (patch_info_pc - __ pc()), "must not change"); - ce->add_call_info_here(_info); - int jmp_off = __ offset(); - __ b(_patch_site_entry); - // Add enough nops so deoptimization can overwrite the jmp above with a call - // and not destroy the world. - // FIXME: AArch64 doesn't really need this - // __ nop(); __ nop(); - // if (_id == load_klass_id - // || _id == load_mirror_id - // || _id == access_field_id - // ) { - // CodeSection* cs = __ code_section(); - // RelocIterator iter(cs, (address)_pc_start, (address)(_pc_start + 1)); - // relocInfo::change_reloc_info_for_address(&iter, (address) _pc_start, reloc_type, relocInfo::none); - // } + assert(false, "AArch64 should not use C1 runtime patching"); } diff -r 632fea5ccac1 -r 11351da11922 src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Tue Jul 15 16:20:01 2014 +0100 @@ -26,6 +26,7 @@ #include "precompiled.hpp" #include "asm/assembler.hpp" +#include "c1/c1_CodeStubs.hpp" #include "c1/c1_Compilation.hpp" #include "c1/c1_LIRAssembler.hpp" #include "c1/c1_MacroAssembler.hpp" @@ -200,10 +201,7 @@ if (Address::offset_ok_for_immed(addr_offset, addr->scale())) return Address(base, addr_offset, Address::lsl(addr->scale())); else { - // This is a rather long-winded instruction sequence, but the - // offset is atomically patchable. See PatchingStub::install(). - Address const_addr = InternalAddress(int_constant(addr_offset)); - __ ldr_constant(tmp, const_addr); + __ mov(tmp, addr_offset); return Address(base, tmp, Address::lsl(addr->scale())); } } @@ -321,20 +319,36 @@ } +void LIR_Assembler::deoptimize_trap(CodeEmitInfo *info) { + address target = NULL; + relocInfo::relocType reloc_type = relocInfo::none; + + switch (patching_id(info)) { + case PatchingStub::access_field_id: + target = Runtime1::entry_for(Runtime1::access_field_patching_id); + reloc_type = relocInfo::section_word_type; + break; + case PatchingStub::load_klass_id: + target = Runtime1::entry_for(Runtime1::load_klass_patching_id); + reloc_type = relocInfo::metadata_type; + break; + case PatchingStub::load_mirror_id: + target = Runtime1::entry_for(Runtime1::load_mirror_patching_id); + reloc_type = relocInfo::oop_type; + break; + case PatchingStub::load_appendix_id: + target = Runtime1::entry_for(Runtime1::load_appendix_patching_id); + reloc_type = relocInfo::oop_type; + break; + default: ShouldNotReachHere(); + } + + __ bl(RuntimeAddress(target)); + add_call_info_here(info); +} + void LIR_Assembler::jobject2reg_with_patching(Register reg, CodeEmitInfo *info) { - // Allocate a new index in table to hold the object once it's been patched - int oop_index = __ oop_recorder()->allocate_oop_index(NULL); - PatchingStub* patch = new PatchingStub(_masm, patching_id(info), oop_index); - - if (DeoptimizeWhenPatching) { - __ nop(); - } else { - RelocationHolder rspec = oop_Relocation::spec(oop_index); - address const_ptr = int_constant(-1); - __ code()->consts()->relocate(const_ptr, rspec); - __ ldr_constant(reg, InternalAddress(const_ptr)); - } - patching_epilog(patch, lir_patch_normal, reg, info); + deoptimize_trap(info); } @@ -801,23 +815,21 @@ PatchingStub* patch = NULL; Register compressed_src = rscratch1; + if (patch_code != lir_patch_none) { + deoptimize_trap(info); + return; + } + if (type == T_ARRAY || type == T_OBJECT) { __ verify_oop(src->as_register()); if (UseCompressedOops && !wide) { __ encode_heap_oop(compressed_src, src->as_register()); - if (patch_code != lir_patch_none) { - info->oop_map()->set_narrowoop(compressed_src->as_VMReg()); - } } else { compressed_src = src->as_register(); } } - if (patch_code != lir_patch_none) { - patch = new PatchingStub(_masm, PatchingStub::access_field_id); - } - int null_check_here = code_offset(); switch (type) { case T_FLOAT: { @@ -875,10 +887,6 @@ if (info != NULL) { add_debug_info_for_null_check(null_check_here, info); } - - if (patch_code != lir_patch_none) { - patching_epilog(patch, patch_code, to_addr->base()->as_register(), info); - } } @@ -915,13 +923,31 @@ void LIR_Assembler::klass2reg_with_patching(Register reg, CodeEmitInfo* info) { - Metadata* o = NULL; - PatchingStub* patch = new PatchingStub(_masm, PatchingStub::load_klass_id); - if (DeoptimizeWhenPatching) - __ nop(); - else - __ mov_metadata(reg, o); - patching_epilog(patch, lir_patch_normal, reg, info); + address target = NULL; + relocInfo::relocType reloc_type = relocInfo::none; + + switch (patching_id(info)) { + case PatchingStub::access_field_id: + target = Runtime1::entry_for(Runtime1::access_field_patching_id); + reloc_type = relocInfo::section_word_type; + break; + case PatchingStub::load_klass_id: + target = Runtime1::entry_for(Runtime1::load_klass_patching_id); + reloc_type = relocInfo::metadata_type; + break; + case PatchingStub::load_mirror_id: + target = Runtime1::entry_for(Runtime1::load_mirror_patching_id); + reloc_type = relocInfo::oop_type; + break; + case PatchingStub::load_appendix_id: + target = Runtime1::entry_for(Runtime1::load_appendix_patching_id); + reloc_type = relocInfo::oop_type; + break; + default: ShouldNotReachHere(); + } + + __ bl(RuntimeAddress(target)); + add_call_info_here(info); } void LIR_Assembler::stack2stack(LIR_Opr src, LIR_Opr dest, BasicType type) { @@ -944,10 +970,9 @@ __ verify_oop(addr->base()->as_pointer_register()); } - PatchingStub* patch = NULL; - if (patch_code != lir_patch_none) { - patch = new PatchingStub(_masm, PatchingStub::access_field_id); + deoptimize_trap(info); + return; } if (info != NULL) { @@ -1019,10 +1044,6 @@ ShouldNotReachHere(); } - if (patch != NULL) { - patching_epilog(patch, patch_code, addr->base()->as_register(), info); - } - if (type == T_ARRAY || type == T_OBJECT) { #ifdef _LP64 if (UseCompressedOops && !wide) { diff -r 632fea5ccac1 -r 11351da11922 src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.hpp Tue Jul 15 14:43:14 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.hpp Tue Jul 15 16:20:01 2014 +0100 @@ -64,6 +64,8 @@ void init() { tableswitch_count = 0; } + void deoptimize_trap(CodeEmitInfo *info); + public: void store_parameter(Register r, int offset_from_esp_in_words); diff -r 632fea5ccac1 -r 11351da11922 src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp Tue Jul 15 16:20:01 2014 +0100 @@ -1321,19 +1321,6 @@ #undef __ -static Klass* resolve_field_return_klass(methodHandle caller, int bci, TRAPS) { - Bytecode_field field_access(caller, bci); - // This can be static or non-static field access - Bytecodes::Code code = field_access.code(); - - // We must load class, initialize class and resolvethe field - fieldDescriptor result; // initialize class if needed - constantPoolHandle constants(THREAD, caller->constants()); - LinkResolver::resolve_field_access(result, constants, field_access.index(), Bytecodes::java_code(code), CHECK_NULL); - return result.field_holder(); -} - - // Simple helper to see if the caller of a runtime stub which // entered the VM has been deoptimized @@ -1347,260 +1334,41 @@ } JRT_ENTRY(void, Runtime1::patch_code_aarch64(JavaThread* thread, Runtime1::StubID stub_id )) +{ + RegisterMap reg_map(thread, false); + NOT_PRODUCT(_patch_code_slowcase_cnt++;) - ResourceMark rm(thread); - RegisterMap reg_map(thread, false); + // According to the ARMv8 ARM, "Concurrent modification and + // execution of instructions can lead to the resulting instruction + // performing any behavior that can be achieved by executing any + // sequence of instructions that can be executed from the same + // Exception level, except where the instruction before + // modification and the instruction after modification is a B, BL, + // NOP, BKPT, SVC, HVC, or SMC instruction." + // + // This effectively makes the games we play when patching + // impossible, so when we come across an access that needs + // patching we must deoptimize. + + if (TracePatching) { + tty->print_cr("Deoptimizing because patch is needed"); + } + frame runtime_frame = thread->last_frame(); frame caller_frame = runtime_frame.sender(®_map); - if (DeoptimizeWhenPatching) { - // According to the ARMv8 ARM, "Concurrent modification and - // execution of instructions can lead to the resulting instruction - // performing any behavior that can be achieved by executing any - // sequence of instructions that can be executed from the same - // Exception level, except where the instruction before - // modification and the instruction after modification is a B, BL, - // NOP, BKPT, SVC, HVC, or SMC instruction." - // - // This effectively makes the games we play when patching - // impossible, so when we come across an access that needs - // patching we must deoptimize. - - if (TracePatching) { - tty->print_cr("Deoptimizing because patch is needed"); - } - // It's possible the nmethod was invalidated in the last - // safepoint, but if it's still alive then make it not_entrant. - nmethod* nm = CodeCache::find_nmethod(caller_frame.pc()); - if (nm != NULL) { - nm->make_not_entrant(); - } - - Deoptimization::deoptimize_frame(thread, caller_frame.id()); - - // Return to the now deoptimized frame. - return; + // It's possible the nmethod was invalidated in the last + // safepoint, but if it's still alive then make it not_entrant. + nmethod* nm = CodeCache::find_nmethod(caller_frame.pc()); + if (nm != NULL) { + nm->make_not_entrant(); } - // last java frame on stack - vframeStream vfst(thread, true); - assert(!vfst.at_end(), "Java frame must exist"); + Deoptimization::deoptimize_frame(thread, caller_frame.id()); - methodHandle caller_method(THREAD, vfst.method()); - // Note that caller_method->code() may not be same as caller_code because of OSR's - // Note also that in the presence of inlining it is not guaranteed - // that caller_method() == caller_code->method() - - int bci = vfst.bci(); - Bytecodes::Code code = caller_method()->java_code_at(bci); - - bool deoptimize_for_volatile = false; - int patch_field_offset = -1; - KlassHandle init_klass(THREAD, NULL); // klass needed by load_klass_patching code - KlassHandle load_klass(THREAD, NULL); // klass needed by load_klass_patching code - Handle mirror(THREAD, NULL); // oop needed by load_mirror_patching code - fieldDescriptor result; // initialize class if needed - - bool load_klass_or_mirror_patch_id = - (stub_id == Runtime1::load_klass_patching_id || stub_id == Runtime1::load_mirror_patching_id); - - if (stub_id == Runtime1::access_field_patching_id) { - - Bytecode_field field_access(caller_method, bci); - fieldDescriptor result; // initialize class if needed - Bytecodes::Code code = field_access.code(); - constantPoolHandle constants(THREAD, caller_method->constants()); - LinkResolver::resolve_field_access(result, constants, field_access.index(), Bytecodes::java_code(code), CHECK); - patch_field_offset = result.offset(); - - // If we're patching a field which is volatile then at compile it - // must not have been known to be volatile, so the generated code - // isn't correct for a volatile reference. The nmethod has to be - // deoptimized so that the code can be regenerated correctly. - // This check is only needed for access_field_patching since this - // is the path for patching field offsets. load_klass is only - // used for patching references to oops which don't need special - // handling in the volatile case. - deoptimize_for_volatile = result.access_flags().is_volatile(); - } else if (load_klass_or_mirror_patch_id) { - Klass* k = NULL; - switch (code) { - case Bytecodes::_putstatic: - case Bytecodes::_getstatic: - { Klass* klass = resolve_field_return_klass(caller_method, bci, CHECK); - init_klass = KlassHandle(THREAD, klass); - mirror = Handle(THREAD, klass->java_mirror()); - } - break; - case Bytecodes::_new: - { Bytecode_new bnew(caller_method(), caller_method->bcp_from(bci)); - k = caller_method->constants()->klass_at(bnew.index(), CHECK); - } - break; - case Bytecodes::_multianewarray: - { Bytecode_multianewarray mna(caller_method(), caller_method->bcp_from(bci)); - k = caller_method->constants()->klass_at(mna.index(), CHECK); - } - break; - case Bytecodes::_instanceof: - { Bytecode_instanceof io(caller_method(), caller_method->bcp_from(bci)); - k = caller_method->constants()->klass_at(io.index(), CHECK); - } - break; - case Bytecodes::_checkcast: - { Bytecode_checkcast cc(caller_method(), caller_method->bcp_from(bci)); - k = caller_method->constants()->klass_at(cc.index(), CHECK); - } - break; - case Bytecodes::_anewarray: - { Bytecode_anewarray anew(caller_method(), caller_method->bcp_from(bci)); - Klass* ek = caller_method->constants()->klass_at(anew.index(), CHECK); - k = ek->array_klass(CHECK); - } - break; - case Bytecodes::_ldc: - case Bytecodes::_ldc_w: - { - Bytecode_loadconstant cc(caller_method, bci); - oop m = cc.resolve_constant(CHECK); - mirror = Handle(THREAD, m); - } - break; - default: Unimplemented(); - } - // convert to handle - load_klass = KlassHandle(THREAD, k); - } else { - ShouldNotReachHere(); - } - - if (deoptimize_for_volatile) { - // At compile time we assumed the field wasn't volatile but after - // loading it turns out it was volatile so we have to throw the - // compiled code out and let it be regenerated. - if (TracePatching) { - tty->print_cr("Deoptimizing for patching volatile field reference"); - } - // It's possible the nmethod was invalidated in the last - // safepoint, but if it's still alive then make it not_entrant. - nmethod* nm = CodeCache::find_nmethod(caller_frame.pc()); - if (nm != NULL) { - nm->make_not_entrant(); - } - - Deoptimization::deoptimize_frame(thread, caller_frame.id()); - - // Return to the now deoptimized frame. - } - - // If we are patching in a non-perm oop, make sure the nmethod - // is on the right list. - if (ScavengeRootsInCode && mirror.not_null() && mirror()->is_scavengable()) { - MutexLockerEx ml_code (CodeCache_lock, Mutex::_no_safepoint_check_flag); - nmethod* nm = CodeCache::find_nmethod(caller_frame.pc()); - guarantee(nm != NULL, "only nmethods can contain non-perm oops"); - if (!nm->on_scavenge_root_list()) - CodeCache::add_scavenge_root_nmethod(nm); - } - - // Now copy code back - { - MutexLockerEx ml_patch (Patching_lock, Mutex::_no_safepoint_check_flag); - // - // Deoptimization may have happened while we waited for the lock. - // In that case we don't bother to do any patching we just return - // and let the deopt happen - if (!caller_is_deopted()) { - NativeGeneralJump* jump = nativeGeneralJump_at(caller_frame.pc()); - address instr_pc = jump->jump_destination(); - NativeInstruction* ni = nativeInstruction_at(instr_pc); - if (ni->is_jump() ) { - // the jump has not been patched yet - address stub_location = caller_frame.pc() + PatchingStub::patch_info_offset(); - unsigned char* byte_count = (unsigned char*) (stub_location - 1); - unsigned char* byte_skip = (unsigned char*) (stub_location - 2); - unsigned char* being_initialized_entry_offset = (unsigned char*) (stub_location - 3); - address copy_buff = stub_location - *byte_skip - *byte_count; - address being_initialized_entry = stub_location - *being_initialized_entry_offset; - if (TracePatching) { - tty->print_cr(" Patching %s at bci %d at address 0x%x (%s)", Bytecodes::name(code), bci, - instr_pc, (stub_id == Runtime1::access_field_patching_id) ? "field" : "klass"); - nmethod* caller_code = CodeCache::find_nmethod(caller_frame.pc()); - assert(caller_code != NULL, "nmethod not found"); - - // NOTE we use pc() not original_pc() because we already know they are - // identical otherwise we'd have never entered this block of code - OopMap* map = caller_code->oop_map_for_return_address(caller_frame.pc()); - assert(map != NULL, "null check"); - map->print(); - tty->cr(); - - Disassembler::decode(copy_buff, copy_buff + *byte_count, tty); - } - - // The word in the constant pool needs fixing. - unsigned insn = *(unsigned*)copy_buff; - unsigned long *cpool_addr - = (unsigned long *)MacroAssembler::target_addr_for_insn(instr_pc, insn); - - nmethod* nm = CodeCache::find_nmethod(caller_frame.pc()); - CodeBlob *cb = CodeCache::find_blob(caller_frame.pc()); - assert(nm != NULL, "invalid nmethod_pc"); - assert(address(cpool_addr) >= nm->consts_begin() - && address(cpool_addr) < nm->consts_end(), - "constant address should be inside constant pool"); - - switch(stub_id) { - case access_field_patching_id: - *cpool_addr = patch_field_offset; break; - case load_mirror_patching_id: - *cpool_addr = cast_from_oop(mirror()); break; - case load_klass_patching_id: - *cpool_addr = (uint64_t)load_klass(); break; - default: - ShouldNotReachHere(); - } - - // Update the location in the nmethod with the proper - // metadata. When the code was generated, a NULL was stuffed - // in the metadata table and that table needs to be update to - // have the right value. On intel the value is kept - // directly in the instruction instead of in the metadata - // table, so set_data above effectively updated the value. - // - // FIXME: It's tempting to think that rather them putting OOPs - // in the cpool we could refer directly to the locations in the - // nmethod. However, we can't guarantee that an ADRP would be - // able to reach them: an ADRP can only reach within +- 4GiB of - // the PC using two instructions. While it's pretty unlikely - // that we will exceed this limit, it's not impossible. - RelocIterator mds(nm, (address)cpool_addr, (address)cpool_addr + 1); - bool found = false; - while (mds.next() && !found) { - if (mds.type() == relocInfo::oop_type) { - assert(stub_id == Runtime1::load_mirror_patching_id, "wrong stub id"); - oop_Relocation* r = mds.oop_reloc(); - oop* oop_adr = r->oop_addr(); - *oop_adr = mirror(); - r->fix_oop_relocation(); - found = true; - } else if (mds.type() == relocInfo::metadata_type) { - assert(stub_id == Runtime1::load_klass_patching_id, "wrong stub id"); - metadata_Relocation* r = mds.metadata_reloc(); - Metadata** metadata_adr = r->metadata_addr(); - *metadata_adr = load_klass(); - r->fix_metadata_relocation(); - found = true; - } - } - - // And we overwrite the jump - NativeGeneralJump::replace_mt_safe(instr_pc, copy_buff); - - } - } - } + // Return to the now deoptimized frame. +} JRT_END diff -r 632fea5ccac1 -r 11351da11922 src/cpu/aarch64/vm/globals_aarch64.hpp --- a/src/cpu/aarch64/vm/globals_aarch64.hpp Tue Jul 15 14:43:14 2014 +0100 +++ b/src/cpu/aarch64/vm/globals_aarch64.hpp Tue Jul 15 16:20:01 2014 +0100 @@ -93,9 +93,6 @@ product(bool, NearCpool, true, \ "constant pool is close to instructions") \ \ - product(bool, DeoptimizeWhenPatching, true, \ - "doptimize instead of patching instructions") \ - \ notproduct(bool, UseAcqRelForVolatileFields, false, \ "Use acquire and release insns for volatile fields") @@ -113,9 +110,6 @@ product(bool, NearCpool, true, \ "constant pool is close to instructions") \ \ - product(bool, DeoptimizeWhenPatching, true, \ - "doptimize instead of patching instructions") \ - \ notproduct(bool, UseAcqRelForVolatileFields, false, \ "Use acquire and release insns for volatile fields") \ product(bool, UseNeon, false, \ diff -r 632fea5ccac1 -r 11351da11922 src/cpu/aarch64/vm/nativeInst_aarch64.cpp --- a/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 +++ b/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Tue Jul 15 16:20:01 2014 +0100 @@ -242,8 +242,7 @@ // MT-safe patching of a long jump instruction. void NativeGeneralJump::replace_mt_safe(address instr_addr, address code_buffer) { - assert((! DeoptimizeWhenPatching) - || nativeInstruction_at(instr_addr)->is_jump_or_nop(), + assert(nativeInstruction_at(instr_addr)->is_jump_or_nop(), "Aarch64 cannot replace non-jump with jump"); uint32_t instr = *(uint32_t*)code_buffer; *(uint32_t*)instr_addr = instr; diff -r 632fea5ccac1 -r 11351da11922 src/cpu/aarch64/vm/relocInfo_aarch64.cpp --- a/src/cpu/aarch64/vm/relocInfo_aarch64.cpp Tue Jul 15 14:43:14 2014 +0100 +++ b/src/cpu/aarch64/vm/relocInfo_aarch64.cpp Tue Jul 15 16:20:01 2014 +0100 @@ -90,78 +90,3 @@ void metadata_Relocation::pd_fix_value(address x) { } - -// We have a relocation that points to a pair of instructions that -// load a constant from the constant pool. These are -// ARDP; LDR reg [reg, #ofs]. However, until the constant is resolved -// the first instruction may be a branch to a resolver stub, and the -// resolver stub contains a copy of the ADRP that will replace the -// branch instruction. -// -// So, when we relocate this code we have to adjust the offset in the -// LDR instruction and the page offset in the copy of the ADRP -// instruction that will overwrite the branch instruction. This is -// done by Runtime1::patch_code_aarch64. - -void section_word_Relocation::fix_relocation_after_move(const CodeBuffer* src, CodeBuffer* dest) { - unsigned insn1 = *(unsigned*)addr(); - if (! (Instruction_aarch64::extract(insn1, 30, 26) == 0b00101)) { - // Unconditional branch (immediate) - internal_word_Relocation::fix_relocation_after_move(src, dest); - return; - } - - address new_address = target(); -#ifdef ASSERT - // Make sure this really is a cpool address - address old_cpool_start = const_cast(src)->consts()->start(); - address old_cpool_end = const_cast(src)->consts()->end(); - address new_cpool_start = const_cast(dest)->consts()->start(); - address new_cpool_end = const_cast(dest)->consts()->end(); - address old_address = old_addr_for(target(), src, dest); - assert(new_address >= new_cpool_start - && new_address < new_cpool_end, - "should be"); - assert(old_address >= old_cpool_start - && old_address < old_cpool_end, - "should be"); -#endif - - address stub_location = pd_call_destination(addr()); - unsigned char* byte_count = (unsigned char*) (stub_location - 1); - unsigned char* byte_skip = (unsigned char*) (stub_location - 2); - address copy_buff = stub_location - *byte_skip - *byte_count; - unsigned insn3 = *(unsigned*)copy_buff; - - if (NearCpool) { - int offset = new_address - addr(); - Instruction_aarch64::spatch(copy_buff, 23, 5, offset >> 2); - } else { - // Unconditional branch (immediate) - unsigned insn2 = ((unsigned*)addr())[1]; - if (Instruction_aarch64::extract(insn2, 29, 24) == 0b111001) { - // Load/store register (unsigned immediate) - unsigned size = Instruction_aarch64::extract(insn2, 31, 30); - - // Offset of address in a 4k page - uint64_t new_offset = (uint64_t)target() & ((1<<12) - 1); - // Fix the LDR instruction's offset - Instruction_aarch64::patch(addr() + sizeof (unsigned), - 21, 10, new_offset >> size); - - assert(Instruction_aarch64::extract(insn3, 28, 24) == 0b10000 - && Instruction_aarch64::extract(insn3, 31, 31), - "instruction should be an ADRP"); - - uint64_t insn_page = (uint64_t)addr() >> 12; - uint64_t target_page = (uint64_t)target() >> 12; - int page_offset = target_page - insn_page; - int page_offset_lo = page_offset & 3; - page_offset >>= 2; - Instruction_aarch64::spatch(copy_buff, 23, 5, page_offset); - Instruction_aarch64::patch(copy_buff, 30, 29, page_offset_lo); - - // Phew. - } - } -} diff -r 632fea5ccac1 -r 11351da11922 src/share/vm/code/relocInfo.hpp --- a/src/share/vm/code/relocInfo.hpp Tue Jul 15 14:43:14 2014 +0100 +++ b/src/share/vm/code/relocInfo.hpp Tue Jul 15 16:20:01 2014 +0100 @@ -1269,10 +1269,6 @@ //void pack_data_to -- inherited void unpack_data(); -#ifdef TARGET_ARCH_aarch64 - void fix_relocation_after_move(const CodeBuffer* src, CodeBuffer* dest); -#endif - private: friend class RelocIterator; section_word_Relocation() { } -------------- next part -------------- # HG changeset patch # User adinn # Date 1405439279 -3600 # Node ID 3c01fe371d7cadcb90c1ede5598a0e320f4a4058 # Parent 11351da11922e5298def06ef484fd977bc6b3970 Improve C1 performance improvements in ic_cache checks diff -r 11351da11922 -r 3c01fe371d7c src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Tue Jul 15 16:20:01 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Tue Jul 15 16:47:59 2014 +0100 @@ -290,23 +290,25 @@ int LIR_Assembler::check_icache() { Register receiver = FrameMap::receiver_opr->as_register(); Register ic_klass = IC_Klass; - const int ic_cmp_size = 4 * 4; - const bool do_post_padding = VerifyOops || UseCompressedClassPointers; - if (!do_post_padding) { - // insert some nops so that the verified entry point is aligned on CodeEntryAlignment - while ((__ offset() + ic_cmp_size) % CodeEntryAlignment != 0) { - __ nop(); - } - } - int offset = __ offset(); - __ inline_cache_check(receiver, IC_Klass); - assert(__ offset() % CodeEntryAlignment == 0 || do_post_padding, "alignment must be correct"); - if (do_post_padding) { + int start_offset = __ offset(); + __ inline_cache_check(receiver, ic_klass); + + // if icache check fails, then jump to runtime routine + // Note: RECEIVER must still contain the receiver! + Label dont; + __ br(Assembler::EQ, dont); + __ b(RuntimeAddress(SharedRuntime::get_ic_miss_stub())); + + // We align the verified entry point unless the method body + // (including its inline cache check) will fit in a single 64-byte + // icache line. + if (! method()->is_accessor() || __ offset() - start_offset > 4 * 4) { // force alignment after the cache check. - // It's been verified to be aligned if !VerifyOops __ align(CodeEntryAlignment); } - return offset; + + __ bind(dont); + return start_offset; } diff -r 11351da11922 -r 3c01fe371d7c src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Tue Jul 15 16:20:01 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Tue Jul 15 16:47:59 2014 +0100 @@ -404,19 +404,7 @@ // explicit NULL check not needed since load from [klass_offset] causes a trap // check against inline cache assert(!MacroAssembler::needs_explicit_null_check(oopDesc::klass_offset_in_bytes()), "must add explicit null check"); - int start_offset = offset(); - - load_klass(rscratch1, receiver); - cmp(rscratch1, iCache); - - // if icache check fails, then jump to runtime routine - // Note: RECEIVER must still contain the receiver! - Label dont; - br(Assembler::EQ, dont); - b(RuntimeAddress(SharedRuntime::get_ic_miss_stub())); - bind(dont); - const int ic_cmp_size = 4 * 4; - assert(UseCompressedClassPointers || offset() - start_offset == ic_cmp_size, "check alignment in emit_method_entry"); + cmp_klass(receiver, iCache, rscratch1); } diff -r 11351da11922 -r 3c01fe371d7c src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.hpp Tue Jul 15 16:20:01 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.hpp Tue Jul 15 16:47:59 2014 +0100 @@ -102,20 +102,6 @@ int rsp_offset() const { return _rsp_offset; } void set_rsp_offset(int n) { _rsp_offset = n; } - // Note: NEVER push values directly, but only through following push_xxx functions; - // This helps us to track the rsp changes compared to the entry rsp (->_rsp_offset) - - void push_jint (jint i) { Unimplemented(); } - void push_oop (jobject o) { Unimplemented(); } - // Seems to always be in wordSize - void push_addr (Address a) { Unimplemented(); } - void push_reg (Register r) { Unimplemented(); } - void pop_reg (Register r) { Unimplemented(); } - - void dec_stack (int nof_words) { Unimplemented(); } - - void dec_stack_after_call (int nof_words) { Unimplemented(); } - void invalidate_registers(bool inv_r0, bool inv_r19, bool inv_r2, bool inv_r3, bool inv_r4, bool inv_r5) PRODUCT_RETURN; #endif // CPU_AARCH64_VM_C1_MACROASSEMBLER_AARCH64_HPP diff -r 11351da11922 -r 3c01fe371d7c src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 15 16:20:01 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 15 16:47:59 2014 +0100 @@ -1842,8 +1842,12 @@ void MacroAssembler::reinit_heapbase() { if (UseCompressedOops) { - lea(rheapbase, ExternalAddress((address)Universe::narrow_ptrs_base_addr())); - ldr(rheapbase, Address(rheapbase)); + if (Universe::is_fully_initialized()) { + mov(rheapbase, Universe::narrow_ptrs_base()); + } else { + lea(rheapbase, ExternalAddress((address)Universe::narrow_ptrs_base_addr())); + ldr(rheapbase, Address(rheapbase)); + } } } diff -r 11351da11922 -r 3c01fe371d7c src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp --- a/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Tue Jul 15 16:20:01 2014 +0100 +++ b/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Tue Jul 15 16:47:59 2014 +0100 @@ -1527,8 +1527,7 @@ assert_different_registers(ic_reg, receiver, rscratch1); __ verify_oop(receiver); - __ load_klass(rscratch1, receiver); - __ cmp(ic_reg, rscratch1); + __ cmp_klass(receiver, ic_reg, rscratch1); __ br(Assembler::EQ, hit); __ b(RuntimeAddress(SharedRuntime::get_ic_miss_stub())); -------------- next part -------------- # HG changeset patch # User adinn # Date 1405443836 -3600 # Node ID 845014e20c17f0f614081fcbff5c1cc0d77ec665 # Parent 3c01fe371d7cadcb90c1ede5598a0e320f4a4058 Fast string comparison diff -r 3c01fe371d7c -r 845014e20c17 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Tue Jul 15 16:47:59 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Tue Jul 15 18:03:56 2014 +0100 @@ -375,6 +375,15 @@ R30 ); +// Singleton class for R0 int register +reg_class int_r0_reg(R0); + +// Singleton class for R2 int register +reg_class int_r2_reg(R2); + +// Singleton class for R4 int register +reg_class int_r4_reg(R4); + // Class for all long integer registers (including RSP) reg_class any_reg( R0, R0_H, @@ -482,11 +491,21 @@ R0, R0_H ); +// Class for 64 bit register r1 +reg_class r1_reg( + R1, R1_H +); + // Class for 64 bit register r2 reg_class r2_reg( R2, R2_H ); +// Class for 64 bit register r3 +reg_class r3_reg( + R3, R3_H +); + // Class for 64 bit register r4 reg_class r4_reg( R4, R4_H @@ -3916,6 +3935,18 @@ interface(REG_INTER); %} +// Pointer 64 bit Register R1 only +operand iRegP_R1() +%{ + constraint(ALLOC_IN_RC(r1_reg)); + match(RegP); + // match(iRegP); + match(iRegPNoSp); + op_cost(0); + format %{ %} + interface(REG_INTER); +%} + // Pointer 64 bit Register R2 only operand iRegP_R2() %{ @@ -3928,6 +3959,18 @@ interface(REG_INTER); %} +// Pointer 64 bit Register R3 only +operand iRegP_R3() +%{ + constraint(ALLOC_IN_RC(r3_reg)); + match(RegP); + // match(iRegP); + match(iRegPNoSp); + op_cost(0); + format %{ %} + interface(REG_INTER); +%} + // Pointer 64 bit Register R4 only operand iRegP_R4() %{ @@ -3989,7 +4032,29 @@ // Register R0 only operand iRegI_R0() %{ - constraint(ALLOC_IN_RC(r0_reg)); + constraint(ALLOC_IN_RC(int_r0_reg)); + match(RegI); + match(iRegINoSp); + op_cost(0); + format %{ %} + interface(REG_INTER); +%} + +// Register R2 only +operand iRegI_R2() +%{ + constraint(ALLOC_IN_RC(int_r2_reg)); + match(RegI); + match(iRegINoSp); + op_cost(0); + format %{ %} + interface(REG_INTER); +%} + +// Register R4 only +operand iRegI_R4() +%{ + constraint(ALLOC_IN_RC(int_r4_reg)); match(RegI); match(iRegINoSp); op_cost(0); @@ -11211,6 +11276,21 @@ ins_pipe(pipe_class_memory); %} +instruct string_compare(iRegP_R1 str1, iRegI_R2 cnt1, iRegP_R3 str2, iRegI_R4 cnt2, + iRegI_R0 result, iRegP_R10 tmp1, rFlagsReg cr) +%{ + match(Set result (StrComp (Binary str1 cnt1) (Binary str2 cnt2))); + effect(KILL tmp1, USE_KILL str1, USE_KILL str2, USE_KILL cnt1, USE_KILL cnt2, KILL cr); + + format %{ "String Compare $str1,$cnt1,$str2,$cnt2 -> $result # KILL $tmp1" %} + ins_encode %{ + __ string_compare($str1$$Register, $str2$$Register, + $cnt1$$Register, $cnt2$$Register, $result$$Register, + $tmp1$$Register); + %} + ins_pipe(pipe_class_memory); +%} + // ============================================================================ // This name is KNOWN by the ADLC and cannot be changed. // The ADLC forces a 'TypeRawPtr::BOTTOM' output type diff -r 3c01fe371d7c -r 845014e20c17 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 15 16:47:59 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 15 18:03:56 2014 +0100 @@ -3354,3 +3354,87 @@ } } +// Compare strings. +void MacroAssembler::string_compare(Register str1, Register str2, + Register cnt1, Register cnt2, Register result, + Register tmp1) { + Label LENGTH_DIFF, DONE, SHORT_LOOP, SHORT_STRING, + NEXT_WORD, DIFFERENCE; + + BLOCK_COMMENT("string_compare {"); + + // Compute the minimum of the string lengths and save the difference. + subsw(tmp1, cnt1, cnt2); + cselw(cnt2, cnt1, cnt2, Assembler::LE); // min + + // A very short string + cmpw(cnt2, 4); + br(Assembler::LT, SHORT_STRING); + + // Check if the strings start at the same location. + cmp(str1, str2); + br(Assembler::EQ, LENGTH_DIFF); + + // Compare longwords + { + subw(cnt2, cnt2, 4); // The last longword is a special case + + // Move both string pointers to the last longword of their + // strings, negate the remaining count, and convert it to bytes. + lea(str1, Address(str1, cnt2, Address::uxtw(1))); + lea(str2, Address(str2, cnt2, Address::uxtw(1))); + sub(cnt2, zr, cnt2, LSL, 1); + + // Loop, loading longwords and comparing them into rscratch2. + bind(NEXT_WORD); + ldr(result, Address(str1, cnt2)); + ldr(cnt1, Address(str2, cnt2)); + adds(cnt2, cnt2, wordSize); + eor(rscratch2, result, cnt1); + cbnz(rscratch2, DIFFERENCE); + br(Assembler::LT, NEXT_WORD); + + // Last longword. In the case where length == 4 we compare the + // same longword twice, but that's still faster than another + // conditional branch. + + ldr(result, Address(str1)); + ldr(cnt1, Address(str2)); + eor(rscratch2, result, cnt1); + cbz(rscratch2, LENGTH_DIFF); + + // Find the first different characters in the longwords and + // compute their difference. + bind(DIFFERENCE); + rev(rscratch2, rscratch2); + clz(rscratch2, rscratch2); + andr(rscratch2, rscratch2, -16); + lsrv(result, result, rscratch2); + uxthw(result, result); + lsrv(cnt1, cnt1, rscratch2); + uxthw(cnt1, cnt1); + subw(result, result, cnt1); + b(DONE); + } + + bind(SHORT_STRING); + // Is the minimum length zero? + cbz(cnt2, LENGTH_DIFF); + + bind(SHORT_LOOP); + load_unsigned_short(result, Address(post(str1, 2))); + load_unsigned_short(cnt1, Address(post(str2, 2))); + subw(result, result, cnt1); + cbnz(result, DONE); + sub(cnt2, cnt2, 1); + cbnz(cnt2, SHORT_LOOP); + + // Strings are equal up to min length. Return the length difference. + bind(LENGTH_DIFF); + mov(result, tmp1); + + // That's it + bind(DONE); + + BLOCK_COMMENT("} string_compare"); +} diff -r 3c01fe371d7c -r 845014e20c17 src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Tue Jul 15 16:47:59 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Tue Jul 15 18:03:56 2014 +0100 @@ -1281,6 +1281,10 @@ void update_word_crc32(Register crc, Register v, Register tmp, Register table0, Register table1, Register table2, Register table3, bool upper = false); + + void string_compare(Register str1, Register str2, + Register cnt1, Register cnt2, Register result, + Register tmp1); }; // Used by aarch64.ad to control code generation -------------- next part -------------- # HG changeset patch # User aph # Date 1404389999 -3600 # Node ID 5e653c9bf2aa9baa4ed326c9be7c4233462144ea # Parent 1d342713037a081e2ca5f4f5093041d2c00018b0 Fast String.equals() diff -r 1d342713037a -r 5e653c9bf2aa src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Fri Jun 27 11:25:47 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Thu Jul 03 13:19:59 2014 +0100 @@ -11348,6 +11348,21 @@ ins_pipe(pipe_class_memory); %} +instruct string_equals(iRegP_R1 str1, iRegP_R3 str2, iRegI_R4 cnt, + iRegI_R0 result, iRegP_R10 tmp, rFlagsReg cr) +%{ + match(Set result (StrEquals (Binary str1 str2) cnt)); + effect(KILL tmp, USE_KILL str1, USE_KILL str2, USE_KILL cnt, KILL cr); + + format %{ "String Equals $str1,$str2,$cnt -> $result // KILL $tmp" %} + ins_encode %{ + __ string_equals($str1$$Register, $str2$$Register, + $cnt$$Register, $result$$Register, + $tmp$$Register); + %} + ins_pipe(pipe_class_memory); +%} + // ============================================================================ // This name is KNOWN by the ADLC and cannot be changed. // The ADLC forces a 'TypeRawPtr::BOTTOM' output type diff -r 1d342713037a -r 5e653c9bf2aa src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Fri Jun 27 11:25:47 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Thu Jul 03 13:19:59 2014 +0100 @@ -3436,3 +3436,78 @@ BLOCK_COMMENT("} string_compare"); } + + +void MacroAssembler::string_equals(Register str1, Register str2, + Register cnt, Register result, + Register tmp1) { + Label SAME_CHARS, DONE, SHORT_LOOP, SHORT_STRING, + NEXT_WORD; + + const Register tmp2 = rscratch1; + assert_different_registers(str1, str2, cnt, result, tmp1, tmp2, rscratch2); + + BLOCK_COMMENT("string_equals {"); + + // Start by assuming that the strings are not equal. + mov(result, zr); + + // A very short string + cmpw(cnt, 4); + br(Assembler::LT, SHORT_STRING); + + // Check if the strings start at the same location. + cmp(str1, str2); + br(Assembler::EQ, SAME_CHARS); + + // Compare longwords + { + subw(cnt, cnt, 4); // The last longword is a special case + + // Move both string pointers to the last longword of their + // strings, negate the remaining count, and convert it to bytes. + lea(str1, Address(str1, cnt, Address::uxtw(1))); + lea(str2, Address(str2, cnt, Address::uxtw(1))); + sub(cnt, zr, cnt, LSL, 1); + + // Loop, loading longwords and comparing them into rscratch2. + bind(NEXT_WORD); + ldr(tmp1, Address(str1, cnt)); + ldr(tmp2, Address(str2, cnt)); + adds(cnt, cnt, wordSize); + eor(rscratch2, tmp1, tmp2); + cbnz(rscratch2, DONE); + br(Assembler::LT, NEXT_WORD); + + // Last longword. In the case where length == 4 we compare the + // same longword twice, but that's still faster than another + // conditional branch. + + ldr(tmp1, Address(str1)); + ldr(tmp2, Address(str2)); + eor(rscratch2, tmp1, tmp2); + cbz(rscratch2, SAME_CHARS); + b(DONE); + } + + bind(SHORT_STRING); + // Is the length zero? + cbz(cnt, SAME_CHARS); + + bind(SHORT_LOOP); + load_unsigned_short(tmp1, Address(post(str1, 2))); + load_unsigned_short(tmp2, Address(post(str2, 2))); + subw(tmp1, tmp1, tmp2); + cbnz(tmp1, DONE); + sub(cnt, cnt, 1); + cbnz(cnt, SHORT_LOOP); + + // Strings are equal. + bind(SAME_CHARS); + mov(result, true); + + // That's it + bind(DONE); + + BLOCK_COMMENT("} string_equals"); +} diff -r 1d342713037a -r 5e653c9bf2aa src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Fri Jun 27 11:25:47 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Thu Jul 03 13:19:59 2014 +0100 @@ -1292,8 +1292,11 @@ bool upper = false); void string_compare(Register str1, Register str2, - Register cnt1, Register cnt2, Register result, - Register tmp1); + Register cnt1, Register cnt2, Register result, + Register tmp1); + void string_equals(Register str1, Register str2, + Register cnt, Register result, + Register tmp1); }; // Used by aarch64.ad to control code generation -------------- next part -------------- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1405935959 -3600 # Node ID 8d8a08c32db742701ac1ab50b59709893608e406 # Parent 2e9160c1f26da5345f288120da1b6b0842125144 Add support for a few simple intrinsics diff -r 2e9160c1f26d -r 8d8a08c32db7 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Thu Jul 03 13:19:59 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Mon Jul 21 10:45:59 2014 +0100 @@ -5938,6 +5938,61 @@ %} // ============================================================================ +// Zero Count Instructions + +instruct countLeadingZerosI(iRegI dst, iRegI src) %{ + match(Set dst (CountLeadingZerosI src)); + + ins_cost(INSN_COST); + format %{ "clzw $dst, $src" %} + ins_encode %{ + __ clzw(as_Register($dst$$reg), as_Register($src$$reg)); + %} + + ins_pipe( pipe_class_default ); +%} + +instruct countLeadingZerosL(iRegI dst, iRegL src) %{ + match(Set dst (CountLeadingZerosL src)); + + ins_cost(INSN_COST); + format %{ "clz $dst, $src" %} + ins_encode %{ + __ clz(as_Register($dst$$reg), as_Register($src$$reg)); + %} + + ins_pipe( pipe_class_default ); +%} + +instruct countTrailingZerosI(iRegI dst, iRegI src) %{ + match(Set dst (CountTrailingZerosI src)); + + ins_cost(INSN_COST * 2); + format %{ "rbitw $dst, $src\n\t" + "clzw $dst, $dst" %} + ins_encode %{ + __ rbitw(as_Register($dst$$reg), as_Register($src$$reg)); + __ clzw(as_Register($dst$$reg), as_Register($dst$$reg)); + %} + + ins_pipe( pipe_class_default ); +%} + +instruct countTrailingZerosL(iRegI dst, iRegL src) %{ + match(Set dst (CountTrailingZerosL src)); + + ins_cost(INSN_COST * 2); + format %{ "rbit $dst, $src\n\t" + "clz $dst, $dst" %} + ins_encode %{ + __ rbit(as_Register($dst$$reg), as_Register($src$$reg)); + __ clz(as_Register($dst$$reg), as_Register($dst$$reg)); + %} + + ins_pipe( pipe_class_default ); +%} + +// ============================================================================ // MemBar Instruction instruct membar_acquire() @@ -9693,6 +9748,32 @@ ins_pipe(pipe_class_default); %} +instruct sqrtD_reg(vRegD dst, vRegD src) %{ + match(Set dst (SqrtD src)); + + ins_cost(INSN_COST * 50); + format %{ "fsqrtd $dst, $src" %} + ins_encode %{ + __ fsqrtd(as_FloatRegister($dst$$reg), + as_FloatRegister($src$$reg)); + %} + + ins_pipe(pipe_class_default); +%} + +instruct sqrtF_reg(vRegF dst, vRegF src) %{ + match(Set dst (ConvD2F (SqrtD (ConvF2D src)))); + + ins_cost(INSN_COST * 50); + format %{ "fsqrts $dst, $src" %} + ins_encode %{ + __ fsqrts(as_FloatRegister($dst$$reg), + as_FloatRegister($src$$reg)); + %} + + ins_pipe(pipe_class_default); +%} + // ============================================================================ // Logical Instructions -------------- next part -------------- # HG changeset patch # User aph # Date 1404822591 14400 # Node ID 5ed1bb528b990f293f6abbef834f7c4bf0dea406 # Parent 2a489b2bb083062d3356ee6c470aaf4d2d0a481d AArch64 C2 instruct for smull diff -r 2a489b2bb083 -r 5ed1bb528b99 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Tue Jul 08 05:25:15 2014 -0400 +++ b/src/cpu/aarch64/vm/aarch64.ad Tue Jul 08 08:29:51 2014 -0400 @@ -7471,6 +7471,21 @@ ins_pipe(pipe_class_default); %} +instruct smulI(iRegLNoSp dst, iRegIorL2I src1, iRegIorL2I src2) %{ + match(Set dst (MulL (ConvI2L src1) (ConvI2L src2))); + + ins_cost(INSN_COST * 3); + format %{ "smull $dst, $src1, $src2" %} + + ins_encode %{ + __ smull(as_Register($dst$$reg), + as_Register($src1$$reg), + as_Register($src2$$reg)); + %} + + ins_pipe(pipe_class_default); +%} + // Long Multiply instruct mulL(iRegLNoSp dst, iRegL src1, iRegL src2) %{ From aph at redhat.com Mon Jul 21 10:30:13 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 21 Jul 2014 11:30:13 +0100 Subject: [aarch64-port-dev ] RFR: Add support for AES Intrinsics In-Reply-To: <1405936807.25467.10.camel@localhost.localdomain> References: <1405936807.25467.10.camel@localhost.localdomain> Message-ID: <53CCEBB5.2030707@redhat.com> On 07/21/2014 11:00 AM, Edward Nevill wrote: > OK to push? The assembler definitions desperately need refactoring. For example: + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((32 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); Can't you just define Register.next() and use it? + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } These definitions are almost identical. I'm wondering if the vector instructions should go into a separate file. Also, I intend to remove the "v_" prefixes from all of the instructions once this has been committed: there's no need for them, and it's a divergence from the standard assembly names that has no obvious purpose. Andrew. From aph at redhat.com Mon Jul 21 10:32:35 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 21 Jul 2014 11:32:35 +0100 Subject: [aarch64-port-dev ] Performance patches for aarch64 jdk7u hotspot In-Reply-To: <53CCEA02.8020202@redhat.com> References: <53CCEA02.8020202@redhat.com> Message-ID: <53CCEC43.5030005@redhat.com> On 07/21/2014 11:22 AM, Andrew Dinn wrote: > Is it ok to push? Yes, thanks very much. Andrew. From doko at ubuntu.com Mon Jul 21 10:35:10 2014 From: doko at ubuntu.com (Matthias Klose) Date: Mon, 21 Jul 2014 12:35:10 +0200 Subject: [aarch64-port-dev ] jdk8 test cases in the jdk7u archives? Message-ID: <53CCECDE.7090007@ubuntu.com> Looking at jtreg test results on aarch64 for http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/a03843f2ff15 (included in IcedTea 2.5.1), I see a lot of test failures which are not seen on x86. It looks like these tests were backported from jdk8 but don't succeed (like CRCTest.java). Is there a reference run which tests should pass, or is there an exclude lists which doesn't run the tests which are expected to fail? thanks, Matthias --------------- jtreg console summary for hotspot --------------- FAILED: compiler/7088419/CRCTest.java FAILED: compiler/8010927/Test8010927.java FAILED: compiler/8011901/Test8011901.java FAILED: compiler/8015436/Test8015436.java FAILED: compiler/codecache/CheckReservedInitialCodeCacheSizeArgOrder.java FAILED: compiler/codecache/CheckUpperLimit.java FAILED: compiler/cpuflags/RestoreMXCSR.java FAILED: compiler/inlining/DefaultAndConcreteMethodsCHA.java FAILED: compiler/inlining/InlineDefaultMethod.java FAILED: compiler/inlining/InlineDefaultMethod1.java FAILED: compiler/intrinsics/mathexact/AddExactICondTest.java FAILED: compiler/intrinsics/mathexact/AddExactIConstantTest.java FAILED: compiler/intrinsics/mathexact/AddExactILoadTest.java FAILED: compiler/intrinsics/mathexact/AddExactILoopDependentTest.java FAILED: compiler/intrinsics/mathexact/AddExactINonConstantTest.java FAILED: compiler/intrinsics/mathexact/AddExactIRepeatTest.java FAILED: compiler/intrinsics/mathexact/AddExactLConstantTest.java FAILED: compiler/intrinsics/mathexact/AddExactLNonConstantTest.java FAILED: compiler/intrinsics/mathexact/CompareTest.java FAILED: compiler/intrinsics/mathexact/DecExactITest.java FAILED: compiler/intrinsics/mathexact/DecExactLTest.java FAILED: compiler/intrinsics/mathexact/GVNTest.java FAILED: compiler/intrinsics/mathexact/IncExactITest.java FAILED: compiler/intrinsics/mathexact/IncExactLTest.java FAILED: compiler/intrinsics/mathexact/MulExactICondTest.java FAILED: compiler/intrinsics/mathexact/MulExactIConstantTest.java FAILED: compiler/intrinsics/mathexact/MulExactILoadTest.java FAILED: compiler/intrinsics/mathexact/MulExactILoopDependentTest.java FAILED: compiler/intrinsics/mathexact/MulExactINonConstantTest.java FAILED: compiler/intrinsics/mathexact/MulExactIRepeatTest.java FAILED: compiler/intrinsics/mathexact/MulExactLConstantTest.java FAILED: compiler/intrinsics/mathexact/MulExactLNonConstantTest.java FAILED: compiler/intrinsics/mathexact/NegExactIConstantTest.java FAILED: compiler/intrinsics/mathexact/NegExactILoadTest.java FAILED: compiler/intrinsics/mathexact/NegExactILoopDependentTest.java FAILED: compiler/intrinsics/mathexact/NegExactINonConstantTest.java FAILED: compiler/intrinsics/mathexact/NegExactLConstantTest.java FAILED: compiler/intrinsics/mathexact/NegExactLNonConstantTest.java FAILED: compiler/intrinsics/mathexact/NestedMathExactTest.java FAILED: compiler/intrinsics/mathexact/SplitThruPhiTest.java FAILED: compiler/intrinsics/mathexact/SubExactICondTest.java FAILED: compiler/intrinsics/mathexact/SubExactIConstantTest.java FAILED: compiler/intrinsics/mathexact/SubExactILoadTest.java FAILED: compiler/intrinsics/mathexact/SubExactILoopDependentTest.java FAILED: compiler/intrinsics/mathexact/SubExactINonConstantTest.java FAILED: compiler/intrinsics/mathexact/SubExactIRepeatTest.java FAILED: compiler/intrinsics/mathexact/SubExactLConstantTest.java FAILED: compiler/intrinsics/mathexact/SubExactLNonConstantTest.java FAILED: compiler/jsr292/methodHandleExceptions/TestAMEnotNPE.java FAILED: compiler/jsr292/ConcurrentClassLoadingTest.java FAILED: compiler/jsr292/CreatesInterfaceDotEqualsCallInfo.java FAILED: compiler/startup/SmallCodeCacheStartup.java FAILED: compiler/startup/StartupOutput.java FAILED: compiler/tiered/NonTieredLevelsTest.java FAILED: compiler/tiered/TieredLevelsTest.java FAILED: compiler/whitebox/ClearMethodStateTest.java FAILED: compiler/whitebox/DeoptimizeAllTest.java FAILED: compiler/whitebox/DeoptimizeMethodTest.java FAILED: compiler/whitebox/EnqueueMethodForCompilationTest.java FAILED: compiler/whitebox/IsMethodCompilableTest.java FAILED: compiler/whitebox/MakeMethodNotCompilableTest.java FAILED: compiler/whitebox/SetDontInlineMethodTest.java FAILED: compiler/whitebox/SetForceInlineMethodTest.java FAILED: gc/6941923/Test6941923.java FAILED: gc/arguments/TestCMSHeapSizeFlags.java FAILED: gc/arguments/TestCompressedClassFlags.java FAILED: gc/arguments/TestG1HeapSizeFlags.java FAILED: gc/arguments/TestHeapFreeRatio.java FAILED: gc/arguments/TestInitialTenuringThreshold.java FAILED: gc/arguments/TestMaxNewSize.java FAILED: gc/arguments/TestMinInitialErgonomics.java FAILED: gc/arguments/TestParallelHeapSizeFlags.java FAILED: gc/arguments/TestSerialHeapSizeFlags.java FAILED: gc/arguments/TestUnrecognizedVMOptionsHandling.java FAILED: gc/arguments/TestUseCompressedOopsErgo.java FAILED: gc/concurrentMarkSweep/CheckAllocateAndSystemGC.java FAILED: gc/concurrentMarkSweep/GuardShrinkWarning.java FAILED: gc/concurrentMarkSweep/SystemGCOnForegroundCollector.java FAILED: gc/g1/TestHumongousAllocInitialMark.java FAILED: gc/g1/TestHumongousCodeCacheRoots.java FAILED: gc/g1/TestPrintGCDetails.java FAILED: gc/g1/TestPrintRegionRememberedSetInfo.java FAILED: gc/g1/TestSummarizeRSetStats.java FAILED: gc/g1/TestSummarizeRSetStatsPerRegion.java FAILED: gc/g1/TestSummarizeRSetStatsThreads.java FAILED: gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java FAILED: gc/metaspace/TestMetaspaceMemoryPool.java FAILED: gc/metaspace/TestMetaspacePerfCounters.java FAILED: gc/metaspace/TestMetaspaceSizeFlags.java FAILED: gc/metaspace/TestPerfCountersAndMemoryPools.java FAILED: gc/parallelScavenge/AdaptiveGCBoundary.java FAILED: gc/startup_warnings/TestCMS.java FAILED: gc/startup_warnings/TestCMSForegroundFlags.java FAILED: gc/startup_warnings/TestCMSIncrementalMode.java FAILED: gc/startup_warnings/TestCMSNoIncrementalMode.java FAILED: gc/startup_warnings/TestDefaultMaxRAMFraction.java FAILED: gc/startup_warnings/TestDefNewCMS.java FAILED: gc/startup_warnings/TestG1.java FAILED: gc/startup_warnings/TestIncGC.java FAILED: gc/startup_warnings/TestParallelGC.java FAILED: gc/startup_warnings/TestParallelScavengeSerialOld.java FAILED: gc/startup_warnings/TestParNewCMS.java FAILED: gc/startup_warnings/TestParNewSerialOld.java FAILED: gc/startup_warnings/TestSerialGC.java FAILED: gc/TestG1ZeroPGCTJcmdThreadPrint.java FAILED: gc/TestObjectAlignment.java FAILED: gc/TestVerifyDuringStartup.java FAILED: runtime/8003720/Test8003720.java FAILED: runtime/8007320/ConstMethodTest.java FAILED: runtime/8026365/InvokeSpecialAnonTest.java FAILED: runtime/CDSCompressedKPtrs/CDSCompressedKPtrs.java FAILED: runtime/CDSCompressedKPtrs/CDSCompressedKPtrsError.java FAILED: runtime/ClassFile/JsrRewriting.java FAILED: runtime/ClassFile/OomWhileParsingRepeatedJsr.java FAILED: runtime/ClassUnload/KeepAliveClass.java FAILED: runtime/ClassUnload/KeepAliveClassLoader.java FAILED: runtime/ClassUnload/KeepAliveObject.java FAILED: runtime/ClassUnload/KeepAliveSoftReference.java Error: runtime/ClassUnload/UnloadTest.java FAILED: runtime/CommandLine/BooleanFlagWithInvalidValue.java FAILED: runtime/CommandLine/CompilerConfigFileWarning.java FAILED: runtime/CommandLine/ConfigFileParsing.java FAILED: runtime/CommandLine/ConfigFileWarning.java FAILED: runtime/CommandLine/FlagWithInvalidValue.java FAILED: runtime/CommandLine/NonBooleanFlagWithInvalidBooleanPrefix.java FAILED: runtime/CommandLine/UnrecognizedVMOption.java FAILED: runtime/CompressedOops/CompressedClassPointers.java FAILED: runtime/CompressedOops/CompressedKlassPointerAndOops.java FAILED: runtime/contended/Basic.java FAILED: runtime/contended/DefaultValue.java FAILED: runtime/contended/HasNonStatic.java FAILED: runtime/contended/Inheritance1.java FAILED: runtime/contended/OopMaps.java FAILED: runtime/contended/Options.java FAILED: runtime/interned/SanityTest.java FAILED: runtime/lambda-features/PublicStaticInterfaceMethodHandling.java FAILED: runtime/memory/LargePages/TestLargePagesFlags.java FAILED: runtime/memory/ReserveMemory.java FAILED: runtime/memory/RunUnitTestsConcurrently.java FAILED: runtime/memory/StressVirtualSpaceResize.java Error: runtime/Metaspace/FragmentMetaspace.java Error: runtime/Metaspace/FragmentMetaspaceSimple.java FAILED: runtime/NMT/BaselineWithParameter.java FAILED: runtime/NMT/CommandLineDetail.java FAILED: runtime/NMT/CommandLineEmptyArgument.java FAILED: runtime/NMT/CommandLineInvalidArgument.java FAILED: runtime/NMT/CommandLineSummary.java FAILED: runtime/NMT/CommandLineTurnOffNMT.java FAILED: runtime/NMT/JcmdScale.java FAILED: runtime/NMT/JcmdWithNMTDisabled.java FAILED: runtime/NMT/MallocTestType.java FAILED: runtime/NMT/PrintNMTStatistics.java FAILED: runtime/NMT/PrintNMTStatisticsWithNMTDisabled.java FAILED: runtime/NMT/ReleaseCommittedMemory.java FAILED: runtime/NMT/ShutdownTwice.java FAILED: runtime/NMT/SummaryAfterShutdown.java FAILED: runtime/NMT/SummarySanityCheck.java FAILED: runtime/NMT/ThreadedMallocTestType.java FAILED: runtime/NMT/ThreadedVirtualAllocTestType.java FAILED: runtime/NMT/VirtualAllocTestType.java Error: runtime/RedefineObject/TestRedefineObject.java FAILED: runtime/SharedArchiveFile/CdsDifferentObjectAlignment.java FAILED: runtime/SharedArchiveFile/CdsSameObjectAlignment.java FAILED: runtime/SharedArchiveFile/SharedArchiveFile.java FAILED: sanity/WBApi.java Error: sanity/WhiteBox.java FAILED: serviceability/attach/AttachWithStalePidFile.java FAILED: serviceability/sa/jmap-hprof/JMapHProfLargeHeapTest.java FAILED: serviceability/ParserTest.java Error: testlibrary/ctw/test/ClassesDirTest.java Error: testlibrary/ctw/test/ClassesListTest.java Error: testlibrary/ctw/test/JarDirTest.java Error: testlibrary/ctw/test/JarsTest.java FAILED: testlibrary_tests/AssertsTest.java FAILED: testlibrary_tests/OutputAnalyzerReportingTest.java FAILED: testlibrary_tests/OutputAnalyzerTest.java Test results: passed: 270; failed: 167; error: 9 --------------- jtreg console summary for langtools --------------- FAILED: com/sun/javadoc/testNestedGenerics/TestNestedGenerics.java FAILED: tools/javac/api/6406133/T6406133.java FAILED: tools/javac/api/6410643/T6410643.java FAILED: tools/javac/api/6411310/T6411310.java FAILED: tools/javac/api/6411333/T6411333.java FAILED: tools/javac/api/6412656/T6412656.java FAILED: tools/javac/api/6415780/T6415780.java FAILED: tools/javac/api/6418694/T6418694.java FAILED: tools/javac/api/6421111/T6421111.java FAILED: tools/javac/api/6421756/T6421756.java FAILED: tools/javac/api/6422215/T6422215.java FAILED: tools/javac/api/6422327/T6422327.java FAILED: tools/javac/api/6423003/T6423003.java FAILED: tools/javac/api/6431257/T6431257.java FAILED: tools/javac/api/6437349/T6437349.java FAILED: tools/javac/api/6437999/T6437999.java FAILED: tools/javac/api/6440333/T6440333.java FAILED: tools/javac/api/6440528/T6440528.java FAILED: tools/javac/api/6468404/T6468404.java FAILED: tools/javac/api/6731573/T6731573.java FAILED: tools/javac/api/6733837/T6733837.java FAILED: tools/javac/api/guide/Test.java FAILED: tools/javac/api/TestJavacTaskScanner.java FAILED: tools/javac/api/TestResolveError.java FAILED: tools/javac/processing/6499119/ClassProcessor.java FAILED: tools/javac/processing/model/util/elements/TestGetConstantExpression.java FAILED: tools/javac/T5090006/T5090006.java FAILED: tools/javah/6572945/T6572945.java FAILED: tools/javap/T6271787.java FAILED: tools/javap/T6622260.java FAILED: tools/javap/T7004698.java Test results: passed: 1,929; failed: 31 END jtreg-summary-hotspot From aph at redhat.com Mon Jul 21 10:40:56 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 21 Jul 2014 11:40:56 +0100 Subject: [aarch64-port-dev ] jdk8 test cases in the jdk7u archives? In-Reply-To: <53CCECDE.7090007@ubuntu.com> References: <53CCECDE.7090007@ubuntu.com> Message-ID: <53CCEE38.9050506@redhat.com> On 07/21/2014 11:35 AM, Matthias Klose wrote: > Looking at jtreg test results on aarch64 for > http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/a03843f2ff15 (included > in IcedTea 2.5.1), I see a lot of test failures which are not seen on x86. It > looks like these tests were backported from jdk8 but don't succeed (like > CRCTest.java). Is there a reference run which tests should pass, or is there an > exclude lists which doesn't run the tests which are expected to fail? Not that I know of. The current HotSpot in jdk7u is simply the HotSpot from 8, with some minor tweaks. I would appreciate any help getting these things right. Andrew. From aph at redhat.com Mon Jul 21 10:50:00 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 21 Jul 2014 11:50:00 +0100 Subject: [aarch64-port-dev ] Merge JDK9 changes to aarch64 tree Message-ID: <53CCF058.5080902@redhat.com> This is a bulk import of all JDK9 updates up to last week. I've attached the fairly minor set of AArch64-specifichanges. Andrew. # HG changeset patch # User aph # Date 1405691238 14400 # Fri Jul 18 09:47:18 2014 -0400 # Node ID c75bd2134c4a9eb22442f6339ac3a6b0fae0852e # Parent 523ddf5c9ceb32d7879cf65e15450db2540aadaa Merge JDK9 changes to aarch64 tree diff -r 523ddf5c9ceb -r c75bd2134c4a src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Thu Jul 17 14:48:28 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Fri Jul 18 09:47:18 2014 -0400 @@ -987,15 +987,16 @@ MacroAssembler _masm(&cbuf); // n.b. frame size includes space for return pc and rfp - long framesize = ((long)C->frame_slots()) << LogBytesPerInt; + const long framesize = C->frame_size_in_bytes(); assert(framesize%(2*wordSize) == 0, "must preserve 2*wordSize alignment"); // insert a nop at the start of the prolog so we can patch in a // branch if we need to invalidate the method later __ nop(); - if (C->need_stack_bang(framesize)) - __ generate_stack_overflow_check(framesize); + int bangsize = C->bang_size_in_bytes(); + if (C->need_stack_bang(bangsize) && UseStackBanging) + __ generate_stack_overflow_check(bangsize); __ build_frame(framesize); @@ -6553,6 +6554,26 @@ ins_pipe(pipe_class_memory); %} +// Manifest a CmpL result in an integer register. Very painful. +// This is the test to avoid. +// (src1 < src2) ? -1 : ((src1 > src2) ? 1 : 0) +instruct cmpL3_reg_reg(iRegINoSp dst, iRegL src1, iRegL src2, rFlagsReg flags) +%{ + match(Set dst (CmpL3 src1 src2)); + effect(KILL flags); + + ins_cost(INSN_COST * 6); + format %{ "CmpL3 $dst, $src1, $src2" %} + ins_encode %{ + __ cmp($src1$$Register, $src2$$Register); + __ movw($dst$$Register, -1); + __ cselw($dst$$Register, zr, $dst$$Register, Assembler::EQ); + __ csincw($dst$$Register, $dst$$Register, zr, Assembler::GT); + %} + + ins_pipe(pipe_class_default); +%} + // ============================================================================ // Conditional Move Instructions diff -r 523ddf5c9ceb -r c75bd2134c4a src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Fri Jul 18 09:47:18 2014 -0400 @@ -237,7 +237,7 @@ // build frame ciMethod* m = compilation()->method(); - __ build_frame(initial_frame_size_in_bytes()); + __ build_frame(initial_frame_size_in_bytes(), bang_size_in_bytes()); // OSR buffer is // @@ -557,9 +557,10 @@ assert(os::is_poll_address(polling_page), "should be"); unsigned long off; __ adrp(rscratch1, Address(polling_page, relocInfo::poll_type), off); + assert(off == 0, "must be"); add_debug_info_for_branch(info); // This isn't just debug info: // it's the oop map - __ ldrw(zr, Address(rscratch1, off)); + __ read_polling_page(rscratch1, relocInfo::poll_type); } else { poll_for_safepoint(relocInfo::poll_type, info); } @@ -659,6 +660,11 @@ } } break; + case T_ADDRESS: + { + const2reg(src, FrameMap::rscratch1_opr, lir_patch_none, NULL); + reg2stack(FrameMap::rscratch1_opr, dest, c->type(), false); + } case T_INT: case T_FLOAT: { diff -r 523ddf5c9ceb -r c75bd2134c4a src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Fri Jul 18 09:47:18 2014 -0400 @@ -415,6 +415,7 @@ // must ensure that this first instruction is a B, BL, NOP, BKPT, // SVC, HVC, or SMC. Make it a NOP. nop(); + assert(bang_size_in_bytes >= framesize, "stack bang size incorrect"); // Make sure there is enough stack space for this method's activation. // Note that we do this before doing an enter(). generate_stack_overflow_check(bang_size_in_bytes); diff -r 523ddf5c9ceb -r c75bd2134c4a src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Fri Jul 18 09:47:18 2014 -0400 @@ -3264,7 +3264,11 @@ br(Assembler::GT, loop); // Bang down shadow pages too. - // The -1 because we already subtracted 1 page. + // At this point, (tmp-0) is the last address touched, so don't + // touch it again. (It was touched as (tmp-pagesize) but then tmp + // was post-decremented.) Skip this address by starting at i=1, and + // touch a few more pages below. N.B. It is important to touch all + // the way down to and including i=StackShadowPages. for (int i = 0; i< StackShadowPages-1; i++) { // this could be any sized move but this is can be a debugging crumb // so the bigger the better. diff -r 523ddf5c9ceb -r c75bd2134c4a src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp --- a/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 +++ b/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Fri Jul 18 09:47:18 2014 -0400 @@ -2447,12 +2447,15 @@ __ ldp(rfp, lr, __ post(sp, 2 * wordSize)); // LR should now be the return address to the caller (3) - // Stack bang to make sure there's enough room for these interpreter frames. +#ifdef ASSERT + // Compilers generate code that bang the stack by as much as the + // interpreter would need. So this stack banging should never + // trigger a fault. Verify that it does not on non product builds. if (UseStackBanging) { __ ldrw(r19, Address(r5, Deoptimization::UnrollBlock::total_frame_sizes_offset_in_bytes())); __ bang_stack_size(r19, r2); } - +#endif // Load address of array of frame pcs into r2 __ ldr(r2, Address(r5, Deoptimization::UnrollBlock::frame_pcs_offset_in_bytes())); @@ -2655,13 +2658,17 @@ __ ldp(rfp, lr, __ post(sp, 2 * wordSize)); // LR should now be the return address to the caller (3) frame - // Stack bang to make sure there's enough room for these interpreter frames. +#ifdef ASSERT + // Compilers generate code that bang the stack by as much as the + // interpreter would need. So this stack banging should never + // trigger a fault. Verify that it does not on non product builds. if (UseStackBanging) { __ ldrw(r1, Address(r4, Deoptimization::UnrollBlock:: total_frame_sizes_offset_in_bytes())); __ bang_stack_size(r1, r2); } +#endif // Load address of array of frame pcs into r2 (address*) __ ldr(r2, Address(r4, diff -r 523ddf5c9ceb -r c75bd2134c4a src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp --- a/src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 +++ b/src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp Fri Jul 18 09:47:18 2014 -0400 @@ -1538,29 +1538,18 @@ return (overhead_size + method_stack + stub_code); } -void AbstractInterpreter::layout_activation(Method* method, - int tempcount, - int popframe_extra_args, - int moncount, - int caller_actual_parameters, - int callee_param_count, - int callee_locals, - frame* caller, - frame* interpreter_frame, - bool is_top_frame, - bool is_bottom_frame) { +// asm based interpreter deoptimization helpers +int AbstractInterpreter::size_activation(int max_stack, + int temps, + int extra_args, + int monitors, + int callee_params, + int callee_locals, + bool is_top_frame) { // Note: This calculation must exactly parallel the frame setup // in AbstractInterpreterGenerator::generate_method_entry. - // If interpreter_frame!=NULL, set up the method, locals, and monitors. - // The frame interpreter_frame, if not NULL, is guaranteed to be the - // right size, as determined by a previous call to this method. - // It is also guaranteed to be walkable even though it is in a skeletal state // fixed size of an interpreter frame: - int max_locals = method->max_locals() * Interpreter::stackElementWords; - int extra_locals = (method->max_locals() - method->size_of_parameters()) * - Interpreter::stackElementWords; - int overhead = frame::sender_sp_offset - frame::interpreter_frame_initial_sp_offset; // Our locals were accounted for by the caller (or last_frame_adjust @@ -1568,59 +1557,78 @@ // for the callee's params we only need to account for the extra // locals. int size = overhead + - (callee_locals - callee_param_count)*Interpreter::stackElementWords + - moncount * frame::interpreter_frame_monitor_size() + - tempcount* Interpreter::stackElementWords + popframe_extra_args; + (callee_locals - callee_params)*Interpreter::stackElementWords + + monitors * frame::interpreter_frame_monitor_size() + + temps* Interpreter::stackElementWords + extra_args; // On AArch64 we always keep the stack pointer 16-aligned, so we // must round up here. size = round_to(size, 2); - if (interpreter_frame != NULL) { + return size; +} + +void AbstractInterpreter::layout_activation(Method* method, + int tempcount, + int popframe_extra_args, + int moncount, + int caller_actual_parameters, + int callee_param_count, + int callee_locals, + frame* caller, + frame* interpreter_frame, + bool is_top_frame, + bool is_bottom_frame) { + // The frame interpreter_frame is guaranteed to be the right size, + // as determined by a previous call to the size_activation() method. + // It is also guaranteed to be walkable even though it is in a + // skeletal state + + int max_locals = method->max_locals() * Interpreter::stackElementWords; + int extra_locals = (method->max_locals() - method->size_of_parameters()) * + Interpreter::stackElementWords; + #ifdef ASSERT - assert(caller->sp() == interpreter_frame->sender_sp(), "Frame not properly walkable(2)"); + assert(caller->sp() == interpreter_frame->sender_sp(), "Frame not properly walkable"); #endif - interpreter_frame->interpreter_frame_set_method(method); - // NOTE the difference in using sender_sp and - // interpreter_frame_sender_sp interpreter_frame_sender_sp is - // the original sp of the caller (the unextended_sp) and - // sender_sp is fp+16 XXX - intptr_t* locals = interpreter_frame->sender_sp() + max_locals - 1; + interpreter_frame->interpreter_frame_set_method(method); + // NOTE the difference in using sender_sp and + // interpreter_frame_sender_sp interpreter_frame_sender_sp is + // the original sp of the caller (the unextended_sp) and + // sender_sp is fp+8/16 (32bit/64bit) XXX + intptr_t* locals = interpreter_frame->sender_sp() + max_locals - 1; #ifdef ASSERT - if (caller->is_interpreted_frame()) { - assert(locals < caller->fp() + frame::interpreter_frame_initial_sp_offset, "bad placement"); - } + if (caller->is_interpreted_frame()) { + assert(locals < caller->fp() + frame::interpreter_frame_initial_sp_offset, "bad placement"); + } #endif - interpreter_frame->interpreter_frame_set_locals(locals); - BasicObjectLock* montop = interpreter_frame->interpreter_frame_monitor_begin(); - BasicObjectLock* monbot = montop - moncount; - interpreter_frame->interpreter_frame_set_monitor_end(monbot); + interpreter_frame->interpreter_frame_set_locals(locals); + BasicObjectLock* montop = interpreter_frame->interpreter_frame_monitor_begin(); + BasicObjectLock* monbot = montop - moncount; + interpreter_frame->interpreter_frame_set_monitor_end(monbot); - // Set last_sp - intptr_t* esp = (intptr_t*) monbot - - tempcount*Interpreter::stackElementWords - - popframe_extra_args; - interpreter_frame->interpreter_frame_set_last_sp(esp); + // Set last_sp + intptr_t* esp = (intptr_t*) monbot - + tempcount*Interpreter::stackElementWords - + popframe_extra_args; + interpreter_frame->interpreter_frame_set_last_sp(esp); - // All frames but the initial (oldest) interpreter frame we fill in have - // a value for sender_sp that allows walking the stack but isn't - // truly correct. Correct the value here. - if (extra_locals != 0 && - interpreter_frame->sender_sp() == - interpreter_frame->interpreter_frame_sender_sp()) { - interpreter_frame->set_interpreter_frame_sender_sp(caller->sp() + - extra_locals); - } - *interpreter_frame->interpreter_frame_cache_addr() = - method->constants()->cache(); + // All frames but the initial (oldest) interpreter frame we fill in have + // a value for sender_sp that allows walking the stack but isn't + // truly correct. Correct the value here. + if (extra_locals != 0 && + interpreter_frame->sender_sp() == + interpreter_frame->interpreter_frame_sender_sp()) { + interpreter_frame->set_interpreter_frame_sender_sp(caller->sp() + + extra_locals); + } + *interpreter_frame->interpreter_frame_cache_addr() = + method->constants()->cache(); +} - // interpreter_frame->obj_at_put(frame::sender_sp_offset, - // (oop)interpreter_frame->addr_at(frame::sender_sp_offset)); - } -} //----------------------------------------------------------------------------- // Exceptions @@ -1678,7 +1686,7 @@ // r0: exception handler entry point // r3: preserved exception oop - // rbcp: bcp for exception handlerg + // rbcp: bcp for exception handler __ push_ptr(r3); // push exception which is now the only value on the stack __ br(r0); // jump to exception handler (may be _remove_activation_entry!) # HG changeset patch # User aph # Date 1405604908 -3600 # Thu Jul 17 14:48:28 2014 +0100 # Node ID 523ddf5c9ceb32d7879cf65e15450db2540aadaa # Parent a54c05908b9b10694a1878f59ea1285063d68749 Merge aarch64-specific changes for JDK9 diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/aarch64.ad Thu Jul 17 14:48:28 2014 +0100 @@ -1050,7 +1050,7 @@ if (do_polling() && C->is_method_compilation()) { st->print("# touch polling page\n\t"); - st->print("mov rscratch1, #0x%x\n\t", os::get_polling_page()); + st->print("mov rscratch1, #0x%lx\n\t", p2i(os::get_polling_page())); st->print("ldr zr, [rscratch1]"); } } diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/bytecodes_aarch64.cpp --- a/src/cpu/aarch64/vm/bytecodes_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/bytecodes_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -28,12 +28,3 @@ #include "interpreter/bytecodes.hpp" -void Bytecodes::pd_initialize() { - // No aarch64 specific initialization -} - - -Bytecodes::Code Bytecodes::pd_base_code_for(Code code) { - // No aarch64 specific bytecodes - return code; -} diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -354,7 +354,7 @@ // This specifies the rsp decrement needed to build the frame -int LIR_Assembler::initial_frame_size_in_bytes() { +int LIR_Assembler::initial_frame_size_in_bytes() const { // if rounding, must let FrameMap know! // The frame_map records size in slots (32bit word) diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -1089,7 +1089,7 @@ #endif CodeEmitInfo* info = state_for(x, x->state()); LIR_Opr reg = result_register_for(x->type()); - new_instance(reg, x->klass(), + new_instance(reg, x->klass(), x->is_unresolved(), FrameMap::r2_oop_opr, FrameMap::r5_oop_opr, FrameMap::r4_oop_opr, diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -97,7 +97,7 @@ #ifndef PRODUCT if (TraceFPURegisterUsage) { - tty->print("FPU regs for block %d, LIR instr %d): ", b->block_id(), id); regs.print_on(tty); tty->print_cr(""); + tty->print("FPU regs for block %d, LIR instr %d): ", b->block_id(), id); regs.print_on(tty); tty->print("\n"); } #endif } diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -409,7 +409,7 @@ } -void C1_MacroAssembler::build_frame(int framesize) { +void C1_MacroAssembler::build_frame(int framesize, int bang_size_in_bytes) { // If we have to make this method not-entrant we'll overwrite its // first instruction with a jump. For this action to be legal we // must ensure that this first instruction is a B, BL, NOP, BKPT, @@ -417,7 +417,7 @@ nop(); // Make sure there is enough stack space for this method's activation. // Note that we do this before doing an enter(). - generate_stack_overflow_check(framesize); + generate_stack_overflow_check(bang_size_in_bytes); MacroAssembler::build_frame(framesize + 2 * wordSize); if (NotifySimulator) { notify(Assembler::method_entry); diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.hpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.hpp Thu Jul 17 14:48:28 2014 +0100 @@ -27,6 +27,8 @@ #ifndef CPU_AARCH64_VM_C1_MACROASSEMBLER_AARCH64_HPP #define CPU_AARCH64_VM_C1_MACROASSEMBLER_AARCH64_HPP +using MacroAssembler::build_frame; + // C1_MacroAssembler contains high-level macros for C1 private: diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/compiledIC_aarch64.cpp --- a/src/cpu/aarch64/vm/compiledIC_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/compiledIC_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -47,34 +47,6 @@ return is_icholder_entry(call->destination()); } -//----------------------------------------------------------------------------- -// High-level access to an inline cache. Guaranteed to be MT-safe. - -CompiledIC::CompiledIC(nmethod* nm, NativeCall* call) - : _ic_call(call) -{ - address ic_call = call->instruction_address(); - - assert(ic_call != NULL, "ic_call address must be set"); - assert(nm != NULL, "must pass nmethod"); - assert(nm->contains(ic_call), "must be in nmethod"); - - // Search for the ic_call at the given address. - RelocIterator iter(nm, ic_call, ic_call+1); - bool ret = iter.next(); - assert(ret == true, "relocInfo must exist at this address"); - assert(iter.addr() == ic_call, "must find ic_call"); - if (iter.type() == relocInfo::virtual_call_type) { - virtual_call_Relocation* r = iter.virtual_call_reloc(); - _is_optimized = false; - _value = nativeMovConstReg_at(r->cached_value()); - } else { - assert(iter.type() == relocInfo::opt_virtual_call_type, "must be a virtual call"); - _is_optimized = true; - _value = NULL; - } -} - // ---------------------------------------------------------------------------- #define __ _masm. @@ -124,7 +96,7 @@ if (TraceICs) { ResourceMark rm; tty->print_cr("CompiledStaticCall@" INTPTR_FORMAT ": set_to_interpreted %s", - instruction_address(), + p2i(instruction_address()), callee->name_and_sig_as_C_string()); } diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/frame_aarch64.cpp --- a/src/cpu/aarch64/vm/frame_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/frame_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -270,7 +270,7 @@ address* pc_addr = &(((address*) sp())[-1]); if (TracePcPatching) { tty->print_cr("patch_pc at address " INTPTR_FORMAT " [" INTPTR_FORMAT " -> " INTPTR_FORMAT "]", - pc_addr, *pc_addr, pc); + p2i(pc_addr), p2i(*pc_addr), p2i(pc)); } // Either the return address is the original one or we are going to // patch in the same address that's already there. diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/interp_masm_aarch64.cpp --- a/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -142,7 +142,7 @@ if (index_size == sizeof(u2)) { load_unsigned_short(index, Address(rbcp, bcp_offset)); } else if (index_size == sizeof(u4)) { - assert(EnableInvokeDynamic, "giant index used only for JSR 292"); + // assert(EnableInvokeDynamic, "giant index used only for JSR 292"); ldrw(index, Address(rbcp, bcp_offset)); // Check if the secondary index definition is still ~x, otherwise // we have to change the following assembler code to calculate the diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/nativeInst_aarch64.cpp --- a/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -78,7 +78,7 @@ void NativeMovConstReg::print() { tty->print_cr(PTR_FORMAT ": mov reg, " INTPTR_FORMAT, - instruction_address(), data()); + p2i(instruction_address()), data()); } //------------------------------------------------------------------- diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp --- a/src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -199,8 +199,7 @@ // Restore machine SP __ ldr(rscratch1, Address(rmethod, Method::const_offset())); __ ldrh(rscratch1, Address(rscratch1, ConstMethod::max_stack_offset())); - __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() - + (EnableInvokeDynamic ? 2 : 0)); + __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() + 2); __ ldr(rscratch2, Address(rfp, frame::interpreter_frame_initial_sp_offset * wordSize)); __ sub(rscratch1, rscratch2, rscratch1, ext::uxtw, 3); @@ -243,8 +242,7 @@ // Calculate stack limit __ ldr(rscratch1, Address(rmethod, Method::const_offset())); __ ldrh(rscratch1, Address(rscratch1, ConstMethod::max_stack_offset())); - __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() - + (EnableInvokeDynamic ? 2 : 0)); + __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() + 2); __ ldr(rscratch2, Address(rfp, frame::interpreter_frame_initial_sp_offset * wordSize)); __ sub(rscratch1, rscratch2, rscratch1, ext::uxtx, 3); @@ -648,8 +646,7 @@ if (! native_call) { __ ldr(rscratch1, Address(rmethod, Method::const_offset())); __ ldrh(rscratch1, Address(rscratch1, ConstMethod::max_stack_offset())); - __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() - + (EnableInvokeDynamic ? 2 : 0)); + __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() + 2); __ sub(rscratch1, sp, rscratch1, ext::uxtw, 3); __ andr(sp, rscratch1, -16); } @@ -1541,7 +1538,7 @@ return (overhead_size + method_stack + stub_code); } -int AbstractInterpreter::layout_activation(Method* method, +void AbstractInterpreter::layout_activation(Method* method, int tempcount, int popframe_extra_args, int moncount, @@ -1581,10 +1578,6 @@ if (interpreter_frame != NULL) { #ifdef ASSERT - if (!EnableInvokeDynamic) - // @@@ FIXME: Should we correct interpreter_frame_sender_sp in the calling sequences? - // Probably, since deoptimization doesn't work yet. - assert(caller->unextended_sp() == interpreter_frame->interpreter_frame_sender_sp(), "Frame not properly walkable"); assert(caller->sp() == interpreter_frame->sender_sp(), "Frame not properly walkable(2)"); #endif @@ -1627,7 +1620,6 @@ // interpreter_frame->obj_at_put(frame::sender_sp_offset, // (oop)interpreter_frame->addr_at(frame::sender_sp_offset)); } - return size; } //----------------------------------------------------------------------------- @@ -1678,8 +1670,7 @@ // Calculate stack limit __ ldr(rscratch1, Address(rmethod, Method::const_offset())); __ ldrh(rscratch1, Address(rscratch1, ConstMethod::max_stack_offset())); - __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() - + (EnableInvokeDynamic ? 2 : 0) + 2); + __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() + 4); __ ldr(rscratch2, Address(rfp, frame::interpreter_frame_initial_sp_offset * wordSize)); __ sub(rscratch1, rscratch2, rscratch1, ext::uxtx, 3); @@ -1687,7 +1678,7 @@ // r0: exception handler entry point // r3: preserved exception oop - // rbcp: bcp for exception handler + // rbcp: bcp for exception handlerg __ push_ptr(r3); // push exception which is now the only value on the stack __ br(r0); // jump to exception handler (may be _remove_activation_entry!) @@ -1788,7 +1779,7 @@ assert(JavaThread::popframe_inactive == 0, "fix popframe_inactive"); #if INCLUDE_JVMTI - if (EnableInvokeDynamic) { + { Label L_done; __ ldrb(rscratch1, Address(rbcp, 0)); @@ -1811,8 +1802,7 @@ // Restore machine SP __ ldr(rscratch1, Address(rmethod, Method::const_offset())); __ ldrh(rscratch1, Address(rscratch1, ConstMethod::max_stack_offset())); - __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() - + (EnableInvokeDynamic ? 2 : 0)); + __ add(rscratch1, rscratch1, frame::interpreter_frame_monitor_size() + 4); __ ldr(rscratch2, Address(rfp, frame::interpreter_frame_initial_sp_offset * wordSize)); __ sub(rscratch1, rscratch2, rscratch1, ext::uxtw, 3); diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/templateTable_aarch64.cpp --- a/src/cpu/aarch64/vm/templateTable_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/templateTable_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -3152,12 +3152,6 @@ transition(vtos, vtos); assert(byte_no == f1_byte, "use this argument"); - if (!EnableInvokeDynamic) { - // rewriter does not generate this bytecode - __ should_not_reach_here(); - return; - } - prepare_invoke(byte_no, rmethod, r0, r2); __ verify_method_ptr(r2); __ verify_oop(r2); @@ -3177,17 +3171,6 @@ transition(vtos, vtos); assert(byte_no == f1_byte, "use this argument"); - if (!EnableInvokeDynamic) { - // We should not encounter this bytecode if !EnableInvokeDynamic. - // The verifier will stop it. However, if we get past the verifier, - // this will stop the thread in a reasonable way, without crashing the JVM. - __ call_VM(noreg, CAST_FROM_FN_PTR(address, - InterpreterRuntime::throw_IncompatibleClassChangeError)); - // the call_VM checks for exception, so we should never return here. - __ should_not_reach_here(); - return; - } - prepare_invoke(byte_no, rmethod, r0); // r0: CallSite object (from cpool->resolved_references[]) diff -r a54c05908b9b -r 523ddf5c9ceb src/cpu/aarch64/vm/vtableStubs_aarch64.cpp --- a/src/cpu/aarch64/vm/vtableStubs_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/cpu/aarch64/vm/vtableStubs_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -104,7 +104,7 @@ if (PrintMiscellaneous && (WizardMode || Verbose)) { tty->print_cr("vtable #%d at "PTR_FORMAT"[%d] left over: %d", - vtable_index, s->entry_point(), + vtable_index, p2i(s->entry_point()), (int)(s->code_end() - s->entry_point()), (int)(s->code_end() - __ pc())); } @@ -185,7 +185,7 @@ if (PrintMiscellaneous && (WizardMode || Verbose)) { tty->print_cr("itable #%d at "PTR_FORMAT"[%d] left over: %d", - itable_index, s->entry_point(), + itable_index, p2i(s->entry_point()), (int)(s->code_end() - s->entry_point()), (int)(s->code_end() - __ pc())); } diff -r a54c05908b9b -r 523ddf5c9ceb src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp --- a/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp Thu Jul 17 13:16:17 2014 +0100 +++ b/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp Thu Jul 17 14:48:28 2014 +0100 @@ -621,12 +621,12 @@ st->cr(); #else for (int r = 0; r < 31; r++) - st->print_cr( "R%d=" INTPTR_FORMAT, r, uc->uc_mcontext.regs[r]); + st->print_cr( "R%d=" INTPTR_FORMAT, r, (size_t)uc->uc_mcontext.regs[r]); #endif st->cr(); intptr_t *sp = (intptr_t *)os::Linux::ucontext_get_sp(uc); - st->print_cr("Top of Stack: (sp=" PTR_FORMAT ")", sp); + st->print_cr("Top of Stack: (sp=" PTR_FORMAT ")", p2i(sp)); print_hex_dump(st, (address)sp, (address)(sp + 8*sizeof(intptr_t)), sizeof(intptr_t)); st->cr(); @@ -634,7 +634,7 @@ // point to garbage if entry point in an nmethod is corrupted. Leave // this at the end, and hope for the best. address pc = os::Linux::ucontext_get_pc(uc); - st->print_cr("Instructions: (pc=" PTR_FORMAT ")", pc); + st->print_cr("Instructions: (pc=" PTR_FORMAT ")", p2i(pc)); print_hex_dump(st, pc - 32, pc + 32, sizeof(char)); } @@ -671,7 +671,7 @@ st->print("R15="); print_location(st, uc->uc_mcontext.gregs[REG_R15]); #else for (int r = 0; r < 31; r++) - st->print_cr( "R%d=" INTPTR_FORMAT, r, uc->uc_mcontext.regs[r]); + st->print_cr( "R%d=" INTPTR_FORMAT, r, (uintptr_t)uc->uc_mcontext.regs[r]); #endif st->cr(); } From aph at redhat.com Mon Jul 21 11:05:28 2014 From: aph at redhat.com (aph at redhat.com) Date: Mon, 21 Jul 2014 11:05:28 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/corba: 18 new changesets Message-ID: <201407211105.s6LB5Ssw002329@aojmv0008> Changeset: e212cdcc8c11 Author: katleman Date: 2014-05-01 12:49 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/e212cdcc8c11 Added tag jdk9-b11 for changeset 77ea0a250358 ! .hgtags Changeset: 088eec4c36f4 Author: katleman Date: 2014-05-08 01:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/088eec4c36f4 Added tag jdk9-b12 for changeset e212cdcc8c11 ! .hgtags Changeset: a8950b108a74 Author: katleman Date: 2014-05-15 10:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/a8950b108a74 Added tag jdk9-b13 for changeset 088eec4c36f4 ! .hgtags Changeset: 48a86f89eeb3 Author: coffeys Date: 2014-05-13 20:59 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/48a86f89eeb3 8042906: Remove use of reflection in ORB Reviewed-by: alanb, chegar, dfuchs, psandoz ! src/share/classes/com/sun/corba/se/spi/orb/ORB.java Changeset: a2b82f863ba9 Author: lana Date: 2014-05-15 10:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/a2b82f863ba9 Merge Changeset: e54022d0dd92 Author: katleman Date: 2014-05-22 12:53 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/e54022d0dd92 Added tag jdk9-b14 for changeset a2b82f863ba9 ! .hgtags Changeset: 422ef9d29d84 Author: katleman Date: 2014-05-29 22:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/422ef9d29d84 Added tag jdk9-b15 for changeset e54022d0dd92 ! .hgtags Changeset: 4c75c2ca7cf3 Author: katleman Date: 2014-06-04 20:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/4c75c2ca7cf3 Added tag jdk9-b16 for changeset 422ef9d29d84 ! .hgtags Changeset: 77565aaaa2bb Author: katleman Date: 2014-06-12 10:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/77565aaaa2bb Added tag jdk9-b17 for changeset 4c75c2ca7cf3 ! .hgtags Changeset: eecc1b6adc7e Author: katleman Date: 2014-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/eecc1b6adc7e Added tag jdk9-b18 for changeset 77565aaaa2bb ! .hgtags Changeset: 87f36eecb166 Author: katleman Date: 2014-06-19 11:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/87f36eecb166 Added tag jdk9-b19 for changeset eecc1b6adc7e ! .hgtags Changeset: 3615a4e7f054 Author: katleman Date: 2014-06-26 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/3615a4e7f054 Added tag jdk9-b20 for changeset 87f36eecb166 ! .hgtags Changeset: 9ba6baac74aa Author: katleman Date: 2014-07-03 11:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/9ba6baac74aa Added tag jdk9-b21 for changeset 3615a4e7f054 ! .hgtags Changeset: 0060505fb71a Author: coffeys Date: 2014-07-01 15:17 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/0060505fb71a 7095856: OutputStreamHook doesn't handle null values Reviewed-by: lancea, msheppar ! src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java Changeset: 834a77cddeea Author: lana Date: 2014-07-01 14:29 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/834a77cddeea Merge Changeset: ddc07abf4307 Author: lana Date: 2014-07-09 10:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/ddc07abf4307 Merge Changeset: 57735d66face Author: katleman Date: 2014-07-10 12:12 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/57735d66face Added tag jdk9-b22 for changeset ddc07abf4307 ! .hgtags Changeset: 8a44142bb7fc Author: katleman Date: 2014-07-17 09:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/corba/rev/8a44142bb7fc Added tag jdk9-b23 for changeset 57735d66face ! .hgtags From aph at redhat.com Mon Jul 21 11:06:01 2014 From: aph at redhat.com (aph at redhat.com) Date: Mon, 21 Jul 2014 11:06:01 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9: 76 new changesets Message-ID: <201407211106.s6LB61W8002484@aojmv0008> Changeset: 9d88779ac71e Author: dholmes Date: 2014-04-21 20:17 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/9d88779ac71e 8041141: JDK9 emb build failure on PPC platform Reviewed-by: tbell ! common/autoconf/flags.m4 ! common/autoconf/generated-configure.sh Changeset: 79a52c1cc5b6 Author: erikj Date: 2014-04-22 14:14 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/79a52c1cc5b6 8030794: Update configure to require jdk8 as boot Reviewed-by: chegar, tbell ! common/autoconf/boot-jdk.m4 ! common/autoconf/generated-configure.sh Changeset: 9262dcba562f Author: alundblad Date: 2014-04-22 16:39 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/9262dcba562f 8037085: The sjavac exclude option should accept valid directory identifiers Summary: Option handling code rewritten. Exclusion / inclusion patterns changed from package to directories. Reviewed-by: jfranck, erikj, ihse ! make/common/JavaCompilation.gmk Changeset: 8a591d2443ca Author: mduigou Date: 2014-04-22 12:55 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/8a591d2443ca 8041267: Add filtering capability to CacheFind Reviewed-by: erikj ! make/common/MakeBase.gmk Changeset: 4c5bc7c74606 Author: mduigou Date: 2014-04-22 12:56 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/4c5bc7c74606 8007327: Emit MEMORY_SIZE into spec.gmk Reviewed-by: erikj ! common/autoconf/build-performance.m4 ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in Changeset: 7fd97a76401c Author: erikj Date: 2014-04-23 14:23 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/7fd97a76401c 8041487: Fix proper dependencies for correct incremental build of javadocs Reviewed-by: tbell ! make/Javadoc.gmk Changeset: e45c81cd2d02 Author: erikj Date: 2014-04-24 10:21 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/e45c81cd2d02 8041593: Update README-builds.html to refer to jdk9 Reviewed-by: tbell, iris ! README-builds.html Changeset: c180ee7fa9f6 Author: lana Date: 2014-04-24 16:02 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/c180ee7fa9f6 Merge Changeset: ab55a18a95e1 Author: mduigou Date: 2014-04-11 10:31 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/ab55a18a95e1 8041151: More concurrent hgforest Reviewed-by: chegar, erikj, sla ! common/bin/hgforest.sh Changeset: 1fd60d6e197e Author: katleman Date: 2014-05-01 12:49 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/1fd60d6e197e Added tag jdk9-b11 for changeset ab55a18a95e1 ! .hgtags Changeset: de3a6b2a6904 Author: erikj Date: 2014-04-30 10:36 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/de3a6b2a6904 8041265: jdk/bin/rmic -iiop failed on macosx-x86_64 with "Class sun.rmi.rmic.iiop.BatchEnvironmen not found" Reviewed-by: tbell, msheppar ! make/common/JavaCompilation.gmk Changeset: 183052721803 Author: erikj Date: 2014-04-30 14:45 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/183052721803 8042213: Freetype detection fails on Solaris sparcv9 when using devkit Reviewed-by: tbell ! common/autoconf/generated-configure.sh ! common/autoconf/libraries.m4 Changeset: 59f6350295f9 Author: lana Date: 2014-05-01 14:19 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/59f6350295f9 Merge Changeset: c06426b116fb Author: katleman Date: 2014-05-08 01:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/c06426b116fb Added tag jdk9-b12 for changeset 59f6350295f9 ! .hgtags Changeset: ccbabea88c1c Author: erikj Date: 2014-05-06 11:43 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/ccbabea88c1c 8042348: Copyright link in Javadoc page for Java SE 8 Reviewed-by: tbell, iris ! make/Javadoc.gmk Changeset: d6f66566d8b3 Author: mduigou Date: 2014-05-06 13:24 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/d6f66566d8b3 8042417: hgforest: allow local clone of extra repos Reviewed-by: chegar, erikj ! common/bin/hgforest.sh Changeset: 5800456add07 Author: lana Date: 2014-05-08 15:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/5800456add07 Merge Changeset: aa3bad45444a Author: katleman Date: 2014-05-15 10:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/aa3bad45444a Added tag jdk9-b13 for changeset 5800456add07 ! .hgtags Changeset: 87acde3de1cc Author: coffeys Date: 2014-05-13 10:20 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/87acde3de1cc 8042932: Bump up the -source version for JDK 9 builds Reviewed-by: chegar, erikj, thurka ! common/autoconf/boot-jdk.m4 ! common/autoconf/generated-configure.sh Changeset: b84fc0b1efc2 Author: mduigou Date: 2014-05-13 08:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/b84fc0b1efc2 8042810: hgforest: some shells run read in sub-shell and can't use fifo Reviewed-by: chegar, erikj ! common/bin/hgforest.sh Changeset: 4b3b50207ae3 Author: mduigou Date: 2014-05-14 16:45 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/4b3b50207ae3 8043182: hgforest.sh: syntax error on line 329 Reviewed-by: darcy ! common/bin/hgforest.sh Changeset: 4e3aa9723e99 Author: lana Date: 2014-05-15 10:40 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/4e3aa9723e99 Merge Changeset: 824ca17eb07a Author: katleman Date: 2014-05-22 12:53 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/824ca17eb07a Added tag jdk9-b14 for changeset 4e3aa9723e99 ! .hgtags Changeset: bad356c6b417 Author: erikj Date: 2014-05-20 12:54 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/bad356c6b417 8043127: Convert JPRT_ARCHIVE_BUNDLE to unix style paths Reviewed-by: tbell ! make/Jprt.gmk Changeset: 62cf732b4959 Author: lana Date: 2014-05-22 14:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/62cf732b4959 Merge Changeset: 6676325a167c Author: omajid Date: 2014-04-29 15:44 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/6676325a167c 8042159: Allow using a system-installed lcms2 Reviewed-by: andrew, ihse, prr ! common/autoconf/generated-configure.sh ! common/autoconf/libraries.m4 ! common/autoconf/spec.gmk.in Changeset: e5bcac256cc3 Author: ngthomas Date: 2014-04-29 14:40 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/e5bcac256cc3 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in Changeset: 1612c1abd8f0 Author: prr Date: 2014-05-05 12:48 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/1612c1abd8f0 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/libraries.m4 Changeset: b7267b3d951e Author: prr Date: 2014-05-12 09:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/b7267b3d951e Merge Changeset: 72f16d882fe2 Author: prr Date: 2014-05-23 09:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/72f16d882fe2 Merge ! common/autoconf/generated-configure.sh Changeset: dfe1d289175a Author: omajid Date: 2014-05-26 17:22 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/dfe1d289175a 8043975: Update README for jdk9 Reviewed-by: tbell ! README Changeset: 2be489f272fc Author: mikael Date: 2014-05-12 06:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/2be489f272fc 8042804: Support invoking Hotspot tests from top level Reviewed-by: sla, erikj ! test/Makefile Changeset: 5ab47eab785e Author: amurillo Date: 2014-05-16 07:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/5ab47eab785e Merge Changeset: 65071635132d Author: jcoomes Date: 2014-05-23 10:48 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/65071635132d Merge Changeset: b114474fb25a Author: jcoomes Date: 2014-05-27 12:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/b114474fb25a Merge Changeset: cf22a728521f Author: katleman Date: 2014-05-29 22:31 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/cf22a728521f Added tag jdk9-b15 for changeset b114474fb25a ! .hgtags Changeset: 0a0330b1a4ce Author: katleman Date: 2014-06-04 20:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/0a0330b1a4ce Added tag jdk9-b16 for changeset cf22a728521f ! .hgtags Changeset: 7d27dbb50d95 Author: mduigou Date: 2014-06-04 10:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/7d27dbb50d95 8044733: common/autoconf/configure script doesn't properly detect missing tools Reviewed-by: erikj, mikael ! common/autoconf/configure Changeset: 24152ee0ee1a Author: lana Date: 2014-06-05 19:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/24152ee0ee1a Merge Changeset: 5ade4d887667 Author: katleman Date: 2014-06-12 10:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/5ade4d887667 Added tag jdk9-b17 for changeset 24152ee0ee1a ! .hgtags Changeset: ac90e5f3535b Author: tbell Date: 2014-06-12 18:08 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/ac90e5f3535b 8046474: Source changes needed to build JDK 9 with new platforms and compilers on Solaris and Linux Reviewed-by: erikj, dholmes ! make/jprt.properties Changeset: 65abab59f783 Author: tbell Date: 2014-06-12 18:42 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/65abab59f783 Merge Changeset: 75a08df650eb Author: katleman Date: 2014-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/75a08df650eb Added tag jdk9-b18 for changeset 65abab59f783 ! .hgtags Changeset: 4a9a610f5dae Author: katleman Date: 2014-06-19 11:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/4a9a610f5dae Added tag jdk9-b19 for changeset 75a08df650eb ! .hgtags Changeset: 77ee6827e0b2 Author: mduigou Date: 2014-06-12 16:33 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/77ee6827e0b2 8032045: Enable compiler and linker safety switches for debug builds Summary: Enable GCC linker protections, runtime bounds checks and stack protection. Reviewed-by: ihse, dholmes ! common/autoconf/flags.m4 ! common/autoconf/generated-configure.sh ! common/autoconf/toolchain.m4 Changeset: ee2c182bef63 Author: amurillo Date: 2014-06-13 12:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/ee2c182bef63 Merge Changeset: c6f075a7268f Author: lana Date: 2014-06-18 10:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/c6f075a7268f Merge Changeset: ee4fd72b2ec3 Author: lana Date: 2014-06-20 10:14 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/ee4fd72b2ec3 Merge Changeset: 9052803f4d01 Author: katleman Date: 2014-06-26 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/9052803f4d01 Added tag jdk9-b20 for changeset ee4fd72b2ec3 ! .hgtags Changeset: 18bb9f8ecc3d Author: katleman Date: 2014-07-03 11:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/18bb9f8ecc3d Added tag jdk9-b21 for changeset 9052803f4d01 ! .hgtags Changeset: 26ba036c46fc Author: ddehaven Date: 2014-06-18 12:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/26ba036c46fc 8043340: [macosx] Fix hard-wired paths to JavaVM.framework Summary: Build system tweaks to allow building with Xcode 5 and on OS X 10.9 and later Reviewed-by: erikj, henryjen, dholmes ! common/autoconf/basics.m4 ! common/autoconf/flags.m4 ! common/autoconf/generated-configure.sh ! common/autoconf/libraries.m4 ! common/autoconf/spec.gmk.in ! common/autoconf/toolchain.m4 Changeset: bfd9a3e1aeb5 Author: omajid Date: 2014-05-23 11:04 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/bfd9a3e1aeb5 8043805: Allow using a system-installed libjpeg Reviewed-by: andrew, anthony, prr ! common/autoconf/generated-configure.sh ! common/autoconf/libraries.m4 Changeset: b5c952c0e7f3 Author: prr Date: 2014-05-23 11:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/b5c952c0e7f3 Merge ! common/autoconf/generated-configure.sh Changeset: 0ab952a8de37 Author: prr Date: 2014-05-27 13:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/0ab952a8de37 Merge Changeset: 1ec6463d0499 Author: prr Date: 2014-06-09 11:58 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/1ec6463d0499 Merge Changeset: fd8ea978b212 Author: prr Date: 2014-06-18 13:12 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/fd8ea978b212 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/libraries.m4 Changeset: 3bcbe7c40419 Author: mikael Date: 2014-06-23 14:08 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/3bcbe7c40419 8047763: Recognize sparc64 as a sparc platform Reviewed-by: dholmes ! common/autoconf/generated-configure.sh ! common/autoconf/platform.m4 Changeset: e533bd64ec46 Author: mduigou Date: 2014-06-24 15:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/e533bd64ec46 8047925: Add mercurial version checks to get_source.sh Reviewed-by: tbell, mikael ! get_source.sh Changeset: 9f96a36ef77c Author: mikael Date: 2014-06-24 20:29 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/9f96a36ef77c 8047740: Add hotspot testset to jprt.properties Reviewed-by: dholmes ! make/jprt.properties Changeset: 0f035780f5a9 Author: darcy Date: 2014-06-30 14:27 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/0f035780f5a9 8048302: Update bug reporting URL in make/Javadoc.gmk 8048321: Enable doclint warnings in build of docs from langtools Reviewed-by: tbell ! make/Javadoc.gmk Changeset: d969251d13e7 Author: joehw Date: 2014-06-30 18:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/d969251d13e7 8023276: Java SE should include the full DOM API from JAXP Reviewed-by: lancea, mchung, alanb ! make/common/CORE_PKGS.gmk Changeset: bf2d8564e626 Author: mchung Date: 2014-06-20 13:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/bf2d8564e626 8044063: Remove com.sun.java.browser.* from jdk repo Reviewed-by: darcy, alanb ! make/Javadoc.gmk ! make/common/NON_CORE_PKGS.gmk Changeset: 8c1383256b09 Author: prr Date: 2014-07-01 10:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/8c1383256b09 Merge ! make/Javadoc.gmk Changeset: 326cc39c5ac4 Author: lana Date: 2014-07-01 14:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/326cc39c5ac4 Merge Changeset: 8e4bdab4c362 Author: lana Date: 2014-07-09 10:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/8e4bdab4c362 Merge Changeset: 1e48339d1a40 Author: katleman Date: 2014-07-10 12:12 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/1e48339d1a40 Added tag jdk9-b22 for changeset 8e4bdab4c362 ! .hgtags Changeset: 37655cf40046 Author: mikael Date: 2014-07-03 10:23 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/37655cf40046 8047154: Testset all fails because of missing jdk_beansX test groups Reviewed-by: alanb, dholmes ! make/jprt.properties Changeset: db6f64d068e3 Author: mduigou Date: 2014-07-08 11:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/db6f64d068e3 8048184: handle mercurial dev build version string Reviewed-by: dfuchs Contributed-by: mike.duigou at oracle.com, dpointo8 at linux.vnet.ibm.com, daniel.fuchs at oracle.com ! get_source.sh Changeset: 7b8b81ff3b31 Author: mikael Date: 2014-06-18 12:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/7b8b81ff3b31 8046471: Use OPENJDK_TARGET_CPU_ARCH instead of legacy value for hotspot ARCH Reviewed-by: erikj, dholmes ! common/autoconf/hotspot-spec.gmk.in Changeset: 293e6d3d8e8e Author: dcubed Date: 2014-06-20 17:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/293e6d3d8e8e Merge Changeset: c8d2966312d8 Author: amurillo Date: 2014-06-26 23:10 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/c8d2966312d8 Merge Changeset: a844a4b6f097 Author: amurillo Date: 2014-07-03 13:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/a844a4b6f097 Merge Changeset: 218351298ca9 Author: amurillo Date: 2014-07-08 12:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/218351298ca9 Merge Changeset: 88567461a2cd Author: lana Date: 2014-07-10 12:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/88567461a2cd Merge Changeset: e1df63ad8709 Author: aph Date: 2014-07-17 13:21 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/e1df63ad8709 Merge from JDK9 ! common/autoconf/flags.m4 ! common/autoconf/generated-configure.sh ! common/autoconf/platform.m4 Changeset: dfb46632ce1d Author: aph Date: 2014-07-17 15:02 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/rev/dfb46632ce1d Regenerate ! common/autoconf/generated-configure.sh From adinn at redhat.com Mon Jul 21 11:06:18 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Mon, 21 Jul 2014 11:06:18 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/hotspot: 12 new changesets Message-ID: <201407211106.s6LB6II9002560@aojmv0008> Changeset: 8a6e776a1fa0 Author: adinn Date: 2014-07-14 15:41 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/8a6e776a1fa0 Performance improvement and ease of use changes pulled from upstream These are some of the changes originally introduced in upstream jdk8 as extra edits sneaked into change set 7168 whose main purpose was to fix AArch64 after the merge from upstream Oracle jdk8u20-b16. Other bug fix changes also sneaked into that same change set have already been included in previous patch to jdk7. ! agent/src/os/linux/LinuxDebuggerLocal.c ! make/linux/makefiles/buildtree.make ! make/linux/makefiles/compiler1.make ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/bytecodeInterpreter_aarch64.hpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp ! src/cpu/aarch64/vm/frame_aarch64.inline.hpp ! src/cpu/aarch64/vm/interp_masm_aarch64.cpp ! src/cpu/aarch64/vm/jniFastGetField_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/share/vm/c1/c1_Runtime1.cpp Changeset: 24be6ca5903a Author: Edward Nevill edward.nevill at linaro.org Date: 2014-06-12 11:28 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/24be6ca5903a Add support for Neon implementation of CRC32 ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/globals_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/stubRoutines_aarch64.cpp Changeset: 94760abf7a1b Author: Edward Nevill edward.nevill at linaro.org Date: 2014-06-16 21:20 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/94760abf7a1b Add support for builtin crc32 instructions ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/globals_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/vm_version_aarch64.cpp Changeset: c6a46cb37f85 Author: aph Date: 2014-06-16 07:25 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/c6a46cb37f85 All address constants are 48 bits in size. ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/assembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.hpp Changeset: df067bdbe075 Author: adinn Date: 2014-07-15 13:51 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/df067bdbe075 Use 2- and 3-instruction immediate form of movoop and mov_metadata in C2-generated code. Fix patching code to handle 2- and 3-word forms. Use lea (rather than mov) in mov(reg, Address) form. ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/relocInfo_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/aarch64/vm/templateTable_aarch64.cpp Changeset: 632fea5ccac1 Author: adinn Date: 2014-07-15 14:43 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/632fea5ccac1 Save intermediate state before removing C1 patching code. ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/compiledIC_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.hpp ! src/cpu/aarch64/vm/relocInfo_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp Changeset: 11351da11922 Author: adinn Date: 2014-07-15 16:20 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/11351da11922 Remove obsolete C1 patching code. ! src/cpu/aarch64/vm/c1_CodeStubs_aarch64.cpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.hpp ! src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp ! src/cpu/aarch64/vm/globals_aarch64.hpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/relocInfo_aarch64.cpp ! src/share/vm/code/relocInfo.hpp Changeset: 3c01fe371d7c Author: adinn Date: 2014-07-15 16:47 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/3c01fe371d7c Improve C1 performance improvements in ic_cache checks ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Changeset: 845014e20c17 Author: adinn Date: 2014-07-15 18:03 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/845014e20c17 Fast string comparison ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Changeset: 2e9160c1f26d Author: aph Date: 2014-07-03 13:19 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/2e9160c1f26d Fast String.equals() ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Changeset: 8d8a08c32db7 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-21 10:45 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/8d8a08c32db7 Add support for a few simple intrinsics ! src/cpu/aarch64/vm/aarch64.ad Changeset: 3a1207542eed Author: aph Date: 2014-07-08 08:29 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/3a1207542eed AArch64 C2 instruct for smull ! src/cpu/aarch64/vm/aarch64.ad From aph at redhat.com Mon Jul 21 11:07:36 2014 From: aph at redhat.com (aph at redhat.com) Date: Mon, 21 Jul 2014 11:07:36 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/hotspot: 402 new changesets Message-ID: <201407211107.s6LB7eqd002779@aojmv0008> Changeset: 53c2400d387e Author: dsamersoff Date: 2014-04-09 06:09 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/53c2400d387e 8037279: runtime/6929067/Test6929067.sh crashes on 32bit linux Summary: The test compile launcher with TESTJAVA but attempt to load vm from COMPILEJAVA Reviewed-by: sla, sspitsyn ! test/runtime/6929067/Test6929067.sh Changeset: 02577a0ee207 Author: dsamersoff Date: 2014-04-09 07:08 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/02577a0ee207 8029139: [TESTBUG] runtime/InitialThreadOverflow/testme.sh fails with exit code 127 Summary: The test launcher compiles against TESTJAVA but LD_LIBRARY_PATH set to COMPILE java. Reviewed-by: sla, sspitsyn + test/runtime/InitialThreadOverflow/invoke.c - test/runtime/InitialThreadOverflow/invoke.cxx ! test/runtime/InitialThreadOverflow/testme.sh Changeset: e70d4803d1d0 Author: dsamersoff Date: 2014-04-09 15:01 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e70d4803d1d0 Merge - test/runtime/InitialThreadOverflow/invoke.cxx Changeset: 97f1be406727 Author: dholmes Date: 2014-04-10 21:36 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/97f1be406727 8039891: Remove ppcsflt builds from JPRT Reviewed-by: sla, hseigel, coleenp ! make/jprt.properties Changeset: f90fa339f80a Author: coleenp Date: 2014-04-11 20:02 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f90fa339f80a 8039904: dtrace/hotspot/Monitors/Monitors001 fails with "assert(s > 0) failed: Bad size calculated" Summary: Dtrace monitoring uses size before mirror size is set. Reviewed-by: kamg, hseigel ! src/share/vm/gc_interface/collectedHeap.hpp ! src/share/vm/gc_interface/collectedHeap.inline.hpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp Changeset: 08879ee1a4b6 Author: allwin Date: 2014-04-14 10:43 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/08879ee1a4b6 Merge ! src/share/vm/runtime/sharedRuntime.cpp Changeset: 3f9cfa1f9f0f Author: dsimms Date: 2014-04-14 11:23 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3f9cfa1f9f0f 8039947: Dtrace return probe name for jni_SetStaticBooleanField named incorrectly Reviewed-by: sla, dholmes, gtriantafill ! src/share/vm/prims/jni.cpp Changeset: 8196842abf5c Author: lfoltan Date: 2014-04-14 10:13 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8196842abf5c 8038076: constraint on multianewarray instruction is not checked since class version 50. Summary: No VerifiyError generated if multianewarray bytecode's array type descriptor was 1 dimension smaller than dimensions specified. Reviewed-by: hseigel, ctornqvi, coleenp, kamg ! src/share/vm/classfile/verificationType.hpp + test/runtime/verifier/TestMultiANewArray.java Changeset: e04d3232b9c9 Author: lfoltan Date: 2014-04-14 14:27 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e04d3232b9c9 8033150: invokestatic: IncompatibleClassChangeError trying to invoke static method from a parent in presence of conflicting defaults. Summary: A static method should be preferred during method resolution over an overpass, search the current class as well as its superclasses. Reviewed-by: acorn, coleenp, kamg ! src/share/vm/classfile/defaultMethods.cpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/oops/arrayKlass.cpp ! src/share/vm/oops/arrayKlass.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/klassVtable.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/nativeLookup.cpp Changeset: 1d512208fb48 Author: ctornqvi Date: 2014-04-15 19:03 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1d512208fb48 8035173: [TESTBUG] runtime/threads/CancellableThreadTest fails with OOM on windows-i586 Summary: Test ported to jtreg, thread pairs decreased from 1024 to 128 to avoid OOM on 32 bit Windows Reviewed-by: sla, dsimms + test/runtime/Thread/CancellableThreadTest.java Changeset: b9d45b765b60 Author: anoll Date: 2014-04-10 09:26 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b9d45b765b60 8036898: assert(t != NULL) failed: must set before get Summary: Ignore nodes without a type when checking for speculative types in Compile::remove_speculative_types(...). Reviewed-by: kvn, roland Contributed-by: Tobias Hartmann ! src/share/vm/opto/compile.cpp Changeset: b722c15be816 Author: roland Date: 2014-04-10 11:38 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b722c15be816 8005079: fix LogCompilation for incremental inlining Summary: report late inlining as part of the rest of the inlining output Reviewed-by: twisti, kvn ! src/share/tools/LogCompilation/src/com/sun/hotspot/tools/compiler/CallSite.java ! src/share/tools/LogCompilation/src/com/sun/hotspot/tools/compiler/LogParser.java ! src/share/tools/LogCompilation/src/com/sun/hotspot/tools/compiler/Method.java ! src/share/vm/asm/codeBuffer.cpp ! src/share/vm/ci/ciKlass.cpp ! src/share/vm/ci/ciKlass.hpp ! src/share/vm/ci/ciSymbol.cpp ! src/share/vm/ci/ciSymbol.hpp ! src/share/vm/compiler/compileLog.cpp ! src/share/vm/compiler/compileLog.hpp ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/callGenerator.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/utilities/xmlstream.cpp Changeset: ccb19a3a704a Author: iignatyev Date: 2014-04-11 00:34 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ccb19a3a704a 8038953: Add sanity tests for BMI1 and LZCNT instructions Reviewed-by: kvn, iignatyev Contributed-by: anton.ivanov at oracle.com ! test/TEST.groups + test/compiler/intrinsics/bmi/verifycode/AddnTestI.java + test/compiler/intrinsics/bmi/verifycode/AddnTestL.java + test/compiler/intrinsics/bmi/verifycode/BlsiTestI.java + test/compiler/intrinsics/bmi/verifycode/BlsiTestL.java + test/compiler/intrinsics/bmi/verifycode/BlsmskTestI.java + test/compiler/intrinsics/bmi/verifycode/BlsmskTestL.java + test/compiler/intrinsics/bmi/verifycode/BlsrTestI.java + test/compiler/intrinsics/bmi/verifycode/BlsrTestL.java + test/compiler/intrinsics/bmi/verifycode/BmiIntrinsicBase.java + test/compiler/intrinsics/bmi/verifycode/LZcntTestI.java + test/compiler/intrinsics/bmi/verifycode/LZcntTestL.java + test/compiler/intrinsics/bmi/verifycode/TZcntTestI.java + test/compiler/intrinsics/bmi/verifycode/TZcntTestL.java ! test/testlibrary/com/oracle/java/testlibrary/Utils.java Changeset: 0f44d1eb81f5 Author: iignatyev Date: 2014-04-11 00:34 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0f44d1eb81f5 8039497: Testlibrary should be updated to provide information about all VM types as well as access to Unsafe Reviewed-by: kvn, iignatyev Contributed-by: filipp.zhinkin at oracle.com ! test/testlibrary/com/oracle/java/testlibrary/Platform.java ! test/testlibrary/com/oracle/java/testlibrary/Utils.java Changeset: 1a5ba18a35c8 Author: iignatyev Date: 2014-04-11 00:35 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1a5ba18a35c8 8039499: Add all common classes used by tests on RTM support to testlibrary Reviewed-by: kvn, iignatyev Contributed-by: filipp.zhinkin at oracle.com + test/compiler/testlibrary/rtm/AbortProvoker.java + test/compiler/testlibrary/rtm/AbortType.java + test/compiler/testlibrary/rtm/BufferOverflowProvoker.java + test/compiler/testlibrary/rtm/BusyLock.java + test/compiler/testlibrary/rtm/CompilableTest.java + test/compiler/testlibrary/rtm/MemoryConflictProvoker.java + test/compiler/testlibrary/rtm/NestedAbortProvoker.java + test/compiler/testlibrary/rtm/RTMLockingStatistics.java + test/compiler/testlibrary/rtm/RTMTestBase.java + test/compiler/testlibrary/rtm/XAbortProvoker.java + test/compiler/testlibrary/rtm/predicate/SupportedCPU.java + test/compiler/testlibrary/rtm/predicate/SupportedVM.java ! test/testlibrary/com/oracle/java/testlibrary/cli/CPUSpecificCommandLineOptionTest.java ! test/testlibrary/com/oracle/java/testlibrary/cli/CommandLineOptionTest.java + test/testlibrary/com/oracle/java/testlibrary/cli/predicate/AndPredicate.java + test/testlibrary/com/oracle/java/testlibrary/cli/predicate/CPUSpecificPredicate.java + test/testlibrary/com/oracle/java/testlibrary/cli/predicate/NotPredicate.java + test/testlibrary/com/oracle/java/testlibrary/cli/predicate/OrPredicate.java Changeset: 3c9c3ba62dfd Author: iignatyev Date: 2014-04-11 00:35 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3c9c3ba62dfd 8037860: Add tests to cover Intel RTM instructions support Reviewed-by: kvn, iignatyev Contributed-by: filipp.zhinkin at oracle.com + test/compiler/rtm/locking/TestRTMAbortRatio.java + test/compiler/rtm/locking/TestRTMAbortThreshold.java + test/compiler/rtm/locking/TestRTMAfterNonRTMDeopt.java + test/compiler/rtm/locking/TestRTMDeoptOnHighAbortRatio.java + test/compiler/rtm/locking/TestRTMDeoptOnLowAbortRatio.java + test/compiler/rtm/locking/TestRTMLockingCalculationDelay.java + test/compiler/rtm/locking/TestRTMLockingThreshold.java + test/compiler/rtm/locking/TestRTMRetryCount.java + test/compiler/rtm/locking/TestRTMSpinLoopCount.java + test/compiler/rtm/locking/TestRTMTotalCountIncrRate.java + test/compiler/rtm/locking/TestUseRTMAfterLockInflation.java + test/compiler/rtm/locking/TestUseRTMDeopt.java + test/compiler/rtm/locking/TestUseRTMForInflatedLocks.java + test/compiler/rtm/locking/TestUseRTMForStackLocks.java + test/compiler/rtm/locking/TestUseRTMXendForLockBusy.java + test/compiler/rtm/method_options/TestNoRTMLockElidingOption.java + test/compiler/rtm/method_options/TestUseRTMLockElidingOption.java + test/compiler/rtm/print/TestPrintPreciseRTMLockingStatistics.java Changeset: aabca16ccbca Author: iignatyev Date: 2014-04-11 00:35 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/aabca16ccbca 8039496: Add sanity tests on RTM-related command line options Reviewed-by: kvn, iignatyev Contributed-by: filipp.zhinkin at oracle.com + test/compiler/rtm/cli/RTMGenericCommandLineOptionTest.java + test/compiler/rtm/cli/RTMLockingAwareTest.java + test/compiler/rtm/cli/TestPrintPreciseRTMLockingStatisticsBase.java + test/compiler/rtm/cli/TestPrintPreciseRTMLockingStatisticsOptionOnSupportedConfig.java + test/compiler/rtm/cli/TestPrintPreciseRTMLockingStatisticsOptionOnUnsupportedConfig.java + test/compiler/rtm/cli/TestRTMAbortRatioOptionOnSupportedConfig.java + test/compiler/rtm/cli/TestRTMAbortRatioOptionOnUnsupportedConfig.java + test/compiler/rtm/cli/TestRTMAbortThresholdOption.java + test/compiler/rtm/cli/TestRTMLockingCalculationDelayOption.java + test/compiler/rtm/cli/TestRTMLockingThresholdOption.java + test/compiler/rtm/cli/TestRTMSpinLoopCountOption.java + test/compiler/rtm/cli/TestRTMTotalCountIncrRateOptionOnSupportedConfig.java + test/compiler/rtm/cli/TestRTMTotalCountIncrRateOptionOnUnsupportedConfig.java + test/compiler/rtm/cli/TestUseRTMDeoptOptionOnSupportedConfig.java + test/compiler/rtm/cli/TestUseRTMDeoptOptionOnUnsupportedConfig.java + test/compiler/rtm/cli/TestUseRTMForStackLocksOptionOnSupportedConfig.java + test/compiler/rtm/cli/TestUseRTMForStackLocksOptionOnUnsupportedConfig.java + test/compiler/rtm/cli/TestUseRTMLockingOptionOnSupportedConfig.java + test/compiler/rtm/cli/TestUseRTMLockingOptionOnUnsupportedCPU.java + test/compiler/rtm/cli/TestUseRTMLockingOptionOnUnsupportedVM.java + test/compiler/rtm/cli/TestUseRTMLockingOptionWithBiasedLocking.java + test/compiler/rtm/cli/TestUseRTMXendForLockBusyOption.java Changeset: c86f5b83df67 Author: iveresov Date: 2014-04-10 23:15 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c86f5b83df67 8038297: Avoid placing CTI immediately following cbcond instruction on T4 Summary: Insert a nop between cbcond and CTI Reviewed-by: kvn, twisti ! src/cpu/sparc/vm/assembler_sparc.hpp ! src/cpu/sparc/vm/assembler_sparc.inline.hpp ! src/cpu/sparc/vm/macroAssembler_sparc.inline.hpp ! src/cpu/sparc/vm/sparc.ad ! src/share/vm/adlc/output_h.cpp ! src/share/vm/opto/machnode.hpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/output.cpp Changeset: 34829a112d52 Author: anoll Date: 2014-04-11 11:33 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/34829a112d52 8034216: assert(false) failed: infinite loop in PhaseIterGVN::optimize Summary: Eagerly remove all castPP nodes in PhaseCCP to get type convergence in memnode. Reviewed-by: kvn, roland ! src/share/vm/opto/phaseX.cpp Changeset: 758ec32bde1b Author: anoll Date: 2014-04-11 13:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/758ec32bde1b 8039498: Add iterators to GrowableArray Summary: To simplify the management of multiple code heaps in the code cache (see JDK-8015774), STL-style iterator capability is added to the GrowableArray. Further, custom iterators allow to only iterate over elements that satisfy a given predicate. Reviewed-by: kvn, twisti Contributed-by: Tobias Hartmann ! src/share/vm/utilities/growableArray.hpp Changeset: c5b32cf797c8 Author: iignatyev Date: 2014-04-11 18:46 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c5b32cf797c8 8038418: New tests development for type profiling and speculation Reviewed-by: roland, iignatyev Contributed-by: Pavel Punegov + test/compiler/types/correctness/CorrectnessTest.java + test/compiler/types/correctness/OffTest.java + test/compiler/types/correctness/execution/Execution.java + test/compiler/types/correctness/execution/MethodHandleDelegate.java + test/compiler/types/correctness/execution/TypeConflict.java + test/compiler/types/correctness/execution/TypeProfile.java + test/compiler/types/correctness/hierarchies/DefaultMethodInterface.java + test/compiler/types/correctness/hierarchies/DefaultMethodInterface2.java + test/compiler/types/correctness/hierarchies/Linear.java + test/compiler/types/correctness/hierarchies/Linear2.java + test/compiler/types/correctness/hierarchies/NullableType.java + test/compiler/types/correctness/hierarchies/OneRank.java + test/compiler/types/correctness/hierarchies/TypeHierarchy.java + test/compiler/types/correctness/scenarios/ArrayCopy.java + test/compiler/types/correctness/scenarios/ArrayReferenceStore.java + test/compiler/types/correctness/scenarios/ArrayScenario.java + test/compiler/types/correctness/scenarios/CheckCast.java + test/compiler/types/correctness/scenarios/ClassIdentity.java + test/compiler/types/correctness/scenarios/ClassInstanceOf.java + test/compiler/types/correctness/scenarios/ClassIsInstance.java + test/compiler/types/correctness/scenarios/ProfilingType.java + test/compiler/types/correctness/scenarios/ReceiverAtInvokes.java + test/compiler/types/correctness/scenarios/Scenario.java Changeset: 1f09dd1329d1 Author: bharadwaj Date: 2014-04-11 15:08 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1f09dd1329d1 Merge Changeset: ba83e8806d8d Author: anoll Date: 2014-04-14 08:24 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ba83e8806d8d 8029436: CICompilerCount is not updated when the number of compiler threads is adjusted to the number of CPUs Summary: CICompilerCount is updated in AdvancedThresholdPolicy::initialize, SimpleThresholdPolicy::initialize and NonTieredCompPolicy::initialize. A warning is printed if the usersets both, CICompilerCount and CICompilerCountPerCPU. Reviewed-by: kvn, twisti Contributed-by: Tobias Hartmann ! src/share/vm/runtime/advancedThresholdPolicy.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/compilationPolicy.cpp ! src/share/vm/runtime/simpleThresholdPolicy.cpp Changeset: 37c088a0eaea Author: anoll Date: 2014-04-13 23:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/37c088a0eaea Merge ! src/share/vm/runtime/arguments.cpp Changeset: f51ce1a6b08b Author: anoll Date: 2014-04-14 10:57 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f51ce1a6b08b 8039425: Code cleanup: PhaseIterGVN::optimize() Summary: This code cleanup aims at improving code readability. Reviewed-by: kvn, roland ! src/share/vm/opto/phaseX.cpp ! src/share/vm/opto/phaseX.hpp Changeset: 330a735e73b8 Author: anoll Date: 2014-04-14 09:04 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/330a735e73b8 Merge ! src/share/vm/opto/phaseX.cpp Changeset: 835010e4380c Author: iignatyev Date: 2014-04-15 12:21 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/835010e4380c 8040001: CLI test on RTMRetryCount option was missed from fix for 8039496 Reviewed-by: kvn, iignatyev Contributed-by: filipp.zhinkin at oracle.com + test/compiler/rtm/cli/TestRTMRetryCountOption.java Changeset: cfa802bad1d8 Author: roland Date: 2014-04-01 09:36 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/cfa802bad1d8 8032410: compiler/uncommontrap/TestStackBangRbp.java times out on Solaris-Sparc V9 Summary: make compiled code bang the stack by the worst case size of the interpreter frame at deoptimization points. Reviewed-by: twisti, kvn ! src/cpu/ppc/vm/cppInterpreter_ppc.cpp ! src/cpu/ppc/vm/ppc.ad ! src/cpu/ppc/vm/templateInterpreter_ppc.cpp ! src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp ! src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp ! src/cpu/sparc/vm/cppInterpreter_sparc.cpp ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/sharedRuntime_sparc.cpp ! src/cpu/sparc/vm/sparc.ad ! src/cpu/sparc/vm/templateInterpreter_sparc.cpp ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp ! src/cpu/x86/vm/c1_MacroAssembler_x86.cpp ! src/cpu/x86/vm/cppInterpreter_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.hpp ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp + src/cpu/x86/vm/templateInterpreter_x86.cpp ! src/cpu/x86/vm/templateInterpreter_x86_32.cpp ! src/cpu/x86/vm/templateInterpreter_x86_64.cpp ! src/cpu/x86/vm/x86_32.ad ! src/cpu/x86/vm/x86_64.ad ! src/cpu/zero/vm/cppInterpreter_zero.cpp ! src/share/vm/c1/c1_Compilation.cpp ! src/share/vm/c1/c1_Compilation.hpp ! src/share/vm/c1/c1_IR.cpp ! src/share/vm/c1/c1_IR.hpp ! src/share/vm/c1/c1_LIRAssembler.cpp ! src/share/vm/c1/c1_LIRAssembler.hpp ! src/share/vm/c1/c1_LinearScan.cpp ! src/share/vm/c1/c1_MacroAssembler.hpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethod.hpp ! src/share/vm/interpreter/abstractInterpreter.hpp ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/callnode.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/output.cpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/vframeArray.cpp ! src/share/vm/runtime/vframeArray.hpp + test/compiler/uncommontrap/TestStackBangMonitorOwned.java Changeset: 956264731b70 Author: roland Date: 2014-04-15 02:27 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/956264731b70 Merge Changeset: 218bc7e588be Author: kvn Date: 2014-04-15 14:34 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/218bc7e588be 8039050: Crash in C2 compiler at Node::rematerialize Summary: Added missing calls to record_for_igvn() in loop opts. Added verification of def-use domination. Reviewed-by: iveresov ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopopts.cpp Changeset: 054e88be4820 Author: kvn Date: 2014-04-16 14:49 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/054e88be4820 8038048: assert(null_obj->escape_state() == PointsToNode::NoEscape,etc) runThese -full Summary: use correct set_escape_state() method. Reviewed-by: kvn, iignatyev Contributed-by: Richard Reingruber ! src/share/vm/opto/escape.cpp + test/compiler/EscapeAnalysis/TestUnsafePutAddressNullObjMustNotEscape.java Changeset: 904627dc3b59 Author: iignatyev Date: 2014-04-17 18:54 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/904627dc3b59 8039260: c.o.j.t.ProcessTools::createJavaProcessBuilder(boolean, String... ) must also take TestJavaOptions Reviewed-by: kvn, iignatyev Contributed-by: lev.priima at oracle.com ! test/testlibrary/com/oracle/java/testlibrary/ProcessTools.java Changeset: f3f1868ee8d8 Author: bharadwaj Date: 2014-04-17 13:50 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f3f1868ee8d8 Merge ! src/share/vm/runtime/sharedRuntime.cpp Changeset: 34d08c848c35 Author: amurillo Date: 2014-04-18 10:30 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/34d08c848c35 Merge - test/runtime/InitialThreadOverflow/invoke.cxx Changeset: 783309c3a1a6 Author: lana Date: 2014-04-24 16:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/783309c3a1a6 Merge - test/runtime/InitialThreadOverflow/invoke.cxx Changeset: de1dca33bdfc Author: katleman Date: 2014-05-01 12:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/de1dca33bdfc Added tag jdk9-b11 for changeset 783309c3a1a6 ! .hgtags Changeset: 43106b748d31 Author: ctornqvi Date: 2014-04-17 00:03 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/43106b748d31 6959423: [TESTBUG] runtime/6925573/SortMethodsTest.java times out Summary: Decreased maximum number methods in generated classes and decreased ratio to make it reproduce more often Reviewed-by: coleenp, lfoltan ! test/runtime/6925573/SortMethodsTest.java Changeset: baf3131f2e4c Author: ctornqvi Date: 2014-04-18 00:19 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/baf3131f2e4c 8040887: [TESTBUG] Remove test/runtime/6925573/SortMethodsTest.java Summary: Removed test/runtime/6925573/SortMethodsTest.java Reviewed-by: coleenp, rdurbin - test/runtime/6925573/SortMethodsTest.java Changeset: 681564abbbbd Author: hseigel Date: 2014-04-18 08:51 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/681564abbbbd 8040018: Remove bad assert in ClassFileParser.cpp Summary: Remove assert that prevent throwing valid exception Reviewed-by: coleenp, lfoltan ! src/share/vm/classfile/classFileParser.cpp + test/runtime/classFileParserBug/ClassFileParserBug.java + test/runtime/classFileParserBug/LambdaMath.jcod + test/runtime/classFileParserBug/test.jar Changeset: b663617962e8 Author: dcubed Date: 2014-04-18 10:55 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b663617962e8 Merge ! src/share/vm/classfile/classFileParser.cpp - test/runtime/6925573/SortMethodsTest.java Changeset: eb8897b2687e Author: roland Date: 2014-04-18 14:25 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/eb8897b2687e 8039975: SIGSEGV in MethodData::next_data(ProfileData*) Summary: profiling code in interpreter broken when argument profiling is off. Reviewed-by: iveresov, kvn ! src/cpu/sparc/vm/interp_masm_sparc.cpp ! src/cpu/x86/vm/interp_masm_x86.cpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/oops/methodData.hpp Changeset: 2131bc2cc840 Author: bharadwaj Date: 2014-04-18 14:30 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/2131bc2cc840 Merge Changeset: 4bc3f8fa071f Author: kvn Date: 2014-04-22 17:45 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/4bc3f8fa071f 8041351: Crash in src/share/vm/opto/loopnode.cpp:3215 - assert(!had_error) failed: bad dominance Summary: add missing is_mem() check when we collect load nodes in SuperWord::co_locate_pack(). Reviewed-by: iveresov ! src/share/vm/opto/superword.cpp Changeset: c800e0d7816f Author: bharadwaj Date: 2014-04-24 17:20 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c800e0d7816f Merge - test/runtime/6925573/SortMethodsTest.java Changeset: cec569179bb8 Author: stefank Date: 2014-04-09 13:54 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/cec569179bb8 8039743: Use correct format specifier to print size_t values and pointers in the GC code Reviewed-by: jmasa, sjohanss Contributed-by: stefan.karlsson at oracle.com, mikael.vidstedt at oracle.com ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/promotionInfo.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/survRateGroup.cpp ! src/share/vm/gc_implementation/parallelScavenge/adjoiningGenerations.cpp ! src/share/vm/gc_implementation/parallelScavenge/asPSOldGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/asPSYoungGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/gcTaskManager.cpp ! src/share/vm/gc_implementation/parallelScavenge/pcTasks.cpp ! src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.cpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/gc_implementation/shared/adaptiveSizePolicy.cpp ! src/share/vm/gc_implementation/shared/allocationStats.hpp ! src/share/vm/gc_implementation/shared/markSweep.cpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp ! src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp ! src/share/vm/gc_implementation/shared/spaceDecorator.cpp ! src/share/vm/memory/binaryTreeDictionary.cpp ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/generation.cpp ! src/share/vm/memory/sharedHeap.cpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: ebe7363ae01b Author: pliden Date: 2014-04-11 11:00 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ebe7363ae01b 8037112: gc/g1/TestHumongousAllocInitialMark.java caused SIGSEGV Reviewed-by: brutisso, mgerdin ! src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1StringDedup.cpp ! src/share/vm/gc_implementation/g1/g1StringDedup.hpp ! src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp ! src/share/vm/gc_implementation/g1/g1StringDedupQueue.hpp ! src/share/vm/gc_implementation/g1/g1StringDedupThread.cpp ! src/share/vm/gc_implementation/g1/g1StringDedupThread.hpp ! src/share/vm/gc_interface/collectedHeap.hpp ! src/share/vm/runtime/java.cpp Changeset: f447397ebbcd Author: pliden Date: 2014-04-11 12:29 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f447397ebbcd 8039147: Cleanup SuspendibleThreadSet Reviewed-by: brutisso, tschatzl, mgerdin ! src/share/vm/gc_implementation/g1/concurrentG1RefineThread.cpp ! src/share/vm/gc_implementation/g1/concurrentG1RefineThread.hpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp ! src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp ! src/share/vm/gc_implementation/g1/concurrentMarkThread.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1StringDedupThread.cpp ! src/share/vm/gc_implementation/shared/concurrentGCThread.cpp ! src/share/vm/gc_implementation/shared/concurrentGCThread.hpp + src/share/vm/gc_implementation/shared/suspendibleThreadSet.cpp + src/share/vm/gc_implementation/shared/suspendibleThreadSet.hpp ! src/share/vm/runtime/mutexLocker.cpp ! src/share/vm/runtime/mutexLocker.hpp ! src/share/vm/runtime/safepoint.cpp Changeset: f665fa6f2aa4 Author: jwilhelm Date: 2014-04-11 18:28 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f665fa6f2aa4 8037924: CMM Testing: Check Min/MaxHeapFreeRatio flags allows to shrink the heap when using ParallelGC Summary: New test implemented Reviewed-by: ehelin, tschatzl Contributed-by: andrey.x.zakharov at oracle.com ! test/TEST.groups + test/gc/parallelScavenge/TestDynShrinkHeap.java Changeset: c67b4bad6aa1 Author: ehelin Date: 2014-04-14 10:08 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c67b4bad6aa1 Merge ! src/share/vm/gc_interface/collectedHeap.hpp ! src/share/vm/runtime/safepoint.cpp Changeset: 43875cba960e Author: jwilhelm Date: 2014-04-15 18:09 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/43875cba960e 8037925: CMM Testing: an allocated humongous object at the end of the heap should not prevents shrinking the heap Summary: New test added. Reviewed-by: ehelin, tschatzl, jwilhelm Contributed-by: andrey.x.zakharov at oracle.com ! test/TEST.groups + test/gc/g1/TestHumongousShrinkHeap.java Changeset: 3c6b2880dcad Author: stefank Date: 2014-04-15 20:46 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3c6b2880dcad 8039957: Replace the last few %p usages with PTR_FORMAT in the GC code Reviewed-by: jwilhelm, sjohanss, jmasa ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1RemSet.cpp ! src/share/vm/gc_implementation/parallelScavenge/objectStartArray.hpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.inline.hpp ! src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp ! src/share/vm/memory/defNewGeneration.cpp Changeset: 28b574c9e549 Author: tschatzl Date: 2014-04-16 10:14 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/28b574c9e549 8038930: G1CodeRootSet::test fails with assert(_num_chunks_handed_out == 0) failed: No elements must have been handed out yet Summary: The test incorrectly assumed that it had been started with no other previous compilation activity. Fix this by allowing multiple code root free chunk lists, and use one separate from the global one to perform the test. Reviewed-by: brutisso ! src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.cpp ! src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.hpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.hpp Changeset: ed06c8e187ad Author: tschatzl Date: 2014-04-16 10:55 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ed06c8e187ad 8027553: Change the in_cset_fast_test functionality to use the G1BiasedArray abstraction Summary: Instead of using a manually managed array for the in_cset_fast_test array, use a G1BiasedArray instance. Reviewed-by: brutisso, mgerdin ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp Changeset: 51e6d4019aeb Author: tschatzl Date: 2014-04-16 10:55 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/51e6d4019aeb 8037344: Use the "next" field to iterate over fine remembered instead of using the hash table Summary: After changes to the PerRegionTable where all these PRTs are linked together in an additional field, simplify iterating over all PRTs by using these links instead of walki Reviewed-by: mgerdin, jwilhelm, brutisso ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.hpp Changeset: f0caf386d544 Author: tschatzl Date: 2014-04-16 10:56 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f0caf386d544 8039596: Remove HeapRegionRemSet::clear_incoming_entry Summary: The mentioned method is never used and out of date. So it is removed. Reviewed-by: mgerdin, brutisso ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.hpp Changeset: 856a202c9ca0 Author: tschatzl Date: 2014-04-16 11:05 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/856a202c9ca0 8028710: G1 does not retire allocation buffers after reference processing work Summary: G1 does not retire allocation buffers after reference processing work when -XX:+ParallelRefProcEnabled is enabled. This causes wrong calculation of PLAB sizes, as the amount of space wasted is not updated correctly. Reviewed-by: brutisso ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/shared/parGCAllocBuffer.hpp Changeset: fee044a1aa4e Author: tschatzl Date: 2014-04-16 16:46 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/fee044a1aa4e 8019342: G1: High "Other" time most likely due to card redirtying Summary: Parallelize card redirtying to decrease the time it takes. Reviewed-by: brutisso ! src/share/vm/gc_implementation/g1/concurrentG1Refine.cpp ! src/share/vm/gc_implementation/g1/concurrentG1Refine.hpp ! src/share/vm/gc_implementation/g1/concurrentG1RefineThread.cpp ! src/share/vm/gc_implementation/g1/concurrentG1RefineThread.hpp ! src/share/vm/gc_implementation/g1/dirtyCardQueue.cpp ! src/share/vm/gc_implementation/g1/dirtyCardQueue.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1GCPhaseTimes.cpp ! src/share/vm/gc_implementation/g1/g1GCPhaseTimes.hpp ! test/gc/g1/TestGCLogMessages.java Changeset: 88c6d7bfc89e Author: tschatzl Date: 2014-04-16 16:47 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/88c6d7bfc89e 8040002: Clean up code and code duplication in re-diryting cards for verification Summary: Card re-dirtying code for verification and actual redirtying uses two different, almost completely identical card closures. Also the verification code still assumes a perm gen. Reviewed-by: brutisso, jmasa ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Changeset: a9272c62c519 Author: brutisso Date: 2014-04-17 15:57 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a9272c62c519 8040722: G1: Clean up usages of heap_region_containing Reviewed-by: tschatzl, jmasa ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp ! src/share/vm/gc_implementation/g1/g1OopClosures.inline.hpp ! src/share/vm/gc_implementation/g1/g1RemSet.cpp ! src/share/vm/gc_implementation/g1/g1RemSet.inline.hpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.cpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.hpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.inline.hpp Changeset: d9c2044cbbd7 Author: pliden Date: 2014-04-17 18:47 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d9c2044cbbd7 8040245: G1: VM hangs during shutdown Summary: temporarily disable the shutdown of the concurrent GC threads introduced in JDK-8037112 Reviewed-by: brutisso, tschatzl, jmasa ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Changeset: 9314dc72e2f9 Author: tschatzl Date: 2014-04-22 11:10 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9314dc72e2f9 8040792: G1: Memory usage calculation uses sizeof(this) instead of sizeof(classname) Summary: A few locations in the code use sizeof(this) which returns the size of the pointer instead of sizeof(classname) which returns the size of the sum of its members. This change fixes these errors and adds a few tests. Reviewed-by: mgerdin, brutisso ! src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.cpp ! src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.hpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.hpp ! src/share/vm/gc_implementation/g1/sparsePRT.cpp Changeset: 655fc7de83a2 Author: ehelin Date: 2014-04-23 10:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/655fc7de83a2 Merge ! src/share/vm/gc_interface/collectedHeap.hpp ! test/TEST.groups - test/runtime/InitialThreadOverflow/invoke.cxx Changeset: 98dce985df09 Author: brutisso Date: 2014-04-23 12:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/98dce985df09 8038265: CMS: enable time based triggering of concurrent cycles Reviewed-by: mgerdin, brutisso Contributed-by: michal at frajt.eu ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/runtime/globals.hpp Changeset: caed2f29a6c2 Author: ehelin Date: 2014-04-25 15:50 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/caed2f29a6c2 Merge Changeset: 5adf605e17db Author: amurillo Date: 2014-04-25 09:59 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/5adf605e17db Merge - test/runtime/6925573/SortMethodsTest.java Changeset: 1c383bb39e28 Author: lana Date: 2014-05-01 14:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1c383bb39e28 Merge - test/runtime/6925573/SortMethodsTest.java Changeset: 8c3dc205ab2b Author: katleman Date: 2014-05-08 01:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8c3dc205ab2b Added tag jdk9-b12 for changeset 1c383bb39e28 ! .hgtags Changeset: dc427574bc7a Author: ctornqvi Date: 2014-04-24 00:46 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dc427574bc7a 8033405: metaspace/stressHierarchy/stressHierarchy005 hangs in atexit handler Summary: ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: e9bd2a761882 Author: roland Date: 2014-04-24 11:05 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e9bd2a761882 8039960: Unexpected exit from test compiler/profiling/spectrapredefineclass/Launcher.java Summary: the test case doesn't need to change the heap size to reproduce the failure. Reviewed-by: twisti, kvn ! test/compiler/profiling/spectrapredefineclass/Agent.java ! test/compiler/profiling/spectrapredefineclass/Launcher.java Changeset: 1420e44e390b Author: iignatyev Date: 2014-04-24 14:02 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1420e44e390b 8041497: Compilation of compiler/rtm/cli/TestUseRTMDeoptOption* tests failed Reviewed-by: kvn, roland ! test/compiler/rtm/cli/TestUseRTMDeoptOptionOnSupportedConfig.java ! test/compiler/rtm/cli/TestUseRTMDeoptOptionOnUnsupportedConfig.java Changeset: a123d95f638f Author: iignatyev Date: 2014-04-24 10:32 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a123d95f638f Merge Changeset: a35e424a76a4 Author: roland Date: 2014-04-25 09:22 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a35e424a76a4 8041481: JVM crashes with collect_args_for_profiling Summary: method handle call to c1 intrinsic tries to profile popped argument Reviewed-by: kvn, twisti ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/c1/c1_GraphBuilder.hpp ! src/share/vm/c1/c1_LIRGenerator.cpp + test/compiler/profiling/TestMethodHandleInvokesIntrinsic.java Changeset: 6a81ae43d3a3 Author: adlertz Date: 2014-04-25 12:48 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6a81ae43d3a3 8029302: Performance regression in Math.pow intrinsic Summary: Added special case for x^y where y == 2 Reviewed-by: kvn, roland ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/share/vm/opto/library_call.cpp Changeset: d3dff66800f3 Author: bharadwaj Date: 2014-04-25 14:29 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d3dff66800f3 Merge Changeset: ccbe4f8119b6 Author: anoll Date: 2014-04-28 12:39 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ccbe4f8119b6 8040085: dtrace/jsdt tests crash on solaris. found an unadvertised bad scavengable oop in the code cache Summary: Add CodeCache::add_scavenge_root_nmethod(this) to the dtrace-constructor of nmethod Reviewed-by: roland, iveresov ! src/share/vm/code/nmethod.cpp ! src/share/vm/runtime/sharedRuntime.cpp Changeset: 590c234f1f5e Author: anoll Date: 2014-04-28 03:44 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/590c234f1f5e Merge ! src/share/vm/code/nmethod.cpp - test/runtime/6925573/SortMethodsTest.java Changeset: 0b46bc08ff09 Author: anoll Date: 2014-04-28 14:34 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0b46bc08ff09 8041771: C1: remove unused IR::_locals_size Summary: The unused IR::_locals_size is removed. Reviewed-by: kvn, roland Contributed-by: Tobias Hartmann ! src/share/vm/c1/c1_IR.cpp ! src/share/vm/c1/c1_IR.hpp Changeset: cbb70f720ddb Author: drchase Date: 2014-04-28 15:09 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/cbb70f720ddb 8039407: Regression test needed for JDK-8015396 Summary: Converted bug demo into regression test Reviewed-by: kvn + test/compiler/floatingpoint/ModNaN.java Changeset: 401efd13b064 Author: morris Date: 2014-04-28 16:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/401efd13b064 8040919: Uninitialised memory in hotspot/src/share/vm/compiler/oopMap.cpp Summary: Parfait refactoring in OopMapSet::update_register_map Reviewed-by: kvn, twisti ! src/share/vm/compiler/oopMap.cpp Changeset: 48c15b47a4f1 Author: anoll Date: 2014-04-29 07:59 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/48c15b47a4f1 8040798: compiler/startup/SmallCodeCacheStartup.java timed out in RT_Baseline Summary: Fixes broken memory freeing of compile queue tasks and makes sure that blocking compiles do not hang the VM if compilation gets disabled due to a full code cache. Reviewed-by: kvn, iveresov ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/compiler/compileBroker.hpp ! src/share/vm/runtime/advancedThresholdPolicy.cpp ! src/share/vm/runtime/simpleThresholdPolicy.cpp Changeset: d02dbc95b60b Author: anoll Date: 2014-04-29 08:08 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d02dbc95b60b 8036956: remove EnableInvokeDynamic flag Summary: The EnableInvokeDynamic flag and all support code is removed because it is not longer used in JDK 9. Reviewed-by: kvn, twisti Contributed-by: Tobias Hartmann ! src/cpu/ppc/vm/cppInterpreter_ppc.cpp ! src/cpu/ppc/vm/interp_masm_ppc_64.cpp ! src/cpu/ppc/vm/templateTable_ppc_64.cpp ! src/cpu/sparc/vm/interp_masm_sparc.cpp ! src/cpu/sparc/vm/templateInterpreter_sparc.cpp ! src/cpu/sparc/vm/templateTable_sparc.cpp ! src/cpu/x86/vm/interp_masm_x86_32.cpp ! src/cpu/x86/vm/interp_masm_x86_64.cpp ! src/cpu/x86/vm/templateInterpreter_x86.cpp ! src/cpu/x86/vm/templateInterpreter_x86_32.cpp ! src/cpu/x86/vm/templateInterpreter_x86_64.cpp ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp ! src/share/vm/ci/ciObject.cpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/interpreter/bytecodes.hpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/prims/jvmtiClassFileReconstituter.cpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/thread.cpp Changeset: 790cbd800fe4 Author: anoll Date: 2014-04-29 07:14 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/790cbd800fe4 Merge Changeset: 4f0ae81062fd Author: kvn Date: 2014-04-29 10:29 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/4f0ae81062fd 8041959: Skip replay parsing errors with ReplayIgnoreInitErrors Summary: Allow replay compilation with replay file parsing error. Reviewed-by: twisti, iveresov ! src/share/vm/ci/ciReplay.cpp ! src/share/vm/runtime/simpleThresholdPolicy.cpp Changeset: 9883c95f17f6 Author: kvn Date: 2014-04-29 12:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9883c95f17f6 8041957: -XX:UseAVX=0 cause assert(UseAVX) failed Summary: temporary set UseAVX=1 and UseSSE=2 in generate_get_cpu_info() Reviewed-by: twisti ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/vm_version_x86.cpp Changeset: e3a56821c4e3 Author: mikael Date: 2014-04-29 22:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e3a56821c4e3 8022070: Compilation error in stubGenerator_sparc.cpp with some compilers Reviewed-by: twisti, kvn ! src/cpu/sparc/vm/stubGenerator_sparc.cpp Changeset: c884ec3ea87f Author: mikael Date: 2014-04-29 22:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c884ec3ea87f 8042059: Various fixes to linux/sparc Reviewed-by: twisti, kvn ! agent/src/os/linux/libproc.h ! src/cpu/sparc/vm/frame_sparc.hpp ! src/cpu/sparc/vm/frame_sparc.inline.hpp ! src/os_cpu/linux_sparc/vm/atomic_linux_sparc.inline.hpp ! src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp Changeset: 7c68337bb685 Author: kvn Date: 2014-04-30 14:14 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/7c68337bb685 8035936: SIGBUS in StubRoutines::aesencryptBlock, solaris-sparc Summary: Fix the arbitrary alignment issue in SPARC AES crypto stub routines. Reviewed-by: kvn, iveresov Contributed-by: shrinivas.joshi at oracle.com ! src/cpu/sparc/vm/assembler_sparc.hpp ! src/cpu/sparc/vm/stubGenerator_sparc.cpp ! src/cpu/sparc/vm/stubRoutines_sparc.hpp ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/opto/runtime.cpp ! test/compiler/7184394/TestAESBase.java ! test/compiler/7184394/TestAESDecode.java ! test/compiler/7184394/TestAESEncode.java ! test/compiler/7184394/TestAESMain.java Changeset: ae70708e34c5 Author: kvn Date: 2014-05-01 17:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ae70708e34c5 8042281: compiler/7184394/TestAESMain.java fails with: javax.crypto.IllegalBlockSizeException: Input length not multiple of 16 bytes Summary: Added missing -DmsgSize=640 to test's run commands. Reviewed-by: kvn Contributed-by: shrinivas.joshi at oracle.com ! test/compiler/7184394/TestAESMain.java Changeset: 5edc16b659dd Author: twisti Date: 2014-05-02 19:00 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/5edc16b659dd Merge - make/hotspot_version ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/oops/klass.cpp ! src/share/vm/runtime/vmStructs.cpp Changeset: cdc3ba20b08f Author: zgu Date: 2014-05-01 05:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/cdc3ba20b08f 6885993: Named Thread: introduce print() and print_on(outputStream* st) methods Summary: Eliminating duplicated code by introducing print_on(outputStream* st) methods in NamedThread Reviewed-by: twisti, coleenp, dholmes ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp ! src/share/vm/gc_implementation/g1/concurrentG1RefineThread.cpp ! src/share/vm/gc_implementation/g1/concurrentG1RefineThread.hpp ! src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp ! src/share/vm/gc_implementation/g1/concurrentMarkThread.hpp ! src/share/vm/gc_implementation/g1/g1StringDedupThread.cpp ! src/share/vm/gc_implementation/g1/g1StringDedupThread.hpp ! src/share/vm/gc_implementation/parallelScavenge/gcTaskThread.cpp ! src/share/vm/gc_implementation/parallelScavenge/gcTaskThread.hpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/vmThread.cpp ! src/share/vm/runtime/vmThread.hpp Changeset: bcf479da3ce5 Author: dcubed Date: 2014-05-02 11:06 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/bcf479da3ce5 Merge Changeset: af53a220ea60 Author: sla Date: 2014-05-05 20:17 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/af53a220ea60 8031126: java/lang/management/ThreadMXBean/ThreadUserTime.java fails intermittently Reviewed-by: coleenp, simonis, goetz, gthornbr ! src/os/linux/vm/os_linux.cpp Changeset: 003c36658224 Author: coleenp Date: 2014-05-05 19:53 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/003c36658224 8023697: failed class resolution reports different class name in detail message for the first and subsequent times Summary: Cache detail message when we cache exception for constant pool resolution. Reviewed-by: acorn, twisti, jrose ! src/share/vm/classfile/resolutionErrors.cpp ! src/share/vm/classfile/resolutionErrors.hpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/utilities/constantTag.cpp ! src/share/vm/utilities/constantTag.hpp + test/runtime/ClassResolutionFail/Property.java + test/runtime/ClassResolutionFail/PropertySuper.java + test/runtime/ClassResolutionFail/TestClassResolutionFail.java Changeset: e7a6a3354c84 Author: lfoltan Date: 2014-05-06 08:59 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e7a6a3354c84 8041627: Solaris Studio 12.4 C++ 5.13 compilation error due to lack of "surplus" prototype for binaryTreeDictionary.cpp. Summary: Fix C++ compilation error diagnostic for the call of "surplus" within get_better_list() method. Reviewed-by: coleenp, dholmes ! src/share/vm/memory/binaryTreeDictionary.cpp Changeset: 21130eb5768d Author: lfoltan Date: 2014-05-06 09:56 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/21130eb5768d 8041620: Solaris Studio 12.4 C++ 5.13 change in behavior for placing friend declarations within surrounding scope. Summary: Remove adlc's unused class FileBuffRegion. Reviewed-by: coleenp, dholmes, kvn ! src/share/vm/adlc/filebuff.cpp ! src/share/vm/adlc/filebuff.hpp Changeset: dd10307aad9d Author: coleenp Date: 2014-05-07 18:19 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dd10307aad9d Merge ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/runtime/thread.cpp Changeset: c6d29f2731d5 Author: anoll Date: 2014-05-02 06:24 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c6d29f2731d5 8041992: Fix of JDK-8034775 neglects to account for non-JIT VMs Summary: Allow 0 compiler threads if no JIT is used. Reviewed-by: kvn, dholmes Contributed-by: Severin Gehwolf ! src/share/vm/runtime/arguments.cpp ! test/compiler/startup/NumCompilerThreadsCheck.java Changeset: d54237e9d713 Author: anoll Date: 2014-05-01 21:30 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d54237e9d713 Merge Changeset: 477b5a69ee6d Author: iignatyev Date: 2014-05-02 13:20 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/477b5a69ee6d 8042214: add @ignore tag to all excluded jtreg tests in test/compiler Reviewed-by: kvn, ctornqvi ! test/compiler/5091921/Test7005594.java ! test/compiler/7052494/Test7052494.java ! test/compiler/ciReplay/TestVM.sh ! test/compiler/ciReplay/TestVM_no_comp_level.sh Changeset: 802d8115b5f1 Author: iignatyev Date: 2014-05-02 09:30 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/802d8115b5f1 Merge Changeset: bd1a985905ed Author: kvn Date: 2014-05-02 16:44 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/bd1a985905ed 8039298: assert(base == NULL || t_adr->isa_rawptr() || !phase->type(base)->higher_equal(TypePtr::NULL_PTR)) Summary: Convert the assert into the runtime check to skip IGVN optimizations for problematic memory nodes. Eliminate dead nodes more aggressively. Reviewed-by: twisti, iveresov ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/node.cpp Changeset: c41037fab04f Author: twisti Date: 2014-05-02 19:10 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c41037fab04f Merge Changeset: 3e1b9ea326fa Author: anoll Date: 2014-05-05 15:10 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3e1b9ea326fa 8042052: assert(t != NULL) failed: must set before get Summary: Added missing call to _gvn.transform to make sure the type of the PhiNode is recorded in the gvn. Reviewed-by: kvn Contributed-by: Tobias Hartmann ! src/share/vm/opto/library_call.cpp Changeset: 446bb44e5367 Author: anoll Date: 2014-05-06 09:17 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/446bb44e5367 8036851: volatile double accesses are not explicitly atomic in C2 Summary: The C2 structure is adapted to distinguish between volatile and non-volatile double accesses. Reviewed-by: twisti, kvn Contributed-by: Tobias Hartmann ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp Changeset: 6786f914240e Author: anoll Date: 2014-05-06 09:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6786f914240e 8042428: CompileQueue::free_all() code is incorrect Summary: Free task after getting next pointer of freelist. Reviewed-by: kvn, adlertz ! src/share/vm/compiler/compileBroker.cpp Changeset: 15b2bb6fd673 Author: anoll Date: 2014-05-06 08:01 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/15b2bb6fd673 Merge Changeset: 9433721e2340 Author: anoll Date: 2014-05-06 13:08 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9433721e2340 8042443: Fix C++-Interpreter after "8036956: remove EnableInvokeDynamic flag" Summary: Insert missing bracket to make the interpreter build again Reviewed-by: sla Contributed-by: Volker Simonis ! src/share/vm/interpreter/bytecodeInterpreter.cpp Changeset: b5e1deb7279e Author: goetz Date: 2014-05-02 14:53 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b5e1deb7279e 8042309: Some bugfixes for the ppc64 port. Reviewed-by: kvn ! src/cpu/ppc/vm/cppInterpreter_ppc.cpp ! src/cpu/ppc/vm/frame_ppc.inline.hpp ! src/cpu/ppc/vm/interp_masm_ppc_64.hpp ! src/cpu/ppc/vm/interpreterRT_ppc.cpp ! src/cpu/ppc/vm/interpreter_ppc.cpp ! src/cpu/ppc/vm/jniFastGetField_ppc.cpp ! src/cpu/ppc/vm/ppc.ad ! src/cpu/ppc/vm/templateInterpreter_ppc.cpp ! src/cpu/ppc/vm/templateTable_ppc_64.cpp ! src/os_cpu/linux_ppc/vm/atomic_linux_ppc.inline.hpp Changeset: 8fddb780f3a7 Author: anoll Date: 2014-05-07 22:06 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8fddb780f3a7 8042570: Excessive number of tests timing out on nightly testing due to fix for 8040798 Summary: Remove unnecessary lock in CompileBroker::mark_on_stack() that causes the deadlock Reviewed-by: kvn, dcubed ! src/share/vm/compiler/compileBroker.cpp Changeset: 2377269bd73d Author: goetz Date: 2014-04-29 15:17 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/2377269bd73d 8042195: Introduce umbrella header orderAccess.inline.hpp. Reviewed-by: dholmes, kvn, stefank, twisti ! src/cpu/zero/vm/cppInterpreter_zero.cpp ! src/os/aix/vm/os_aix.cpp ! src/os/aix/vm/os_aix.inline.hpp ! src/os/aix/vm/thread_aix.inline.hpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/bsd/vm/os_bsd.inline.hpp ! src/os/bsd/vm/thread_bsd.inline.hpp ! src/os/linux/vm/os_linux.cpp ! src/os/linux/vm/os_linux.inline.hpp ! src/os/linux/vm/thread_linux.inline.hpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/solaris/vm/os_solaris.inline.hpp ! src/os/solaris/vm/thread_solaris.inline.hpp ! src/os/windows/vm/os_windows.cpp ! src/os/windows/vm/os_windows.inline.hpp ! src/os/windows/vm/thread_windows.inline.hpp ! src/os_cpu/aix_ppc/vm/atomic_aix_ppc.inline.hpp ! src/os_cpu/linux_ppc/vm/atomic_linux_ppc.inline.hpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/classfile/dictionary.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/code/dependencies.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/g1/g1AllocRegion.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp ! src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp ! src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/gcTaskManager.cpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/memory/gcLocker.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/space.cpp ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/cpCache.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/oops/objArrayKlass.cpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/oops/typeArrayKlass.cpp ! src/share/vm/oops/typeArrayOop.hpp ! src/share/vm/precompiled/precompiled.hpp ! src/share/vm/prims/forte.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/jniCheck.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiEnvBase.cpp ! src/share/vm/prims/jvmtiExport.cpp ! src/share/vm/prims/jvmtiRawMonitor.cpp ! src/share/vm/prims/jvmtiThreadState.inline.hpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/fprofiler.cpp ! src/share/vm/runtime/interfaceSupport.cpp ! src/share/vm/runtime/javaFrameAnchor.hpp ! src/share/vm/runtime/mutex.cpp ! src/share/vm/runtime/objectMonitor.cpp + src/share/vm/runtime/orderAccess.inline.hpp ! src/share/vm/runtime/perfMemory.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/sweeper.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/thread.inline.hpp ! src/share/vm/services/management.cpp ! src/share/vm/services/memTracker.cpp ! src/share/vm/services/memoryManager.cpp ! src/share/vm/services/memoryPool.cpp ! src/share/vm/services/threadService.cpp ! src/share/vm/utilities/array.hpp ! src/share/vm/utilities/hashtable.inline.hpp ! src/share/vm/utilities/taskqueue.hpp ! src/share/vm/utilities/vmError.cpp Changeset: 97356e139532 Author: twisti Date: 2014-05-08 15:08 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/97356e139532 Merge ! src/os/linux/vm/os_linux.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp Changeset: 8886a4bcaeaa Author: jwilhelm Date: 2014-04-29 22:57 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8886a4bcaeaa 8027643: Merge GenCollectorPolicy and TwoGenerationCollectorPolicy Summary: Merged the two calsses GenCollectorPolicy and TwoGenerationCollectorPolicy Reviewed-by: sjohanss, jcoomes ! src/share/vm/gc_implementation/concurrentMarkSweep/cmsCollectorPolicy.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/generationSizer.cpp ! src/share/vm/gc_implementation/parallelScavenge/generationSizer.hpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genCollectedHeap.hpp ! src/share/vm/services/memoryService.cpp Changeset: 5549b26a0660 Author: jwilhelm Date: 2014-05-02 21:10 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/5549b26a0660 Merge Changeset: 83dc9a7abcce Author: tschatzl Date: 2014-05-06 09:41 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/83dc9a7abcce 8026784: Error message in AdaptiveFreeList::verify_stats is wrong Summary: Changed faulty error message in the verification code Reviewed-by: stefank, tschatzl Contributed-by: Andreas Sjoberg ! src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp Changeset: a5730e3dee96 Author: ehelin Date: 2014-03-19 17:04 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a5730e3dee96 8034094: SA agent can't compile when jni_x86.h is used Reviewed-by: dsamersoff, erikj ! src/cpu/x86/vm/jni_x86.h Changeset: 957ed38326bd Author: jmasa Date: 2014-05-08 18:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/957ed38326bd Merge ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Changeset: a7d16a7880ab Author: amurillo Date: 2014-05-09 08:34 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a7d16a7880ab Merge Changeset: bd333491bb6c Author: lana Date: 2014-05-15 10:40 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/bd333491bb6c Merge Changeset: 18f86da62a40 Author: katleman Date: 2014-05-22 12:53 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/18f86da62a40 Added tag jdk9-b14 for changeset bd333491bb6c ! .hgtags Changeset: 53a41e7cbe05 Author: drchase Date: 2014-05-09 16:50 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/53a41e7cbe05 8037816: Fix for 8036122 breaks build with Xcode5/clang Summary: Repaired or selectively disabled offending formats; future-proofed with additional checking Reviewed-by: kvn, jrose, stefank ! src/cpu/ppc/vm/vm_version_ppc.cpp ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/c1_LinearScan_x86.cpp ! src/cpu/x86/vm/compiledIC_x86.cpp ! src/cpu/x86/vm/frame_x86.cpp ! src/cpu/x86/vm/interpreter_x86_64.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/cpu/x86/vm/nativeInst_x86.cpp ! src/cpu/x86/vm/vm_version_x86.cpp ! src/cpu/x86/vm/vtableStubs_x86_32.cpp ! src/cpu/x86/vm/vtableStubs_x86_64.cpp ! src/os/bsd/vm/decoder_machO.cpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/bsd/vm/perfMemory_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/linux/vm/perfMemory_linux.cpp ! src/os/posix/vm/os_posix.cpp ! src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/share/vm/adlc/formssel.cpp ! src/share/vm/adlc/output_h.cpp ! src/share/vm/asm/codeBuffer.cpp ! src/share/vm/asm/codeBuffer.hpp ! src/share/vm/asm/register.hpp ! src/share/vm/c1/c1_CFGPrinter.cpp ! src/share/vm/c1/c1_InstructionPrinter.cpp ! src/share/vm/c1/c1_LIR.cpp ! src/share/vm/c1/c1_RangeCheckElimination.cpp ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/c1/c1_ValueType.hpp ! src/share/vm/ci/bcEscapeAnalyzer.cpp ! src/share/vm/ci/ciConstant.cpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciInstanceKlass.cpp ! src/share/vm/ci/ciMetadata.cpp ! src/share/vm/ci/ciMethodData.cpp ! src/share/vm/ci/ciObject.cpp ! src/share/vm/ci/ciSignature.cpp ! src/share/vm/ci/ciType.cpp ! src/share/vm/classfile/classFileError.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/classfile/defaultMethods.cpp ! src/share/vm/classfile/dictionary.cpp ! src/share/vm/classfile/dictionary.hpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/symbolTable.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/classfile/verifier.hpp ! src/share/vm/classfile/vmSymbols.cpp ! src/share/vm/code/codeBlob.cpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/compiledIC.cpp ! src/share/vm/code/compressedStream.cpp ! src/share/vm/code/debugInfo.cpp ! src/share/vm/code/exceptionHandlerTable.cpp ! src/share/vm/code/icBuffer.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/pcDesc.cpp ! src/share/vm/code/relocInfo.cpp ! src/share/vm/code/scopeDesc.cpp ! src/share/vm/code/vtableStubs.cpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/compiler/compileLog.cpp ! src/share/vm/compiler/compileLog.hpp ! src/share/vm/compiler/compilerOracle.cpp ! src/share/vm/compiler/disassembler.cpp ! src/share/vm/compiler/methodLiveness.cpp ! src/share/vm/compiler/oopMap.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/freeChunk.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/promotionInfo.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/vmCMSOperations.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.inline.hpp ! src/share/vm/gc_implementation/g1/g1AllocRegion.cpp ! src/share/vm/gc_implementation/g1/g1AllocRegion.hpp ! src/share/vm/gc_implementation/g1/g1BiasedArray.cpp ! src/share/vm/gc_implementation/g1/g1BiasedArray.hpp ! src/share/vm/gc_implementation/g1/g1BlockOffsetTable.cpp ! src/share/vm/gc_implementation/g1/g1BlockOffsetTable.hpp ! src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp ! src/share/vm/gc_implementation/g1/g1CardCounts.cpp ! src/share/vm/gc_implementation/g1/g1CardCounts.hpp ! src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1GCPhaseTimes.cpp ! src/share/vm/gc_implementation/g1/g1HRPrinter.cpp ! src/share/vm/gc_implementation/g1/g1OopClosures.inline.hpp ! src/share/vm/gc_implementation/g1/g1RemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.cpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.inline.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionSet.hpp ! src/share/vm/gc_implementation/g1/satbQueue.cpp ! src/share/vm/gc_implementation/g1/survRateGroup.cpp ! src/share/vm/gc_implementation/parNew/asParNewGeneration.cpp ! src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp ! src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ! src/share/vm/gc_implementation/parNew/parOopClosures.inline.hpp ! src/share/vm/gc_implementation/parallelScavenge/asPSYoungGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp ! src/share/vm/gc_implementation/parallelScavenge/gcTaskManager.cpp ! src/share/vm/gc_implementation/parallelScavenge/gcTaskThread.cpp ! src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.hpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.inline.hpp ! src/share/vm/gc_implementation/parallelScavenge/pcTasks.cpp ! src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.cpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp ! src/share/vm/gc_implementation/parallelScavenge/psOldGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp ! src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.inline.hpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.inline.hpp ! src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp ! src/share/vm/gc_implementation/parallelScavenge/psYoungGen.cpp ! src/share/vm/gc_implementation/shared/ageTable.cpp ! src/share/vm/gc_implementation/shared/allocationStats.hpp ! src/share/vm/gc_implementation/shared/immutableSpace.cpp ! src/share/vm/gc_implementation/shared/markSweep.cpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp ! src/share/vm/gc_implementation/shared/mutableSpace.cpp ! src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp ! src/share/vm/gc_implementation/shared/spaceDecorator.cpp ! src/share/vm/gc_interface/collectedHeap.cpp ! src/share/vm/interpreter/bytecodeTracer.cpp ! src/share/vm/interpreter/interpreter.cpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/interpreter/oopMapCache.cpp ! src/share/vm/interpreter/templateInterpreter.cpp ! src/share/vm/libadt/dict.cpp ! src/share/vm/libadt/set.cpp ! src/share/vm/memory/allocation.cpp ! src/share/vm/memory/binaryTreeDictionary.cpp ! src/share/vm/memory/blockOffsetTable.cpp ! src/share/vm/memory/cardTableModRefBS.cpp ! src/share/vm/memory/cardTableModRefBS.hpp ! src/share/vm/memory/cardTableRS.cpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/filemap.cpp ! src/share/vm/memory/gcLocker.cpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genOopClosures.hpp ! src/share/vm/memory/generation.cpp ! src/share/vm/memory/generation.hpp ! src/share/vm/memory/heapInspection.cpp ! src/share/vm/memory/heapInspection.hpp ! src/share/vm/memory/metachunk.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspaceShared.cpp ! src/share/vm/memory/referenceProcessor.cpp ! src/share/vm/memory/sharedHeap.cpp ! src/share/vm/memory/space.cpp ! src/share/vm/memory/threadLocalAllocBuffer.cpp ! src/share/vm/memory/threadLocalAllocBuffer.inline.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/annotations.cpp ! src/share/vm/oops/constMethod.cpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/generateOopMap.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceRefKlass.cpp ! src/share/vm/oops/klass.inline.hpp ! src/share/vm/oops/klassVtable.cpp ! src/share/vm/oops/markOop.cpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/oops/oop.cpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/opto/block.cpp ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/chaitin.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/opto/gcm.cpp ! src/share/vm/opto/idealGraphPrinter.cpp ! src/share/vm/opto/ifg.cpp ! src/share/vm/opto/loopPredicate.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/parse1.cpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/phaseX.cpp ! src/share/vm/opto/regmask.cpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/opto/subnode.cpp ! src/share/vm/opto/type.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/jniCheck.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiEnter.xsl ! src/share/vm/prims/jvmtiEnvThreadState.cpp ! src/share/vm/prims/jvmtiEventController.cpp ! src/share/vm/prims/jvmtiExport.cpp ! src/share/vm/prims/jvmtiImpl.cpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/privilegedStack.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp ! src/share/vm/runtime/biasedLocking.cpp ! src/share/vm/runtime/compilationPolicy.cpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/fprofiler.cpp ! src/share/vm/runtime/frame.cpp ! src/share/vm/runtime/globals.cpp ! src/share/vm/runtime/handles.cpp ! src/share/vm/runtime/interfaceSupport.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/jniHandles.cpp ! src/share/vm/runtime/mutex.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/osThread.cpp ! src/share/vm/runtime/perfData.cpp ! src/share/vm/runtime/perfMemory.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/safepoint.hpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/signature.cpp ! src/share/vm/runtime/stackValue.cpp ! src/share/vm/runtime/stackValueCollection.cpp ! src/share/vm/runtime/stubCodeGenerator.cpp ! src/share/vm/runtime/sweeper.cpp ! src/share/vm/runtime/sweeper.hpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/timer.cpp ! src/share/vm/runtime/unhandledOops.cpp ! src/share/vm/runtime/vframe.cpp ! src/share/vm/runtime/vframe.hpp ! src/share/vm/runtime/vframeArray.cpp ! src/share/vm/runtime/virtualspace.cpp ! src/share/vm/runtime/vmThread.cpp ! src/share/vm/runtime/vm_operations.cpp ! src/share/vm/runtime/vm_version.cpp ! src/share/vm/services/attachListener.cpp ! src/share/vm/services/classLoadingService.cpp ! src/share/vm/services/diagnosticCommand.cpp ! src/share/vm/services/diagnosticFramework.cpp ! src/share/vm/services/heapDumper.cpp ! src/share/vm/services/lowMemoryDetector.cpp ! src/share/vm/services/management.cpp ! src/share/vm/services/memReporter.cpp ! src/share/vm/services/memSnapshot.cpp ! src/share/vm/services/memTrackWorker.cpp ! src/share/vm/services/nmtDCmd.cpp ! src/share/vm/services/threadService.cpp ! src/share/vm/trace/traceStream.hpp ! src/share/vm/utilities/array.hpp ! src/share/vm/utilities/bitMap.cpp ! src/share/vm/utilities/constantTag.cpp ! src/share/vm/utilities/debug.cpp ! src/share/vm/utilities/debug.hpp ! src/share/vm/utilities/events.cpp ! src/share/vm/utilities/events.hpp ! src/share/vm/utilities/exceptions.cpp ! src/share/vm/utilities/exceptions.hpp ! src/share/vm/utilities/globalDefinitions.hpp ! src/share/vm/utilities/globalDefinitions_gcc.hpp ! src/share/vm/utilities/numberSeq.cpp ! src/share/vm/utilities/ostream.cpp ! src/share/vm/utilities/ostream.hpp ! src/share/vm/utilities/quickSort.cpp ! src/share/vm/utilities/taskqueue.cpp ! src/share/vm/utilities/vmError.cpp ! src/share/vm/utilities/workgroup.cpp ! src/share/vm/utilities/xmlstream.cpp ! src/share/vm/utilities/xmlstream.hpp Changeset: f88688d5c78c Author: zgu Date: 2014-05-07 06:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f88688d5c78c 8041415: remove port.{cpp,hpp} files Summary: Hotspot should use standard headers and types Reviewed-by: coleenp, kvn ! src/share/vm/adlc/adlc.hpp ! src/share/vm/adlc/adlparse.hpp ! src/share/vm/adlc/filebuff.cpp ! src/share/vm/adlc/filebuff.hpp ! src/share/vm/adlc/output_h.cpp ! src/share/vm/asm/assembler.cpp ! src/share/vm/libadt/dict.cpp ! src/share/vm/libadt/dict.hpp - src/share/vm/libadt/port.cpp - src/share/vm/libadt/port.hpp ! src/share/vm/libadt/set.cpp ! src/share/vm/libadt/set.hpp ! src/share/vm/libadt/vectset.cpp ! src/share/vm/libadt/vectset.hpp ! src/share/vm/opto/block.cpp ! src/share/vm/opto/chaitin.hpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/divnode.cpp ! src/share/vm/opto/domgraph.cpp ! src/share/vm/opto/indexSet.cpp ! src/share/vm/opto/indexSet.hpp ! src/share/vm/opto/live.hpp ! src/share/vm/opto/loopnode.hpp ! src/share/vm/opto/mulnode.cpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/output.cpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/phase.hpp ! src/share/vm/opto/regmask.cpp ! src/share/vm/opto/regmask.hpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/opto/subnode.cpp ! src/share/vm/opto/type.hpp ! src/share/vm/precompiled/precompiled.hpp Changeset: 9b502ede714c Author: gziemski Date: 2014-05-07 14:16 -0500 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9b502ede714c 8038654: Separate SymbolTable and StringTable code Summary: Refactor stringTable class out of symbolTable, making sure all includes are minimal set and are sorted. Reviewed-by: coleenp, stefank ! src/share/vm/classfile/javaClasses.cpp + src/share/vm/classfile/stringTable.cpp + src/share/vm/classfile/stringTable.hpp ! src/share/vm/classfile/symbolTable.cpp ! src/share/vm/classfile/symbolTable.hpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/memory/genMarkSweep.cpp ! src/share/vm/memory/sharedHeap.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/init.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/reflection.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/utilities/hashtable.cpp Changeset: ff15e9a66f7b Author: ctornqvi Date: 2014-05-09 17:06 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ff15e9a66f7b 8042471: Unable to build JDK 9 Hotspot within VS2010 Summary: Fixed quoting issue and passing on defines to project file Reviewed-by: mgronlun, sla ! make/windows/projectfiles/common/Makefile Changeset: 1d9cd7b779a7 Author: ctornqvi Date: 2014-05-09 17:06 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1d9cd7b779a7 8042726: [TESTBUG] TEST.groups file was not updated after runtime/6925573/SortMethodsTest.java removal Summary: Removed runtime/6925573/SortMethodsTest.java from TEST.groups Reviewed-by: gtriantafill, lfoltan, coleenp, dholmes ! test/TEST.groups Changeset: aa3adb6da964 Author: coleenp Date: 2014-05-12 09:47 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/aa3adb6da964 Merge ! src/share/vm/adlc/output_h.cpp ! src/share/vm/classfile/javaClasses.cpp + src/share/vm/classfile/stringTable.cpp ! src/share/vm/classfile/symbolTable.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/libadt/dict.cpp - src/share/vm/libadt/port.cpp - src/share/vm/libadt/port.hpp ! src/share/vm/libadt/set.cpp ! src/share/vm/memory/sharedHeap.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/opto/block.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/regmask.cpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/opto/subnode.cpp ! src/share/vm/precompiled/precompiled.hpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/vmStructs.cpp Changeset: e657971fd67a Author: simonis Date: 2014-05-12 09:59 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e657971fd67a 8039805: Fix the signature of the global new/delete operators in allocation.cpp. Reviewed-by: dholmes, lfoltan ! make/aix/makefiles/vm.make ! make/bsd/makefiles/vm.make ! src/os/aix/vm/os_aix.cpp ! src/os/aix/vm/porting_aix.cpp ! src/share/vm/memory/allocation.cpp Changeset: 9ea2d010f47c Author: lfoltan Date: 2014-05-12 15:50 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9ea2d010f47c Merge ! src/os/aix/vm/os_aix.cpp ! src/share/vm/memory/allocation.cpp Changeset: 544227bb06d0 Author: hseigel Date: 2014-05-12 13:12 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/544227bb06d0 8040292: Annotation attributes must not appear more than once Summary: Add checks for duplicate attributes. Reviewed-by: coleenp, lfoltan ! src/share/vm/classfile/classFileParser.cpp + test/runtime/duplAttributes/DuplAttributes.jcod + test/runtime/duplAttributes/DuplAttributesTest.java + test/runtime/duplAttributes/test.jar Changeset: 21a8a08025a0 Author: mikael Date: 2014-05-12 06:17 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/21a8a08025a0 8042804: Support invoking Hotspot tests from top level Reviewed-by: sla, erikj ! test/Makefile Changeset: 05d8994e9f35 Author: ctornqvi Date: 2014-05-12 18:45 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/05d8994e9f35 Merge Changeset: 5e6dc4e3c761 Author: dholmes Date: 2014-05-12 20:20 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/5e6dc4e3c761 8032551: Remove UsePPCLWSYNC from globals.hpp Reviewed-by: lfoltan, zgu ! src/share/vm/runtime/globals.hpp Changeset: 722198b9fa26 Author: dholmes Date: 2014-05-12 20:25 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/722198b9fa26 Merge ! src/share/vm/runtime/globals.hpp Changeset: fef9b88e2585 Author: anoll Date: 2014-05-08 12:49 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/fef9b88e2585 8042431: compiler/7200264/TestIntVect.java fails with: Test Failed: AddVI 0 < 4 Summary: Define a new function that determines the minimum number of compiler threads for a particular platform/configuration. Reviewed-by: kvn ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp Changeset: 035c93dbff0b Author: twisti Date: 2014-05-08 15:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/035c93dbff0b Merge Changeset: 53acad1e7f52 Author: anoll Date: 2014-05-09 09:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/53acad1e7f52 8029343: CodeCache::allocate increments '_number_of_blobs' even if allocation fails. Summary: Incrementing the number of code blobs in CodeCache::allocate(...) is now only performed if allocation succeeds. The guarantee is fixed. Reviewed-by: kvn, iveresov Contributed-by: Tobias Hartmann ! src/share/vm/code/codeCache.cpp Changeset: c31d0c31e7bf Author: twisti Date: 2014-05-12 17:01 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c31d0c31e7bf Merge ! src/share/vm/code/codeCache.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp Changeset: 3d247564e2d8 Author: anoll Date: 2014-05-13 11:25 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3d247564e2d8 8021770: BackEdgeThreshold option is no longer used and should be removed Summary: The BackEdgeThreshold option is removed because it is no longer used. Reviewed-by: twisti, kvn, cjplummer Contributed-by: Tobias Hartmann ! src/cpu/ppc/vm/c2_globals_ppc.hpp ! src/cpu/sparc/vm/c1_globals_sparc.hpp ! src/cpu/sparc/vm/c2_globals_sparc.hpp ! src/cpu/x86/vm/c1_globals_x86.hpp ! src/cpu/x86/vm/c2_globals_x86.hpp ! src/cpu/zero/vm/shark_globals_zero.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: 975d903e1de3 Author: iveresov Date: 2014-05-13 11:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/975d903e1de3 8032463: VirtualDispatch test timeout with DeoptimizeALot Summary: Introduce code aging for warm method detection Reviewed-by: kvn, twisti ! src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp ! src/cpu/sparc/vm/c1_Runtime1_sparc.cpp ! src/cpu/x86/vm/c1_CodeStubs_x86.cpp ! src/cpu/x86/vm/c1_Runtime1_x86.cpp ! src/share/vm/c1/c1_CodeStubs.hpp ! src/share/vm/c1/c1_Compilation.hpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/c1/c1_LIRGenerator.hpp ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/c1/c1_Runtime1.hpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethod.hpp ! src/share/vm/oops/method.hpp ! src/share/vm/oops/methodCounters.cpp ! src/share/vm/oops/methodCounters.hpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/oops/methodData.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/parse.hpp ! src/share/vm/opto/parse1.cpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/deoptimization.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/sweeper.cpp ! src/share/vm/runtime/sweeper.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: 99dc0ff1d4c7 Author: vlivanov Date: 2014-03-11 15:06 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/99dc0ff1d4c7 8023461: Thread holding lock at safepoint that vm can block on: MethodCompileQueue_lock Reviewed-by: kvn, iveresov ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/compiler/compileBroker.hpp ! src/share/vm/oops/method.hpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/advancedThresholdPolicy.cpp Changeset: 3624b11235ba Author: simonis Date: 2014-05-14 12:09 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3624b11235ba 8043029: Change 8037816 breaks HS build with older GCC versions which don't support diagnostic pragmas Summary: Added conditions around macro definitions for pragmas. Reviewed-by: kvn ! src/share/vm/utilities/globalDefinitions_gcc.hpp Changeset: c98ef93bfe9a Author: iveresov Date: 2014-05-14 14:28 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c98ef93bfe9a 8043063: Code aging should allocate MethodCounters when flushing a method Summary: Make sure that MethodCounters are present when the method is flushed for the first time to switch on code aging Reviewed-by: kvn ! src/share/vm/runtime/sweeper.cpp Changeset: 466b58fa837b Author: twisti Date: 2014-05-15 11:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/466b58fa837b Merge - src/share/vm/libadt/port.cpp - src/share/vm/libadt/port.hpp ! src/share/vm/opto/compile.hpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: b329ff11a78c Author: amurillo Date: 2014-05-16 02:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b329ff11a78c Merge - src/share/vm/libadt/port.cpp - src/share/vm/libadt/port.hpp Changeset: be9e24a9d6c6 Author: lana Date: 2014-05-22 14:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/be9e24a9d6c6 Merge - src/share/vm/libadt/port.cpp - src/share/vm/libadt/port.hpp Changeset: 729d5480f7db Author: rasbold Date: 2014-05-21 10:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/729d5480f7db 8043354: 8043354: Make is_return_allocated() respect allocated objects than can method-escape Summary: In bcEscapeAnalyzer update the _allocated_escapes flag if a var escapes the method. Reviewed-by: kvn ! src/share/vm/ci/bcEscapeAnalyzer.cpp + test/compiler/EscapeAnalysis/TestAllocatedEscapesPtrComparison.java Changeset: 7bc0cccb2e2a Author: mseledtsov Date: 2014-05-14 10:38 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/7bc0cccb2e2a 8041938: [TESTBUG] runtime/SharedArchiveFile/CdsWriteError.java failed in RT_Baseline with 'Unable to create shared archive file' missing from stdout/stderr Summary: his test is unstable in automated testing system, team agreed to remove it Reviewed-by: coleenp, gtriantafill - test/runtime/SharedArchiveFile/CdsWriteError.java Changeset: 193b0ff17995 Author: ctornqvi Date: 2014-05-14 18:18 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/193b0ff17995 8042595: [TESTBUG] runtime/7110720/Test7110720.sh rarely fails with message "explicit compiler command file not read" Summary: Removed the shell test and moved the testcases into the already existing Java based tests Reviewed-by: coleenp, lfoltan - test/runtime/7110720/Test7110720.sh ! test/runtime/CommandLine/CompilerConfigFileWarning.java ! test/runtime/CommandLine/ConfigFileWarning.java Changeset: fdcbdafe2073 Author: drchase Date: 2014-05-14 22:54 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/fdcbdafe2073 8043164: Format warning in traceStream.hpp Summary: added cast to placate gcc Reviewed-by: kvn, zgu ! src/share/vm/trace/traceStream.hpp Changeset: 1a485aafdbb1 Author: sla Date: 2014-05-14 20:44 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1a485aafdbb1 8041934: com/sun/jdi/RepStep.java fails in RT_Baseline on all platforms with assert(_cur_stack_depth == count_frames()) failed: cur_stack_depth out of sync Summary: Missing call to jvmti_method_exit from native wrapper code Reviewed-by: twisti, dcubed, sspitsyn Contributed-by: rickard.backman at oracle.com ! src/cpu/sparc/vm/sharedRuntime_sparc.cpp ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp Changeset: cb82a30966ac Author: lfoltan Date: 2014-05-15 09:25 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/cb82a30966ac 8041918: BootstrapMethods attribute cannot be empty. Summary: Allow a BootstrapMethods attribute that contains an empty bootstrap_methods table where num_bootstrap_methods is equal to zero. Reviewed-by: coleenp, hseigel ! src/share/vm/classfile/classFileParser.cpp + test/runtime/classFileParserBug/TestEmptyBootstrapMethodsAttr.java + test/runtime/classFileParserBug/emptynumbootstrapmethods.jar + test/runtime/classFileParserBug/emptynumbootstrapmethods1.jcod + test/runtime/classFileParserBug/emptynumbootstrapmethods2.jcod Changeset: 30869b0daa3e Author: rdurbin Date: 2014-05-15 10:44 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/30869b0daa3e 8028749: java -version crashes with 'fatal error: heap walk aborted with error 1' Summary: check_heap() should only call HeapWalk() when HeapLock() is successful. Reviewed-by: ctornqvi, sla, dcubed ! src/os/windows/vm/os_windows.cpp Changeset: 47b707b6c4e7 Author: coleenp Date: 2014-05-15 17:38 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/47b707b6c4e7 8025580: Temporary flags: UseNewReflection and ReflectionWrapResolutionErrors Summary: The fix removes all UseNewReflection/ReflectionWrapResolutionErrors occurrences/logic and adds them into the list of obsolete_jvm_flags in arguments.cpp. Reviewed-by: coleenp, hseigel Contributed-by: ygaevsky at azulsystems.com ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/oops/method.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/reflection.cpp ! src/share/vm/runtime/reflection.hpp ! src/share/vm/runtime/vframe.cpp Changeset: 743b82ecdcd5 Author: coleenp Date: 2014-05-15 18:23 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/743b82ecdcd5 8038212: Method::is_valid_method() check has performance regression impact for stackwalking Summary: Only prune metaspace virtual spaces at safepoint so walking them is safe outside a safepoint. Reviewed-by: mgerdin, mgronlun, hseigel, stefank ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/classfile/classLoaderData.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/memory/allocation.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspace.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: 241facf68190 Author: minqi Date: 2014-05-15 20:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/241facf68190 8042885: java does not take hexadecimal number as vm option Summary: Java does not take number with hexadecimal format as options, fix enable hexadecimal format number can be used as vm option. Reviewed-by: coleenp, lfoltan, ctornqvi, hseigel, mseledtsov Contributed-by: yumin.qi at oracle.com ! src/share/vm/runtime/arguments.cpp ! src/share/vm/utilities/globalDefinitions.hpp + test/runtime/CommandLine/TestHexArguments.java Changeset: 06bfb8cd7b78 Author: sspitsyn Date: 2014-05-16 15:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/06bfb8cd7b78 8042796: jvmtiRedefineClasses.cpp: guarantee(false) failed: OLD and/or OBSOLETE method(s) found Summary: Relax the guaranty for deleted methods Reviewed-by: dcubed, coleenp Contributed-by: serguei.spitsyn at oracle.com ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/utilities/accessFlags.hpp Changeset: 4766a2df3115 Author: sspitsyn Date: 2014-05-17 01:59 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/4766a2df3115 8043264: hsdis library not picked up correctly on expected paths Summary: Fix file separator issue on Windows Reviewed-by: sla, sspitsyn Contributed-by: krismo at azulsystems.com ! src/share/vm/compiler/disassembler.cpp Changeset: e4d54c03efe7 Author: coleenp Date: 2014-05-17 19:34 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e4d54c03efe7 Merge ! src/share/vm/oops/method.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp - test/runtime/7110720/Test7110720.sh - test/runtime/SharedArchiveFile/CdsWriteError.java Changeset: 9c47176726c1 Author: sla Date: 2014-05-20 20:35 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9c47176726c1 8043314: Fix for JDK-8041934 causes assert(is_interpreted_frame()) failed: interpreted frame expected Summary: Back out fix for JDK-8041934 Reviewed-by: coleenp, sspitsyn ! src/cpu/sparc/vm/sharedRuntime_sparc.cpp ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp Changeset: 3eef593d19a2 Author: coleenp Date: 2014-05-21 19:08 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3eef593d19a2 Merge - test/runtime/7110720/Test7110720.sh - test/runtime/SharedArchiveFile/CdsWriteError.java Changeset: 3bcc6a0efddb Author: brutisso Date: 2014-05-08 10:29 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3bcc6a0efddb 8042474: Clean up duplicated code in RSHashTable Summary: Removed duplicate code in RSHashTable to fetch SparsePRTEntries Reviewed-by: tschatzl, brutisso Contributed-by: Andreas Sjoberg ! src/share/vm/gc_implementation/g1/sparsePRT.cpp ! src/share/vm/gc_implementation/g1/sparsePRT.hpp Changeset: dd531b743c04 Author: ehelin Date: 2014-05-09 09:59 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dd531b743c04 8034852: Shrinking of Metaspace high-water-mark causes incorrect OutOfMemoryErrors or back-to-back GCs Reviewed-by: jmasa, pliden, stefank ! src/share/vm/memory/metaspace.cpp Changeset: 34c97dff181d Author: jmasa Date: 2014-05-09 19:47 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/34c97dff181d Merge ! src/share/vm/memory/metaspace.cpp Changeset: 568b5cd02aee Author: jmasa Date: 2014-05-11 16:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/568b5cd02aee 8038928: gc/g1/TestGCLogMessages.java fail with "[Evacuation Failure' Reviewed-by: ysr, brutisso, tschatzl ! test/gc/g1/TestGCLogMessages.java Changeset: 3940073bc897 Author: pliden Date: 2014-05-14 13:32 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3940073bc897 8040803: G1: Concurrent mark hangs when mark stack overflows Reviewed-by: brutisso, ehelin ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/utilities/workgroup.cpp ! src/share/vm/utilities/workgroup.hpp Changeset: 480aa32305a3 Author: pliden Date: 2014-05-14 14:32 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/480aa32305a3 8040804: G1: Concurrent mark stuck in loop calling os::elapsedVTime() Reviewed-by: brutisso, tschatzl ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp Changeset: 2c3f3ca92a2b Author: jmasa Date: 2014-05-19 08:09 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/2c3f3ca92a2b Merge ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/utilities/workgroup.cpp Changeset: 6c107fc5ace3 Author: pliden Date: 2014-05-20 10:24 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6c107fc5ace3 8039042: G1: Phantom zeros in cardtable Reviewed-by: tschatzl, mgerdin ! src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp Changeset: f0d46ce87662 Author: jcoomes Date: 2014-05-20 10:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f0d46ce87662 8042255: make gc src file exclusion more automatic Reviewed-by: brutisso, stefank, dholmes, rdurbin ! make/excludeSrc.make Changeset: 8ec72dcefd74 Author: iignatyev Date: 2014-05-20 18:25 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8ec72dcefd74 8039489: Refactor test framework for dynamic VM options Reviewed-by: jmasa, ehelin, jwilhelm Contributed-by: dmitry.fazunenko at oracle.com ! test/gc/arguments/TestDynMaxHeapFreeRatio.java ! test/gc/arguments/TestDynMinHeapFreeRatio.java ! test/gc/parallelScavenge/TestDynShrinkHeap.java + test/testlibrary/com/oracle/java/testlibrary/DynamicVMOption.java - test/testlibrary/com/oracle/java/testlibrary/DynamicVMOptionChecker.java - test/testlibrary/com/oracle/java/testlibrary/TestDynamicVMOption.java Changeset: 9dfcd36b0adc Author: ehelin Date: 2014-05-21 16:11 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9dfcd36b0adc 8043639: Backout JDK-8034852: Shrinking of Metaspace high-water-mark causes incorrect OutOfMemoryErrors or back-to-back GCs Reviewed-by: stefank, tschatzl ! src/share/vm/memory/metaspace.cpp Changeset: 23a21eb6dcc3 Author: jmasa Date: 2014-05-22 06:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/23a21eb6dcc3 Merge ! src/share/vm/memory/metaspace.cpp - test/testlibrary/com/oracle/java/testlibrary/DynamicVMOptionChecker.java - test/testlibrary/com/oracle/java/testlibrary/TestDynamicVMOption.java Changeset: 75e1ec763270 Author: roland Date: 2014-05-15 09:09 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/75e1ec763270 8026694: New type profiling points break compilation replay Summary: fixes compilation replay with new profiling points Reviewed-by: kvn, twisti ! agent/src/share/classes/sun/jvm/hotspot/ci/ciEnv.java ! agent/src/share/classes/sun/jvm/hotspot/ci/ciKlass.java ! agent/src/share/classes/sun/jvm/hotspot/ci/ciMethod.java ! agent/src/share/classes/sun/jvm/hotspot/ci/ciMethodData.java - agent/src/share/classes/sun/jvm/hotspot/ci/ciReceiverTypeData.java - agent/src/share/classes/sun/jvm/hotspot/ci/ciVirtualCallData.java + agent/src/share/classes/sun/jvm/hotspot/oops/ArgInfoData.java + agent/src/share/classes/sun/jvm/hotspot/oops/CallTypeData.java + agent/src/share/classes/sun/jvm/hotspot/oops/CallTypeDataInterface.java ! agent/src/share/classes/sun/jvm/hotspot/oops/DataLayout.java ! agent/src/share/classes/sun/jvm/hotspot/oops/Method.java ! agent/src/share/classes/sun/jvm/hotspot/oops/MethodData.java + agent/src/share/classes/sun/jvm/hotspot/oops/MethodDataInterface.java + agent/src/share/classes/sun/jvm/hotspot/oops/ParametersTypeData.java ! agent/src/share/classes/sun/jvm/hotspot/oops/ReceiverTypeData.java + agent/src/share/classes/sun/jvm/hotspot/oops/ReturnTypeEntry.java + agent/src/share/classes/sun/jvm/hotspot/oops/SpeculativeTrapData.java + agent/src/share/classes/sun/jvm/hotspot/oops/TypeEntries.java + agent/src/share/classes/sun/jvm/hotspot/oops/TypeEntriesAtCall.java + agent/src/share/classes/sun/jvm/hotspot/oops/TypeStackSlotEntries.java ! agent/src/share/classes/sun/jvm/hotspot/oops/VirtualCallData.java + agent/src/share/classes/sun/jvm/hotspot/oops/VirtualCallTypeData.java ! src/share/vm/ci/ciMethodData.cpp ! src/share/vm/ci/ciMethodData.hpp ! src/share/vm/ci/ciReplay.cpp ! src/share/vm/oops/methodData.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: 6fe134d57261 Author: iveresov Date: 2014-05-15 10:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6fe134d57261 8043180: SIGSEGV in Events::log_deopt_message Summary: Added missing deopt reason name Reason_tenured Reviewed-by: kvn, twisti ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/deoptimization.hpp Changeset: d064d7b9d93b Author: kvn Date: 2014-01-27 10:20 -0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d064d7b9d93b 8032566: Crash in JIT when running Scala compiler (and compiling Scala std lib) Summary: Switch off EliminateAutoBox flag by default in jdk8 release. Reviewed-by: iveresov ! src/share/vm/opto/c2_globals.hpp Changeset: 13818eb5243c Author: kvn Date: 2014-05-16 12:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/13818eb5243c 8042786: Proper fix for 8032566 Summary: Check for overflow cases in range checks and collapse it if we can. Reviewed-by: jrose, iveresov ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/opto/ifnode.cpp ! src/share/vm/opto/phaseX.cpp ! src/share/vm/opto/subnode.cpp ! src/share/vm/opto/subnode.hpp Changeset: 1e0ea5a940c7 Author: kvn Date: 2014-05-16 12:06 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1e0ea5a940c7 Merge - agent/src/share/classes/sun/jvm/hotspot/ci/ciReceiverTypeData.java - agent/src/share/classes/sun/jvm/hotspot/ci/ciVirtualCallData.java Changeset: e7198bd15079 Author: twisti Date: 2014-05-16 14:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e7198bd15079 Merge - src/share/vm/libadt/port.cpp - src/share/vm/libadt/port.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: 9a7285acfb28 Author: twisti Date: 2014-05-16 14:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9a7285acfb28 Merge ! src/share/vm/opto/subnode.cpp Changeset: cd47f4593a96 Author: iignatyev Date: 2014-05-19 23:52 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/cd47f4593a96 8032498: compiler/ciReplay tests fail with StatusError: failed to clean up files after test... Reviewed-by: kvn ! test/compiler/ciReplay/TestVM.sh ! test/compiler/ciReplay/TestVM_no_comp_level.sh ! test/compiler/ciReplay/common.sh Changeset: f645d100b058 Author: bharadwaj Date: 2014-05-19 20:28 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f645d100b058 6563994: assert(wf.check_method_context(ctxk, m), "proper context") failed Summary: Check for redefined method before finding unique concrete method Reviewed-by: twisti, kvn ! src/share/vm/code/dependencies.cpp Changeset: 670808fbebd3 Author: bharadwaj Date: 2014-05-19 13:49 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/670808fbebd3 Merge Changeset: b97166f236bd Author: adlertz Date: 2014-05-20 09:35 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b97166f236bd 6883953: java -client -XX:ValueMapInitialSize=0 crashes Summary: Added lower bound check for ValueMapInitialSize Reviewed-by: kvn Contributed-by: ygaevsky at azulsystems.com ! src/share/vm/runtime/arguments.cpp Changeset: 4cc7fe54e0e1 Author: goetz Date: 2014-05-08 15:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/4cc7fe54e0e1 8042737: Introduce umbrella header prefetch.inline.hpp Reviewed-by: twisti, stefank ! src/os/aix/vm/thread_aix.inline.hpp ! src/os/bsd/vm/thread_bsd.inline.hpp ! src/os/linux/vm/thread_linux.inline.hpp ! src/os/solaris/vm/thread_solaris.inline.hpp ! src/os/windows/vm/thread_windows.inline.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1OopClosures.inline.hpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/space.cpp ! src/share/vm/memory/space.hpp ! src/share/vm/memory/space.inline.hpp ! src/share/vm/oops/klass.hpp ! src/share/vm/precompiled/precompiled.hpp ! src/share/vm/prims/unsafe.cpp + src/share/vm/runtime/prefetch.inline.hpp Changeset: 3ba6e0092f65 Author: kvn Date: 2014-05-21 12:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3ba6e0092f65 8043274: Test compiler/7184394/TestAESMain.java gets NPE on solaris Summary: save cipher len after registers are saved Reviewed-by: kvn Contributed-by: shrinivas.joshi at oracle.com ! src/cpu/sparc/vm/stubGenerator_sparc.cpp Changeset: ff1525ebc8b7 Author: twisti Date: 2014-05-22 16:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ff1525ebc8b7 Merge ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/runtime/arguments.cpp - test/runtime/7110720/Test7110720.sh - test/runtime/SharedArchiveFile/CdsWriteError.java - test/testlibrary/com/oracle/java/testlibrary/DynamicVMOptionChecker.java - test/testlibrary/com/oracle/java/testlibrary/TestDynamicVMOption.java Changeset: 170f6d733d7a Author: jcoomes Date: 2014-05-23 10:28 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/170f6d733d7a Merge - agent/src/share/classes/sun/jvm/hotspot/ci/ciReceiverTypeData.java - agent/src/share/classes/sun/jvm/hotspot/ci/ciVirtualCallData.java - test/runtime/7110720/Test7110720.sh - test/runtime/SharedArchiveFile/CdsWriteError.java - test/testlibrary/com/oracle/java/testlibrary/DynamicVMOptionChecker.java - test/testlibrary/com/oracle/java/testlibrary/TestDynamicVMOption.java Changeset: b14e7c0b7d3e Author: katleman Date: 2014-05-29 22:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b14e7c0b7d3e Added tag jdk9-b15 for changeset 170f6d733d7a ! .hgtags Changeset: d7a8e8a4965c Author: katleman Date: 2014-06-04 20:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d7a8e8a4965c Added tag jdk9-b16 for changeset b14e7c0b7d3e ! .hgtags Changeset: 2c2aa6de8f60 Author: coleenp Date: 2014-05-21 14:36 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/2c2aa6de8f60 8042727: nsk/jdb/unwatch/unwatch001 crash in InstanceKlass::methods_do(void (*)(Method*)) Summary: Only walk methods in instanceklass if the class is loaded Reviewed-by: dholmes, fparain ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/compiler/compilerOracle.cpp ! src/share/vm/compiler/compilerOracle.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/runtime/java.cpp Changeset: bef7fbf0fad0 Author: allwin Date: 2014-05-22 09:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/bef7fbf0fad0 8027230: Overflow in java.lang.instrument.Instrumentation.getObjectSize() method Reviewed-by: dholmes, sspitsyn ! src/share/vm/prims/jvmtiEnv.cpp ! test/TEST.groups + test/serviceability/jvmti/GetObjectSizeOverflow.java + test/serviceability/jvmti/GetObjectSizeOverflowAgent.java Changeset: 886599d8f918 Author: lfoltan Date: 2014-05-22 11:36 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/886599d8f918 8043301: Duplicate definitions in vm/runtime/sharedRuntimeTrans.cpp versus math.h in VS2013 Summary: Factor out definitions of copysignA and scalbnA into new file sharedRuntimeMath.hpp Reviewed-by: dholmes, coleenp, kvn + src/share/vm/runtime/sharedRuntimeMath.hpp ! src/share/vm/runtime/sharedRuntimeTrans.cpp ! src/share/vm/runtime/sharedRuntimeTrig.cpp Changeset: 16432bba405a Author: dsamersoff Date: 2014-05-22 13:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/16432bba405a 8042155: [TESTBUG] Tests for stack guard pages have to be cleaned up Summary: Tests for 6929067 and 8009062 should be composed to single test that provide better testing for stack guard pages behaviour Reviewed-by: coleenp, dcubed, dsimms - test/runtime/6929067/T.java - test/runtime/6929067/Test6929067.sh - test/runtime/6929067/invoke.c - test/runtime/InitialThreadOverflow/DoOverflow.java - test/runtime/InitialThreadOverflow/invoke.c - test/runtime/InitialThreadOverflow/testme.sh + test/runtime/StackGuardPages/DoOverflow.java + test/runtime/StackGuardPages/invoke.c + test/runtime/StackGuardPages/testme.sh Changeset: 74ca2ce0f7d7 Author: coleenp Date: 2014-05-23 16:43 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/74ca2ce0f7d7 Merge - test/runtime/6929067/T.java - test/runtime/6929067/Test6929067.sh - test/runtime/6929067/invoke.c - test/runtime/InitialThreadOverflow/DoOverflow.java - test/runtime/InitialThreadOverflow/invoke.c - test/runtime/InitialThreadOverflow/testme.sh Changeset: c07a0d0a06ca Author: coleenp Date: 2014-05-23 16:54 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c07a0d0a06ca 8043925: Fix typo in verifier.cpp Summary: Fix lookupswitch Reviewed-by: sla, coleenp Contributed-by: ygaevsky at azulsystems.com ! src/share/vm/classfile/verifier.cpp Changeset: b7db78671db9 Author: coleenp Date: 2014-05-23 21:34 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b7db78671db9 Merge Changeset: 385699caea74 Author: minqi Date: 2014-05-27 08:44 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/385699caea74 8038422: CDS test failed: assert((size % os::vm_allocation_granularity()) == 0) failed when limiting SharedMiscDataSize Summary: In debug version, the assert is against os::vm_allocation_granularity(), but in initialization, we use os::vm_page_size() to align the allocation size. In windows, _vm_page_size and _vm_allocation_granularity may not be same. In debug version, the assert is against os::vm_allocation_granularity(), but in initialization, we use os::vm_page_size() to align the allocation size. In windows, _vm_page_size and _vm_allocation_granularity may not be same. Reviewed-by: dholmes, iklam, jiangli, coleenp Contributed-by: yumin.qi at oracle.com ! src/share/vm/memory/metaspace.cpp Changeset: 68e6defdb086 Author: tschatzl Date: 2014-05-26 09:31 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/68e6defdb086 8043723: max_heap_for_compressed_oops() declared with size_t, but defined with uintx Summary: The mismatch in declaration and definition has been encountered when compiling on a platform where the sizes are different. Change the method definition to match the declaration. Reviewed-by: tschatzl, sjohanss Contributed-by: Dan Horak ! src/share/vm/runtime/arguments.cpp Changeset: abd312cd8cc2 Author: iignatyev Date: 2014-05-26 19:21 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/abd312cd8cc2 8040250: The test test/gc/parallelScavenge/TestDynShrinkHeap.java fails with OOME Reviewed-by: jmasa, iignatyev Contributed-by: dmitry.fazunenko at oracle.com ! test/gc/parallelScavenge/TestDynShrinkHeap.java Changeset: f2fd0ad01e7d Author: jmasa Date: 2014-05-29 13:01 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f2fd0ad01e7d Merge Changeset: 279b06e56692 Author: neliasso Date: 2014-05-21 11:25 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/279b06e56692 8031475: Missing oopmap in patching stubs Summary: Add patch test for lir_checkcast in compute_oop_map Reviewed-by: roland, twisti ! src/share/vm/c1/c1_LIR.cpp ! src/share/vm/c1/c1_LIR.hpp ! src/share/vm/c1/c1_LIRAssembler.cpp ! src/share/vm/c1/c1_LIRAssembler.hpp ! src/share/vm/c1/c1_LinearScan.cpp Changeset: dc8ee0a9f276 Author: twisti Date: 2014-05-23 09:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dc8ee0a9f276 Merge - test/runtime/7110720/Test7110720.sh - test/runtime/SharedArchiveFile/CdsWriteError.java - test/testlibrary/com/oracle/java/testlibrary/DynamicVMOptionChecker.java - test/testlibrary/com/oracle/java/testlibrary/TestDynamicVMOption.java Changeset: 53770f36ebdd Author: iignatyev Date: 2014-05-24 00:04 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/53770f36ebdd 8032970: Add stack size check methods to WhiteBox API Reviewed-by: twisti, kvn, iignatyev Contributed-by: kirill.shirokov at oracle.com ! src/share/vm/prims/whitebox.cpp ! test/TEST.groups + test/runtime/whitebox/WBStackSize.java ! test/testlibrary/whitebox/sun/hotspot/WhiteBox.java Changeset: 6f98662f1725 Author: roland Date: 2014-05-26 10:48 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6f98662f1725 8042557: compiler/uncommontrap/TestSpecTrapClassUnloading.java fails with: GC triggered before VM initialization completed Summary: larger heap size, bug fix when trying to exhaust memory Reviewed-by: vlivanov, twisti, kvn ! test/compiler/uncommontrap/TestSpecTrapClassUnloading.java Changeset: 3a210a641062 Author: roland Date: 2014-05-26 14:27 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3a210a641062 8043638: Multiple compilation attempts break LogCompulation, lead to confusing PrintInlining output Summary: dumps inlining only for last compilation attempt. Fix LogCompilation tool so it handles multiple compilation attempts. Reviewed-by: vlivanov, kvn ! src/share/tools/LogCompilation/src/com/sun/hotspot/tools/compiler/CallSite.java ! src/share/tools/LogCompilation/src/com/sun/hotspot/tools/compiler/Compilation.java ! src/share/tools/LogCompilation/src/com/sun/hotspot/tools/compiler/LogParser.java ! src/share/vm/opto/c2compiler.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp Changeset: 140b7b205a04 Author: iignatyev Date: 2014-05-26 19:05 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/140b7b205a04 8038924: Test bit-instructions fails with unexpected exit value on sparc Reviewed-by: kvn, iignatyev Contributed-by: filipp.zhinkin at oracle.com ! test/compiler/arguments/BMICommandLineOptionTestBase.java ! test/compiler/arguments/BMISupportedCPUTest.java ! test/compiler/arguments/BMIUnsupportedCPUTest.java ! test/compiler/arguments/TestUseCountTrailingZerosInstructionOnSupportedCPU.java ! test/compiler/arguments/TestUseCountTrailingZerosInstructionOnUnsupportedCPU.java Changeset: 539e0059f825 Author: mikael Date: 2014-05-27 16:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/539e0059f825 8043206: Fix signed vs. unsigned comparison warning in copy_sparc.hpp Reviewed-by: coleenp, lfoltan, kvn ! src/cpu/sparc/vm/copy_sparc.hpp Changeset: 102506d9d873 Author: iignatyev Date: 2014-05-28 14:42 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/102506d9d873 8043899: compiler/5091921/Test7005594.java fails if specified -Xmx is less than 1600m Reviewed-by: kvn, twisti, vlivanov ! test/compiler/5091921/Test7005594.java ! test/compiler/5091921/Test7005594.sh Changeset: dd46a4a1299c Author: iveresov Date: 2014-05-28 07:59 -1000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dd46a4a1299c 8044090: C1: Old value instead of new one is passed to post-barrier in UnsafeGetAndSetObject Summary: Pass correct value to post-barrier in UnsafeGetAndSetObject Reviewed-by: roland, vlivanov ! src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp Changeset: 39e7fbc6d865 Author: vlivanov Date: 2014-05-29 09:41 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/39e7fbc6d865 8034935: JSR 292 support for PopFrame has a fragile coupling with DirectMethodHandle Reviewed-by: twisti, jrose, sspitsyn ! src/share/vm/interpreter/interpreterRuntime.cpp Changeset: ee47d1257510 Author: twisti Date: 2014-05-30 09:49 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ee47d1257510 Merge ! test/TEST.groups - test/runtime/6929067/T.java - test/runtime/6929067/Test6929067.sh - test/runtime/6929067/invoke.c - test/runtime/InitialThreadOverflow/DoOverflow.java - test/runtime/InitialThreadOverflow/invoke.c - test/runtime/InitialThreadOverflow/testme.sh Changeset: 6a115a18858f Author: twisti Date: 2014-05-30 10:07 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6a115a18858f Merge Changeset: 4a0965f52d4d Author: amurillo Date: 2014-05-30 13:46 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/4a0965f52d4d Merge - test/runtime/6929067/T.java - test/runtime/6929067/Test6929067.sh - test/runtime/6929067/invoke.c - test/runtime/InitialThreadOverflow/DoOverflow.java - test/runtime/InitialThreadOverflow/invoke.c - test/runtime/InitialThreadOverflow/testme.sh Changeset: 14b656df31c2 Author: lana Date: 2014-06-05 19:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/14b656df31c2 Merge - test/runtime/6929067/T.java - test/runtime/6929067/Test6929067.sh - test/runtime/6929067/invoke.c - test/runtime/InitialThreadOverflow/DoOverflow.java - test/runtime/InitialThreadOverflow/invoke.c - test/runtime/InitialThreadOverflow/testme.sh Changeset: e1902bbbd93f Author: katleman Date: 2014-06-12 10:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e1902bbbd93f Added tag jdk9-b17 for changeset 14b656df31c2 ! .hgtags Changeset: 7fbeb8c266f4 Author: tbell Date: 2014-06-12 18:09 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/7fbeb8c266f4 8046474: Source changes needed to build JDK 9 with new platforms and compilers on Solaris and Linux Reviewed-by: erikj, dholmes ! make/jprt.properties Changeset: 871fd1285484 Author: tbell Date: 2014-06-12 18:42 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/871fd1285484 Merge Changeset: e52079ae774f Author: katleman Date: 2014-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e52079ae774f Added tag jdk9-b18 for changeset 871fd1285484 ! .hgtags Changeset: 18f15f589f38 Author: minqi Date: 2014-05-27 21:58 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/18f15f589f38 8043896: Error reporting for insufficient shared region size is incorrect Summary: In SharedSpaceType, we have three enum types which are used in report_out_of_shared_space(SharedSpaceType type). In fact we supplied more than three messages and flags. This leads the warning always gives wrong message with the first not used. Reviewed-by: iklam, coleenp Contributed-by: yumin.qi at oracle.com ! src/share/vm/utilities/debug.cpp Changeset: f637708ddc8a Author: poonam Date: 2014-05-28 06:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f637708ddc8a 8043086: Hotspot is expected to report OOM which is occurred String.intern(), but crashes in JDK8u5 Summary: In case of allocation failure, restore the value of _chunk in Arena Reviewed-by: dholmes, dcubed ! src/share/vm/memory/allocation.cpp Changeset: c597dc3eb862 Author: dsamersoff Date: 2014-05-28 07:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c597dc3eb862 6904403: assert(f == k->has_finalizer(),"inconsistent has_finalizer") with debug VM Summary: Don't assert if one of classes in hierarhy was redefined Reviewed-by: coleenp, sspitsyn ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp + test/runtime/RedefineFinalizer/Agent.java + test/runtime/RedefineFinalizer/Main.java + test/runtime/RedefineFinalizer/Martyr.java + test/runtime/RedefineFinalizer/MartyrSon.java + test/runtime/RedefineFinalizer/manifest.mf + test/runtime/RedefineFinalizer/testme.sh Changeset: c351f64e8468 Author: dsamersoff Date: 2014-05-28 15:03 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c351f64e8468 Merge Changeset: 561686afee4b Author: ctornqvi Date: 2014-05-28 22:59 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/561686afee4b 8043786: [TESTBUG] runtime/CommandLine/TestHexArguments.java test fails in nightly Summary: Changed test to not pass on external flags to child processes Reviewed-by: coleenp, hseigel ! test/runtime/CommandLine/TestHexArguments.java Changeset: ef650d0ce657 Author: lfoltan Date: 2014-05-29 08:58 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ef650d0ce657 8041623: Solaris Studio 12.4 C++ 5.13, CHECK_UNHANDLED_OOPS use of class oop's copy constructor definitions causing error level diagnostic. Summary: Fix several minor compilation issues with volatile oops for CHECK_UNHANDLED_OOPS support. Reviewed-by: coleenp, hseigel ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/oops/oopsHierarchy.hpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/services/memoryManager.cpp ! src/share/vm/services/memoryPool.cpp Changeset: b576b115df4d Author: dcubed Date: 2014-05-30 07:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b576b115df4d 8036823: Stack trace sometimes shows 'locked' instead of 'waiting to lock' Summary: Add a !owner check for 'waiting to lock' to catch current_pending_monitor corner cases. Reviewed-by: dholmes, sspitsyn, kmo, zgu Contributed-by: rednaxelafx at gmail.com, zhengyu.gu at oracle.com, daniel.daugherty at oracle.com ! src/share/vm/runtime/objectMonitor.cpp ! src/share/vm/runtime/vframe.cpp ! test/TEST.groups + test/runtime/Thread/TestThreadDumpMonitorContention.java Changeset: 5a0e360e6890 Author: sla Date: 2014-05-30 19:13 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/5a0e360e6890 8044398: Attach code should propagate errors in Diagnostic Commands as errors Reviewed-by: dcubed, mgronlun ! src/share/vm/services/attachListener.cpp Changeset: 073ae190b7d8 Author: coleenp Date: 2014-06-01 11:56 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/073ae190b7d8 Merge ! test/TEST.groups Changeset: a391f6c3cf22 Author: ykantser Date: 2014-06-02 11:20 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a391f6c3cf22 8043915: Tests get ClassNotFoundException: com.oracle.java.testlibrary.StreamPumper Reviewed-by: sla, allwin ! test/serviceability/ParserTest.java ! test/serviceability/attach/AttachWithStalePidFile.java ! test/serviceability/dcmd/DynLibDcmdTest.java ! test/serviceability/jvmti/GetObjectSizeOverflow.java ! test/serviceability/jvmti/TestRedefineWithUnresolvedClass.java ! test/serviceability/sa/jmap-hashcode/Test8028623.java ! test/serviceability/sa/jmap-hprof/JMapHProfLargeHeapTest.java ! test/testlibrary/ctw/test/ClassesDirTest.java ! test/testlibrary/ctw/test/ClassesListTest.java ! test/testlibrary/ctw/test/JarDirTest.java ! test/testlibrary/ctw/test/JarsTest.java Changeset: 63584da69379 Author: rdurbin Date: 2014-06-02 09:30 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/63584da69379 8038132: jprt bundles have libjsig.dylib in different place on OSX Summary: The build of Hotspot should not remove the symlinks for libjsig. Reviewed-by: dcubed, dholmes ! make/bsd/makefiles/universal.gmk Changeset: 29d15865d20f Author: ctornqvi Date: 2014-06-02 19:08 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/29d15865d20f 8044364: runtime/RedefineFinalizer test fails on windows Summary: Rewrote the test in pure Java, added RedefineClassHelper utility class Reviewed-by: coleenp, allwin, gtriantafill, dsamersoff - test/runtime/RedefineFinalizer/Agent.java - test/runtime/RedefineFinalizer/Main.java - test/runtime/RedefineFinalizer/Martyr.java - test/runtime/RedefineFinalizer/MartyrSon.java + test/runtime/RedefineFinalizer/RedefineFinalizer.java - test/runtime/RedefineFinalizer/manifest.mf - test/runtime/RedefineFinalizer/testme.sh + test/testlibrary/RedefineClassHelper.java + test/testlibrary_tests/RedefineClassTest.java Changeset: d90c3f26443e Author: ctornqvi Date: 2014-06-02 18:15 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d90c3f26443e Merge Changeset: 3f594e5d64e7 Author: mgronlun Date: 2014-06-03 09:44 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3f594e5d64e7 8044531: Event based tracing locks to rank as leafs where possible Reviewed-by: dcubed, dholmes ! src/share/vm/runtime/mutexLocker.cpp Changeset: 1ffd0bb18df9 Author: mseledtsov Date: 2014-06-02 21:36 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1ffd0bb18df9 8038587: [TESTBUG] Create CDS tests to exercise region sizes and base address Summary: Added new tests to cover missing CDS basic funtions Reviewed-by: coleenp, ctornqvi + test/runtime/SharedArchiveFile/LimitSharedSizes.java + test/runtime/SharedArchiveFile/SharedBaseAddress.java + test/runtime/SharedArchiveFile/SpaceUtilizationCheck.java Changeset: 3933f1093f1d Author: pliden Date: 2014-05-30 10:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3933f1093f1d 8044132: Quarantine unstable/broken GC tests Reviewed-by: ehelin, jwilhelm ! test/gc/arguments/TestParallelHeapSizeFlags.java ! test/gc/arguments/TestUseCompressedOopsErgo.java ! test/gc/g1/TestHumongousShrinkHeap.java ! test/gc/parallelScavenge/TestDynShrinkHeap.java Changeset: 9a3cdffad2fe Author: pliden Date: 2014-05-30 10:43 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9a3cdffad2fe 8042310: TestStringDeduplicationMemoryUsage test failing Reviewed-by: ehelin, jwilhelm - test/gc/g1/TestStringDeduplicationMemoryUsage.java ! test/gc/g1/TestStringDeduplicationTools.java Changeset: dfeba022fa92 Author: jmasa Date: 2014-06-02 06:29 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dfeba022fa92 Merge - test/gc/g1/TestStringDeduplicationMemoryUsage.java Changeset: bdfec31a50eb Author: pliden Date: 2014-06-03 10:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/bdfec31a50eb 8040807: G1: Enable G1CollectedHeap::stop() Reviewed-by: brutisso, jmasa, tschatzl ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/thread.cpp Changeset: 7b0229d35259 Author: brutisso Date: 2014-06-03 10:44 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/7b0229d35259 8043239: G1: Missing post barrier in processing of j.l.ref.Reference objects Summary: Removed all write barriers during reference processing and added explicit write barriers when iterating through the discovered list. Reviewed-by: pliden, jmasa, tschatzl ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/memory/referenceProcessor.cpp ! src/share/vm/memory/referenceProcessor.hpp Changeset: 0c5576e5d6f0 Author: brutisso Date: 2014-06-03 09:34 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0c5576e5d6f0 Merge ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Changeset: 825bd64ca4cd Author: ehelin Date: 2014-05-29 14:31 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/825bd64ca4cd 8042933: assert(capacity_until_gc >= committed_bytes) failed Reviewed-by: stefank, jmasa ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspace.hpp ! src/share/vm/runtime/thread.cpp + test/gc/metaspace/TestMetaspaceInitialization.java Changeset: a4122a36a875 Author: pliden Date: 2014-06-04 14:16 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a4122a36a875 8044768: Backout fix for JDK-8040807 Reviewed-by: brutisso, ehelin ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/thread.cpp Changeset: def2ba2f655e Author: jmasa Date: 2014-06-05 10:34 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/def2ba2f655e Merge ! src/share/vm/runtime/thread.cpp - test/gc/g1/TestStringDeduplicationMemoryUsage.java Changeset: 41be7ddc01b2 Author: amurillo Date: 2014-06-06 10:19 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/41be7ddc01b2 Merge - test/gc/g1/TestStringDeduplicationMemoryUsage.java Changeset: 83be138aecba Author: lana Date: 2014-06-12 15:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/83be138aecba Merge - test/gc/g1/TestStringDeduplicationMemoryUsage.java Changeset: 7a913131605d Author: lana Date: 2014-06-12 19:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/7a913131605d Merge - test/gc/g1/TestStringDeduplicationMemoryUsage.java Changeset: d4cffb3ae621 Author: lana Date: 2014-06-18 10:08 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d4cffb3ae621 Merge - test/gc/g1/TestStringDeduplicationMemoryUsage.java Changeset: 9920b4b5752d Author: katleman Date: 2014-06-19 11:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9920b4b5752d Added tag jdk9-b19 for changeset d4cffb3ae621 ! .hgtags Changeset: 774578bd0cb4 Author: anoll Date: 2014-05-30 06:50 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/774578bd0cb4 8011646: SEGV in compiled code with loop predication Summary: Remove control edge of load node to ensure that castPP removal sets the control edge correctly Reviewed-by: kvn, roland ! src/share/vm/opto/library_call.cpp + test/compiler/intrinsics/hashcode/TestHashCode.java Changeset: cb5694166a39 Author: mikael Date: 2014-05-29 16:01 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/cb5694166a39 8044071: Print format/argument warnings Reviewed-by: drchase, dholmes, lfoltan, twisti ! src/cpu/sparc/vm/compiledIC_sparc.cpp ! src/cpu/sparc/vm/frame_sparc.cpp ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/nativeInst_sparc.cpp ! src/cpu/sparc/vm/templateInterpreter_sparc.cpp ! src/cpu/sparc/vm/vtableStubs_sparc.cpp ! src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp ! src/os_cpu/linux_sparc/vm/vm_version_linux_sparc.cpp Changeset: 59e928332f9b Author: twisti Date: 2014-05-30 09:49 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/59e928332f9b Merge Changeset: 4d748c80ecc7 Author: thartmann Date: 2014-05-30 09:26 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/4d748c80ecc7 8021775: compiler/8009761/Test8009761.java "Failed: init recursive calls: 51. After deopt 50" Summary: Reimplemented the test using the Whitebox API to deterministically trigger compilation and deoptimization. Now allowing number of recursive calls to vary by 1. Reviewed-by: twisti, roland, iignatyev ! test/TEST.groups ! test/compiler/8009761/Test8009761.java Changeset: f8d261a8d2d3 Author: anoll Date: 2014-05-30 19:21 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f8d261a8d2d3 Merge Changeset: 7daf195e6193 Author: iignatyev Date: 2014-05-30 17:20 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/7daf195e6193 8038756: new WB API :: get/setVMFlag Reviewed-by: vlivanov, sla ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/globals.cpp ! src/share/vm/runtime/globals.hpp ! test/testlibrary/whitebox/sun/hotspot/WhiteBox.java + test/testlibrary_tests/whitebox/vm_flags/BooleanTest.java + test/testlibrary_tests/whitebox/vm_flags/DoubleTest.java + test/testlibrary_tests/whitebox/vm_flags/IntxTest.java + test/testlibrary_tests/whitebox/vm_flags/StringTest.java + test/testlibrary_tests/whitebox/vm_flags/Uint64Test.java + test/testlibrary_tests/whitebox/vm_flags/UintxTest.java + test/testlibrary_tests/whitebox/vm_flags/VmFlagTest.java Changeset: db6de1a01508 Author: iignatyev Date: 2014-05-30 20:01 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/db6de1a01508 Merge Changeset: 3533da0f7728 Author: thartmann Date: 2014-06-02 08:07 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3533da0f7728 8034812: remove IDX_INIT macro hack in Node class Summary: The IDX_INIT macro used by Node::Node(...) to retrieve the Compile object is removed and replaced by a call to Compile::current(). The Node constructor, new operator and all calls to it are adapted accordingly. Reviewed-by: kvn, jrose, iveresov, goetz ! src/cpu/ppc/vm/ppc.ad ! src/cpu/x86/vm/x86_32.ad ! src/share/vm/adlc/output_c.cpp ! src/share/vm/opto/addnode.cpp ! src/share/vm/opto/block.cpp ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/castnode.cpp ! src/share/vm/opto/cfgnode.cpp ! src/share/vm/opto/chaitin.cpp ! src/share/vm/opto/coalesce.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/connode.cpp ! src/share/vm/opto/connode.hpp ! src/share/vm/opto/convertnode.cpp ! src/share/vm/opto/divnode.cpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/opto/generateOptoStub.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/idealKit.cpp ! src/share/vm/opto/idealKit.hpp ! src/share/vm/opto/ifnode.cpp ! src/share/vm/opto/lcm.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/loopPredicate.cpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopUnswitch.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/opto/machnode.hpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/macro.hpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/movenode.cpp ! src/share/vm/opto/mulnode.cpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/output.cpp ! src/share/vm/opto/parse1.cpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/parse3.cpp ! src/share/vm/opto/parseHelper.cpp ! src/share/vm/opto/phaseX.cpp ! src/share/vm/opto/reg_split.cpp ! src/share/vm/opto/split_if.cpp ! src/share/vm/opto/stringopts.cpp ! src/share/vm/opto/subnode.cpp ! src/share/vm/opto/superword.cpp ! src/share/vm/opto/vectornode.cpp Changeset: 0dd11a2a56c5 Author: roland Date: 2014-06-02 10:01 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0dd11a2a56c5 8043413: REGRESSION: Hotspot causes segmentation fault in jdk8ux, but not in jdk7ux Summary: long series of lambda form calls trigger stack overflow in c2 Reviewed-by: kvn, vlivanov ! src/share/vm/opto/bytecodeInfo.cpp Changeset: c93ee08abe42 Author: iveresov Date: 2014-06-02 07:26 -1000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c93ee08abe42 8044496: 8034812 broke build with clang Summary: Remove superfluous clang-diagnostic-pop Reviewed-by: kvn, drchase ! src/share/vm/opto/node.cpp Changeset: bd8c98c69d8a Author: drchase Date: 2014-06-02 14:32 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/bd8c98c69d8a 8029381: assert(is_method_type()) failed: bad cast Summary: Access to method_type and appendix from constant pool (cpcache) needs to be guarded by is_f1_null() because of racy update/initialization. Reviewed-by: kvn, coleenp, jrose ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/cpCache.hpp Changeset: 463d8c2a1833 Author: drchase Date: 2014-06-02 15:49 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/463d8c2a1833 Merge Changeset: a98c4de4f66c Author: twisti Date: 2014-06-02 10:48 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a98c4de4f66c Merge ! test/TEST.groups - test/runtime/6929067/T.java - test/runtime/6929067/Test6929067.sh - test/runtime/6929067/invoke.c - test/runtime/InitialThreadOverflow/DoOverflow.java - test/runtime/InitialThreadOverflow/invoke.c - test/runtime/InitialThreadOverflow/testme.sh Changeset: a22a71c4bb2e Author: twisti Date: 2014-06-02 13:53 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a22a71c4bb2e Merge - test/runtime/6929067/T.java - test/runtime/6929067/Test6929067.sh - test/runtime/6929067/invoke.c - test/runtime/InitialThreadOverflow/DoOverflow.java - test/runtime/InitialThreadOverflow/invoke.c - test/runtime/InitialThreadOverflow/testme.sh Changeset: 45228c8cee0f Author: mikael Date: 2014-06-02 15:48 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/45228c8cee0f 8044242: Remove dead NativeMovRegMemPatching class Reviewed-by: twisti, kvn ! src/cpu/sparc/vm/nativeInst_sparc.cpp ! src/cpu/sparc/vm/nativeInst_sparc.hpp ! src/cpu/x86/vm/nativeInst_x86.hpp Changeset: b728cf7dfbec Author: iignatyev Date: 2014-06-04 00:25 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b728cf7dfbec 8044339: Update FilterSpuriousWakeups documentation. Review "Solaris only" vm options descriptions Reviewed-by: kvn, dholmes, iignatyev ! src/os/aix/vm/os_aix.cpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/share/vm/runtime/globals.hpp Changeset: 4c2438fc4e6e Author: mikael Date: 2014-06-03 18:24 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/4c2438fc4e6e 8044735: Print format/argument warnings Reviewed-by: twisti, kvn ! src/cpu/sparc/vm/debug_sparc.cpp ! src/cpu/sparc/vm/methodHandles_sparc.cpp ! src/cpu/sparc/vm/sparc.ad Changeset: 82a396fba1e6 Author: rbackman Date: 2014-06-04 10:01 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/82a396fba1e6 8031994: java/lang/Character/CheckProp test times out Reviewed-by: iveresov, roland ! src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp ! src/cpu/x86/vm/c1_LIRGenerator_x86.cpp ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/c1/c1_Instruction.hpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/c1/c1_LIRGenerator.hpp Changeset: 6ad207fd3e26 Author: rbackman Date: 2014-05-22 13:42 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6ad207fd3e26 8030976: Untaken paths should be more vigorously pruned at highest optimization level Reviewed-by: roland, vlivanov ! src/share/vm/oops/methodData.hpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/deoptimization.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: 88c2bc28102a Author: thartmann Date: 2014-06-05 10:43 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/88c2bc28102a 8031389: On x86 C1 emits two relocations for polls Summary: C1 emits two poll_type relocations at safepoint polls because LIR_Assembler::safepoint_poll(..) adds a relocation and calls LIR_Assembler::add_debug_info_for_branch(..) which adds a relocation as well. The implementation of add_debug_info_for_branch(..) is changed to not emit a poll relocation. Reviewed-by: kvn, roland ! src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp ! src/share/vm/c1/c1_LIRAssembler.cpp Changeset: ab1ad25fe0b9 Author: kvn Date: 2014-06-06 11:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ab1ad25fe0b9 Merge ! test/TEST.groups Changeset: 68d348f8d4c1 Author: amurillo Date: 2014-06-06 13:31 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/68d348f8d4c1 Merge - test/gc/g1/TestStringDeduplicationMemoryUsage.java Changeset: c9764091440d Author: vlivanov Date: 2014-06-09 11:49 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c9764091440d 8046226: assert(_thread == Thread::current()) failed: thread must be current w/ -XX:+TraceDeoptimization -XX:+Verbose Reviewed-by: twisti, dcubed, fparain ! src/share/vm/runtime/vframe.cpp Changeset: 3cb509208318 Author: kvn Date: 2014-06-09 15:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3cb509208318 8046275: Fastdebug build failing on jdk9/hs/ control jobs after pulling some hs-comp changes Summary: Add missing check for Opaque nodes from loop predicates in clone_loop(). Reviewed-by: iveresov ! src/share/vm/opto/loopopts.cpp Changeset: bf9221b27bb8 Author: jwilhelm Date: 2014-04-30 02:41 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/bf9221b27bb8 8026396: Remove information duplication in the collector policy Summary: Cleaned up the usage of flags in collector policy. Reviewed-by: sjohanss, jcoomes ! src/share/vm/memory/collectorPolicy.cpp Changeset: 997484ade1c5 Author: jwilhelm Date: 2014-05-02 02:11 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/997484ade1c5 8042298: Remove the names gen0 and gen1 from the GC code Summary: Renamed gen0 and gen1 to young and old throughout the GC code. Reviewed-by: sjohanss, jcoomes ! src/share/vm/gc_implementation/concurrentMarkSweep/cmsAdaptiveSizePolicy.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/cmsCollectorPolicy.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/gc_implementation/parallelScavenge/adjoiningGenerations.cpp ! src/share/vm/gc_implementation/parallelScavenge/generationSizer.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/tenuredGeneration.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: 7b37566be57d Author: jmasa Date: 2014-06-10 20:46 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/7b37566be57d Merge ! src/share/vm/runtime/globals.hpp Changeset: 1abbc1e91ac5 Author: iignatyev Date: 2014-06-11 18:56 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1abbc1e91ac5 8044673: Create jtreg groups to list GC specific tests Reviewed-by: dholmes, iignatyev Contributed-by: dmitry.fazunenko at oracle.com ! test/TEST.groups Changeset: dd503688f9e3 Author: thartmann Date: 2014-06-10 08:53 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dd503688f9e3 8033145: Runtime1::arraycopy_count_address uses wrong _oop_arraycopy_cnt variable Summary: The method Runtime1::arraycopy_count_address(..) returns the address of Runtime::_oop_arraycopy_cnt instead of the the file static variable _oop_arraycopy_cnt. Reviewed-by: roland, kvn, twisti ! src/share/vm/c1/c1_Runtime1.cpp Changeset: dd14b24efd49 Author: vlivanov Date: 2014-06-10 10:00 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dd14b24efd49 8033626: assert(ex_map->jvms()->same_calls_as(_exceptions->jvms())) failed: all collected exceptions must come from the same place Reviewed-by: kvn, roland ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/library_call.cpp + test/compiler/intrinsics/clone/TestObjectClone.java Changeset: e38bb04f030d Author: roland Date: 2014-06-10 13:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e38bb04f030d 8026796: Make replace_in_map() on parent maps generic Summary: propagate node replacements along control flow edges to callers Reviewed-by: kvn, vlivanov ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/callGenerator.hpp ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/callnode.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/parse.hpp ! src/share/vm/opto/parse1.cpp + src/share/vm/opto/replacednodes.cpp + src/share/vm/opto/replacednodes.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/utilities/growableArray.hpp Changeset: 93a279538de3 Author: neliasso Date: 2014-06-09 10:32 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/93a279538de3 8040244: compiler/whitebox/IsMethodCompilableTest.java fails Summary: Prevent from running with Xcomp Reviewed-by: kvn, twisti ! test/compiler/whitebox/IsMethodCompilableTest.java Changeset: 9be8f500449d Author: kvn Date: 2014-06-10 12:28 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9be8f500449d 8035605: Expand functionality of PredictedIntrinsicGenerator Summary: Allow several predicates and separate intrinsic methods per one intrinsified (virtual) method. Reviewed-by: roland ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/callGenerator.hpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/library_call.cpp Changeset: 3a74595493cb Author: kvn Date: 2014-06-10 12:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3a74595493cb Merge Changeset: 0960c95f2343 Author: iignatyev Date: 2014-06-10 23:18 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0960c95f2343 8044575: testlibrary_tests/whitebox/vm_flags/UintxTest.java failed: assert(!res || TypeEntriesAtCall::arguments_profiling_enabled()) failed: no profiling of arguments Reviewed-by: kvn, jmasa ! test/testlibrary_tests/whitebox/vm_flags/UintxTest.java ! test/testlibrary_tests/whitebox/vm_flags/VmFlagTest.java Changeset: c91a320f3124 Author: iignatyev Date: 2014-06-10 20:53 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c91a320f3124 Merge Changeset: f3624d042de0 Author: thartmann Date: 2014-06-11 09:16 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f3624d042de0 8044538: assert(which != imm_operand) failed: instruction is not a movq reg, imm64 Summary: Fixed internal_word_Relocation::target() to not retrieve target address from code if relocation points into the constant section. Added test. Reviewed-by: kvn, twisti, dlong ! src/share/vm/code/relocInfo.cpp + test/compiler/relocations/TestPrintRelocations.java Changeset: edf93f2ccf99 Author: kvn Date: 2014-06-11 11:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/edf93f2ccf99 8035968: Leverage CPU Instructions to Improve SHA Performance on SPARC Summary: Add C2 SHA intrinsics on SPARC Reviewed-by: kvn, roland Contributed-by: james.cheng at oracle.com ! src/cpu/sparc/vm/assembler_sparc.hpp ! src/cpu/sparc/vm/stubGenerator_sparc.cpp ! src/cpu/sparc/vm/stubRoutines_sparc.hpp ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/cpu/sparc/vm/vm_version_sparc.hpp ! src/cpu/x86/vm/vm_version_x86.cpp ! src/os_cpu/solaris_sparc/vm/vm_version_solaris_sparc.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/opto/runtime.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/stubRoutines.cpp ! src/share/vm/runtime/stubRoutines.hpp + test/compiler/intrinsics/sha/TestSHA.java Changeset: 455be7c3df86 Author: kvn Date: 2014-06-12 10:15 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/455be7c3df86 8046516: Segmentation fault in JVM (easily reproducible) Summary: Place new nodes on the previous loop exit in reorg_offsets(). Reviewed-by: roland ! src/share/vm/opto/loopopts.cpp + test/compiler/loopopts/TestLogSum.java Changeset: d8d7bf7dcaba Author: mduigou Date: 2014-06-12 16:31 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d8d7bf7dcaba 8032045: Enable compiler and linker safety switches for debug builds Summary: Enable GCC linker protections, runtime bounds checks and stack protection. Reviewed-by: dholmes, kvn, coleenp ! make/bsd/makefiles/fastdebug.make ! make/bsd/makefiles/gcc.make ! make/linux/makefiles/fastdebug.make ! make/linux/makefiles/gcc.make ! make/solaris/makefiles/gcc.make Changeset: 5342877674a5 Author: kvn Date: 2014-06-13 10:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/5342877674a5 Merge ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: fedc61f9456a Author: amurillo Date: 2014-06-13 12:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/fedc61f9456a Merge Changeset: b7b7eb358428 Author: lana Date: 2014-06-18 10:56 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b7b7eb358428 Merge Changeset: c1af79d122ec Author: lana Date: 2014-06-20 10:15 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c1af79d122ec Merge Changeset: 17b4a5e831b3 Author: katleman Date: 2014-06-26 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/17b4a5e831b3 Added tag jdk9-b20 for changeset c1af79d122ec ! .hgtags Changeset: 39bac689e998 Author: katleman Date: 2014-07-03 11:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/39bac689e998 Added tag jdk9-b21 for changeset 17b4a5e831b3 ! .hgtags Changeset: b064724bbd6d Author: miauno Date: 2014-06-02 17:21 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b064724bbd6d 8044540: serviceability/sa/jmap-hashcode/Test8028623.java should be quarantined Reviewed-by: sla ! test/serviceability/sa/jmap-hashcode/Test8028623.java Changeset: 56a35b09e0d4 Author: sla Date: 2014-06-04 11:05 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/56a35b09e0d4 8044107: Add Diagnostic Command to list all ClassLoaders Reviewed-by: mgerdin, stefank ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/classfile/classLoaderData.hpp + src/share/vm/classfile/classLoaderStats.cpp + src/share/vm/classfile/classLoaderStats.hpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspace.hpp ! src/share/vm/runtime/vm_operations.hpp ! src/share/vm/services/diagnosticCommand.cpp + test/serviceability/dcmd/ClassLoaderStatsTest.java Changeset: 7ec6629578ac Author: ctornqvi Date: 2014-06-06 14:46 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/7ec6629578ac 8043492: ad_x86_64_misc.obj : error LNK2011: precompiled object not linked in; image may not run Summary: Added _build_pch_file.obj to LD_FLAGS and cleaned up support for older Visual Studio versions Reviewed-by: twisti, lfoltan, sla, kvn ! make/windows/create.bat ! make/windows/makefiles/compile.make ! make/windows/makefiles/rules.make ! make/windows/makefiles/sa.make ! make/windows/makefiles/sanity.make ! make/windows/makefiles/vm.make ! make/windows/projectfiles/common/Makefile ! src/share/vm/runtime/vm_version.cpp Changeset: 88085a8f62d5 Author: sla Date: 2014-06-09 11:03 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/88085a8f62d5 8044797: Building with clang gives: fatal error: file '...' has been modified since the precompiled header was built Reviewed-by: dholmes, dcubed ! make/bsd/makefiles/vm.make ! make/linux/makefiles/vm.make Changeset: d2415cf889bc Author: hseigel Date: 2014-06-10 14:04 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d2415cf889bc 8044738: Check attribute_length of EnclosingMethod attribute Summary: Add check that attribute_length == 4. Reviewed-by: fparain, coleenp, lfoltan ! src/share/vm/classfile/classFileParser.cpp + test/runtime/EnclosingMethodAttr/EnclMethTest.jcod + test/runtime/EnclosingMethodAttr/EnclMethodAttr.java + test/runtime/EnclosingMethodAttr/enclMethodAttr.jar Changeset: 0186fbbdc50c Author: dcubed Date: 2014-06-10 20:24 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0186fbbdc50c Merge ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspace.hpp Changeset: f25701035057 Author: dsimms Date: 2014-06-11 12:09 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f25701035057 6311046: -Xcheck:jni should support checking of GetPrimitiveArrayCritical. Summary: Wrapped memory with standard bounds checking "GuardedMemory". Reviewed-by: zgu, fparain, dcubed + src/share/vm/memory/guardedMemory.cpp + src/share/vm/memory/guardedMemory.hpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/jniCheck.cpp ! src/share/vm/runtime/os.cpp Changeset: afe58d604f28 Author: hseigel Date: 2014-06-11 09:58 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/afe58d604f28 8031819: Remove legacy jdk checks and code Summary: Delete old jdk specific code. Reviewed-by: dholmes, coleenp, zgu, lfoltan ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/classfile/classLoader.hpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/method.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/java.hpp ! src/share/vm/runtime/reflection.cpp ! src/share/vm/runtime/reflection.hpp ! src/share/vm/runtime/reflectionUtils.cpp ! src/share/vm/runtime/serviceThread.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vframe.cpp ! src/share/vm/runtime/vm_operations.cpp ! src/share/vm/runtime/vm_version.cpp ! src/share/vm/services/management.cpp ! src/share/vm/services/threadService.cpp Changeset: 232dbf06eb07 Author: dsimms Date: 2014-06-11 18:34 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/232dbf06eb07 8043224: -Xcheck:jni improvements to exception checking and excessive local refs Summary: Warning when not checking exceptions from function that require so, also when local refs expand beyond capacity. Reviewed-by: zgu, coleenp, hseigel ! src/share/vm/memory/guardedMemory.hpp ! src/share/vm/prims/jniCheck.cpp ! src/share/vm/runtime/jniHandles.cpp ! src/share/vm/runtime/jniHandles.hpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp Changeset: eb8a53efa923 Author: dsimms Date: 2014-06-12 11:34 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/eb8a53efa923 8046662: Check JNI ReleaseStringChars / ReleaseStringUTFChars verify_guards test inverted Summary: negative verify_guards when testing for corruption Reviewed-by: sla, fparain ! src/share/vm/prims/jniCheck.cpp Changeset: 76f46c5351e1 Author: lfoltan Date: 2014-06-12 13:37 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/76f46c5351e1 6961433: Revisit need to disable Windows C++ compiler optimisation of sharedRuntimeTrig.cpp. Summary: Remove pragma optimize ("", off) to turn off optimization for WIN32. Reviewed-by: coleenp, dcubed, kvn ! src/share/vm/runtime/sharedRuntimeTrig.cpp Changeset: fdcc91703a7e Author: dcubed Date: 2014-06-12 15:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/fdcc91703a7e 8046287: [TESTBUG] runtime/Thread/TestThreadDumpMonitorContention.java failed error_cnt=12 Summary: Added a new header waiting pattern to catch the case where the target thread waiting on a condition (like a VM op); several other test improvements Reviewed-by: sspitsyn, dholmes ! test/runtime/Thread/TestThreadDumpMonitorContention.java Changeset: b19ccfb09cf2 Author: dsamersoff Date: 2014-06-13 05:10 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b19ccfb09cf2 8038392: Generating prelink cache breaks JAVA 'jinfo' utility normal behaviour Summary: Better parsing of /proc/pid/maps in sa Reviewed-by: sspitsyn, sla ! agent/src/os/linux/ps_proc.c Changeset: 52992e1b76eb Author: dcubed Date: 2014-06-13 19:07 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/52992e1b76eb Merge ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/runtime/arguments.cpp Changeset: d9f77ba99034 Author: dcubed Date: 2014-06-17 12:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d9f77ba99034 8046758: cleanup non-indent white space issues prior to Contended Locking cleanup bucket Summary: Checkpoint do_space_filter.ksh cleanups for Contended Locking. Reviewed-by: sspitsyn, coleenp ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/runtime/objectMonitor.cpp ! src/share/vm/runtime/objectMonitor.hpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp Changeset: 90ebb569b57e Author: ddehaven Date: 2014-06-17 11:18 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/90ebb569b57e 8043340: [macosx] Fix hard-wired paths to JavaVM.framework Summary: Build system tweaks to allow building with Xcode 5 and on OS X 10.9 and later Reviewed-by: erikj, henryjen, dholmes ! agent/src/os/bsd/MacosxDebuggerLocal.m ! agent/src/os/bsd/Makefile ! make/bsd/makefiles/saproc.make Changeset: 733b13cf9d40 Author: coleenp Date: 2014-06-18 13:58 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/733b13cf9d40 8039150: host_klass invariant fails when verifying newly loaded JSR-292 anonymous classes Summary: Initialize host_klass while parsing the class with the other initializations. Reviewed-by: sspitsyn, stefank ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/systemDictionary.cpp Changeset: c021ec40774f Author: iveresov Date: 2014-06-18 10:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c021ec40774f 8046684: sharedRuntime.cpp...assert(((nmethod*)cb)->is_at_poll_or_poll_return(pc)) failed: safepoint polling: type must be poll Summary: Emit a poll relocation for the testl in is_polling_page_far() on x86 Reviewed-by: vlivanov, roland ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp Changeset: b1df6ed438eb Author: iveresov Date: 2014-06-18 12:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b1df6ed438eb Merge Changeset: a2f5d920638e Author: dcubed Date: 2014-06-18 14:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a2f5d920638e 8047156: cleanup more non-indent white space issues prior to Contended Locking cleanup bucket Summary: Checkpoint some missed do_space_filter.ksh cleanups for Contended Locking. Reviewed-by: sspitsyn, lfoltan, coleenp ! src/os/bsd/vm/os_bsd.hpp ! src/os/linux/vm/os_linux.hpp ! src/os/solaris/vm/os_solaris.hpp ! src/share/vm/runtime/atomic.hpp ! src/share/vm/runtime/mutex.cpp ! src/share/vm/runtime/sharedRuntime.hpp ! src/share/vm/runtime/synchronizer.hpp Changeset: 2e73c43c2d70 Author: pliden Date: 2014-06-13 13:46 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/2e73c43c2d70 8044796: G1: Enable G1CollectedHeap::stop() Reviewed-by: brutisso, sjohanss ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/thread.cpp Changeset: cc616eae2670 Author: amurillo Date: 2014-06-13 19:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/cc616eae2670 Merge Changeset: 64e35dfa4ff5 Author: jwilhelm Date: 2014-06-13 17:07 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/64e35dfa4ff5 8046408: Build failure from multiple ptrace.h Summary: prefer over Reviewed-by: sla, mikael Contributed-by: kim.barrett at oracle.com ! agent/src/os/linux/libproc.h Changeset: f375fb6a4371 Author: tschatzl Date: 2014-06-18 13:25 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f375fb6a4371 8043722: Swapped usage of idx_t and bm_word_t types in parMarkBitMap.cpp Summary: Clean up usage of idx_t and uintptr_t when using it in conjunction with BitMap::set_map(), casting to the appropriate type. Fixes compilation on S390. Reviewed-by: tschatzl Contributed-by: Dan Horak ! src/share/vm/compiler/methodLiveness.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp Changeset: c0b3ddf06856 Author: jwilhelm Date: 2014-06-12 20:15 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c0b3ddf06856 8046715: Add a way to verify an extended set of command line options Summary: Added arguments_ext.cpp to make place for initialization of extended features Reviewed-by: sla, mgronlun ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp + src/share/vm/runtime/arguments_ext.cpp Changeset: 33f651a79605 Author: jwilhelm Date: 2014-06-18 13:02 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/33f651a79605 Merge Changeset: d148d33c5f68 Author: jmasa Date: 2014-06-18 12:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d148d33c5f68 Merge ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/thread.cpp Changeset: 3d52a2d0be43 Author: jmasa Date: 2014-06-19 09:44 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3d52a2d0be43 Merge Changeset: dcc6581cf655 Author: iignatyev Date: 2014-06-16 15:12 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dcc6581cf655 8044742: testlibrary_tests/whitebox/vm_flags/BooleanTest.java NoClassDefFoundError: com/oracle/java/testlibrary/JDKToolFinder Reviewed-by: kvn, roland ! test/testlibrary_tests/whitebox/vm_flags/BooleanTest.java Changeset: 2399ebcea84d Author: mikael Date: 2014-06-16 16:27 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/2399ebcea84d 8046769: Set T family feature bit on Niagara systems Reviewed-by: kvn, iveresov ! src/os_cpu/linux_sparc/vm/vm_version_linux_sparc.cpp Changeset: f9b746f2a1f4 Author: twisti Date: 2014-06-19 12:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f9b746f2a1f4 Merge Changeset: b70485f2a5b9 Author: amurillo Date: 2014-06-20 11:10 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b70485f2a5b9 Merge Changeset: 5db710baccbd Author: lana Date: 2014-07-01 14:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/5db710baccbd Merge Changeset: 518d1fcc0799 Author: lana Date: 2014-07-09 10:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/518d1fcc0799 Merge Changeset: eca996da9bb4 Author: katleman Date: 2014-07-10 12:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/eca996da9bb4 Added tag jdk9-b22 for changeset 518d1fcc0799 ! .hgtags Changeset: b188e2fd26d7 Author: coleenp Date: 2014-06-19 11:16 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b188e2fd26d7 8026977: NPG: Remove ConstantPool::lock Summary: Write klass and resolved_references constant pool fields lock free. Reviewed-by: jrose, twisti ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciReplay.cpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classLoaderData.hpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/objArrayOop.cpp ! src/share/vm/oops/objArrayOop.hpp ! src/share/vm/prims/jvmtiEnv.cpp Changeset: fcbb13e52461 Author: coleenp Date: 2014-06-19 14:49 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/fcbb13e52461 6642881: Improve performance of Class.getClassLoader() Summary: Add classLoader to java/lang/Class instance for fast access Reviewed-by: alanb, lfoltan, rriggs, vlivanov, twisti, jfranck ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/oops/arrayKlass.cpp ! src/share/vm/oops/klass.cpp ! src/share/vm/prims/unsafe.cpp Changeset: fa67e3591b91 Author: gtriantafill Date: 2014-06-20 10:12 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/fa67e3591b91 8038074: [TESTBUG] Add test for anewarray instruction with more than 255 dimensions Reviewed-by: lfoltan, coleenp + test/runtime/verifier/TestANewArray.java Changeset: c283096252e3 Author: mikael Date: 2014-06-20 11:19 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c283096252e3 8046611: Build errors with gcc on sparc/fastdebug Reviewed-by: dholmes, ctornqvi ! src/cpu/sparc/vm/frame_sparc.cpp ! src/share/vm/runtime/safepoint.cpp Changeset: 4463d2155e02 Author: dcubed Date: 2014-06-20 12:45 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/4463d2155e02 Merge Changeset: 14a7c72928a4 Author: dcubed Date: 2014-06-20 20:37 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/14a7c72928a4 Merge Changeset: 0a039fc78645 Author: mikael Date: 2014-06-18 12:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0a039fc78645 8046471: Use OPENJDK_TARGET_CPU_ARCH instead of legacy value for hotspot ARCH Reviewed-by: erikj, dholmes ! make/linux/makefiles/defs.make Changeset: 3acb22b10934 Author: dholmes Date: 2014-06-22 21:23 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3acb22b10934 8044818: [TESTBUG] runtime/CDSCompressedKPtrs/XShareAuto.java fails with RuntimeException 'sharing' found in stderr Reviewed-by: hseigel, lfoltan, coleenp, dholmes Contributed-by: Pavel Chistyakov ! test/runtime/CDSCompressedKPtrs/XShareAuto.java Changeset: 45831d971923 Author: fparain Date: 2014-06-23 06:58 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/45831d971923 8043630: Method os::yield_all() should be removed Reviewed-by: dholmes, dsimms ! src/os/aix/vm/os_aix.cpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/services/memTracker.hpp Changeset: 97e0bce5bc53 Author: ctornqvi Date: 2014-06-23 14:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/97e0bce5bc53 8047878: [TESTBUG] runtime/memory/ReadFromNoaccessArea.java and runtime/memory/ReserveMemory.java time out on Solaris Summary: Limited heap size to reduce size of core file generated Reviewed-by: sla, coleenp, dcubed ! test/runtime/memory/ReadFromNoaccessArea.java ! test/runtime/memory/ReserveMemory.java Changeset: 74ab5b554535 Author: poonam Date: 2014-06-24 02:19 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/74ab5b554535 8046282: SA update Summary: These changes add some definitions on the SA side and the supporting code on the hotspot side. Reviewed-by: sundar, mgronlun + agent/src/share/classes/sun/jvm/hotspot/gc_interface/G1YCType.java + agent/src/share/classes/sun/jvm/hotspot/gc_interface/GCCause.java + agent/src/share/classes/sun/jvm/hotspot/gc_interface/GCName.java + agent/src/share/classes/sun/jvm/hotspot/gc_interface/GCWhen.java + agent/src/share/classes/sun/jvm/hotspot/gc_interface/ReferenceType.java ! agent/src/share/classes/sun/jvm/hotspot/memory/Universe.java ! agent/src/share/classes/sun/jvm/hotspot/oops/Klass.java ! agent/src/share/classes/sun/jvm/hotspot/oops/OopUtilities.java + agent/src/share/classes/sun/jvm/hotspot/opto/CompilerPhaseType.java + agent/src/share/classes/sun/jvm/hotspot/runtime/Flags.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/Thread.java + agent/src/share/classes/sun/jvm/hotspot/runtime/VMOps.java ! make/solaris/makefiles/sa.make ! make/windows/makefiles/sa.make ! src/share/vm/runtime/vmStructs.cpp + src/share/vm/runtime/vmStructs_trace.hpp Changeset: f9892d0039a4 Author: ctornqvi Date: 2014-06-24 07:10 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f9892d0039a4 8047939: [TESTBUG] Rewrite test/runtime/8001071/Test8001071.sh Summary: Rewrote the test in Java, limited the heap size to avoid time out issues on machines with a lot of memory Reviewed-by: minqi, rdurbin, dcubed - test/runtime/8001071/Test8001071.java - test/runtime/8001071/Test8001071.sh + test/runtime/Unsafe/RangeCheck.java Changeset: 18415052d89c Author: amurillo Date: 2014-06-24 12:27 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/18415052d89c 8043541: 'fastdebug' is printed twice in java -version Reviewed-by: dholmes, dcubed, jcoomes ! make/aix/makefiles/vm.make ! make/bsd/makefiles/vm.make ! make/defs.make ! make/linux/makefiles/vm.make ! make/solaris/makefiles/vm.make ! make/windows/projectfiles/common/Makefile ! src/share/vm/runtime/vm_version.cpp Changeset: 5ebb6694ed7b Author: thartmann Date: 2014-06-20 08:14 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/5ebb6694ed7b 8008321: compile.cpp verify_graph_edges uses bool as int Summary: The dead_nodes counter in verify_graph_edges(..) has the type bool but is used as int. Reviewed-by: roland, anoll ! src/share/vm/opto/compile.cpp Changeset: 98a3a2dea3b9 Author: anoll Date: 2014-06-20 09:25 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/98a3a2dea3b9 8043158: Crash in CodeSweeperSweepNoFlushTest in CompileQueue::free_all() Summary: Acquire lock before calling notify() Reviewed-by: twisti, thartmann ! src/share/vm/compiler/compileBroker.cpp Changeset: 8cfc6ff87733 Author: iveresov Date: 2014-06-20 11:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8cfc6ff87733 8047321: Hotspot debug builds with clang are broken Summary: Don't use -Og with clang Reviewed-by: twisti ! make/bsd/makefiles/gcc.make Changeset: 8662169d35d3 Author: iignatyev Date: 2014-06-20 22:39 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8662169d35d3 8041794: remove bytecodes_.{cpp,hpp} files Reviewed-by: dholmes, coleenp, twisti, iignatyev Contributed-by: lev.priima at oracle.com - src/cpu/ppc/vm/bytecodes_ppc.cpp - src/cpu/ppc/vm/bytecodes_ppc.hpp - src/cpu/sparc/vm/bytecodes_sparc.cpp - src/cpu/sparc/vm/bytecodes_sparc.hpp - src/cpu/x86/vm/bytecodes_x86.cpp - src/cpu/x86/vm/bytecodes_x86.hpp - src/cpu/zero/vm/bytecodes_zero.cpp - src/cpu/zero/vm/bytecodes_zero.hpp ! src/share/vm/interpreter/bytecodes.cpp ! src/share/vm/interpreter/bytecodes.hpp Changeset: 559ada8e82e2 Author: iignatyev Date: 2014-06-20 20:42 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/559ada8e82e2 Merge - src/cpu/ppc/vm/bytecodes_ppc.cpp - src/cpu/ppc/vm/bytecodes_ppc.hpp - src/cpu/sparc/vm/bytecodes_sparc.cpp - src/cpu/sparc/vm/bytecodes_sparc.hpp - src/cpu/x86/vm/bytecodes_x86.cpp - src/cpu/x86/vm/bytecodes_x86.hpp - src/cpu/zero/vm/bytecodes_zero.cpp - src/cpu/zero/vm/bytecodes_zero.hpp Changeset: c4d4fc9b3bd3 Author: anoll Date: 2014-06-23 08:40 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c4d4fc9b3bd3 8046286: assert: Do not add task if compilation is turned off forever Summary: Remove the unnecessary and missleading assert Reviewed-by: iveresov ! src/share/vm/compiler/compileBroker.cpp Changeset: 3a2e97446c5f Author: anoll Date: 2014-06-23 04:44 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3a2e97446c5f Merge - src/cpu/ppc/vm/bytecodes_ppc.cpp - src/cpu/ppc/vm/bytecodes_ppc.hpp - src/cpu/sparc/vm/bytecodes_sparc.cpp - src/cpu/sparc/vm/bytecodes_sparc.hpp - src/cpu/x86/vm/bytecodes_x86.cpp - src/cpu/x86/vm/bytecodes_x86.hpp - src/cpu/zero/vm/bytecodes_zero.cpp - src/cpu/zero/vm/bytecodes_zero.hpp ! src/share/vm/compiler/compileBroker.cpp Changeset: 46e85b1633d7 Author: thartmann Date: 2014-06-24 08:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/46e85b1633d7 8035328: closed/compiler/6595044/Main.java failed with timeout Summary: Patch call sites of non-entrant methods to avoid re-resolving if method is still executed. Reviewed-by: twisti, iveresov, roland, kvn ! src/share/vm/runtime/sharedRuntime.cpp Changeset: 478ac8e5344f Author: thartmann Date: 2014-06-25 09:19 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/478ac8e5344f 8033332: missing types in TemplateInterpreterGenerator::generate_result_handler_for Summary: Add missing case statements for T_LONG and T_VOID to generate_result_handler_for(..). Reviewed-by: iveresov, anoll ! src/cpu/x86/vm/templateInterpreter_x86_32.cpp Changeset: 57b41a96abbc Author: iveresov Date: 2014-06-26 12:01 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/57b41a96abbc 8048298: Clang needs to lower optimization level for some files Summary: Optimization options need to be lowered for some files when using clang 5.0 and 5.1 Reviewed-by: twisti ! make/bsd/makefiles/gcc.make Changeset: 0de050947628 Author: iveresov Date: 2014-06-26 12:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0de050947628 Merge Changeset: 6d04c53d7ccf Author: twisti Date: 2014-06-26 16:53 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6d04c53d7ccf Merge - test/runtime/8001071/Test8001071.java - test/runtime/8001071/Test8001071.sh Changeset: dabee7bb3a8f Author: brutisso Date: 2014-06-19 13:31 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dabee7bb3a8f 8043607: Add a GC id as a log decoration similar to PrintGCTimeStamps Reviewed-by: jwilhelm, ehelin, tschatzl ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/vmCMSOperations.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp ! src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1MarkSweep.cpp ! src/share/vm/gc_implementation/g1/vm_operations_g1.cpp ! src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/pcTasks.cpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp + src/share/vm/gc_implementation/shared/gcId.cpp + src/share/vm/gc_implementation/shared/gcId.hpp ! src/share/vm/gc_implementation/shared/gcTrace.cpp ! src/share/vm/gc_implementation/shared/gcTrace.hpp ! src/share/vm/gc_implementation/shared/gcTraceSend.cpp ! src/share/vm/gc_implementation/shared/gcTraceTime.cpp ! src/share/vm/gc_implementation/shared/gcTraceTime.hpp ! src/share/vm/gc_implementation/shared/objectCountEventSender.cpp ! src/share/vm/gc_interface/collectedHeap.cpp ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genMarkSweep.cpp ! src/share/vm/memory/referenceProcessor.cpp ! src/share/vm/memory/referenceProcessor.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/utilities/ostream.cpp ! src/share/vm/utilities/ostream.hpp + test/gc/logging/TestGCId.java Changeset: b596a1063e90 Author: goetz Date: 2014-06-04 11:56 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b596a1063e90 8044775: Improve usage of umbrella header atomic.inline.hpp. Reviewed-by: stefank, kvn ! src/cpu/zero/vm/cppInterpreter_zero.cpp ! src/os/aix/vm/osThread_aix.cpp ! src/os/aix/vm/os_aix.cpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/osThread_solaris.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/solaris/vm/thread_solaris.inline.hpp ! src/os/windows/vm/osThread_windows.cpp ! src/os/windows/vm/os_windows.cpp ! src/os/windows/vm/threadCritical_windows.cpp ! src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp ! src/share/vm/asm/assembler.cpp ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/classfile/stringTable.cpp ! src/share/vm/classfile/symbolTable.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/g1/collectionSetChooser.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/dirtyCardQueue.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1GCPhaseTimes.cpp ! src/share/vm/gc_implementation/g1/g1HotCardCache.cpp ! src/share/vm/gc_implementation/g1/g1MarkSweep.cpp ! src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp ! src/share/vm/gc_implementation/g1/g1StringDedup.cpp ! src/share/vm/gc_implementation/g1/g1StringDedup.hpp ! src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp ! src/share/vm/gc_implementation/g1/g1StringDedupThread.cpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/sparsePRT.cpp ! src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp ! src/share/vm/gc_implementation/parallelScavenge/psCompactionManager.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/shared/ageTable.cpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp ! src/share/vm/gc_implementation/shared/mutableSpace.cpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/memory/allocation.cpp ! src/share/vm/memory/cardTableRS.cpp ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/gcLocker.cpp ! src/share/vm/memory/gcLocker.hpp ! src/share/vm/memory/space.cpp ! src/share/vm/memory/specialized_oop_closures.hpp ! src/share/vm/memory/threadLocalAllocBuffer.inline.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/compiledICHolder.cpp ! src/share/vm/oops/compiledICHolder.hpp ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/oop.pcgc.inline.hpp ! src/share/vm/oops/symbol.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiImpl.cpp ! src/share/vm/prims/jvmtiRawMonitor.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/biasedLocking.cpp ! src/share/vm/runtime/extendedPC.hpp ! src/share/vm/runtime/frame.cpp ! src/share/vm/runtime/handles.cpp ! src/share/vm/runtime/interfaceSupport.cpp ! src/share/vm/runtime/mutex.cpp ! src/share/vm/runtime/objectMonitor.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sweeper.cpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/thread.inline.hpp ! src/share/vm/services/memPtr.cpp ! src/share/vm/services/memPtr.hpp ! src/share/vm/services/memRecorder.cpp ! src/share/vm/services/memTracker.cpp ! src/share/vm/services/threadService.cpp ! src/share/vm/shark/sharkRuntime.cpp ! src/share/vm/utilities/accessFlags.cpp ! src/share/vm/utilities/bitMap.cpp ! src/share/vm/utilities/bitMap.inline.hpp ! src/share/vm/utilities/debug.cpp ! src/share/vm/utilities/histogram.cpp ! src/share/vm/utilities/taskqueue.cpp ! src/share/vm/utilities/vmError.cpp ! src/share/vm/utilities/workgroup.cpp Changeset: 1e9f18eb3a84 Author: pliden Date: 2014-06-23 16:43 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1e9f18eb3a84 8046231: G1: Code root location ... from nmethod ... not in strong code roots for region Reviewed-by: tschatzl, ehelin ! src/share/vm/code/nmethod.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Changeset: 2a921e8dc94f Author: jmasa Date: 2014-06-23 14:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/2a921e8dc94f Merge ! src/share/vm/runtime/mutex.cpp Changeset: 01ab9db4584f Author: jmasa Date: 2014-06-25 20:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/01ab9db4584f Merge ! src/os/aix/vm/os_aix.cpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/oops/cpCache.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/safepoint.cpp - test/runtime/8001071/Test8001071.java - test/runtime/8001071/Test8001071.sh Changeset: 2cb6dfbbc344 Author: ehelin Date: 2014-06-24 15:50 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/2cb6dfbbc344 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 Reviewed-by: jmasa, sjohanss ! src/share/vm/gc_implementation/parallelScavenge/generationSizer.cpp ! src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/memory/heap.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/virtualspace.cpp ! test/gc/arguments/TestParallelHeapSizeFlags.java Changeset: f88e914539ff Author: stefank Date: 2014-06-24 16:20 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f88e914539ff 8046670: Make CMS metadata aware closures applicable for other collectors Reviewed-by: ehelin, mgerdin ! src/share/vm/gc_implementation/concurrentMarkSweep/cmsOopClosures.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/cmsOopClosures.inline.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp ! src/share/vm/memory/iterator.cpp ! src/share/vm/memory/iterator.hpp + src/share/vm/memory/iterator.inline.hpp ! src/share/vm/oops/instanceClassLoaderKlass.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceMirrorKlass.cpp ! src/share/vm/oops/objArrayKlass.cpp Changeset: 1b23c821b5e4 Author: stefank Date: 2014-06-24 17:09 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/1b23c821b5e4 8047373: Clean the ExceptionCache in one pass Summary: Also-reviewed-by: kim.barrett at oracle.com Reviewed-by: jmasa, jwilhelm ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp Changeset: b179be81195e Author: stefank Date: 2014-06-25 08:28 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b179be81195e 8047323: Remove unused _copy_metadata_obj_cl in G1CopyingKeepAliveClosure Reviewed-by: mgerdin, tschatzl ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Changeset: 9960da40c13e Author: stefank Date: 2014-06-25 08:56 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9960da40c13e 8047326: Consolidate all CompiledIC::CompiledIC implementations and move it to compiledIC.cpp Reviewed-by: vlivanov, ehelin ! src/cpu/ppc/vm/compiledIC_ppc.cpp ! src/cpu/sparc/vm/compiledIC_sparc.cpp ! src/cpu/x86/vm/compiledIC_x86.cpp ! src/cpu/zero/vm/compiledIC_zero.cpp ! src/share/vm/code/compiledIC.cpp Changeset: 3f70ca73367d Author: mgerdin Date: 2014-06-25 10:55 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/3f70ca73367d 8047819: G1 HeapRegionDCTOC does not need to inherit ContiguousSpaceDCTOC Reviewed-by: stefank, tschatzl ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp Changeset: 238820b522f3 Author: mgerdin Date: 2014-06-25 16:53 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/238820b522f3 8047820: G1 Block offset table does not need to support generic Space classes Reviewed-by: tschatzl, stefank ! src/share/vm/gc_implementation/g1/g1BlockOffsetTable.cpp ! src/share/vm/gc_implementation/g1/g1BlockOffsetTable.hpp ! src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/gc_implementation/g1/heapRegion.inline.hpp Changeset: ff9010e0ef3b Author: tschatzl Date: 2014-06-25 17:22 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ff9010e0ef3b 8026847: [TESTBUG] gc/g1/TestSummarizeRSetStats* tests launch 32bit jvm with UseCompressedOops Summary: The test launched a 32 bit VM with UseCompressedOops enabled. This is not supported on 32 bit VMs, causing a test failure. Investigation showed that the use of this flag is not required at all, so simply remove it. Reviewed-by: tschatzl, jwilhelm Contributed-by: Andrey Zakharov ! test/gc/g1/TestSummarizeRSetStatsTools.java Changeset: 243f11b99845 Author: tschatzl Date: 2014-06-25 15:43 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/243f11b99845 Merge Changeset: 71f6c16d1d77 Author: jmasa Date: 2014-06-25 20:43 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/71f6c16d1d77 Merge ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/os.hpp Changeset: aa766c73f7d7 Author: jmasa Date: 2014-06-26 18:55 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/aa766c73f7d7 Merge ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/runtime/sharedRuntime.cpp Changeset: 6e3afae50470 Author: ehelin Date: 2014-07-02 11:05 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6e3afae50470 8048895: Back out JDK-8027915 Reviewed-by: mgerdin, stefank ! src/share/vm/gc_implementation/parallelScavenge/generationSizer.cpp ! src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/memory/heap.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/virtualspace.cpp ! test/gc/arguments/TestParallelHeapSizeFlags.java Changeset: 83bb27e115b7 Author: ehelin Date: 2014-07-02 13:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/83bb27e115b7 Merge ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/os.hpp Changeset: 51b82a72aafb Author: ctornqvi Date: 2014-06-25 13:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/51b82a72aafb 8048076: [TESTBUG] runtime/Unsafe/RangeCheck.java fails with -Xcomp Summary: Compiler intrinsics doesn't have this assert, disabled the intrinsics to make sure we go through the VM Reviewed-by: lfoltan, coleenp ! test/runtime/Unsafe/RangeCheck.java Changeset: 59f1099e39d9 Author: egahlin Date: 2014-06-25 21:36 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/59f1099e39d9 8046783: Add hidden field to methods for event based tracing Reviewed-by: sla, mgronlun ! src/share/vm/trace/tracetypes.xml Changeset: 6b78c6948ec8 Author: egahlin Date: 2014-06-25 22:12 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/6b78c6948ec8 Merge Changeset: ab15f6287711 Author: mgronlun Date: 2014-06-27 13:33 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/ab15f6287711 8047812: Ensure ClassLoaderDataGraph::classes_unloading_do only delivers klasses from CLDs with non-reclaimed class loader oops Reviewed-by: coleenp, sspitsyn, ehelin ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/classfile/classLoaderData.hpp Changeset: 88a7b3dd7d5d Author: dcubed Date: 2014-06-27 08:11 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/88a7b3dd7d5d Merge ! src/share/vm/classfile/classLoaderData.cpp Changeset: 5da31e88dbf5 Author: dcubed Date: 2014-06-27 14:00 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/5da31e88dbf5 8047720: Xprof hangs on Solaris Summary: Update use of PeriodicTask_lock in WatcherThread::stop() to avoid safepoint deadlock. Reviewed-by: mgronlun, coleenp ! src/share/vm/runtime/thread.cpp Changeset: 56c8024da07e Author: coleenp Date: 2014-06-30 14:58 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/56c8024da07e 8048169: Change 8037816 breaks HS build on PPC64 and CPP-Interpreter platforms Summary: Fix the matching of format string parameter types to the actual argument types for the PPC64 and CPP-Interpreter files in the same way as 8037816 already did it for all the other files Reviewed-by: stefank, coleenp, dholmes ! src/cpu/ppc/vm/assembler_ppc.cpp ! src/cpu/ppc/vm/compiledIC_ppc.cpp ! src/cpu/ppc/vm/frame_ppc.cpp ! src/cpu/ppc/vm/macroAssembler_ppc.cpp ! src/cpu/ppc/vm/methodHandles_ppc.cpp ! src/cpu/ppc/vm/nativeInst_ppc.cpp ! src/cpu/ppc/vm/ppc.ad ! src/cpu/ppc/vm/vm_version_ppc.cpp ! src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/interpreter/bytecodeInterpreterProfiling.hpp Changeset: 9c57305f46cd Author: sla Date: 2014-06-30 10:04 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/9c57305f46cd 8047973: Quarantine compiler/ciReplay/* Reviewed-by: vlivanov ! test/compiler/ciReplay/TestSA.sh ! test/compiler/ciReplay/TestVM.sh ! test/compiler/ciReplay/TestVM_no_comp_level.sh Changeset: e59ad4b3ee90 Author: sspitsyn Date: 2014-07-02 17:24 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/e59ad4b3ee90 Merge Changeset: 8c4e5e10f3b3 Author: thartmann Date: 2014-06-30 08:28 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/8c4e5e10f3b3 8048003: test/compiler/8009761/Test8009761.java failed with: java.lang.RuntimeException: static java.lang.Object Test8009761.m3(boolean,boolean) not compiled Summary: Compile m3 with C1 if C2 is not available. Reviewed-by: twisti, anoll ! test/compiler/8009761/Test8009761.java Changeset: b4361651257d Author: thartmann Date: 2014-07-01 09:02 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b4361651257d 8007987: ciConstantPoolCache::_keys should be array of 32bit int Summary: The type of ciConstantPoolCache::_keys is changed to int which is sufficient to store the 2 byte constant pool indices. Reviewed-by: twisti, coleenp ! src/share/vm/ci/ciConstantPoolCache.cpp ! src/share/vm/ci/ciConstantPoolCache.hpp Changeset: f684db04b1b9 Author: iignatyev Date: 2014-07-01 13:09 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/f684db04b1b9 8047996: Quarantine compiler/whitebox tests Reviewed-by: vlivanov ! test/compiler/tiered/NonTieredLevelsTest.java ! test/compiler/tiered/TieredLevelsTest.java ! test/compiler/whitebox/ClearMethodStateTest.java ! test/compiler/whitebox/DeoptimizeAllTest.java ! test/compiler/whitebox/DeoptimizeMethodTest.java ! test/compiler/whitebox/EnqueueMethodForCompilationTest.java ! test/compiler/whitebox/GetNMethodTest.java ! test/compiler/whitebox/MakeMethodNotCompilableTest.java Changeset: 0b4784c1f13c Author: roland Date: 2014-07-03 09:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/0b4784c1f13c Merge Changeset: 89a49b4a21b5 Author: amurillo Date: 2014-07-03 13:17 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/89a49b4a21b5 Merge - src/cpu/ppc/vm/bytecodes_ppc.cpp - src/cpu/ppc/vm/bytecodes_ppc.hpp - src/cpu/sparc/vm/bytecodes_sparc.cpp - src/cpu/sparc/vm/bytecodes_sparc.hpp - src/cpu/x86/vm/bytecodes_x86.cpp - src/cpu/x86/vm/bytecodes_x86.hpp - src/cpu/zero/vm/bytecodes_zero.cpp - src/cpu/zero/vm/bytecodes_zero.hpp - test/runtime/8001071/Test8001071.java - test/runtime/8001071/Test8001071.sh Changeset: dd472cdacc32 Author: lana Date: 2014-07-10 12:40 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/dd472cdacc32 Merge - src/cpu/ppc/vm/bytecodes_ppc.cpp - src/cpu/ppc/vm/bytecodes_ppc.hpp - src/cpu/sparc/vm/bytecodes_sparc.cpp - src/cpu/sparc/vm/bytecodes_sparc.hpp - src/cpu/x86/vm/bytecodes_x86.cpp - src/cpu/x86/vm/bytecodes_x86.hpp - src/cpu/zero/vm/bytecodes_zero.cpp - src/cpu/zero/vm/bytecodes_zero.hpp - test/runtime/8001071/Test8001071.java - test/runtime/8001071/Test8001071.sh Changeset: a54c05908b9b Author: aph Date: 2014-07-17 13:16 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/a54c05908b9b Merge ! agent/src/os/linux/libproc.h - agent/src/share/classes/sun/jvm/hotspot/ci/ciReceiverTypeData.java - agent/src/share/classes/sun/jvm/hotspot/ci/ciVirtualCallData.java ! make/defs.make - make/hotspot_version ! make/linux/makefiles/buildtree.make ! make/linux/makefiles/defs.make ! make/linux/makefiles/gcc.make - src/cpu/ppc/vm/bytecodes_ppc.cpp - src/cpu/ppc/vm/bytecodes_ppc.hpp - src/cpu/sparc/vm/bytecodes_sparc.cpp - src/cpu/sparc/vm/bytecodes_sparc.hpp - src/cpu/x86/vm/bytecodes_x86.cpp - src/cpu/x86/vm/bytecodes_x86.hpp - src/cpu/zero/vm/bytecodes_zero.cpp - src/cpu/zero/vm/bytecodes_zero.hpp ! src/os/linux/vm/os_linux.cpp ! src/os/linux/vm/thread_linux.inline.hpp ! src/share/vm/asm/codeBuffer.hpp ! src/share/vm/asm/register.hpp ! src/share/vm/c1/c1_LIR.cpp ! src/share/vm/c1/c1_LIR.hpp ! src/share/vm/c1/c1_LIRAssembler.cpp ! src/share/vm/c1/c1_LIRAssembler.hpp ! src/share/vm/c1/c1_LinearScan.cpp ! src/share/vm/c1/c1_MacroAssembler.hpp ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/c1/c1_Runtime1.hpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/code/codeBlob.cpp ! src/share/vm/compiler/disassembler.cpp ! src/share/vm/interpreter/abstractInterpreter.hpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/interpreter/bytecodes.cpp ! src/share/vm/interpreter/bytecodes.hpp ! src/share/vm/interpreter/interpreterRuntime.cpp - src/share/vm/libadt/port.cpp - src/share/vm/libadt/port.hpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/oops/typeArrayOop.hpp ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/c2compiler.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/gcm.cpp ! src/share/vm/opto/generateOptoStub.cpp ! src/share/vm/opto/lcm.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/regmask.cpp ! src/share/vm/opto/regmask.hpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/prims/jniCheck.cpp ! src/share/vm/prims/jvmtiClassFileReconstituter.cpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/frame.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/javaFrameAnchor.hpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/stackValueCollection.cpp ! src/share/vm/runtime/stubRoutines.hpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/runtime/vm_version.cpp ! src/share/vm/utilities/globalDefinitions.hpp ! src/share/vm/utilities/taskqueue.hpp - test/gc/g1/TestStringDeduplicationMemoryUsage.java - test/runtime/6925573/SortMethodsTest.java - test/runtime/6929067/T.java - test/runtime/6929067/Test6929067.sh - test/runtime/6929067/invoke.c - test/runtime/7110720/Test7110720.sh - test/runtime/8001071/Test8001071.java - test/runtime/8001071/Test8001071.sh - test/runtime/InitialThreadOverflow/DoOverflow.java - test/runtime/InitialThreadOverflow/invoke.cxx - test/runtime/InitialThreadOverflow/testme.sh - test/runtime/SharedArchiveFile/CdsWriteError.java - test/testlibrary/com/oracle/java/testlibrary/DynamicVMOptionChecker.java ! test/testlibrary/com/oracle/java/testlibrary/Platform.java - test/testlibrary/com/oracle/java/testlibrary/TestDynamicVMOption.java Changeset: 523ddf5c9ceb Author: aph Date: 2014-07-17 14:48 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/523ddf5c9ceb Merge aarch64-specific changes for JDK9 ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/bytecodes_aarch64.cpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp ! src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/compiledIC_aarch64.cpp ! src/cpu/aarch64/vm/frame_aarch64.cpp ! src/cpu/aarch64/vm/interp_masm_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp ! src/cpu/aarch64/vm/templateTable_aarch64.cpp ! src/cpu/aarch64/vm/vtableStubs_aarch64.cpp ! src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp Changeset: c75bd2134c4a Author: aph Date: 2014-07-18 09:47 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/c75bd2134c4a Merge JDK9 changes to aarch64 tree ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp Changeset: 691a63837f76 Author: aph Date: 2014-07-21 07:06 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/691a63837f76 Merge JDK9 changes to aarch64 tree ! src/share/vm/runtime/orderAccess.inline.hpp ! src/share/vm/runtime/prefetch.inline.hpp From aph at redhat.com Mon Jul 21 11:08:26 2014 From: aph at redhat.com (aph at redhat.com) Date: Mon, 21 Jul 2014 11:08:26 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/jaxp: 26 new changesets Message-ID: <201407211108.s6LB8RMl002936@aojmv0008> Changeset: 36991f5801dd Author: erikj Date: 2014-04-22 14:08 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/36991f5801dd 8040267: Remove forced -g from java compile lines in jaxp and jaxws Reviewed-by: mduigou, tbell, ihse ! make/BuildJaxp.gmk Changeset: 6b4280dceb00 Author: lana Date: 2014-04-24 16:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/6b4280dceb00 Merge Changeset: e88cecf5a21b Author: katleman Date: 2014-05-01 12:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/e88cecf5a21b Added tag jdk9-b11 for changeset 6b4280dceb00 ! .hgtags Changeset: 5eaf717f6e36 Author: katleman Date: 2014-05-08 01:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/5eaf717f6e36 Added tag jdk9-b12 for changeset e88cecf5a21b ! .hgtags Changeset: 32b3fc4bc737 Author: katleman Date: 2014-05-15 10:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/32b3fc4bc737 Added tag jdk9-b13 for changeset 5eaf717f6e36 ! .hgtags Changeset: 7755df76a8f6 Author: katleman Date: 2014-05-22 12:53 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/7755df76a8f6 Added tag jdk9-b14 for changeset 32b3fc4bc737 ! .hgtags Changeset: 6bad71866c75 Author: joehw Date: 2014-05-23 09:06 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/6bad71866c75 8043666: Remove unused files from jaxp repository Reviewed-by: alanb - src/com/sun/org/apache/xalan/internal/xsltc/compiler/Makefile.inc - src/com/sun/org/apache/xalan/internal/xsltc/javax.xml.transform.TransformerFactory - src/com/sun/org/apache/xerces/internal/dom/org.apache.xerces.dom.DOMImplementationSourceImpl - src/com/sun/org/apache/xerces/internal/dom/org.w3c.dom.DOMImplementationSourceList - src/com/sun/org/apache/xerces/internal/jaxp/datatype/javax.xml.datatype.DatatypeFactory - src/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.DocumentBuilderFactory - src/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.SAXParserFactory - src/com/sun/org/apache/xerces/internal/jaxp/validation/javax.xml.validation.SchemaFactory - src/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.DTDConfiguration - src/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XML11Configuration - src/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XMLParserConfiguration - src/com/sun/org/apache/xerces/internal/parsers/org.xml.sax.driver - src/com/sun/xml/internal/stream/javax.xml.stream.XMLEventFactory - src/com/sun/xml/internal/stream/javax.xml.stream.XMLInputFactory - src/com/sun/xml/internal/stream/javax.xml.stream.XMLOutputFactory - src/org/xml/sax/COPYING - src/org/xml/sax/COPYING.txt Changeset: a1461221b05d Author: katleman Date: 2014-05-29 22:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/a1461221b05d Added tag jdk9-b15 for changeset 6bad71866c75 ! .hgtags Changeset: 6f923fcbe512 Author: katleman Date: 2014-06-04 20:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/6f923fcbe512 Added tag jdk9-b16 for changeset a1461221b05d ! .hgtags Changeset: 5afa90c28742 Author: katleman Date: 2014-06-12 10:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/5afa90c28742 Added tag jdk9-b17 for changeset 6f923fcbe512 ! .hgtags Changeset: c3afb43aa495 Author: katleman Date: 2014-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/c3afb43aa495 Added tag jdk9-b18 for changeset 5afa90c28742 ! .hgtags Changeset: 44365cdde462 Author: joehw Date: 2014-06-11 09:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/44365cdde462 8046443: A few typos in JAXP JavaDoc Reviewed-by: dfuchs, chegar ! src/com/sun/org/apache/xerces/internal/dom/EntityReferenceImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLDTDScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidator.java ! src/com/sun/org/apache/xml/internal/dtm/DTMConfigurationException.java ! src/com/sun/xml/internal/stream/Entity.java ! src/com/sun/xml/internal/stream/StaxXMLInputSource.java ! src/javax/xml/datatype/DatatypeConfigurationException.java ! src/javax/xml/datatype/DatatypeFactory.java ! src/javax/xml/namespace/QName.java ! src/javax/xml/parsers/DocumentBuilderFactory.java ! src/javax/xml/parsers/FactoryConfigurationError.java ! src/javax/xml/parsers/ParserConfigurationException.java ! src/javax/xml/parsers/SAXParser.java ! src/javax/xml/parsers/SAXParserFactory.java ! src/javax/xml/transform/ErrorListener.java ! src/javax/xml/transform/TransformerConfigurationException.java ! src/javax/xml/transform/TransformerFactoryConfigurationError.java ! src/javax/xml/validation/SchemaFactory.java ! src/javax/xml/validation/ValidatorHandler.java Changeset: 894ae6562453 Author: joehw Date: 2014-06-11 22:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/894ae6562453 8041523: Xerces Update: Serializer improvements from Xalan Reviewed-by: joehw Contributed-by: david.x.li at oracle.com ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java ! src/com/sun/org/apache/xerces/internal/xpointer/ElementSchemePointer.java ! src/com/sun/org/apache/xerces/internal/xpointer/XPointerHandler.java ! src/com/sun/org/apache/xml/internal/serializer/EmptySerializer.java ! src/com/sun/org/apache/xml/internal/serializer/SerializerBase.java ! src/com/sun/org/apache/xml/internal/serializer/ToHTMLStream.java ! src/com/sun/org/apache/xml/internal/serializer/ToSAXHandler.java ! src/com/sun/org/apache/xml/internal/serializer/ToStream.java ! src/com/sun/org/apache/xml/internal/serializer/ToUnknownStream.java ! src/com/sun/org/apache/xml/internal/serializer/WriterToUTF8Buffered.java ! src/com/sun/org/apache/xml/internal/serializer/XSLOutputAttributes.java Changeset: 96e08eda44ce Author: lana Date: 2014-06-12 15:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/96e08eda44ce Merge Changeset: f9c82769a6bc Author: lana Date: 2014-06-18 10:08 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/f9c82769a6bc Merge Changeset: 94fd4d9d3a75 Author: katleman Date: 2014-06-19 11:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/94fd4d9d3a75 Added tag jdk9-b19 for changeset f9c82769a6bc ! .hgtags Changeset: 7eb0ab676ea7 Author: katleman Date: 2014-06-26 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/7eb0ab676ea7 Added tag jdk9-b20 for changeset 94fd4d9d3a75 ! .hgtags Changeset: 91b2dc0dab2a Author: katleman Date: 2014-07-03 11:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/91b2dc0dab2a Added tag jdk9-b21 for changeset 7eb0ab676ea7 ! .hgtags Changeset: 44a43fb56758 Author: henryjen Date: 2014-06-19 15:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/44a43fb56758 8047723: @since tag cleanup in jaxp Reviewed-by: joehw ! src/javax/xml/parsers/DocumentBuilder.java ! src/javax/xml/parsers/DocumentBuilderFactory.java ! src/javax/xml/parsers/FactoryConfigurationError.java ! src/javax/xml/parsers/ParserConfigurationException.java ! src/javax/xml/parsers/SAXParser.java ! src/javax/xml/parsers/SAXParserFactory.java ! src/javax/xml/transform/ErrorListener.java ! src/javax/xml/transform/OutputKeys.java ! src/javax/xml/transform/Result.java ! src/javax/xml/transform/Source.java ! src/javax/xml/transform/SourceLocator.java ! src/javax/xml/transform/Templates.java ! src/javax/xml/transform/Transformer.java ! src/javax/xml/transform/TransformerConfigurationException.java ! src/javax/xml/transform/TransformerException.java ! src/javax/xml/transform/TransformerFactoryConfigurationError.java ! src/javax/xml/transform/URIResolver.java ! src/javax/xml/transform/dom/DOMLocator.java ! src/javax/xml/transform/dom/DOMResult.java ! src/javax/xml/transform/dom/DOMSource.java ! src/javax/xml/transform/sax/SAXResult.java ! src/javax/xml/transform/sax/SAXSource.java ! src/javax/xml/transform/sax/SAXTransformerFactory.java ! src/javax/xml/transform/sax/TemplatesHandler.java ! src/javax/xml/transform/sax/TransformerHandler.java ! src/javax/xml/transform/stream/StreamResult.java ! src/javax/xml/transform/stream/StreamSource.java ! src/org/w3c/dom/Attr.java ! src/org/w3c/dom/DOMConfiguration.java ! src/org/w3c/dom/DOMError.java ! src/org/w3c/dom/DOMErrorHandler.java ! src/org/w3c/dom/DOMException.java ! src/org/w3c/dom/DOMImplementation.java ! src/org/w3c/dom/DOMImplementationList.java ! src/org/w3c/dom/DOMImplementationSource.java ! src/org/w3c/dom/DOMLocator.java ! src/org/w3c/dom/DOMStringList.java ! src/org/w3c/dom/Document.java ! src/org/w3c/dom/DocumentType.java ! src/org/w3c/dom/Element.java ! src/org/w3c/dom/Entity.java ! src/org/w3c/dom/NameList.java ! src/org/w3c/dom/NamedNodeMap.java ! src/org/w3c/dom/Node.java ! src/org/w3c/dom/Text.java ! src/org/w3c/dom/TypeInfo.java ! src/org/w3c/dom/UserDataHandler.java ! src/org/w3c/dom/bootstrap/DOMImplementationRegistry.java ! src/org/w3c/dom/events/DocumentEvent.java ! src/org/w3c/dom/events/Event.java ! src/org/w3c/dom/events/EventException.java ! src/org/w3c/dom/events/EventListener.java ! src/org/w3c/dom/events/EventTarget.java ! src/org/w3c/dom/events/MouseEvent.java ! src/org/w3c/dom/events/MutationEvent.java ! src/org/w3c/dom/events/UIEvent.java ! src/org/w3c/dom/ls/DOMImplementationLS.java ! src/org/w3c/dom/ls/LSException.java ! src/org/w3c/dom/ls/LSInput.java ! src/org/w3c/dom/ls/LSLoadEvent.java ! src/org/w3c/dom/ls/LSOutput.java ! src/org/w3c/dom/ls/LSParser.java ! src/org/w3c/dom/ls/LSParserFilter.java ! src/org/w3c/dom/ls/LSProgressEvent.java ! src/org/w3c/dom/ls/LSResourceResolver.java ! src/org/w3c/dom/ls/LSSerializer.java ! src/org/w3c/dom/ls/LSSerializerFilter.java ! src/org/w3c/dom/package.html ! src/org/w3c/dom/views/AbstractView.java ! src/org/w3c/dom/views/DocumentView.java ! src/org/xml/sax/AttributeList.java ! src/org/xml/sax/Attributes.java ! src/org/xml/sax/ContentHandler.java ! src/org/xml/sax/DTDHandler.java ! src/org/xml/sax/DocumentHandler.java ! src/org/xml/sax/EntityResolver.java ! src/org/xml/sax/ErrorHandler.java ! src/org/xml/sax/HandlerBase.java ! src/org/xml/sax/InputSource.java ! src/org/xml/sax/Locator.java ! src/org/xml/sax/Parser.java ! src/org/xml/sax/SAXException.java ! src/org/xml/sax/SAXNotRecognizedException.java ! src/org/xml/sax/SAXNotSupportedException.java ! src/org/xml/sax/SAXParseException.java ! src/org/xml/sax/XMLFilter.java ! src/org/xml/sax/XMLReader.java ! src/org/xml/sax/ext/Attributes2.java ! src/org/xml/sax/ext/Attributes2Impl.java ! src/org/xml/sax/ext/DeclHandler.java ! src/org/xml/sax/ext/DefaultHandler2.java ! src/org/xml/sax/ext/EntityResolver2.java ! src/org/xml/sax/ext/LexicalHandler.java ! src/org/xml/sax/ext/Locator2.java ! src/org/xml/sax/ext/Locator2Impl.java ! src/org/xml/sax/helpers/AttributeListImpl.java ! src/org/xml/sax/helpers/AttributesImpl.java ! src/org/xml/sax/helpers/DefaultHandler.java ! src/org/xml/sax/helpers/LocatorImpl.java ! src/org/xml/sax/helpers/NamespaceSupport.java ! src/org/xml/sax/helpers/ParserAdapter.java ! src/org/xml/sax/helpers/ParserFactory.java ! src/org/xml/sax/helpers/XMLFilterImpl.java ! src/org/xml/sax/helpers/XMLReaderAdapter.java ! src/org/xml/sax/helpers/XMLReaderFactory.java Changeset: d01082105a5b Author: joehw Date: 2014-06-23 10:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/d01082105a5b 5077522: Duration.compare incorrect for some values Reviewed-by: lancea, dfuchs ! src/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationImpl.java Changeset: 01c25780f33f Author: henryjen Date: 2014-06-24 14:07 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/01c25780f33f 8048021: Remove @version tag in jaxp repo Reviewed-by: joehw ! src/com/sun/org/apache/bcel/internal/classfile/JavaClass.java ! src/com/sun/org/apache/bcel/internal/util/Class2HTML.java ! src/com/sun/org/apache/bcel/internal/util/ClassPath.java ! src/com/sun/org/apache/bcel/internal/util/JavaWrapper.java ! src/com/sun/org/apache/xalan/internal/XalanConstants.java ! src/com/sun/org/apache/xalan/internal/utils/ObjectFactory.java ! src/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java ! src/com/sun/org/apache/xerces/internal/dom/AttrImpl.java ! src/com/sun/org/apache/xerces/internal/dom/AttrNSImpl.java ! src/com/sun/org/apache/xerces/internal/dom/AttributeMap.java ! src/com/sun/org/apache/xerces/internal/dom/CoreDOMImplementationImpl.java ! src/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java ! src/com/sun/org/apache/xerces/internal/dom/DOMConfigurationImpl.java ! src/com/sun/org/apache/xerces/internal/dom/DOMMessageFormatter.java ! src/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java ! src/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java ! src/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java ! src/com/sun/org/apache/xerces/internal/dom/ElementNSImpl.java ! src/com/sun/org/apache/xerces/internal/dom/NamedNodeMapImpl.java ! src/com/sun/org/apache/xerces/internal/dom/NodeListCache.java ! src/com/sun/org/apache/xerces/internal/dom/PSVIElementNSImpl.java ! src/com/sun/org/apache/xerces/internal/dom/ParentNode.java ! src/com/sun/org/apache/xerces/internal/impl/Constants.java ! src/com/sun/org/apache/xerces/internal/impl/Version.java ! src/com/sun/org/apache/xerces/internal/impl/XML11DocumentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XML11EntityScanner.java ! src/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLDTDScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLDocumentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java ! src/com/sun/org/apache/xerces/internal/impl/XMLErrorReporter.java ! src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLNamespaceBinder.java ! src/com/sun/org/apache/xerces/internal/impl/XMLScanner.java ! src/com/sun/org/apache/xerces/internal/impl/dtd/BalancedDTDGrammar.java ! src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar.java ! src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDDescription.java ! src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDLoader.java ! src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDProcessor.java ! src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidator.java ! src/com/sun/org/apache/xerces/internal/impl/dtd/models/DFAContentModel.java ! src/com/sun/org/apache/xerces/internal/impl/dv/DTDDVFactory.java ! src/com/sun/org/apache/xerces/internal/impl/dv/DatatypeException.java ! src/com/sun/org/apache/xerces/internal/impl/dv/SchemaDVFactory.java ! src/com/sun/org/apache/xerces/internal/impl/dv/ValidationContext.java ! src/com/sun/org/apache/xerces/internal/impl/dv/util/ByteListImpl.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/AbstractDateTimeDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/Base64BinaryDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseDVFactory.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseSchemaDVFactory.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/DateDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/DateTimeDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/DayDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/DayTimeDurationDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/DoubleDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/DurationDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/ExtendedSchemaDVFactoryImpl.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/FloatDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/HexBinaryDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/ListDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDayDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDVFactoryImpl.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/TimeDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDecl.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDelegate.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/YearDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDV.java ! src/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDurationDV.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_de.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_es.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_fr.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_it.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ja.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ko.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_pt_BR.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_sv.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_CN.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_TW.java ! src/com/sun/org/apache/xerces/internal/impl/validation/ValidationState.java ! src/com/sun/org/apache/xerces/internal/impl/xpath/regex/CaseInsensitiveMap.java ! src/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java ! src/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegexParser.java ! src/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegularExpression.java ! src/com/sun/org/apache/xerces/internal/impl/xpath/regex/Token.java ! src/com/sun/org/apache/xerces/internal/impl/xs/SchemaGrammar.java ! src/com/sun/org/apache/xerces/internal/impl/xs/SubstitutionGroupHandler.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeDecl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeGroupDecl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeUseImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSComplexTypeDecl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSConstraints.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSDeclarationPool.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSElementDecl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSGrammarBucket.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSGroupDecl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSMessageFormatter.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSModelGroupImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSModelImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSNotationDecl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSParticleDecl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XSWildcardDecl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/identity/Field.java ! src/com/sun/org/apache/xerces/internal/impl/xs/identity/Selector.java ! src/com/sun/org/apache/xerces/internal/impl/xs/models/CMBuilder.java ! src/com/sun/org/apache/xerces/internal/impl/xs/models/CMNodeFactory.java ! src/com/sun/org/apache/xerces/internal/impl/xs/models/XSAllCM.java ! src/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMRepeatingLeaf.java ! src/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMValidator.java ! src/com/sun/org/apache/xerces/internal/impl/xs/models/XSDFACM.java ! src/com/sun/org/apache/xerces/internal/impl/xs/models/XSEmptyCM.java ! src/com/sun/org/apache/xerces/internal/impl/xs/opti/AttrImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/opti/ElementImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOM.java ! src/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMImplementation.java ! src/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMParser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaParsingConfig.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/StAXSchemaParser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAttributeChecker.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractIDConstraintTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractParticleTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeGroupTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDComplexTypeTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDElementTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDGroupTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDKeyrefTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDNotationTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDSimpleTypeTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDUniqueOrKeyTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDWildcardTraverser.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDocumentInfo.java ! src/com/sun/org/apache/xerces/internal/impl/xs/util/LSInputListImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/util/ObjectListImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/util/ShortListImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/util/StringListImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/util/XSGrammarPool.java ! src/com/sun/org/apache/xerces/internal/impl/xs/util/XSInputSource.java ! src/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMap4Types.java ! src/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMapImpl.java ! src/com/sun/org/apache/xerces/internal/impl/xs/util/XSObjectListImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderFactoryImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/SAXParserFactoryImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/SchemaValidatorConfiguration.java ! src/com/sun/org/apache/xerces/internal/jaxp/UnparsedEntityHandler.java ! src/com/sun/org/apache/xerces/internal/jaxp/datatype/DatatypeFactoryImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationDayTimeImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationYearMonthImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/datatype/XMLGregorianCalendarImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/AbstractXMLSchema.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/DOMValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/EmptyXMLSchema.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/JAXPValidationMessageFormatter.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHandlerImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaValidatorComponentManager.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XSGrammarPoolContainer.java ! src/com/sun/org/apache/xerces/internal/parsers/AbstractDOMParser.java ! src/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java ! src/com/sun/org/apache/xerces/internal/parsers/BasicParserConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/DOMParser.java ! src/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java ! src/com/sun/org/apache/xerces/internal/parsers/DTDConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/NonValidatingConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/SAXParser.java ! src/com/sun/org/apache/xerces/internal/parsers/SecurityConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/StandardParserConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/XIncludeAwareParserConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java ! src/com/sun/org/apache/xerces/internal/parsers/XML11DTDConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/XML11NonValidatingConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/XMLDocumentParser.java ! src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarParser.java ! src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java ! src/com/sun/org/apache/xerces/internal/parsers/XMLParser.java ! src/com/sun/org/apache/xerces/internal/util/DOMUtil.java ! src/com/sun/org/apache/xerces/internal/util/DatatypeMessageFormatter.java ! src/com/sun/org/apache/xerces/internal/util/EncodingMap.java ! src/com/sun/org/apache/xerces/internal/util/JAXPNamespaceContextWrapper.java ! src/com/sun/org/apache/xerces/internal/util/ParserConfigurationSettings.java ! src/com/sun/org/apache/xerces/internal/util/SAXMessageFormatter.java ! src/com/sun/org/apache/xerces/internal/util/StAXInputSource.java ! src/com/sun/org/apache/xerces/internal/util/StAXLocationWrapper.java ! src/com/sun/org/apache/xerces/internal/util/SymbolHash.java ! src/com/sun/org/apache/xerces/internal/util/XML11Char.java ! src/com/sun/org/apache/xerces/internal/util/XMLAttributesImpl.java ! src/com/sun/org/apache/xerces/internal/util/XMLChar.java ! src/com/sun/org/apache/xerces/internal/utils/ObjectFactory.java ! src/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java ! src/com/sun/org/apache/xerces/internal/xinclude/XIncludeMessageFormatter.java ! src/com/sun/org/apache/xerces/internal/xni/QName.java ! src/com/sun/org/apache/xerces/internal/xni/XNIException.java ! src/com/sun/org/apache/xerces/internal/xni/parser/XMLComponentManager.java ! src/com/sun/org/apache/xerces/internal/xni/parser/XMLConfigurationException.java ! src/com/sun/org/apache/xerces/internal/xpointer/ElementSchemePointer.java ! src/com/sun/org/apache/xerces/internal/xpointer/XPointerMessageFormatter.java ! src/com/sun/org/apache/xerces/internal/xs/datatypes/ByteList.java ! src/com/sun/org/apache/xerces/internal/xs/datatypes/ObjectList.java ! src/com/sun/org/apache/xml/internal/serialize/DOMSerializerImpl.java ! src/com/sun/org/apache/xml/internal/serialize/EncodingInfo.java ! src/com/sun/org/apache/xml/internal/serialize/SerializerFactory.java ! src/com/sun/org/apache/xml/internal/serializer/Encodings.java ! src/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java ! src/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java ! src/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java ! src/javax/xml/XMLConstants.java ! src/javax/xml/datatype/DatatypeFactory.java ! src/javax/xml/datatype/package.html ! src/javax/xml/namespace/QName.java ! src/javax/xml/parsers/DocumentBuilderFactory.java ! src/javax/xml/parsers/FactoryConfigurationError.java ! src/javax/xml/parsers/SAXParserFactory.java ! src/javax/xml/validation/SchemaFactoryFinder.java ! src/javax/xml/xpath/XPathFactoryFinder.java ! src/javax/xml/xpath/package.html Changeset: a155b1d3f973 Author: joehw Date: 2014-06-30 14:09 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/a155b1d3f973 8037948: Improve documentation for org.w3c.dom package Reviewed-by: lancea, henryjen, alanb ! src/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java ! src/org/w3c/dom/package.html Changeset: 8a8b8ebf1838 Author: lana Date: 2014-07-01 14:28 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/8a8b8ebf1838 Merge Changeset: 82b94ff002c6 Author: lana Date: 2014-07-09 10:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/82b94ff002c6 Merge Changeset: 2e5b63006187 Author: katleman Date: 2014-07-10 12:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/2e5b63006187 Added tag jdk9-b22 for changeset 82b94ff002c6 ! .hgtags Changeset: d1ac408193d0 Author: katleman Date: 2014-07-17 09:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxp/rev/d1ac408193d0 Added tag jdk9-b23 for changeset 2e5b63006187 ! .hgtags From aph at redhat.com Mon Jul 21 11:08:47 2014 From: aph at redhat.com (aph at redhat.com) Date: Mon, 21 Jul 2014 11:08:47 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/jaxws: 23 new changesets Message-ID: <201407211108.s6LB8mEJ003011@aojmv0008> Changeset: 6540457f5008 Author: erikj Date: 2014-04-22 14:08 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/6540457f5008 8040267: Remove forced -g from java compile lines in jaxp and jaxws Reviewed-by: mduigou, tbell, ihse ! make/BuildJaxws.gmk Changeset: 1f953ba7db2b Author: lana Date: 2014-04-24 16:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/1f953ba7db2b Merge Changeset: bdef19a15643 Author: katleman Date: 2014-05-01 12:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/bdef19a15643 Added tag jdk9-b11 for changeset 1f953ba7db2b ! .hgtags Changeset: f51b5ea42589 Author: mkos Date: 2014-04-28 14:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/f51b5ea42589 8040754: Break the circular dependency between SAAJ and JAXB Reviewed-by: chegar, mchung ! src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/soap/StaxBridge.java + src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/util/stax/SaajStaxReaderEx.java + src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/util/stax/SaajStaxWriter.java + src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/util/stax/SaajStaxWriterEx.java ! src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/BinaryText.java ! src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/StAxSOAPBody.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/message/saaj/SAAJFactory.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/message/saaj/SaajStaxWriter.java Changeset: 43683fefd932 Author: mchung Date: 2014-04-28 14:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/43683fefd932 8042058: Missing deleted files from JDK-8040754 breaks jdk9/dev build Reviewed-by: chegar - src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/util/SaajStaxReaderEx.java - src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/util/SaajStaxWriter.java - src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/util/SaajStaxWriterEx.java Changeset: 779f8b21c75f Author: lana Date: 2014-05-01 14:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/779f8b21c75f Merge - src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/util/SaajStaxReaderEx.java - src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/util/SaajStaxWriter.java - src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/util/SaajStaxWriterEx.java Changeset: 3d42204854c9 Author: katleman Date: 2014-05-08 01:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/3d42204854c9 Added tag jdk9-b12 for changeset 779f8b21c75f ! .hgtags Changeset: 02e58850b706 Author: katleman Date: 2014-05-15 10:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/02e58850b706 Added tag jdk9-b13 for changeset 3d42204854c9 ! .hgtags Changeset: 1ba2ace9be55 Author: katleman Date: 2014-05-22 12:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/1ba2ace9be55 Added tag jdk9-b14 for changeset 02e58850b706 ! .hgtags Changeset: e3b68a164ebf Author: mkos Date: 2014-05-23 16:24 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/e3b68a164ebf 8039210: Fix type error in DefaultResourceInjector Summary: adding generic types to method call; blocker for fixing javac issue Reviewed-by: chegar ! src/share/jaxws_classes/com/sun/xml/internal/ws/server/DefaultResourceInjector.java Changeset: 0754bb097fd2 Author: mkos Date: 2014-05-23 16:25 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/0754bb097fd2 8043129: JAF initialisation in SAAJ clashing with the one in javax.mail Reviewed-by: chegar ! src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/soap/AttachmentPartImpl.java Changeset: e9780330017a Author: mkos Date: 2014-05-26 14:59 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/e9780330017a 8043762: Remove unused files from jaxws repository Reviewed-by: alanb - src/share/jaxws_classes/com/sun/tools/etc/META-INF/services/com.sun.xml.internal.ws.spi.db.BindingContextFactory - src/share/jaxws_classes/com/sun/tools/internal/jxc/gen/config/config.rng - src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/dtd/bindinfo/bindingfile.rng - src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/xmlschema/bindinfo/binding.rng - src/share/jaxws_classes/com/sun/xml/internal/bind/v2/schemagen/xmlschema/xmlschema-for-jaxb.rng - src/share/jaxws_classes/com/sun/xml/internal/rngom/parse/compact/CompactSyntax.jj - src/share/jaxws_classes/com/sun/xml/internal/ws/client/sei/pacakge-info.java + src/share/jaxws_classes/com/sun/xml/internal/ws/client/sei/package-info.java Changeset: 1e1a3b2215b7 Author: katleman Date: 2014-05-29 22:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/1e1a3b2215b7 Added tag jdk9-b15 for changeset e9780330017a ! .hgtags Changeset: 6b159e727dac Author: katleman Date: 2014-06-04 20:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/6b159e727dac Added tag jdk9-b16 for changeset 1e1a3b2215b7 ! .hgtags Changeset: 275f2385aed8 Author: katleman Date: 2014-06-12 10:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/275f2385aed8 Added tag jdk9-b17 for changeset 6b159e727dac ! .hgtags Changeset: 7f922a73e8a2 Author: katleman Date: 2014-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/7f922a73e8a2 Added tag jdk9-b18 for changeset 275f2385aed8 ! .hgtags Changeset: 6a9f8ff45c04 Author: katleman Date: 2014-06-19 11:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/6a9f8ff45c04 Added tag jdk9-b19 for changeset 7f922a73e8a2 ! .hgtags Changeset: 4a099451fd7e Author: katleman Date: 2014-06-26 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/4a099451fd7e Added tag jdk9-b20 for changeset 6a9f8ff45c04 ! .hgtags Changeset: 7f5e5902cde7 Author: katleman Date: 2014-07-03 11:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/7f5e5902cde7 Added tag jdk9-b21 for changeset 4a099451fd7e ! .hgtags Changeset: 34c714e8c4ba Author: katleman Date: 2014-07-10 12:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/34c714e8c4ba Added tag jdk9-b22 for changeset 7f5e5902cde7 ! .hgtags Changeset: e4c9857923f9 Author: mkos Date: 2014-07-09 13:55 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/e4c9857923f9 8044656: Update JAX-WS RI integration to latest version Summary: JAX-WS RI upgrade from 2.2.10-b140228.1436 to 2.2.11-b140602.1731 Reviewed-by: lancea ! src/share/jaxws_classes/com/sun/istack/internal/ByteArrayDataSource.java ! src/share/jaxws_classes/com/sun/istack/internal/XMLStreamReaderToContentHandler.java ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_de.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_es.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_fr.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_it.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_ja.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_ko.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_pt_BR.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_zh_CN.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_zh_TW.properties ! src/share/jaxws_classes/com/sun/tools/internal/ws/version.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/Driver.java ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_de.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_es.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_fr.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_it.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_ja.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_ko.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_pt_BR.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_zh_CN.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_zh_TW.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/Options.java + src/share/jaxws_classes/com/sun/xml/internal/bind/Messages_de.properties + src/share/jaxws_classes/com/sun/xml/internal/bind/Messages_es.properties + src/share/jaxws_classes/com/sun/xml/internal/bind/Messages_fr.properties + src/share/jaxws_classes/com/sun/xml/internal/bind/Messages_it.properties + src/share/jaxws_classes/com/sun/xml/internal/bind/Messages_ja.properties + src/share/jaxws_classes/com/sun/xml/internal/bind/Messages_ko.properties + src/share/jaxws_classes/com/sun/xml/internal/bind/Messages_pt_BR.properties + src/share/jaxws_classes/com/sun/xml/internal/bind/Messages_zh_CN.properties + src/share/jaxws_classes/com/sun/xml/internal/bind/Messages_zh_TW.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages_de.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages_es.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages_fr.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages_it.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages_ja.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages_ko.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages_pt_BR.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages_zh_CN.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages_zh_TW.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/RuntimeBuiltinLeafInfoImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ArrayBeanInfoImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ElementBeanInfoImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Messages.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ValueListBeanInfoImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/ArrayERProperty.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/SingleMapNodeProperty.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Accessor.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/DefaultValueLoaderDecorator.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/Discarder.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/DomLoader.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/LeafPropertyLoader.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/LeafPropertyXsiLoader.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/Loader.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/ProxyLoader.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/SAXConnector.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/Scope.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/StructureLoader.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/TextLoader.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/UnmarshallingContext.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/ValuePropertyLoader.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/XsiNilLoader.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/XsiTypeLoader.java ! src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/soap/AttachmentPartImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/soap/EnvelopeFactory.java ! src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/util/stax/SaajStaxWriter.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/message/Packet.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/message/saaj/SaajStaxWriter.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/binding/WebServiceFeatureList.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/util/version.properties ! src/share/jaxws_classes/com/sun/xml/internal/ws/util/xml/XMLReaderComposite.java ! src/share/jaxws_classes/javax/xml/ws/WebServiceRef.java ! src/share/jaxws_classes/javax/xml/ws/spi/Provider.java Changeset: ce19e0403ec8 Author: lana Date: 2014-07-10 12:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/ce19e0403ec8 Merge Changeset: a2af4ca21624 Author: katleman Date: 2014-07-17 09:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jaxws/rev/a2af4ca21624 Added tag jdk9-b23 for changeset ce19e0403ec8 ! .hgtags From aph at redhat.com Mon Jul 21 11:11:40 2014 From: aph at redhat.com (aph at redhat.com) Date: Mon, 21 Jul 2014 11:11:40 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/langtools: 169 new changesets Message-ID: <201407211111.s6LBBggF003397@aojmv0008> Changeset: 95f5329ecbbb Author: jlahoda Date: 2014-04-18 11:53 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/95f5329ecbbb 8038788: javac behaves incorrectly for annotations after method type parameters in some cases Reviewed-by: jjg, emc ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java + test/tools/javac/annotations/typeAnnotations/newlocations/AfterMethodTypeParams.java Changeset: cf78452cdb3b Author: vromero Date: 2014-04-18 17:50 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/cf78452cdb3b 8029002: javac should take multiple upper bounds into account in incorporation Reviewed-by: dlsmith, jjg ! src/share/classes/com/sun/tools/javac/comp/Infer.java + test/tools/javac/T8029002/MultipleUpperBoundsIncorporationTest.java Changeset: 0924a40d9739 Author: jjg Date: 2014-04-18 17:23 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/0924a40d9739 8040908: javadoc test TestDocEncoding should use -notimestamp Reviewed-by: ksrini ! test/com/sun/javadoc/testDocEncoding/TestDocEncoding.java Changeset: adf34d48dc1f Author: jjg Date: 2014-04-18 17:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/adf34d48dc1f 8041150: Avoid silly use of static methods in JavadocTester Reviewed-by: ksrini ! test/com/sun/javadoc/AccessSummary/AccessSummary.java ! test/com/sun/javadoc/MetaTag/MetaTag.java ! test/com/sun/javadoc/PackagesHeader/PackagesHeader.java ! test/com/sun/javadoc/_template/Template.java ! test/com/sun/javadoc/_template/TemplateComplete.java ! test/com/sun/javadoc/constantValues/TestConstantValuesDriver.java ! test/com/sun/javadoc/dupThrowsTags/TestDupThrowsTags.java ! test/com/sun/javadoc/lib/JavadocTester.java ! test/com/sun/javadoc/testAbsLinkPath/TestAbsLinkPath.java ! test/com/sun/javadoc/testAbstractMethod/TestAbstractMethod.java ! test/com/sun/javadoc/testAnchorNames/TestAnchorNames.java ! test/com/sun/javadoc/testAnnotationOptional/TestAnnotationOptional.java ! test/com/sun/javadoc/testAnnotationTypes/TestAnnotationTypes.java ! test/com/sun/javadoc/testBackSlashInLink/TestBackSlashInLink.java ! test/com/sun/javadoc/testBadPackageFileInJar/TestBadPackageFileInJar.java ! test/com/sun/javadoc/testBadSourceFile/TestBadSourceFile.java ! test/com/sun/javadoc/testBaseClass/TestBaseClass.java ! test/com/sun/javadoc/testBreakIterator/TestBreakIterator.java ! test/com/sun/javadoc/testCRLineSeparator/TestCRLineSeparator.java ! test/com/sun/javadoc/testCharset/TestCharset.java ! test/com/sun/javadoc/testClassCrossReferences/TestClassCrossReferences.java ! test/com/sun/javadoc/testClassTree/TestClassTree.java ! test/com/sun/javadoc/testCmndLineClass/TestCmndLineClass.java ! test/com/sun/javadoc/testCompletionFailure/TestCompletionFailure.java ! test/com/sun/javadoc/testConstantValuesPage/TestConstantValuesPage.java ! test/com/sun/javadoc/testConstructorIndent/TestConstructorIndent.java ! test/com/sun/javadoc/testConstructors/TestConstructors.java ! test/com/sun/javadoc/testCustomTag/TestCustomTag.java ! test/com/sun/javadoc/testDeprecatedDocs/TestDeprecatedDocs.java ! test/com/sun/javadoc/testDocEncoding/TestDocEncoding.java ! test/com/sun/javadoc/testDocErrorReporter/TestDocErrorReporter.java ! test/com/sun/javadoc/testDocFileDir/TestDocFileDir.java ! test/com/sun/javadoc/testDocFiles/TestDocFiles.java ! test/com/sun/javadoc/testDocRootInlineTag/TestDocRootInlineTag.java ! test/com/sun/javadoc/testDocRootLink/TestDocRootLink.java ! test/com/sun/javadoc/testDupParamWarn/TestDupParamWarn.java ! test/com/sun/javadoc/testEmptyClass/TestEmptyClass.java ! test/com/sun/javadoc/testEnclosingClass/TestEnclosingClass.java ! test/com/sun/javadoc/testEncoding/TestEncoding.java ! test/com/sun/javadoc/testExternalOverridenMethod/TestExternalOverridenMethod.java ! test/com/sun/javadoc/testGeneratedBy/TestGeneratedBy.java ! test/com/sun/javadoc/testGroupOption/TestGroupOption.java ! test/com/sun/javadoc/testHeadings/TestHeadings.java ! test/com/sun/javadoc/testHelpFile/TestHelpFile.java ! test/com/sun/javadoc/testHelpOption/TestHelpOption.java ! test/com/sun/javadoc/testHiddenMembers/TestHiddenMembers.java ! test/com/sun/javadoc/testHref/TestHref.java ! test/com/sun/javadoc/testHrefInDocComment/TestHrefInDocComment.java ! test/com/sun/javadoc/testHtmlComments/TestHtmlComments.java ! test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java ! test/com/sun/javadoc/testHtmlTableStyles/TestHtmlTableStyles.java ! test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java ! test/com/sun/javadoc/testHtmlTag/TestHtmlTag.java ! test/com/sun/javadoc/testIndentation/TestIndentation.java ! test/com/sun/javadoc/testIndex/TestIndex.java ! test/com/sun/javadoc/testInlineLinkLabel/TestInlineLinkLabel.java ! test/com/sun/javadoc/testInterface/TestInterface.java ! test/com/sun/javadoc/testJavaFX/TestJavaFX.java ! test/com/sun/javadoc/testJavascript/TestJavascript.java ! test/com/sun/javadoc/testLambdaFeature/TestLambdaFeature.java ! test/com/sun/javadoc/testLeadingSpaces/LeadingSpaces.java ! test/com/sun/javadoc/testLegacyTaglet/TestLegacyTaglet.java ! test/com/sun/javadoc/testLinkOption/TestBadLinkOption.java ! test/com/sun/javadoc/testLinkOption/TestLinkOption.java ! test/com/sun/javadoc/testLinkOption/TestNewLineInLink.java ! test/com/sun/javadoc/testLinkTaglet/TestLinkTaglet.java ! test/com/sun/javadoc/testLinkToSerialForm/TestLinkToSerialForm.java ! test/com/sun/javadoc/testLiteralCodeInPre/TestLiteralCodeInPre.java ! test/com/sun/javadoc/testMemberInheritence/TestMemberInheritence.java ! test/com/sun/javadoc/testMemberSummary/TestMemberSummary.java ! test/com/sun/javadoc/testMethodTypes/TestMethodTypes.java ! test/com/sun/javadoc/testModifier/TestModifier.java ! test/com/sun/javadoc/testNavigation/TestNavigation.java ! test/com/sun/javadoc/testNestedGenerics/TestNestedGenerics.java ! test/com/sun/javadoc/testNestedInlineTag/TestNestedInlineTag.java ! test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java ! test/com/sun/javadoc/testNoPackagesFile/TestNoPackagesFile.java ! test/com/sun/javadoc/testNonFrameWarning/TestNonFrameWarning.java ! test/com/sun/javadoc/testNotifications/TestNotifications.java ! test/com/sun/javadoc/testOptions/TestOptions.java ! test/com/sun/javadoc/testOverridenMethods/TestMultiInheritence.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenMethodDocCopy.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethods.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethodsWithPackageFlag.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethodsWithPrivateFlag.java ! test/com/sun/javadoc/testPackageDeprecation/TestPackageDeprecation.java ! test/com/sun/javadoc/testPackagePage/TestPackagePage.java ! test/com/sun/javadoc/testParamTaglet/TestParamTaglet.java ! test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java ! test/com/sun/javadoc/testProfiles/TestProfiles.java ! test/com/sun/javadoc/testProfiles/TestProfilesConfiguration.java ! test/com/sun/javadoc/testRecurseSubPackages/TestRecurseSubPackages.java ! test/com/sun/javadoc/testRelativeLinks/TestRelativeLinks.java ! test/com/sun/javadoc/testRepeatedAnnotations/TestRepeatedAnnotations.java ! test/com/sun/javadoc/testReturnTag/TestReturnTag.java ! test/com/sun/javadoc/testSeeTag/TestSeeTag.java ! test/com/sun/javadoc/testSerialVersionUID/TestSerialVersionUID.java ! test/com/sun/javadoc/testSerializedForm/TestSerializedForm.java ! test/com/sun/javadoc/testSerializedFormDeprecationInfo/TestSerializedFormDeprecationInfo.java ! test/com/sun/javadoc/testSimpleTag/TestSimpleTag.java ! test/com/sun/javadoc/testSimpleTagExclude/TestSimpleTagExclude.java ! test/com/sun/javadoc/testSimpleTagInherit/TestSimpleTagInherit.java ! test/com/sun/javadoc/testSinceTag/TestSinceTag.java ! test/com/sun/javadoc/testSingleQuotedLink/TestSingleQuotedLink.java ! test/com/sun/javadoc/testSourceTab/TestSourceTab.java ! test/com/sun/javadoc/testStylesheet/TestStylesheet.java ! test/com/sun/javadoc/testSubTitle/TestSubTitle.java ! test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java ! test/com/sun/javadoc/testSuperclassInSerialForm/TestSuperClassInSerialForm.java ! test/com/sun/javadoc/testSupplementary/TestSupplementary.java ! test/com/sun/javadoc/testTagHolderMethod/TestTagHolderMethod.java ! test/com/sun/javadoc/testTagInheritence/TestTagInheritence.java ! test/com/sun/javadoc/testTagMisuse/TestTagMisuse.java ! test/com/sun/javadoc/testTagOutput/TestTagOutput.java ! test/com/sun/javadoc/testTaglets/TestTaglets.java ! test/com/sun/javadoc/testThrowsHead/TestThrowsHead.java ! test/com/sun/javadoc/testThrowsInheritence/TestThrowsTagInheritence.java ! test/com/sun/javadoc/testThrowsTag/TestThrowsTag.java ! test/com/sun/javadoc/testTitleInHref/TestTitleInHref.java ! test/com/sun/javadoc/testTopOption/TestTopOption.java ! test/com/sun/javadoc/testTypeAnnotations/TestTypeAnnotations.java ! test/com/sun/javadoc/testTypeParams/TestTypeParameters.java ! test/com/sun/javadoc/testUnnamedPackage/TestUnnamedPackage.java ! test/com/sun/javadoc/testUseOption/TestUseOption.java ! test/com/sun/javadoc/testValueTag/TestValueTag.java ! test/com/sun/javadoc/testWarnBadParamNames/TestWarnBadParamNames.java ! test/com/sun/javadoc/testWarnings/TestWarnings.java ! test/com/sun/javadoc/testWindowTitle/TestWindowTitle.java ! test/com/sun/javadoc/testXOption/TestXOption.java ! test/com/sun/javadoc/typeAnnotations/smoke/TestSmoke.java Changeset: 90eb1e6bb784 Author: vromero Date: 2014-04-21 22:51 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/90eb1e6bb784 8029718: Should always use lambda body structure to disambiguate overload resolution Reviewed-by: dlsmith, jjg, jlahoda ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/share/classes/com/sun/tools/javac/tree/TreeTranslator.java + test/tools/javac/diags/examples/LambdaBodyNeitherValueNorVoidCompatible.java - test/tools/javac/lambda/ErroneousLambdaExpr.java - test/tools/javac/lambda/ErroneousLambdaExpr.out + test/tools/javac/lambda/LambdaExprLeadsToMissingClassFilesTest.java + test/tools/javac/lambda/MostSpecific09.java + test/tools/javac/lambda/MostSpecific09.out ! test/tools/javac/lambda/TargetType01.java ! test/tools/javac/lambda/TargetType01.out ! test/tools/javac/lambda/TargetType02.java ! test/tools/javac/lambda/TargetType02.out ! test/tools/javac/lambda/TargetType21.out ! test/tools/javac/lambda/TargetType42.java ! test/tools/javac/lambda/lambdaExpression/LambdaTest1.java ! test/tools/javac/lambda/lambdaExpression/SamConversionComboTest.java Changeset: b510ad035fe4 Author: alundblad Date: 2014-04-22 16:51 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/b510ad035fe4 8035063: Option handling in sjavac needs to be rewritten Summary: Option handling code rewritten. Exclusion / inclusion patterns changed from package to directories. Reviewed-by: jjg, jfranck ! src/share/classes/com/sun/tools/sjavac/CleanProperties.java ! src/share/classes/com/sun/tools/sjavac/CompileJavaPackages.java ! src/share/classes/com/sun/tools/sjavac/CompileProperties.java ! src/share/classes/com/sun/tools/sjavac/CopyFile.java ! src/share/classes/com/sun/tools/sjavac/JavacState.java ! src/share/classes/com/sun/tools/sjavac/Log.java ! src/share/classes/com/sun/tools/sjavac/Main.java ! src/share/classes/com/sun/tools/sjavac/Source.java ! src/share/classes/com/sun/tools/sjavac/Transformer.java ! src/share/classes/com/sun/tools/sjavac/Util.java + src/share/classes/com/sun/tools/sjavac/options/ArgumentIterator.java + src/share/classes/com/sun/tools/sjavac/options/Option.java + src/share/classes/com/sun/tools/sjavac/options/OptionHelper.java + src/share/classes/com/sun/tools/sjavac/options/Options.java + src/share/classes/com/sun/tools/sjavac/options/SourceLocation.java ! src/share/classes/com/sun/tools/sjavac/server/JavacServer.java ! src/share/classes/com/sun/tools/sjavac/server/PortFile.java + test/tools/sjavac/ExclPattern.java + test/tools/sjavac/ExclPatternWrapper.java + test/tools/sjavac/JavacOptionPrep.java + test/tools/sjavac/JavacOptionPrepWrapper.java + test/tools/sjavac/OptionDecoding.java + test/tools/sjavac/OptionDecodingWrapper.java + test/tools/sjavac/SJavacTestUtil.java ! test/tools/sjavac/SJavacWrapper.java + test/tools/sjavac/Serialization.java + test/tools/sjavac/SerializationWrapper.java + test/tools/sjavac/util/OptionTestUtil.java Changeset: 71a8aaacdc8a Author: pgovereau Date: 2014-04-22 19:52 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/71a8aaacdc8a 8038023: Compiler crash ClassCastException Summary: Add additional checks on results of ClassReader.readPool Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties ! test/tools/javac/diags/examples.not-yet.txt Changeset: a5e2ad53792d Author: pgovereau Date: 2014-04-22 17:07 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/a5e2ad53792d 8034245: Refactor TopLevel tree node. Summary: Added JCPackageDecl to JCTree to store package-level information. Reviewed-by: jjg, jlahoda ! src/share/classes/com/sun/source/tree/CompilationUnitTree.java + src/share/classes/com/sun/source/tree/PackageTree.java ! src/share/classes/com/sun/source/tree/Tree.java ! src/share/classes/com/sun/source/tree/TreeVisitor.java ! src/share/classes/com/sun/source/util/SimpleTreeVisitor.java ! src/share/classes/com/sun/source/util/TreeScanner.java ! src/share/classes/com/sun/tools/doclint/Checker.java ! src/share/classes/com/sun/tools/doclint/DocLint.java ! src/share/classes/com/sun/tools/javac/comp/Enter.java ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java ! src/share/classes/com/sun/tools/javac/model/JavacElements.java ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/share/classes/com/sun/tools/javac/tree/JCTree.java ! src/share/classes/com/sun/tools/javac/tree/Pretty.java ! src/share/classes/com/sun/tools/javac/tree/TreeCopier.java ! src/share/classes/com/sun/tools/javac/tree/TreeInfo.java ! src/share/classes/com/sun/tools/javac/tree/TreeMaker.java ! src/share/classes/com/sun/tools/javac/tree/TreeScanner.java ! src/share/classes/com/sun/tools/javac/tree/TreeTranslator.java ! src/share/classes/com/sun/tools/javadoc/DocEnv.java ! src/share/classes/com/sun/tools/javadoc/JavadocEnter.java ! test/tools/javac/tree/DocCommentToplevelTest.java Changeset: 773a179340fc Author: pgovereau Date: 2014-04-22 15:59 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/773a179340fc 8041521: JDK-8034245 breaks a bootcycle build Reviewed-by: jjg ! make/tools/genstubs/GenStubs.java Changeset: 7ce35e0917e2 Author: jjg Date: 2014-04-22 17:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/7ce35e0917e2 8041253: Avoid redundant synonyms of NO_TEST Reviewed-by: ksrini ! test/com/sun/javadoc/MetaTag/MetaTag.java ! test/com/sun/javadoc/PackagesHeader/PackagesHeader.java ! test/com/sun/javadoc/testAbsLinkPath/TestAbsLinkPath.java ! test/com/sun/javadoc/testAnnotationOptional/TestAnnotationOptional.java ! test/com/sun/javadoc/testBackSlashInLink/TestBackSlashInLink.java ! test/com/sun/javadoc/testBadSourceFile/TestBadSourceFile.java ! test/com/sun/javadoc/testBaseClass/TestBaseClass.java ! test/com/sun/javadoc/testBreakIterator/TestBreakIterator.java ! test/com/sun/javadoc/testCRLineSeparator/TestCRLineSeparator.java ! test/com/sun/javadoc/testClassCrossReferences/TestClassCrossReferences.java ! test/com/sun/javadoc/testCmndLineClass/TestCmndLineClass.java ! test/com/sun/javadoc/testConstantValuesPage/TestConstantValuesPage.java ! test/com/sun/javadoc/testConstructorIndent/TestConstructorIndent.java ! test/com/sun/javadoc/testDeprecatedDocs/TestDeprecatedDocs.java ! test/com/sun/javadoc/testDocEncoding/TestDocEncoding.java ! test/com/sun/javadoc/testDocErrorReporter/TestDocErrorReporter.java ! test/com/sun/javadoc/testDocFileDir/TestDocFileDir.java ! test/com/sun/javadoc/testDocRootInlineTag/TestDocRootInlineTag.java ! test/com/sun/javadoc/testEmptyClass/TestEmptyClass.java ! test/com/sun/javadoc/testEnclosingClass/TestEnclosingClass.java ! test/com/sun/javadoc/testEncoding/TestEncoding.java ! test/com/sun/javadoc/testExternalOverridenMethod/TestExternalOverridenMethod.java ! test/com/sun/javadoc/testGroupOption/TestGroupOption.java ! test/com/sun/javadoc/testHeadings/TestHeadings.java ! test/com/sun/javadoc/testHelpFile/TestHelpFile.java ! test/com/sun/javadoc/testHelpOption/TestHelpOption.java ! test/com/sun/javadoc/testHiddenMembers/TestHiddenMembers.java ! test/com/sun/javadoc/testHrefInDocComment/TestHrefInDocComment.java ! test/com/sun/javadoc/testHtmlComments/TestHtmlComments.java ! test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java ! test/com/sun/javadoc/testIndentation/TestIndentation.java ! test/com/sun/javadoc/testIndex/TestIndex.java ! test/com/sun/javadoc/testInlineLinkLabel/TestInlineLinkLabel.java ! test/com/sun/javadoc/testJavascript/TestJavascript.java ! test/com/sun/javadoc/testLeadingSpaces/LeadingSpaces.java ! test/com/sun/javadoc/testLegacyTaglet/TestLegacyTaglet.java ! test/com/sun/javadoc/testLinkOption/TestLinkOption.java ! test/com/sun/javadoc/testLinkToSerialForm/TestLinkToSerialForm.java ! test/com/sun/javadoc/testLiteralCodeInPre/TestLiteralCodeInPre.java ! test/com/sun/javadoc/testMemberSummary/TestMemberSummary.java ! test/com/sun/javadoc/testModifier/TestModifier.java ! test/com/sun/javadoc/testNavigation/TestNavigation.java ! test/com/sun/javadoc/testNestedGenerics/TestNestedGenerics.java ! test/com/sun/javadoc/testNestedInlineTag/TestNestedInlineTag.java ! test/com/sun/javadoc/testOptions/TestOptions.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenMethodDocCopy.java ! test/com/sun/javadoc/testPackageDeprecation/TestPackageDeprecation.java ! test/com/sun/javadoc/testParamTaglet/TestParamTaglet.java ! test/com/sun/javadoc/testRelativeLinks/TestRelativeLinks.java ! test/com/sun/javadoc/testReturnTag/TestReturnTag.java ! test/com/sun/javadoc/testSerialVersionUID/TestSerialVersionUID.java ! test/com/sun/javadoc/testSimpleTagExclude/TestSimpleTagExclude.java ! test/com/sun/javadoc/testSimpleTagInherit/TestSimpleTagInherit.java ! test/com/sun/javadoc/testSourceTab/TestSourceTab.java ! test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java ! test/com/sun/javadoc/testSuperclassInSerialForm/TestSuperClassInSerialForm.java ! test/com/sun/javadoc/testTagMisuse/TestTagMisuse.java ! test/com/sun/javadoc/testTaglets/TestTaglets.java ! test/com/sun/javadoc/testThrowsHead/TestThrowsHead.java ! test/com/sun/javadoc/testThrowsTag/TestThrowsTag.java ! test/com/sun/javadoc/testTitleInHref/TestTitleInHref.java ! test/com/sun/javadoc/testTopOption/TestTopOption.java ! test/com/sun/javadoc/testTypeAnnotations/TestTypeAnnotations.java ! test/com/sun/javadoc/testTypeParams/TestTypeParameters.java ! test/com/sun/javadoc/testWarnBadParamNames/TestWarnBadParamNames.java ! test/com/sun/javadoc/testWarnings/TestWarnings.java ! test/com/sun/javadoc/testXOption/TestXOption.java Changeset: 903e207a9fac Author: jjg Date: 2014-04-22 17:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/903e207a9fac 8040903: Clean up use of BUG_ID in javadoc tests Reviewed-by: ksrini ! test/com/sun/javadoc/5093723/T5093723.java ! test/com/sun/javadoc/AccessSummary/AccessSummary.java ! test/com/sun/javadoc/MetaTag/MetaTag.java ! test/com/sun/javadoc/PackagesHeader/PackagesHeader.java ! test/com/sun/javadoc/T6735320/T6735320.java ! test/com/sun/javadoc/_template/Template.java ! test/com/sun/javadoc/_template/TemplateComplete.java ! test/com/sun/javadoc/constantValues/TestConstantValuesDriver.java ! test/com/sun/javadoc/dupThrowsTags/TestDupThrowsTags.java ! test/com/sun/javadoc/lib/JavadocTester.java ! test/com/sun/javadoc/testAbsLinkPath/TestAbsLinkPath.java ! test/com/sun/javadoc/testAbstractMethod/TestAbstractMethod.java ! test/com/sun/javadoc/testAnchorNames/TestAnchorNames.java ! test/com/sun/javadoc/testAnnotationOptional/TestAnnotationOptional.java ! test/com/sun/javadoc/testAnnotationTypes/TestAnnotationTypes.java ! test/com/sun/javadoc/testBackSlashInLink/TestBackSlashInLink.java ! test/com/sun/javadoc/testBadPackageFileInJar/TestBadPackageFileInJar.java ! test/com/sun/javadoc/testBadSourceFile/TestBadSourceFile.java ! test/com/sun/javadoc/testBaseClass/TestBaseClass.java ! test/com/sun/javadoc/testBreakIterator/TestBreakIterator.java ! test/com/sun/javadoc/testCRLineSeparator/TestCRLineSeparator.java ! test/com/sun/javadoc/testCharset/TestCharset.java ! test/com/sun/javadoc/testClassCrossReferences/TestClassCrossReferences.java ! test/com/sun/javadoc/testClassTree/TestClassTree.java ! test/com/sun/javadoc/testCmndLineClass/TestCmndLineClass.java ! test/com/sun/javadoc/testCompletionFailure/TestCompletionFailure.java ! test/com/sun/javadoc/testConstantValuesPage/TestConstantValuesPage.java ! test/com/sun/javadoc/testConstructorIndent/TestConstructorIndent.java ! test/com/sun/javadoc/testConstructors/TestConstructors.java ! test/com/sun/javadoc/testCustomTag/TestCustomTag.java ! test/com/sun/javadoc/testDeprecatedDocs/TestDeprecatedDocs.java ! test/com/sun/javadoc/testDocEncoding/TestDocEncoding.java ! test/com/sun/javadoc/testDocErrorReporter/TestDocErrorReporter.java ! test/com/sun/javadoc/testDocFileDir/TestDocFileDir.java ! test/com/sun/javadoc/testDocFiles/TestDocFiles.java ! test/com/sun/javadoc/testDocRootInlineTag/TestDocRootInlineTag.java ! test/com/sun/javadoc/testDocRootLink/TestDocRootLink.java ! test/com/sun/javadoc/testDupParamWarn/TestDupParamWarn.java ! test/com/sun/javadoc/testEmptyClass/TestEmptyClass.java ! test/com/sun/javadoc/testEnclosingClass/TestEnclosingClass.java ! test/com/sun/javadoc/testEncoding/TestEncoding.java ! test/com/sun/javadoc/testExternalOverridenMethod/TestExternalOverridenMethod.java ! test/com/sun/javadoc/testGeneratedBy/TestGeneratedBy.java ! test/com/sun/javadoc/testGroupOption/TestGroupOption.java ! test/com/sun/javadoc/testHeadings/TestHeadings.java ! test/com/sun/javadoc/testHelpFile/TestHelpFile.java ! test/com/sun/javadoc/testHelpOption/TestHelpOption.java ! test/com/sun/javadoc/testHiddenMembers/TestHiddenMembers.java ! test/com/sun/javadoc/testHref/TestHref.java ! test/com/sun/javadoc/testHrefInDocComment/TestHrefInDocComment.java ! test/com/sun/javadoc/testHtmlComments/TestHtmlComments.java ! test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java ! test/com/sun/javadoc/testHtmlTableStyles/TestHtmlTableStyles.java ! test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java ! test/com/sun/javadoc/testHtmlTag/TestHtmlTag.java ! test/com/sun/javadoc/testIndentation/TestIndentation.java ! test/com/sun/javadoc/testIndex/TestIndex.java ! test/com/sun/javadoc/testInlineLinkLabel/TestInlineLinkLabel.java ! test/com/sun/javadoc/testInterface/TestInterface.java ! test/com/sun/javadoc/testJavaFX/TestJavaFX.java ! test/com/sun/javadoc/testJavascript/TestJavascript.java ! test/com/sun/javadoc/testLambdaFeature/TestLambdaFeature.java ! test/com/sun/javadoc/testLeadingSpaces/LeadingSpaces.java ! test/com/sun/javadoc/testLegacyTaglet/TestLegacyTaglet.java ! test/com/sun/javadoc/testLinkOption/TestBadLinkOption.java ! test/com/sun/javadoc/testLinkOption/TestLinkOption.java ! test/com/sun/javadoc/testLinkOption/TestNewLineInLink.java ! test/com/sun/javadoc/testLinkTaglet/TestLinkTaglet.java ! test/com/sun/javadoc/testLinkToSerialForm/TestLinkToSerialForm.java ! test/com/sun/javadoc/testLiteralCodeInPre/TestLiteralCodeInPre.java ! test/com/sun/javadoc/testMemberInheritence/TestMemberInheritence.java ! test/com/sun/javadoc/testMemberSummary/TestMemberSummary.java ! test/com/sun/javadoc/testMethodTypes/TestMethodTypes.java ! test/com/sun/javadoc/testModifier/TestModifier.java ! test/com/sun/javadoc/testNavigation/TestNavigation.java ! test/com/sun/javadoc/testNestedGenerics/TestNestedGenerics.java ! test/com/sun/javadoc/testNestedInlineTag/TestNestedInlineTag.java ! test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java ! test/com/sun/javadoc/testNoPackagesFile/TestNoPackagesFile.java ! test/com/sun/javadoc/testNonFrameWarning/TestNonFrameWarning.java ! test/com/sun/javadoc/testNotifications/TestNotifications.java ! test/com/sun/javadoc/testOptions/TestOptions.java ! test/com/sun/javadoc/testOverridenMethods/TestMultiInheritence.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenMethodDocCopy.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethods.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethodsWithPackageFlag.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethodsWithPrivateFlag.java ! test/com/sun/javadoc/testPackageDeprecation/TestPackageDeprecation.java ! test/com/sun/javadoc/testPackagePage/TestPackagePage.java ! test/com/sun/javadoc/testParamTaglet/TestParamTaglet.java ! test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java ! test/com/sun/javadoc/testProfiles/TestProfiles.java ! test/com/sun/javadoc/testProfiles/TestProfilesConfiguration.java ! test/com/sun/javadoc/testRecurseSubPackages/TestRecurseSubPackages.java ! test/com/sun/javadoc/testRelativeLinks/TestRelativeLinks.java ! test/com/sun/javadoc/testRepeatedAnnotations/TestRepeatedAnnotations.java ! test/com/sun/javadoc/testReturnTag/TestReturnTag.java ! test/com/sun/javadoc/testSeeTag/TestSeeTag.java ! test/com/sun/javadoc/testSerialVersionUID/TestSerialVersionUID.java ! test/com/sun/javadoc/testSerializedForm/TestSerializedForm.java ! test/com/sun/javadoc/testSerializedFormDeprecationInfo/TestSerializedFormDeprecationInfo.java ! test/com/sun/javadoc/testSimpleTag/TestSimpleTag.java ! test/com/sun/javadoc/testSimpleTagExclude/TestSimpleTagExclude.java ! test/com/sun/javadoc/testSimpleTagInherit/TestSimpleTagInherit.java ! test/com/sun/javadoc/testSinceTag/TestSinceTag.java ! test/com/sun/javadoc/testSingleQuotedLink/TestSingleQuotedLink.java ! test/com/sun/javadoc/testSourceTab/TestSourceTab.java ! test/com/sun/javadoc/testStylesheet/TestStylesheet.java ! test/com/sun/javadoc/testSubTitle/TestSubTitle.java ! test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java ! test/com/sun/javadoc/testSuperclassInSerialForm/TestSuperClassInSerialForm.java ! test/com/sun/javadoc/testSupplementary/TestSupplementary.java ! test/com/sun/javadoc/testTagHolderMethod/TestTagHolderMethod.java ! test/com/sun/javadoc/testTagInheritence/TestTagInheritence.java ! test/com/sun/javadoc/testTagMisuse/TestTagMisuse.java ! test/com/sun/javadoc/testTagOutput/TestTagOutput.java ! test/com/sun/javadoc/testTaglets/TestTaglets.java ! test/com/sun/javadoc/testThrowsHead/TestThrowsHead.java ! test/com/sun/javadoc/testThrowsInheritence/TestThrowsTagInheritence.java ! test/com/sun/javadoc/testThrowsTag/TestThrowsTag.java ! test/com/sun/javadoc/testTitleInHref/TestTitleInHref.java ! test/com/sun/javadoc/testTopOption/TestTopOption.java ! test/com/sun/javadoc/testTypeAnnotations/TestTypeAnnotations.java ! test/com/sun/javadoc/testTypeParams/TestTypeParameters.java ! test/com/sun/javadoc/testUnnamedPackage/TestUnnamedPackage.java ! test/com/sun/javadoc/testUseOption/TestUseOption.java ! test/com/sun/javadoc/testValueTag/TestValueTag.java ! test/com/sun/javadoc/testWarnBadParamNames/TestWarnBadParamNames.java ! test/com/sun/javadoc/testWarnings/TestWarnings.java ! test/com/sun/javadoc/testWindowTitle/TestWindowTitle.java ! test/com/sun/javadoc/testXOption/TestXOption.java ! test/com/sun/javadoc/typeAnnotations/smoke/TestSmoke.java Changeset: 78c96c7cf574 Author: jlahoda Date: 2014-04-23 11:28 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/78c96c7cf574 8039250: Test tools/javac/classfiles/InnerClasses/SyntheticClasses.java fails Summary: The test should only analyze classfiles. Reviewed-by: vromero ! test/tools/javac/classfiles/InnerClasses/SyntheticClasses.java Changeset: 176a2e871eb9 Author: jlahoda Date: 2014-04-24 13:32 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/176a2e871eb9 8041695: Update the NetBeans build script and metadata Summary: Various improvements to the NetBeans project for langtools, adding formatting/import setting for langtools. Reviewed-by: ksrini ! make/netbeans/langtools/build.xml + make/netbeans/langtools/nbproject/project.properties ! make/netbeans/langtools/nbproject/project.xml - make/netbeans/langtools/nbproject/standard-context-menu-items.ent - make/netbeans/langtools/nbproject/standard-ide-actions.ent Changeset: f04fccfbd880 Author: lana Date: 2014-04-24 16:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/f04fccfbd880 Merge - make/netbeans/langtools/nbproject/standard-context-menu-items.ent - make/netbeans/langtools/nbproject/standard-ide-actions.ent - test/tools/javac/lambda/ErroneousLambdaExpr.java - test/tools/javac/lambda/ErroneousLambdaExpr.out Changeset: 55e92b74c283 Author: katleman Date: 2014-05-01 12:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/55e92b74c283 Added tag jdk9-b11 for changeset f04fccfbd880 ! .hgtags Changeset: 5828c0ddbb04 Author: jjg Date: 2014-04-25 13:08 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/5828c0ddbb04 8040904: Ensure javadoc tests do not overwrite results within tests Reviewed-by: ksrini ! test/com/sun/javadoc/lib/JavadocTester.java ! test/com/sun/javadoc/testDocFileDir/TestDocFileDir.java ! test/com/sun/javadoc/testGeneratedBy/TestGeneratedBy.java ! test/com/sun/javadoc/testGroupOption/TestGroupOption.java ! test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java ! test/com/sun/javadoc/testHtmlTag/TestHtmlTag.java ! test/com/sun/javadoc/testLinkOption/TestLinkOption.java ! test/com/sun/javadoc/testNotifications/TestNotifications.java ! test/com/sun/javadoc/testSerializedFormDeprecationInfo/TestSerializedFormDeprecationInfo.java ! test/com/sun/javadoc/testSinceTag/TestSinceTag.java ! test/com/sun/javadoc/testTypeParams/TestTypeParameters.java ! test/com/sun/javadoc/testWarnings/TestWarnings.java Changeset: 7c1bfb902276 Author: pgovereau Date: 2014-04-25 22:00 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/7c1bfb902276 8039026: Definitely unassigned field can be accessed Reviewed-by: vromero, jlahoda ! src/share/classes/com/sun/tools/javac/code/Source.java ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java + test/tools/javac/DefiniteAssignment/T8039026.java + test/tools/javac/DefiniteAssignment/T8039026.out Changeset: 4d0d7a33730d Author: vromero Date: 2014-04-28 14:48 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/4d0d7a33730d 8029102: Enhance compiler warnings for Lambda Reviewed-by: briangoetz, jjg, jlahoda, ahgross ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/AttrContext.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/share/classes/com/sun/tools/javac/tree/TreeInfo.java + test/tools/javac/T8029102/WarnSerializableLambdaTest.java + test/tools/javac/T8029102/WarnSerializableLambdaTest.out + test/tools/javac/T8029102/WarnSerializableLambdaTestb.java + test/tools/javac/T8029102/WarnSerializableLambdaTestb.out + test/tools/javac/diags/examples/WarnSerializableLambda.java Changeset: a89f10b5dd01 Author: ksrini Date: 2014-04-18 08:35 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/a89f10b5dd01 8039410: [javadoc] fix class-use items to be deterministic and index ordering Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/IndexBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Util.java + test/com/sun/javadoc/testOrdering/C.java + test/com/sun/javadoc/testOrdering/TestOrdering.java + test/com/sun/javadoc/testOrdering/UsedInC.java + test/com/sun/javadoc/testOrdering/pkg1/C1.java + test/com/sun/javadoc/testOrdering/pkg1/C2.java + test/com/sun/javadoc/testOrdering/pkg1/C3.java + test/com/sun/javadoc/testOrdering/pkg1/C4.java + test/com/sun/javadoc/testOrdering/pkg1/UsedClass.java + test/com/sun/javadoc/testOrdering/pkg1/ZZTop.java Changeset: d002fb1287ec Author: ksrini Date: 2014-04-18 08:44 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/d002fb1287ec 8038583: [javadoc] Refactor uses of arrays to Collections Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractPackageIndexWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ConfigurationImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/FrameOutputWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageTreeWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageIndexFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/TreeWriter.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/Configuration.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/BuilderFactory.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ClassBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ProfileSummaryBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/DeprecatedAPIListBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Group.java Changeset: e6e9f1b096c8 Author: pgovereau Date: 2014-04-21 17:57 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/e6e9f1b096c8 8030046: javac incorrectly handles absolute paths in manifest classpath Reviewed-by: jjg, vromero ! src/share/classes/com/sun/tools/javac/file/FSInfo.java + test/tools/javac/Paths/AbsolutePathTest.java ! test/tools/javac/lib/ToolBox.java Changeset: af0eb050cfba Author: anazarov Date: 2014-04-30 13:48 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/af0eb050cfba 8040097: Implement classfile tests for LocalVariableTable and LocalVariableTypeTable attribute. Reviewed-by: jjg, shurailine, emc + test/tools/javac/classfiles/attributes/LocalVariableTable/LocalVariableTableTest.java + test/tools/javac/classfiles/attributes/LocalVariableTable/LocalVariableTestBase.java + test/tools/javac/classfiles/attributes/LocalVariableTable/LocalVariableTypeTableTest.java + test/tools/javac/classfiles/attributes/lib/TestBase.java + test/tools/javac/lib/InMemoryFileManager.java ! test/tools/javac/lib/ToolBox.java Changeset: c2200da8ec5b Author: rfield Date: 2014-04-30 18:19 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/c2200da8ec5b 8036942: javac generates incorrect exception table for multi-catch statements inside a lambda Summary: Union type info lost and also union type is not processed by TreeMaker.Type -- address by using existing tree, thus by-passing such issues. Reviewed-by: vromero, jlahoda ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java + test/tools/javac/lambda/LambdaMultiCatchTest.java Changeset: 689266bbcd6a Author: rfield Date: 2014-04-30 23:02 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/689266bbcd6a 8029852: Bad code generated (VerifyError) when lambda instantiates enclosing local class and has captured variables 8029725: Lambda reference to containing local class causes javac infinite recursion Reviewed-by: vromero, jlahoda, dlsmith ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java + test/tools/javac/lambda/LambdaLocalTest.java + test/tools/javac/lambda/LambdaOuterLocalTest.java + test/tools/javac/lambda/SingleLocalTest.java Changeset: c062c8dc1e4a Author: vromero Date: 2014-05-01 20:36 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/c062c8dc1e4a 8030741: Inference: implement eager resolution of return types, consistent with JDK-8028800 Reviewed-by: dlsmith, jjg ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/share/classes/com/sun/tools/javac/comp/Infer.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java + test/tools/javac/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTesta.java + test/tools/javac/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTestb.java + test/tools/javac/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTestb.out + test/tools/javac/inference/EagerReturnTypeResolution/PrimitiveTypeBoxingTest.java + test/tools/javac/inference/EagerReturnTypeResolution/PrimitiveTypeBoxingTest.out Changeset: 72efbe612e49 Author: lana Date: 2014-05-01 14:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/72efbe612e49 Merge Changeset: 955d619d42e6 Author: katleman Date: 2014-05-08 01:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/955d619d42e6 Added tag jdk9-b12 for changeset 72efbe612e49 ! .hgtags Changeset: 9cfffe95a5fc Author: pgovereau Date: 2014-05-02 22:35 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/9cfffe95a5fc 8033437: javac, inconsistent generic types behaviour when compiling together vs. separate Reviewed-by: jjg Contributed-by: vicente.romero at oracle.com, paul.govereau at oracle.com ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/generics/wildcards/RefQueue.java + test/tools/javac/generics/wildcards/RefQueueBug.java Changeset: 5fbdcc2e3a75 Author: jjg Date: 2014-05-02 16:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/5fbdcc2e3a75 8042358: some tests have placeholder bugid 1234567 Reviewed-by: mduigou ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotatePackages.java ! test/tools/javac/annotations/typeAnnotations/failures/TypeVariableMissingTA.java ! test/tools/javac/annotations/typeAnnotations/failures/common/arrays/DeclarationAnnotation.java ! test/tools/javac/annotations/typeAnnotations/failures/common/receiver/DeclarationAnnotation.java ! test/tools/javac/annotations/typeAnnotations/failures/common/wildcards/DeclarationAnnotation.java ! test/tools/javac/annotations/typeAnnotations/newlocations/AnonymousClass.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/Initializers.java ! test/tools/javac/processing/model/type/BasicAnnoTests.java Changeset: 54a460e0ac76 Author: dlsmith Date: 2014-05-06 15:46 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/54a460e0ac76 8033718: Inference ignores capture variable as upper bound Summary: Split Types.lowerBound into two methods; fix bugs in inference handling of capture variables. Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/Infer.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! test/tools/javac/generics/inference/7086586/T7086586.out ! test/tools/javac/generics/inference/7086586/T7086586b.java + test/tools/javac/generics/inference/LowerBoundGLB.java Changeset: 5df0952dff0e Author: anazarov Date: 2014-05-07 14:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/5df0952dff0e 8040129: Implement classfile tests for SourceFile attribute. Reviewed-by: shurailine, jjg + test/tools/javac/classfiles/attributes/SourceFile/AnonymousClassTest.java + test/tools/javac/classfiles/attributes/SourceFile/InnerClassTest.java + test/tools/javac/classfiles/attributes/SourceFile/LocalClassTest.java + test/tools/javac/classfiles/attributes/SourceFile/MixTest.java + test/tools/javac/classfiles/attributes/SourceFile/NoSourceFileAttribute.java + test/tools/javac/classfiles/attributes/SourceFile/SourceFileTestBase.java + test/tools/javac/classfiles/attributes/SourceFile/SyntheticClassTest.java + test/tools/javac/classfiles/attributes/SourceFile/TopLevelClassesOneFileTest.java Changeset: 08889445d3dc Author: ohrstrom Date: 2014-05-07 23:55 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/08889445d3dc 8042699: sjavac does not track dependencies Summary: Using / in some places and . in other places break package comparisons. The fix standardizes on dots. Reviewed-by: jjg ! src/share/classes/com/sun/tools/sjavac/Source.java ! test/tools/sjavac/SJavac.java ! test/tools/sjavac/SJavacWrapper.java Changeset: aba030ee43b5 Author: ohrstrom Date: 2014-05-08 00:22 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/aba030ee43b5 8042441: sjavac does not track dependencies Summary: Add support for tracking fully qualified references. Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java + src/share/classes/com/sun/tools/sjavac/comp/AttrWithDeps.java ! src/share/classes/com/sun/tools/sjavac/server/CompilerThread.java ! test/tools/sjavac/SJavac.java ! test/tools/sjavac/SJavacWrapper.java Changeset: 39f1e6271591 Author: ksrini Date: 2014-05-07 15:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/39f1e6271591 8042654: [javadoc] revert the default methods list.sort to Collections.sort Reviewed-by: jfranck, jjg ! src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/IndexBuilder.java Changeset: baf35a88504b Author: alundblad Date: 2014-05-07 17:29 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/baf35a88504b 8028196: Javac allows timestamps inside rt.jar to affect compilation when using -sourcepath. Summary: Added -XXuserPathsFirst to allow user classes to take precedence over boot classes Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/main/Option.java ! src/share/classes/com/sun/tools/javac/resources/javac.properties + test/tools/javac/options/xprefer/XPreferTest.java Changeset: 2c8bb81b5d48 Author: lana Date: 2014-05-08 15:28 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/2c8bb81b5d48 Merge Changeset: 69210df6b020 Author: katleman Date: 2014-05-15 10:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/69210df6b020 Added tag jdk9-b13 for changeset 2c8bb81b5d48 ! .hgtags Changeset: da8d9f8995d1 Author: jlahoda Date: 2014-05-09 09:36 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/da8d9f8995d1 8040822: Duplicated notifications can be sent to TaskListener Summary: The analyze finished event must only be sent on the first call to JavaCompiler.flow for a given class. Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java + test/tools/javac/api/taskListeners/EventsBalancedTest.java Changeset: dfd281a9c6bf Author: jlahoda Date: 2014-05-09 12:55 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/dfd281a9c6bf 8041663: Sensitive dependence on location of nested interface Summary: Adding a method among ambiguous candidates only if it is more specific than some of the existing candidates. Reviewed-by: dlsmith, vromero ! src/share/classes/com/sun/tools/javac/comp/Resolve.java + test/tools/javac/resolve/AmbiguityErrorTest.java Changeset: 28ff3e6247b6 Author: ksrini Date: 2014-05-08 08:23 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/28ff3e6247b6 8042601: Javadoc sort fails Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Util.java ! test/com/sun/javadoc/testOrdering/TestOrdering.java ! test/com/sun/javadoc/testOrdering/pkg1/UsedClass.java ! test/com/sun/javadoc/testOrdering/pkg1/ZZTop.java Changeset: 228659ae84f3 Author: jjg Date: 2014-05-09 08:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/228659ae84f3 8042839: XPreferTest fails on Windows Reviewed-by: vromero ! test/tools/javac/options/xprefer/XPreferTest.java Changeset: 1472e30d4a7b Author: emc Date: 2014-05-09 09:28 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/1472e30d4a7b 8040327: Eliminate AnnotatedType Summary: Replace AnnotatedType with type annotations being stored in the Type class as metadata Reviewed-by: jjg, jfranck, wmdietl, jlahoda ! src/share/classes/com/sun/tools/javac/code/Attribute.java ! src/share/classes/com/sun/tools/javac/code/Printer.java ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/code/TypeAnnotationPosition.java ! src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/share/classes/com/sun/tools/javac/comp/Infer.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java ! src/share/classes/com/sun/tools/javac/jvm/Code.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/share/classes/com/sun/tools/javac/jvm/JNIWriter.java ! src/share/classes/com/sun/tools/javac/jvm/Pool.java ! src/share/classes/com/sun/tools/javac/jvm/UninitializedType.java ! src/share/classes/com/sun/tools/javac/model/JavacTypes.java ! src/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java ! src/share/classes/com/sun/tools/javadoc/AnnotatedTypeImpl.java ! src/share/classes/com/sun/tools/javadoc/TypeMaker.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/Driver.java ! test/tools/javac/types/TypeHarness.java Changeset: e5d0d7510671 Author: dlsmith Date: 2014-05-09 14:56 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/e5d0d7510671 8042656: Inference produces spurious error for intersection type bounds check Summary: Fix subtyping for intersections involving capture variables Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/generics/typevars/IntersectionSubVar.java Changeset: 7e5918873ba1 Author: jlahoda Date: 2014-05-09 23:31 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/7e5918873ba1 8042867: Missing license header for langtools/make/netbeans/langtools/nbproject/project.properties Reviewed-by: ksrini ! make/netbeans/langtools/nbproject/project.properties Changeset: 94aca852a4d0 Author: jjg Date: 2014-05-09 15:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/94aca852a4d0 8038730: Clean up the way JavadocTester is invoked, and checks for errors. Reviewed-by: ksrini, sogoel, bpatel ! test/com/sun/javadoc/5093723/T5093723.java ! test/com/sun/javadoc/AccessAsciiArt/AccessAsciiArt.java ! test/com/sun/javadoc/AccessFrameTitle/AccessFrameTitle.java ! test/com/sun/javadoc/AccessH1/AccessH1.java ! test/com/sun/javadoc/AccessSkipNav/AccessSkipNav.java ! test/com/sun/javadoc/AccessSummary/AccessSummary.java ! test/com/sun/javadoc/AuthorDD/AuthorDD.java ! test/com/sun/javadoc/DocRootSlash/DocRootSlash.java ! test/com/sun/javadoc/InheritDocForUserTags/DocTest.java ! test/com/sun/javadoc/JavascriptWinTitle/JavascriptWinTitle.java ! test/com/sun/javadoc/MetaTag/MetaTag.java ! test/com/sun/javadoc/PackagesHeader/PackagesHeader.java ! test/com/sun/javadoc/T6735320/T6735320.java ! test/com/sun/javadoc/ValidHtml/ValidHtml.java ! test/com/sun/javadoc/VersionNumber/VersionNumber.java ! test/com/sun/javadoc/WindowTitles/WindowTitles.java ! test/com/sun/javadoc/constantValues/TestConstantValuesDriver.java ! test/com/sun/javadoc/dupThrowsTags/TestDupThrowsTags.java ! test/com/sun/javadoc/lib/JavadocTester.java ! test/com/sun/javadoc/testAbsLinkPath/TestAbsLinkPath.java ! test/com/sun/javadoc/testAbstractMethod/TestAbstractMethod.java ! test/com/sun/javadoc/testAnchorNames/TestAnchorNames.java ! test/com/sun/javadoc/testAnnotationOptional/TestAnnotationOptional.java ! test/com/sun/javadoc/testAnnotationTypes/TestAnnotationTypes.java ! test/com/sun/javadoc/testBackSlashInLink/TestBackSlashInLink.java ! test/com/sun/javadoc/testBadPackageFileInJar/TestBadPackageFileInJar.java ! test/com/sun/javadoc/testBadSourceFile/TestBadSourceFile.java ! test/com/sun/javadoc/testBaseClass/TestBaseClass.java ! test/com/sun/javadoc/testBreakIterator/TestBreakIterator.java ! test/com/sun/javadoc/testCRLineSeparator/TestCRLineSeparator.java ! test/com/sun/javadoc/testCharset/TestCharset.java ! test/com/sun/javadoc/testClassCrossReferences/TestClassCrossReferences.java ! test/com/sun/javadoc/testClassTree/TestClassTree.java ! test/com/sun/javadoc/testCmndLineClass/TestCmndLineClass.java ! test/com/sun/javadoc/testCompletionFailure/TestCompletionFailure.java ! test/com/sun/javadoc/testConstantValuesPage/TestConstantValuesPage.java ! test/com/sun/javadoc/testConstructorIndent/TestConstructorIndent.java ! test/com/sun/javadoc/testConstructors/TestConstructors.java ! test/com/sun/javadoc/testCustomTag/TestCustomTag.java ! test/com/sun/javadoc/testDeprecatedDocs/TestDeprecatedDocs.java ! test/com/sun/javadoc/testDocEncoding/TestDocEncoding.java ! test/com/sun/javadoc/testDocErrorReporter/TestDocErrorReporter.java ! test/com/sun/javadoc/testDocFileDir/TestDocFileDir.java ! test/com/sun/javadoc/testDocFiles/TestDocFiles.java ! test/com/sun/javadoc/testDocRootInlineTag/TestDocRootInlineTag.java ! test/com/sun/javadoc/testDocRootLink/TestDocRootLink.java ! test/com/sun/javadoc/testDupParamWarn/TestDupParamWarn.java ! test/com/sun/javadoc/testEmptyClass/TestEmptyClass.java ! test/com/sun/javadoc/testEnclosingClass/TestEnclosingClass.java ! test/com/sun/javadoc/testEncoding/TestEncoding.java ! test/com/sun/javadoc/testExternalOverridenMethod/TestExternalOverridenMethod.java ! test/com/sun/javadoc/testGeneratedBy/TestGeneratedBy.java ! test/com/sun/javadoc/testGroupOption/TestGroupOption.java ! test/com/sun/javadoc/testHeadings/TestHeadings.java ! test/com/sun/javadoc/testHelpFile/TestHelpFile.java ! test/com/sun/javadoc/testHelpOption/TestHelpOption.java ! test/com/sun/javadoc/testHiddenMembers/TestHiddenMembers.java ! test/com/sun/javadoc/testHref/TestHref.java ! test/com/sun/javadoc/testHrefInDocComment/TestHrefInDocComment.java ! test/com/sun/javadoc/testHtmlComments/TestHtmlComments.java ! test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/com/sun/javadoc/testHtmlDocument/TestHtmlDocument.java ! test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java ! test/com/sun/javadoc/testHtmlTableStyles/TestHtmlTableStyles.java ! test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java ! test/com/sun/javadoc/testHtmlTag/TestHtmlTag.java ! test/com/sun/javadoc/testIndentation/TestIndentation.java ! test/com/sun/javadoc/testIndex/TestIndex.java ! test/com/sun/javadoc/testInlineLinkLabel/TestInlineLinkLabel.java ! test/com/sun/javadoc/testInterface/TestInterface.java ! test/com/sun/javadoc/testJavaFX/TestJavaFX.java ! test/com/sun/javadoc/testJavascript/TestJavascript.java ! test/com/sun/javadoc/testLambdaFeature/TestLambdaFeature.java ! test/com/sun/javadoc/testLeadingSpaces/LeadingSpaces.java ! test/com/sun/javadoc/testLegacyTaglet/TestLegacyTaglet.java ! test/com/sun/javadoc/testLinkOption/TestBadLinkOption.java ! test/com/sun/javadoc/testLinkOption/TestLinkOption.java ! test/com/sun/javadoc/testLinkOption/TestNewLineInLink.java ! test/com/sun/javadoc/testLinkTaglet/TestLinkTaglet.java ! test/com/sun/javadoc/testLinkToSerialForm/TestLinkToSerialForm.java ! test/com/sun/javadoc/testLiteralCodeInPre/TestLiteralCodeInPre.java ! test/com/sun/javadoc/testMemberInheritence/TestMemberInheritence.java ! test/com/sun/javadoc/testMemberSummary/TestMemberSummary.java ! test/com/sun/javadoc/testMethodTypes/TestMethodTypes.java ! test/com/sun/javadoc/testModifier/TestModifier.java ! test/com/sun/javadoc/testNavigation/TestNavigation.java ! test/com/sun/javadoc/testNestedGenerics/TestNestedGenerics.java ! test/com/sun/javadoc/testNestedInlineTag/TestNestedInlineTag.java ! test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java ! test/com/sun/javadoc/testNoPackagesFile/TestNoPackagesFile.java ! test/com/sun/javadoc/testNonFrameWarning/TestNonFrameWarning.java ! test/com/sun/javadoc/testNotifications/TestNotifications.java ! test/com/sun/javadoc/testOptions/TestOptions.java ! test/com/sun/javadoc/testOrdering/TestOrdering.java ! test/com/sun/javadoc/testOverridenMethods/TestMultiInheritence.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenMethodDocCopy.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethods.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethodsWithPackageFlag.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethodsWithPrivateFlag.java ! test/com/sun/javadoc/testPackageDeprecation/TestPackageDeprecation.java ! test/com/sun/javadoc/testPackagePage/TestPackagePage.java ! test/com/sun/javadoc/testParamTaglet/TestParamTaglet.java ! test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java ! test/com/sun/javadoc/testProfiles/TestProfiles.java ! test/com/sun/javadoc/testProfiles/TestProfilesConfiguration.java ! test/com/sun/javadoc/testRecurseSubPackages/TestRecurseSubPackages.java ! test/com/sun/javadoc/testRelativeLinks/TestRelativeLinks.java ! test/com/sun/javadoc/testRepeatedAnnotations/TestRepeatedAnnotations.java ! test/com/sun/javadoc/testReturnTag/TestReturnTag.java ! test/com/sun/javadoc/testSeeTag/TestSeeTag.java ! test/com/sun/javadoc/testSerialVersionUID/TestSerialVersionUID.java ! test/com/sun/javadoc/testSerializedForm/TestSerializedForm.java ! test/com/sun/javadoc/testSerializedFormDeprecationInfo/TestSerializedFormDeprecationInfo.java ! test/com/sun/javadoc/testSimpleTag/TestSimpleTag.java ! test/com/sun/javadoc/testSimpleTagExclude/TestSimpleTagExclude.java ! test/com/sun/javadoc/testSimpleTagInherit/TestSimpleTagInherit.java ! test/com/sun/javadoc/testSinceTag/TestSinceTag.java ! test/com/sun/javadoc/testSingleQuotedLink/TestSingleQuotedLink.java ! test/com/sun/javadoc/testSourceTab/TestSourceTab.java ! test/com/sun/javadoc/testStylesheet/TestStylesheet.java ! test/com/sun/javadoc/testSubTitle/TestSubTitle.java ! test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java ! test/com/sun/javadoc/testSuperclassInSerialForm/TestSuperClassInSerialForm.java ! test/com/sun/javadoc/testSupplementary/TestSupplementary.java ! test/com/sun/javadoc/testTagHolderMethod/TestTagHolderMethod.java ! test/com/sun/javadoc/testTagInheritence/TestTagInheritence.java ! test/com/sun/javadoc/testTagMisuse/TestTagMisuse.java ! test/com/sun/javadoc/testTagOutput/TestTagOutput.java ! test/com/sun/javadoc/testTaglets/TestTaglets.java ! test/com/sun/javadoc/testThrowsHead/TestThrowsHead.java ! test/com/sun/javadoc/testThrowsInheritence/TestThrowsTagInheritence.java ! test/com/sun/javadoc/testThrowsTag/TestThrowsTag.java ! test/com/sun/javadoc/testTitleInHref/TestTitleInHref.java ! test/com/sun/javadoc/testTopOption/TestTopOption.java ! test/com/sun/javadoc/testTypeAnnotations/TestTypeAnnotations.java ! test/com/sun/javadoc/testTypeParams/TestTypeParameters.java ! test/com/sun/javadoc/testUnnamedPackage/TestUnnamedPackage.java ! test/com/sun/javadoc/testUseOption/TestUseOption.java ! test/com/sun/javadoc/testValueTag/TestValueTag.java ! test/com/sun/javadoc/testWarnBadParamNames/TestWarnBadParamNames.java ! test/com/sun/javadoc/testWarnings/TestWarnings.java ! test/com/sun/javadoc/testWindowTitle/TestWindowTitle.java ! test/com/sun/javadoc/testXOption/TestXOption.java ! test/com/sun/javadoc/typeAnnotations/smoke/TestSmoke.java Changeset: 615a70db794b Author: vromero Date: 2014-05-10 00:46 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/615a70db794b 8037379: fix for JDK-8029569 doesn't cover all possible cases Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! test/tools/javac/T8029569/VarargsAmbiguityCrashTest.java ! test/tools/javac/T8029569/VarargsAmbiguityCrashTest.out Changeset: aa1236dbf865 Author: vromero Date: 2014-05-10 01:24 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/aa1236dbf865 8028503: javac, for method references a primitive type can be added as a bound Reviewed-by: jjg, dlsmith ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/generics/inference/T8028503/PrimitiveTypeInBoundForMethodRefTest.java ! test/tools/javac/lambda/MethodReference42.out ! test/tools/javac/lambda/MethodReference44.out Changeset: c1c2a5f9ba0c Author: jjg Date: 2014-05-09 18:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/c1c2a5f9ba0c 8042886: Test langtools/test/com/sun/javadoc/testHtmlDocument/TestHtmlDocument.java fails on Windows Reviewed-by: darcy ! test/com/sun/javadoc/testHtmlDocument/TestHtmlDocument.java Changeset: 9c2c24a6785d Author: emc Date: 2014-05-09 22:27 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/9c2c24a6785d 8035763: Error parsing binary type annotations data in javac Summary: Fix accidental reversal of read order from a previous change Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java Changeset: 4525f3a38730 Author: dlsmith Date: 2014-05-13 15:29 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/4525f3a38730 8034223: Most-specific should not have any special treatment for boxed vs. unboxed types Summary: Rewrite most-specific logic to conform to JLS 8 15.12.2.5 Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/code/Source.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/share/classes/com/sun/tools/javac/tree/JCTree.java + test/tools/javac/lambda/MostSpecific10.java + test/tools/javac/lambda/MostSpecific11.java + test/tools/javac/lambda/MostSpecific12.java + test/tools/javac/lambda/MostSpecific12.out + test/tools/javac/lambda/MostSpecific13.java + test/tools/javac/lambda/MostSpecific13.out + test/tools/javac/lambda/MostSpecific14.java + test/tools/javac/lambda/MostSpecific14.out ! test/tools/javac/lambda/TargetType16.java - test/tools/javac/lambda/TargetType16.out ! test/tools/javac/lambda/TargetType23.java ! test/tools/javac/lambda/TargetType23.out ! test/tools/javac/resolve/ResolveHarness.java ! test/tools/javac/resolve/tests/PrimitiveOverReferenceVarargsAmbiguous.java + test/tools/javac/resolve/tests/PrimitiveVsReferenceSamePhase.java Changeset: 464d69f73516 Author: dlsmith Date: 2014-05-13 15:34 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/464d69f73516 8042882: Support verbosity options in langtools testing 8032441: langtools/test/Makefile breaks when JT_JAVA set to a JDK 9 build Reviewed-by: mduigou ! test/Makefile Changeset: 1df3f53b9d98 Author: lana Date: 2014-05-15 10:40 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/1df3f53b9d98 Merge - test/tools/javac/lambda/TargetType16.out Changeset: 282210d7b08b Author: katleman Date: 2014-05-22 12:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/282210d7b08b Added tag jdk9-b14 for changeset 1df3f53b9d98 ! .hgtags Changeset: d488132dbea7 Author: anazarov Date: 2014-05-12 17:09 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/d488132dbea7 8042771: Missing bug id in test/tools/javac/classfiles/attributes/SourceFile/NoSourceFileAttribute.java Reviewed-by: jjg ! test/tools/javac/classfiles/attributes/SourceFile/NoSourceFileAttribute.java Changeset: 4487f6f98252 Author: jlahoda Date: 2014-05-16 10:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/4487f6f98252 8043186: javac test langtools/tools/javac/util/StringUtilsTest.java fails Summary: The result of String.toLowerCase.indexOf does not always point at the start of the given string in the non-lowercased text. Reviewed-by: jjg, bpatel ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java ! src/share/classes/com/sun/tools/javac/util/StringUtils.java ! test/com/sun/javadoc/testRelativeLinks/TestRelativeLinks.java ! test/com/sun/javadoc/testRelativeLinks/pkg/C.java ! test/com/sun/javadoc/testTopOption/TestTopOption.java ! test/tools/javac/util/StringUtilsTest.java Changeset: 2a096f5666fd Author: jjg Date: 2014-05-18 19:59 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/2a096f5666fd 8041422: Split javac ClassReader into ClassReader+ClassFinder Reviewed-by: jfranck + src/share/classes/com/sun/tools/javac/code/ClassFinder.java ! src/share/classes/com/sun/tools/javac/code/Symtab.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/Enter.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java ! src/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java ! src/share/classes/com/sun/tools/javadoc/DocEnv.java + src/share/classes/com/sun/tools/javadoc/JavadocClassFinder.java - src/share/classes/com/sun/tools/javadoc/JavadocClassReader.java ! src/share/classes/com/sun/tools/javadoc/JavadocEnter.java ! src/share/classes/com/sun/tools/javadoc/JavadocTool.java ! test/tools/javac/6330997/T6330997.java ! test/tools/javac/MethodParametersTest.java ! test/tools/javac/T6435291/T6435291.java ! test/tools/javac/defaultMethods/BadClassfile.java Changeset: 87491833da58 Author: pgovereau Date: 2014-05-16 17:08 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/87491833da58 8015927: Class reference duplicates in constant pool Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java ! src/share/classes/com/sun/tools/javac/jvm/Pool.java + test/tools/javac/jvm/ClassRefDupInConstantPoolTest.java Changeset: 30e0e2a21c7d Author: ntoda Date: 2014-05-20 15:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/30e0e2a21c7d 8042406: javac.jvm.ClassReader.readClassFile() is using Target to verify valid major versions Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/jvm/ClassFile.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java Changeset: 1948f43148ec Author: lana Date: 2014-05-22 14:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/1948f43148ec Merge - src/share/classes/com/sun/tools/javadoc/JavadocClassReader.java Changeset: a43b8dbe5f50 Author: sogoel Date: 2014-05-22 15:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/a43b8dbe5f50 8043336: Missing bug id in test/tools/javac/lambda/TargetType23.java Reviewed-by: jjg, vromero, dlsmith ! test/tools/javac/lambda/TargetType23.java Changeset: e6c5354fd9cd Author: pgovereau Date: 2014-05-27 18:57 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/e6c5354fd9cd 8041704: wrong error message when mixing lambda expression and inner class Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! test/tools/javac/T8030816/CrashLambdaExpressionWithNonAccessibleIdTest.out + test/tools/javac/lambda/T8041704/ErrorMessageTest.java + test/tools/javac/lambda/T8041704/ErrorMessageTest.out Changeset: df54b4b79988 Author: pgovereau Date: 2014-05-27 22:26 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/df54b4b79988 8042741: Java 8 compiler throws NullPointerException depending location in source file Reviewed-by: vromero, jlahoda ! src/share/classes/com/sun/tools/javac/comp/Flow.java + test/tools/javac/flow/T8042741/A.java + test/tools/javac/flow/T8042741/PositionTest.java Changeset: 70c37804003a Author: pgovereau Date: 2014-05-27 14:23 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/70c37804003a 7177211: SharedNameTable.create and .dispose are not used Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/util/Names.java Changeset: abbc15936e1b Author: dlsmith Date: 2014-05-27 16:32 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/abbc15936e1b 8042338: Refactor Types.upperBound to treat wildcards and variables separately Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/api/JavacTrees.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java Changeset: 8666a9611eb8 Author: dlsmith Date: 2014-05-27 16:39 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/8666a9611eb8 8044050: Move misplaced inference tests to test/tools/javac/generics/inference Reviewed-by: vromero + test/tools/javac/generics/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTesta.java + test/tools/javac/generics/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTestb.java + test/tools/javac/generics/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTestb.out + test/tools/javac/generics/inference/EagerReturnTypeResolution/PrimitiveTypeBoxingTest.java + test/tools/javac/generics/inference/EagerReturnTypeResolution/PrimitiveTypeBoxingTest.out - test/tools/javac/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTesta.java - test/tools/javac/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTestb.java - test/tools/javac/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTestb.out - test/tools/javac/inference/EagerReturnTypeResolution/PrimitiveTypeBoxingTest.java - test/tools/javac/inference/EagerReturnTypeResolution/PrimitiveTypeBoxingTest.out Changeset: 204314bf9667 Author: katleman Date: 2014-05-29 22:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/204314bf9667 Added tag jdk9-b15 for changeset 8666a9611eb8 ! .hgtags Changeset: 217bf9b56e6c Author: pgovereau Date: 2014-05-28 21:47 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/217bf9b56e6c 8037934: Javac generates invalid signatures for local types Reviewed-by: vromero, rfield Contributed-by: separdaud at redhat.com ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/types/BadSigTest.java Changeset: 9955b8180ff6 Author: vromero Date: 2014-05-29 15:28 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/9955b8180ff6 8037937: javac: AssertionError during LVT generation, wrong variable ranges Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/javac/jvm/Code.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java ! test/tools/javac/flow/LVTHarness.java ! test/tools/javac/flow/tests/TestCaseIfElse.java Changeset: ca2bc0c46552 Author: jlahoda Date: 2014-05-30 12:54 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/ca2bc0c46552 8031967: For some sources compiler compiles for ever Summary: Avoid creating DeferredTypes for method calls with method calls as receivers if the site can be determined reliably Reviewed-by: mcimadamore, vromero Contributed-by: maurizio.cimadamore at oracle.com, jan.lahoda at oracle.com ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java + test/tools/javac/lambda/T8031967.java Changeset: 7d67ebd3e35c Author: lana Date: 2014-05-30 09:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/7d67ebd3e35c Merge Changeset: 00d3ef2061f0 Author: katleman Date: 2014-06-04 20:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/00d3ef2061f0 Added tag jdk9-b16 for changeset 7d67ebd3e35c ! .hgtags Changeset: 4e6234110d3a Author: vromero Date: 2014-05-30 18:21 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/4e6234110d3a 8042785: javac, bridge methods are not getting the flags from the original method Reviewed-by: jjg, jlahoda ! src/share/classes/com/sun/tools/javac/code/Flags.java ! src/share/classes/com/sun/tools/javac/comp/TransTypes.java + test/tools/javac/T8042785/FlagsNotCopiedToBridgeMethodTest.java Changeset: 62e5d13e3383 Author: vromero Date: 2014-06-02 22:36 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/62e5d13e3383 8044487: Fix for 8042785 causes regression tests to fail with java.lang.VerifyError Reviewed-by: jjg, ksrini ! src/share/classes/com/sun/tools/javac/code/Flags.java ! src/share/classes/com/sun/tools/javac/comp/TransTypes.java - test/tools/javac/T8042785/FlagsNotCopiedToBridgeMethodTest.java Changeset: b21c359c1fd1 Author: vromero Date: 2014-06-04 20:01 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/b21c359c1fd1 8041713: Type inference of non-existent method references crashes the compiler Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/generics/diamond/T8041713/DiamondPlusUnexistingMethodRefCrashTest.java + test/tools/javac/generics/diamond/T8041713/DiamondPlusUnexistingMethodRefCrashTest.out Changeset: 56b8da5c4eaf Author: mcimadamore Date: 2014-06-05 12:21 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/56b8da5c4eaf 8043893: Inference doesn't report error on incompatible upper bounds Summary: Failure on type-equality check during incorporation doesn't trigger inference error Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/comp/Infer.java + test/tools/javac/generics/inference/8043893/T8043893.java + test/tools/javac/generics/inference/8043893/T8043893.out ! test/tools/javac/generics/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTestb.out Changeset: fe32d75d4d4f Author: sogoel Date: 2014-06-05 10:44 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/fe32d75d4d4f 8044064: Group 1: create .out files for cast and capture negative tests in tools/javac dir Reviewed-by: jjg ! test/tools/javac/CaptureInSubtype.java + test/tools/javac/CaptureInSubtype.out ! test/tools/javac/capture/Capture2.java + test/tools/javac/capture/Capture2.out ! test/tools/javac/capture/Martin.java + test/tools/javac/capture/Martin.out ! test/tools/javac/capture/T6594284.java + test/tools/javac/capture/T6594284.out ! test/tools/javac/cast/5064736/T5064736.java + test/tools/javac/cast/5064736/T5064736.out ! test/tools/javac/cast/6219964/T6219964.java + test/tools/javac/cast/6219964/T6219964.out ! test/tools/javac/cast/6302956/T6302956.java + test/tools/javac/cast/6302956/T6302956.out ! test/tools/javac/cast/6548436/T6548436d.java + test/tools/javac/cast/6548436/T6548436d.out ! test/tools/javac/cast/BoxedArray.java + test/tools/javac/cast/BoxedArray.out Changeset: 5eb7e8bb476b Author: sogoel Date: 2014-06-05 10:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/5eb7e8bb476b 8044072: Group 2: create .out files for OverrideChecks tests in tools/javac dir Reviewed-by: jjg ! test/tools/javac/OverrideChecks/InconsistentReturn.java + test/tools/javac/OverrideChecks/InconsistentReturn.out ! test/tools/javac/OverrideChecks/Private.java + test/tools/javac/OverrideChecks/Private.out ! test/tools/javac/OverrideChecks/StaticOverride.java + test/tools/javac/OverrideChecks/StaticOverride.out ! test/tools/javac/OverrideChecks/T4720356a.java + test/tools/javac/OverrideChecks/T4720356a.out ! test/tools/javac/OverrideChecks/T4720359a.java + test/tools/javac/OverrideChecks/T4720359a.out ! test/tools/javac/OverrideChecks/T4721069.java + test/tools/javac/OverrideChecks/T4721069.out ! test/tools/javac/OverrideChecks/ThrowsConflict.java + test/tools/javac/OverrideChecks/ThrowsConflict.out Changeset: 8ea3d41ba8f3 Author: jjg Date: 2014-06-05 13:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/8ea3d41ba8f3 8046067: test/tools/javac/api/6410643/T6410643.java is broken Reviewed-by: darcy, ksrini ! test/tools/javac/api/6410643/T6410643.java Changeset: b64f8d5b97fa Author: lana Date: 2014-06-05 19:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/b64f8d5b97fa Merge Changeset: fd8da51c5df4 Author: katleman Date: 2014-06-12 10:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/fd8da51c5df4 Added tag jdk9-b17 for changeset b64f8d5b97fa ! .hgtags Changeset: 22edab1c93db Author: katleman Date: 2014-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/22edab1c93db Added tag jdk9-b18 for changeset fd8da51c5df4 ! .hgtags Changeset: 3dfd962149b2 Author: emc Date: 2014-06-06 16:00 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/3dfd962149b2 8027262: Determine location for type annotations earlier in compiler pipeline 8027261: Single codepath for attaching annotations to symbols 8027258: Permit a single source annotation to generate multiple bytecode annotations 8027182: Incorrect annotation attributes for type annotations on constructor type parameters 8044010: TypeAnnotation attribute is not generated for repeatable annotation in type argument 8044009: TypeAnnotation attribute is not generated for repeatable annotation in nested types 8043974: TypeAnnotation attribute is not generated for repeatable annotation in lambda 8043669: Few of the ANNOT tests in JCK9 test suite fail with an AssertionError for exception_index 8042060: Type parameter annotations don't work with multiple type parameters 8037348: RuntimeInvisibleAnnotations should not be generated for type annotation on anonymous innerclass creation Summary: Initial rearchitecting of type annotations frontend pipeline Reviewed-by: jjg, jfranck, mcimadamore, jlahoda, wmdietl ! src/share/classes/com/sun/tools/javac/code/Attribute.java ! src/share/classes/com/sun/tools/javac/code/TargetType.java ! src/share/classes/com/sun/tools/javac/code/TypeAnnotationPosition.java - src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/AttrContext.java ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/share/classes/com/sun/tools/javac/comp/Env.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java ! test/tools/javac/annotations/typeAnnotations/TargetTypes.java ! test/tools/javac/annotations/typeAnnotations/classfile/ClassfileTestHelper.java + test/tools/javac/annotations/typeAnnotations/failures/AnnotatedClassExpr.java + test/tools/javac/annotations/typeAnnotations/failures/AnnotatedClassExpr.out ! test/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java ! test/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.out ! test/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage1.java ! test/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage1.out ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotatePackages.out ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateScoping.out ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass.java ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass2.out ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass3.java ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass3.out ! test/tools/javac/annotations/typeAnnotations/failures/common/arrays/DeclarationAnnotation.java ! test/tools/javac/annotations/typeAnnotations/failures/common/arrays/DeclarationAnnotation.out ! test/tools/javac/annotations/typeAnnotations/failures/common/arrays/MissingAnnotationValue.java ! test/tools/javac/annotations/typeAnnotations/failures/common/arrays/MissingAnnotationValue.out ! test/tools/javac/annotations/typeAnnotations/failures/common/innertypeparams/MissingAnnotationValue.java ! test/tools/javac/annotations/typeAnnotations/failures/common/innertypeparams/MissingAnnotationValue.out ! test/tools/javac/annotations/typeAnnotations/failures/common/newarray/MissingAnnotationValue.java ! test/tools/javac/annotations/typeAnnotations/failures/common/newarray/MissingAnnotationValue.out ! test/tools/javac/annotations/typeAnnotations/failures/common/receiver/MissingAnnotationValue.java ! test/tools/javac/annotations/typeAnnotations/failures/common/receiver/MissingAnnotationValue.out ! test/tools/javac/annotations/typeAnnotations/failures/common/typeArgs/MissingAnnotationValue.java ! test/tools/javac/annotations/typeAnnotations/failures/common/typeArgs/MissingAnnotationValue.out ! test/tools/javac/annotations/typeAnnotations/failures/common/typeparams/MissingAnnotationValue.java ! test/tools/javac/annotations/typeAnnotations/failures/common/typeparams/MissingAnnotationValue.out ! test/tools/javac/annotations/typeAnnotations/failures/common/wildcards/MissingAnnotationValue.java ! test/tools/javac/annotations/typeAnnotations/failures/common/wildcards/MissingAnnotationValue.out + test/tools/javac/annotations/typeAnnotations/newlocations/AllLocations.java ! test/tools/javac/annotations/typeAnnotations/newlocations/Expressions.java ! test/tools/javac/annotations/typeAnnotations/newlocations/NestedTypes.java ! test/tools/javac/annotations/typeAnnotations/newlocations/RepeatingTypeAnnotations.out ! test/tools/javac/annotations/typeAnnotations/referenceinfos/Fields.java ! test/tools/javac/processing/model/element/TestAnonClassNames.java ! test/tools/javac/tree/TreePosTest.java ! test/tools/javac/warnings/6747671/T6747671.out ! test/tools/javac/warnings/suppress/T6480588.out ! test/tools/javac/warnings/suppress/TypeAnnotations.out ! test/tools/javap/output/RepeatingTypeAnnotations.java Changeset: f434ca8aface Author: aeremeev Date: 2014-06-06 16:08 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/f434ca8aface 8042451: Write tests for all possible kinds of type annotation Summary: Add new tests for type annotations to improve case coverage Reviewed-by: jjg, emc, abuckley ! test/tools/javac/annotations/typeAnnotations/referenceinfos/ClassExtends.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/ClassTypeParam.java + test/tools/javac/annotations/typeAnnotations/referenceinfos/ConstructorInvocationTypeArgument.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/Constructors.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/Driver.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/ExceptionParameters.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/Fields.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/FromSpecification.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/Initializers.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/Lambda.java + test/tools/javac/annotations/typeAnnotations/referenceinfos/MethodInvocationTypeArgument.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/MethodParameters.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/MethodReceivers.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/MethodReturns.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/MethodThrows.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/MethodTypeParam.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/MultiCatch.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/NestedTypes.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/NewObjects.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/ReferenceInfoUtil.java + test/tools/javac/annotations/typeAnnotations/referenceinfos/ResourceVariable.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/TypeCasts.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/TypeTests.java Changeset: 01c43036a26e Author: jjg Date: 2014-06-08 15:02 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/01c43036a26e 7026941: 199: path options ignored when reusing filemanager across tasks Reviewed-by: jlahoda, jfranck ! src/share/classes/com/sun/tools/javac/api/ClientCodeWrapper.java ! src/share/classes/com/sun/tools/javac/api/JavacTaskImpl.java ! src/share/classes/com/sun/tools/javac/file/JavacFileManager.java ! src/share/classes/com/sun/tools/javac/file/Locations.java ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java ! src/share/classes/com/sun/tools/javac/main/Main.java ! src/share/classes/com/sun/tools/javac/main/Option.java ! src/share/classes/com/sun/tools/javac/main/OptionHelper.java ! src/share/classes/com/sun/tools/javac/nio/JavacPathFileManager.java ! src/share/classes/com/sun/tools/javac/util/BaseFileManager.java ! src/share/classes/com/sun/tools/javadoc/Start.java ! src/share/classes/com/sun/tools/javadoc/ToolOption.java ! test/tools/javac/T6358166.java ! test/tools/javac/T6358168.java + test/tools/javac/api/TestSearchPaths.java ! test/tools/javac/diags/ArgTypeCompilerFactory.java ! test/tools/javac/processing/6430209/T6430209.java Changeset: 8d6a76a38178 Author: jlahoda Date: 2014-06-09 10:17 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/8d6a76a38178 8033414: javac Plugin to receive notification (before and) after the compilation. Summary: Introducing TaskEvent.Kind.COMPILATION, sending this event before and after compilation. Reviewed-by: jjg, jfranck Contributed-by: joel.franck at oracle.com, jan.lahoda at oracle.com ! src/share/classes/com/sun/source/util/TaskEvent.java ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java ! test/tools/javac/T6358024.java ! test/tools/javac/T6395974.java ! test/tools/javac/T6403466.out + test/tools/javac/api/taskListeners/CompileEvent.java ! test/tools/javac/api/taskListeners/TestSimpleAddRemove.java Changeset: a8ebc1d5cde9 Author: mcimadamore Date: 2014-06-09 12:54 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/a8ebc1d5cde9 8043725: javac fails with StackOverflowException Summary: loose type comparison test should be protected against infinite recursion with fbounds Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/generics/inference/8043725/T8043725.java Changeset: 020899586e8b Author: emc Date: 2014-06-09 15:46 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/020899586e8b 8046296: java/util/concurrent/BlockingQueue/PollMemoryLeak.java fails in nightly on all platform due to compiler issue Summary: Alter logic to choose type of type annotation position for a variable declaration Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java Changeset: f7be68b3bd2e Author: dlsmith Date: 2014-06-10 12:41 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/f7be68b3bd2e 8037385: constant pool errors with -target 1.7 and static default methods Summary: Add error check for static interface methods invoked from -source 7 Reviewed-by: vromero, mcimadamore ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/diags/examples/StaticIntfMethodInvokeNotSupported.java Changeset: 71e241ea30f1 Author: dlsmith Date: 2014-06-10 15:25 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/71e241ea30f1 8015101: Covariance of return type implied by upper bounding on type parameter is ignored Summary: Capture intersection supertypes before comparing their members Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/comp/Check.java ! test/tools/javac/generics/wildcards/7034495/T7034495.out + test/tools/javac/generics/wildcards/T8015101.java Changeset: 40d829674bb4 Author: pgovereau Date: 2014-06-11 12:49 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/40d829674bb4 8027886: javac allows illegal receiver parameters 8029042: Receiver parameter not supported on local class constructor Reviewed-by: jfranck, jlahoda ! src/share/classes/com/sun/tools/javac/code/Flags.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/tree/TreeInfo.java + test/tools/javac/annotations/FinalReceiverTest.java + test/tools/javac/annotations/FinalReceiverTest.out + test/tools/javac/annotations/LocalInnerReceiverTest.java ! test/tools/javac/annotations/typeAnnotations/newlocations/Receivers.java Changeset: 8e921a530aaf Author: emc Date: 2014-06-12 11:32 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/8e921a530aaf 8043484: DPrinter does not compile Summary: Make DPrinter compile Reviewed-by: jjg ! test/tools/javac/lib/DPrinter.java Changeset: 94543b979c40 Author: lana Date: 2014-06-12 15:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/94543b979c40 Merge - src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java Changeset: a9accd7c4415 Author: lana Date: 2014-06-18 10:09 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/a9accd7c4415 Merge - src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java Changeset: 34229d03afe7 Author: katleman Date: 2014-06-19 11:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/34229d03afe7 Added tag jdk9-b19 for changeset a9accd7c4415 ! .hgtags Changeset: 017098c7fa18 Author: ksrini Date: 2014-05-22 12:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/017098c7fa18 8042829: [javadoc] index-file output is not sorted correctly 8043062: JDK 9 platform and compiler upgrade failed on Solaris-sparcv9 with Javadoc.gmk:360: recipe for target docs/api/index.html Reviewed-by: erikj, jjg ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Util.java ! test/com/sun/javadoc/lib/JavadocTester.java ! test/com/sun/javadoc/testOrdering/TestOrdering.java ! test/com/sun/javadoc/testOrdering/pkg1/UsedClass.java - test/com/sun/javadoc/testOrdering/pkg1/ZZTop.java Changeset: c2d589333410 Author: alundblad Date: 2014-06-12 14:29 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/c2d589333410 8042830: A recently added Xprefer test fails on Windows Summary: Test now accepts both / and \ as file separator. Reviewed-by: mcimadamore ! test/tools/javac/options/xprefer/XPreferTest.java Changeset: 220bfc92607e Author: jjg Date: 2014-06-16 11:30 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/220bfc92607e 8046369: sjavac should not use javac internal API for starting javac Reviewed-by: jfranck, alundblad, ohrstrom ! src/share/classes/com/sun/tools/javac/api/JavacTool.java ! src/share/classes/com/sun/tools/javac/main/Main.java ! src/share/classes/com/sun/tools/sjavac/comp/Dependencies.java ! src/share/classes/com/sun/tools/sjavac/server/CompilerThread.java ! test/tools/sjavac/SJavac.java Changeset: 33cb06e65de2 Author: pgovereau Date: 2014-06-17 11:11 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/33cb06e65de2 8038975: Access control in enhanced for Reviewed-by: vromero, jlahoda ! src/share/classes/com/sun/tools/javac/code/Flags.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/share/classes/com/sun/tools/javac/comp/Enter.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/comp/TransTypes.java + src/share/classes/com/sun/tools/javac/comp/TypeEnvs.java + test/tools/javac/T8038975/AccessTest.java + test/tools/javac/T8038975/a/A.java + test/tools/javac/T8038975/a/B.java Changeset: b4d1f317b2cc Author: vromero Date: 2014-06-17 17:33 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/b4d1f317b2cc 8036953: Fix timing of varargs access check, per JDK-8016205 Reviewed-by: mcimadamore, dlsmith ! src/share/classes/com/sun/tools/javac/code/Source.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! test/tools/javac/varargs/6313164/T6313164.java - test/tools/javac/varargs/6313164/T6313164.out + test/tools/javac/varargs/6313164/T6313164Source7.out + test/tools/javac/varargs/6313164/T6313164Source8AndHigher.out ! test/tools/javac/varargs/6313164/T7175433.java + test/tools/javac/varargs/6313164/T7175433.out ! test/tools/javac/varargs/6313164/p1/B.java Changeset: d8d49a41294a Author: jlahoda Date: 2014-06-18 10:44 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/d8d49a41294a 8046916: Type parameter annotations don't work with multiple type parameters Summary: When reading type variable's annotations out of the owner's type annotations, use the type variable's index in owner to exclude annotations belonging to other type variables. Reviewed-by: jfranck, emc ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! test/tools/javac/processing/model/element/TestTypeParameterAnnotations.java Changeset: f4ea5dca6498 Author: mcimadamore Date: 2014-06-18 13:51 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/f4ea5dca6498 8043253: Slow javac compile times in JDK 8 Summary: Enable on-demand diagnostic source position completion Reviewed-by: jjg, vromero ! src/share/classes/com/sun/tools/javac/util/JCDiagnostic.java Changeset: ca2f625d3712 Author: lana Date: 2014-06-18 10:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/ca2f625d3712 Merge - test/com/sun/javadoc/testOrdering/pkg1/ZZTop.java - test/tools/javac/varargs/6313164/T6313164.out Changeset: 31acbc476a52 Author: lana Date: 2014-06-20 10:15 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/31acbc476a52 Merge - test/com/sun/javadoc/testOrdering/pkg1/ZZTop.java - test/tools/javac/varargs/6313164/T6313164.out Changeset: fa0d1059a26f Author: katleman Date: 2014-06-26 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/fa0d1059a26f Added tag jdk9-b20 for changeset 31acbc476a52 ! .hgtags Changeset: 9bc48352fb7b Author: katleman Date: 2014-07-03 11:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/9bc48352fb7b Added tag jdk9-b21 for changeset fa0d1059a26f ! .hgtags Changeset: c230fa74ef7b Author: sogoel Date: 2014-06-18 14:58 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/c230fa74ef7b 8046071: update three javadoc tests for empty

tag Reviewed-by: jjg, ksrini ! test/com/sun/javadoc/DocRootSlash/p1/package.html ! test/com/sun/javadoc/JavascriptWinTitle/overview.html ! test/com/sun/javadoc/ValidHtml/overview.html Changeset: f25395823aab Author: vromero Date: 2014-06-19 15:39 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/f25395823aab 8038182: javac crash with FunctionDescriptorLookupError for invalid functional interface Reviewed-by: mcimadamore Contributed-by: maurizio.cimadamore at oracle.com, vicente.romero at oracle.com ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/lambda/T8038182/CrashFunctionDescriptorExceptionTest.java + test/tools/javac/lambda/T8038182/CrashFunctionDescriptorExceptionTest.out Changeset: 8085359d9444 Author: jlahoda Date: 2014-06-19 22:06 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/8085359d9444 8041648: do while loop that misses ending semicolon has wrong end position Summary: Ensure the end positions are meaningful even if statement's semicolon is missing. Reviewed-by: jjg Contributed-by: dusan.balek at oracle.com, jan.lahoda at oracle.com ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java + test/tools/javac/tree/MissingSemicolonTest.java Changeset: 340148a26acf Author: vromero Date: 2014-06-19 23:52 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/340148a26acf 8042759: Lambda returning implicitly-typed lambdas considered pertinent to applicability Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java + test/tools/javac/lambda/T8042759/ImplicitLambdaConsideredForApplicabilityTest.java + test/tools/javac/lambda/T8042759/ImplicitLambdaConsideredForApplicabilityTest.out Changeset: 9b187f24c709 Author: dlsmith Date: 2014-06-20 10:56 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/9b187f24c709 8034147: javac crashes with a NullPointerException during bounds checking Summary: Types.supertype should return Type.noType rather than null Reviewed-by: vromero, mcimadamore ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Check.java + test/tools/javac/generics/wildcards/T8034147.java Changeset: 11ed38d8765b Author: dlsmith Date: 2014-06-20 11:42 -0600 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/11ed38d8765b 8047407: Add test for JDK-8037385 Reviewed-by: mcimadamore + test/tools/javac/defaultMethods/static/StaticInvoke.java + test/tools/javac/defaultMethods/static/StaticInvoke6.out + test/tools/javac/defaultMethods/static/StaticInvoke7.out Changeset: 173f27d6e81f Author: rfield Date: 2014-06-20 10:56 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/173f27d6e81f 8046060: Different results of floating point multiplication for lambda code block Summary: propogate strictfp into lambda body Reviewed-by: vromero, jlahoda ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java + test/tools/javac/lambda/LambdaTestStrictFP.java + test/tools/javac/lambda/LambdaTestStrictFPFlag.java + test/tools/javac/lambda/LambdaTestStrictFPMethod.java Changeset: 6c8c530a1b1b Author: vromero Date: 2014-06-20 20:36 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/6c8c530a1b1b 8044546: Crash on faulty reduce/lambda Reviewed-by: mcimadamore, dlsmith Contributed-by: maurizio.cimadamore at oracle.com, vicente.romero at oracle.com ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/Infer.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java + test/tools/javac/generics/inference/T8044546/CrashImplicitLambdaTest.java + test/tools/javac/generics/inference/T8044546/NestedInvocationsTest.java Changeset: db0bca6feeb2 Author: sogoel Date: 2014-06-20 13:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/db0bca6feeb2 8047300: update tools/javadoc/6227454 test for missing tags Reviewed-by: jjg, ksrini ! test/tools/javadoc/6227454/Test.java Changeset: 97731dc59ef6 Author: rfield Date: 2014-06-24 00:43 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/97731dc59ef6 8037404: javac NPE or VerifyError for code with constructor reference of inner class 8047341: lambda reference to inner class in base class causes LambdaConversionException 8044748: JVM cannot access constructor though ::new reference although can call it directly 8044737: Lambda: NPE while obtaining method reference through lambda expression Summary: revamp and simplify handling of complex method references Reviewed-by: dlsmith, vromero ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! test/tools/javac/T8019486/WrongLNTForLambdaTest.java Changeset: f935f27abaef Author: mcimadamore Date: 2014-06-24 16:04 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/f935f27abaef 8046451: Add basic IntelliJ support for langtools Summary: Add new ant target 'idea' to create IntelliJ langtools project Reviewed-by: jjg ! .hgignore ! make/build.xml + make/intellij/ant.xml + make/intellij/build.xml + make/intellij/compiler.xml + make/intellij/inspectionProfiles/langtools.xml + make/intellij/inspectionProfiles/profiles_settings.xml + make/intellij/langtools.iml + make/intellij/misc.xml + make/intellij/modules.xml + make/intellij/vcs.xml + make/intellij/workspace.xml Changeset: 9fe158562a96 Author: darcy Date: 2014-06-24 10:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/9fe158562a96 7196160: Project Coin: allow @SafeVarargs on private methods Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/Source.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/diags/examples/VarargsFinalOnly.java ! test/tools/javac/varargs/warning/Warn4.java ! test/tools/javac/varargs/warning/Warn5.java Changeset: 65ad8ee1ff0f Author: ksrini Date: 2014-06-24 15:15 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/65ad8ee1ff0f 8047157: [javadoc] fixup tests for determinism and add classes uses Reviewed-by: jjg ! test/com/sun/javadoc/testHtmlTag/TestHtmlTag.java ! test/com/sun/javadoc/testUseOption/TestUseOption.java ! test/com/sun/javadoc/testUseOption/pkg1/C1.java + test/com/sun/javadoc/testUseOption/pkg1/C10.java + test/com/sun/javadoc/testUseOption/pkg1/C9.java + test/com/sun/javadoc/testUseOption/pkg1/UsedInterface.java + test/com/sun/javadoc/testUseOption/pkg1/UsedInterfaceA.java Changeset: 2b6b96ed3878 Author: rfield Date: 2014-06-25 11:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/2b6b96ed3878 8048121: javac complex method references: revamp and simplify 8038776: VerifyError when running successfully compiled java class Summary: Add tests missing from the push of 8037404 Reviewed-by: dlsmith, vromero + test/tools/javac/lambda/methodReference/MethodRefNewInnerBootstrap.java + test/tools/javac/lambda/methodReference/MethodRefNewInnerInLambdaNPE1.java + test/tools/javac/lambda/methodReference/MethodRefNewInnerInLambdaNPE2.java + test/tools/javac/lambda/methodReference/MethodRefNewInnerInLambdaVerify1.java + test/tools/javac/lambda/methodReference/MethodRefNewInnerInLambdaVerify2.java + test/tools/javac/lambda/methodReference/MethodRefNewInnerInLambdaVerify2simple.java + test/tools/javac/lambda/methodReference/MethodRefQualifier1.java + test/tools/javac/lambda/methodReference/MethodRefSingleRefEvalBridge.java + test/tools/javac/lambda/methodReference/MethodRefToInner.java + test/tools/javac/lambda/methodReference/MethodReferenceComplexNullCheckTest.java Changeset: 3c49a62452a0 Author: jjg Date: 2014-06-25 17:58 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/3c49a62452a0 8046613: Fill in missing doc comments Reviewed-by: darcy ! src/share/classes/com/sun/javadoc/AnnotatedType.java Changeset: e0e50718a250 Author: jjg Date: 2014-06-25 19:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/e0e50718a250 8046614: Fill in missing doc comments Reviewed-by: darcy ! src/share/classes/com/sun/source/doctree/AttributeTree.java ! src/share/classes/com/sun/source/doctree/AuthorTree.java ! src/share/classes/com/sun/source/doctree/BlockTagTree.java ! src/share/classes/com/sun/source/doctree/CommentTree.java ! src/share/classes/com/sun/source/doctree/DeprecatedTree.java ! src/share/classes/com/sun/source/doctree/DocCommentTree.java ! src/share/classes/com/sun/source/doctree/DocTree.java ! src/share/classes/com/sun/source/doctree/DocTreeVisitor.java ! src/share/classes/com/sun/source/doctree/EndElementTree.java ! src/share/classes/com/sun/source/doctree/EntityTree.java ! src/share/classes/com/sun/source/doctree/ErroneousTree.java ! src/share/classes/com/sun/source/doctree/IdentifierTree.java ! src/share/classes/com/sun/source/doctree/InlineTagTree.java ! src/share/classes/com/sun/source/doctree/LinkTree.java ! src/share/classes/com/sun/source/doctree/LiteralTree.java ! src/share/classes/com/sun/source/doctree/ParamTree.java ! src/share/classes/com/sun/source/doctree/ReferenceTree.java ! src/share/classes/com/sun/source/doctree/ReturnTree.java ! src/share/classes/com/sun/source/doctree/SeeTree.java ! src/share/classes/com/sun/source/doctree/SerialDataTree.java ! src/share/classes/com/sun/source/doctree/SerialFieldTree.java ! src/share/classes/com/sun/source/doctree/SerialTree.java ! src/share/classes/com/sun/source/doctree/SinceTree.java ! src/share/classes/com/sun/source/doctree/StartElementTree.java ! src/share/classes/com/sun/source/doctree/TextTree.java ! src/share/classes/com/sun/source/doctree/ThrowsTree.java ! src/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java ! src/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java ! src/share/classes/com/sun/source/doctree/ValueTree.java ! src/share/classes/com/sun/source/doctree/VersionTree.java ! src/share/classes/com/sun/source/tree/AnnotatedTypeTree.java ! src/share/classes/com/sun/source/tree/AnnotationTree.java ! src/share/classes/com/sun/source/tree/ArrayAccessTree.java ! src/share/classes/com/sun/source/tree/ArrayTypeTree.java ! src/share/classes/com/sun/source/tree/AssertTree.java ! src/share/classes/com/sun/source/tree/AssignmentTree.java ! src/share/classes/com/sun/source/tree/BinaryTree.java ! src/share/classes/com/sun/source/tree/BlockTree.java ! src/share/classes/com/sun/source/tree/BreakTree.java ! src/share/classes/com/sun/source/tree/CaseTree.java ! src/share/classes/com/sun/source/tree/CatchTree.java ! src/share/classes/com/sun/source/tree/ClassTree.java ! src/share/classes/com/sun/source/tree/CompilationUnitTree.java ! src/share/classes/com/sun/source/tree/CompoundAssignmentTree.java ! src/share/classes/com/sun/source/tree/ConditionalExpressionTree.java ! src/share/classes/com/sun/source/tree/ContinueTree.java ! src/share/classes/com/sun/source/tree/DoWhileLoopTree.java ! src/share/classes/com/sun/source/tree/EnhancedForLoopTree.java ! src/share/classes/com/sun/source/tree/ErroneousTree.java ! src/share/classes/com/sun/source/tree/ExpressionStatementTree.java ! src/share/classes/com/sun/source/tree/ForLoopTree.java ! src/share/classes/com/sun/source/tree/IdentifierTree.java ! src/share/classes/com/sun/source/tree/IfTree.java ! src/share/classes/com/sun/source/tree/ImportTree.java ! src/share/classes/com/sun/source/tree/InstanceOfTree.java ! src/share/classes/com/sun/source/tree/IntersectionTypeTree.java ! src/share/classes/com/sun/source/tree/LabeledStatementTree.java ! src/share/classes/com/sun/source/tree/LambdaExpressionTree.java ! src/share/classes/com/sun/source/tree/LineMap.java ! src/share/classes/com/sun/source/tree/LiteralTree.java ! src/share/classes/com/sun/source/tree/MemberReferenceTree.java ! src/share/classes/com/sun/source/tree/MemberSelectTree.java ! src/share/classes/com/sun/source/tree/MethodInvocationTree.java ! src/share/classes/com/sun/source/tree/MethodTree.java ! src/share/classes/com/sun/source/tree/ModifiersTree.java ! src/share/classes/com/sun/source/tree/NewArrayTree.java ! src/share/classes/com/sun/source/tree/NewClassTree.java ! src/share/classes/com/sun/source/tree/PackageTree.java ! src/share/classes/com/sun/source/tree/ParameterizedTypeTree.java ! src/share/classes/com/sun/source/tree/ParenthesizedTree.java ! src/share/classes/com/sun/source/tree/PrimitiveTypeTree.java ! src/share/classes/com/sun/source/tree/ReturnTree.java ! src/share/classes/com/sun/source/tree/Scope.java ! src/share/classes/com/sun/source/tree/SwitchTree.java ! src/share/classes/com/sun/source/tree/SynchronizedTree.java ! src/share/classes/com/sun/source/tree/ThrowTree.java ! src/share/classes/com/sun/source/tree/Tree.java ! src/share/classes/com/sun/source/tree/TreeVisitor.java ! src/share/classes/com/sun/source/tree/TryTree.java ! src/share/classes/com/sun/source/tree/TypeCastTree.java ! src/share/classes/com/sun/source/tree/TypeParameterTree.java ! src/share/classes/com/sun/source/tree/UnaryTree.java ! src/share/classes/com/sun/source/tree/UnionTypeTree.java ! src/share/classes/com/sun/source/tree/VariableTree.java ! src/share/classes/com/sun/source/tree/WhileLoopTree.java ! src/share/classes/com/sun/source/tree/WildcardTree.java ! src/share/classes/com/sun/source/util/DocSourcePositions.java ! src/share/classes/com/sun/source/util/DocTreePath.java ! src/share/classes/com/sun/source/util/DocTreePathScanner.java ! src/share/classes/com/sun/source/util/DocTreeScanner.java ! src/share/classes/com/sun/source/util/DocTrees.java ! src/share/classes/com/sun/source/util/JavacTask.java ! src/share/classes/com/sun/source/util/Plugin.java ! src/share/classes/com/sun/source/util/SimpleDocTreeVisitor.java ! src/share/classes/com/sun/source/util/SimpleTreeVisitor.java ! src/share/classes/com/sun/source/util/SourcePositions.java ! src/share/classes/com/sun/source/util/TaskEvent.java ! src/share/classes/com/sun/source/util/TaskListener.java ! src/share/classes/com/sun/source/util/TreePath.java ! src/share/classes/com/sun/source/util/TreePathScanner.java ! src/share/classes/com/sun/source/util/TreeScanner.java ! src/share/classes/com/sun/source/util/Trees.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfileIndexFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageIndexFrameWriter.java ! src/share/classes/com/sun/tools/javac/api/JavacTrees.java ! src/share/classes/com/sun/tools/javac/parser/DocCommentParser.java ! src/share/classes/com/sun/tools/javac/util/JavacMessages.java ! src/share/classes/com/sun/tools/javac/util/MandatoryWarningHandler.java ! src/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java ! src/share/classes/com/sun/tools/javah/NativeHeaderTool.java ! src/share/classes/com/sun/tools/javap/DisassemblerTool.java ! src/share/classes/javax/tools/Diagnostic.java ! src/share/classes/javax/tools/DiagnosticCollector.java ! src/share/classes/javax/tools/DocumentationTool.java ! src/share/classes/javax/tools/FileObject.java ! src/share/classes/javax/tools/JavaCompiler.java ! src/share/classes/javax/tools/JavaFileManager.java ! src/share/classes/javax/tools/JavaFileObject.java ! src/share/classes/javax/tools/StandardJavaFileManager.java ! src/share/classes/javax/tools/StandardLocation.java ! src/share/classes/javax/tools/Tool.java ! src/share/classes/javax/tools/ToolProvider.java Changeset: 0099245e979a Author: jjg Date: 2014-06-25 19:15 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/0099245e979a 8048162: Restrict catch type from Throwable to ReflectiveOperationException Reviewed-by: darcy ! src/share/classes/com/sun/source/util/Trees.java Changeset: 0518710873ff Author: pgovereau Date: 2014-06-26 13:48 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/0518710873ff 8042345: getDocComment fails for doc comments on PackageElement found in package-info.java Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/tree/TreeInfo.java + test/tools/javac/processing/model/util/elements/doccomments/TestPackageInfoComments.java + test/tools/javac/processing/model/util/elements/doccomments/p/package-info.java Changeset: 020679d7393f Author: jjg Date: 2014-06-26 11:31 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/020679d7393f 8047183: JDK build fails with sjavac enabled Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/sjavac/comp/SmartFileManager.java ! src/share/classes/com/sun/tools/sjavac/server/CompilerThread.java + test/tools/sjavac/IgnoreSymbolFile.java Changeset: 72b438e9500a Author: jjg Date: 2014-06-26 11:45 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/72b438e9500a 8007307: DPrinter: support the DocTree API Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/javac/api/JavacTaskImpl.java ! test/tools/javac/lib/DPrinter.java Changeset: 2a83edbd9e4c Author: sogoel Date: 2014-06-26 15:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/2a83edbd9e4c 8047303: update com/sun/javadoc/DocRootSlash/DocRootSlash for unexpected Reviewed-by: jjg, ksrini ! test/com/sun/javadoc/DocRootSlash/overview.html ! test/com/sun/javadoc/DocRootSlash/p1/package.html Changeset: 197330877ece Author: sogoel Date: 2014-06-26 15:30 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/197330877ece 8047743: update com/sun/javadoc/testHref for unrecognized Reviewed-by: jjg, ksrini - test/com/sun/javadoc/testHref/pkg/C3.java Changeset: 30107d3a97b2 Author: sogoel Date: 2014-06-26 15:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/30107d3a97b2 8047744: update 2 javadoc tests for nested emphasis Reviewed-by: jjg, ksrini ! test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C2.java ! test/com/sun/javadoc/testSerializedFormDeprecationInfo/TestSerializedFormDeprecationInfo.java ! test/com/sun/javadoc/testSerializedFormDeprecationInfo/pkg1/C2.java Changeset: e95a75d1098c Author: sogoel Date: 2014-06-26 15:47 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/e95a75d1098c 8048168: update 2 javadoc tests to add summary attribute for table tag Reviewed-by: jjg, ksrini ! test/com/sun/javadoc/testHtmlTableStyles/TestHtmlTableStyles.java ! test/com/sun/javadoc/testHtmlTableStyles/pkg1/TestTable.java ! test/com/sun/javadoc/testLegacyTaglet/TestLegacyTaglet.java ! test/com/sun/javadoc/testLegacyTaglet/ToDoTaglet.java Changeset: 0ae21b11d85b Author: sogoel Date: 2014-06-26 16:07 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/0ae21b11d85b 8047316: update javadoc tests to fix tidy warning for incorrect html comment Reviewed-by: jjg, ksrini ! test/com/sun/javadoc/DocRootSlash/overview.html ! test/com/sun/javadoc/DocRootSlash/p1/C1.java ! test/com/sun/javadoc/DocRootSlash/p1/package.html Changeset: 18e2c22d5c2e Author: sogoel Date: 2014-06-26 16:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/18e2c22d5c2e 8048293: update tools/javadoc/6227454 to have missing tag Reviewed-by: jjg, bpatel ! test/tools/javadoc/6227454/Test.java Changeset: 855f8c7337eb Author: vromero Date: 2014-06-27 20:32 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/855f8c7337eb 8047719: Incorrect LVT in switch statement Reviewed-by: jjg, jlahoda ! src/share/classes/com/sun/tools/javac/jvm/Code.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java ! test/tools/javac/classfiles/attributes/LocalVariableTable/LocalVariableTableTest.java ! test/tools/javac/classfiles/attributes/LocalVariableTable/LocalVariableTypeTableTest.java ! test/tools/javac/flow/LVTHarness.java ! test/tools/javac/flow/tests/TestCaseSwitch.java Changeset: 5bd36f40e4c5 Author: alundblad Date: 2014-06-17 14:01 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/5bd36f40e4c5 8048594: The sjavac client/server protocol should be hidden behind an interface Reviewed-by: jfranck ! src/share/classes/com/sun/tools/sjavac/CleanProperties.java ! src/share/classes/com/sun/tools/sjavac/CompileJavaPackages.java ! src/share/classes/com/sun/tools/sjavac/CompileProperties.java ! src/share/classes/com/sun/tools/sjavac/CopyFile.java ! src/share/classes/com/sun/tools/sjavac/JavacState.java ! src/share/classes/com/sun/tools/sjavac/Main.java ! src/share/classes/com/sun/tools/sjavac/Transformer.java ! src/share/classes/com/sun/tools/sjavac/Util.java ! src/share/classes/com/sun/tools/sjavac/comp/JavaCompilerWithDeps.java + src/share/classes/com/sun/tools/sjavac/comp/JavacServiceImpl.java + src/share/classes/com/sun/tools/sjavac/server/CompilationResult.java ! src/share/classes/com/sun/tools/sjavac/server/CompilerPool.java ! src/share/classes/com/sun/tools/sjavac/server/CompilerThread.java ! src/share/classes/com/sun/tools/sjavac/server/JavacServer.java + src/share/classes/com/sun/tools/sjavac/server/JavacService.java + src/share/classes/com/sun/tools/sjavac/server/JavacServiceClient.java ! test/tools/sjavac/SJavac.java Changeset: f278516ca25e Author: ksrini Date: 2014-06-27 17:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/f278516ca25e 8047162: [javadoc] index files are non deterministic Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Util.java ! test/com/sun/javadoc/testOrdering/TestOrdering.java + test/com/sun/javadoc/testOrdering/src-2/a/A.java + test/com/sun/javadoc/testOrdering/src-2/a/something.java + test/com/sun/javadoc/testOrdering/src-2/b/B.java + test/com/sun/javadoc/testOrdering/src-2/b/something.java + test/com/sun/javadoc/testOrdering/src-2/e/something.java + test/com/sun/javadoc/testOrdering/src-2/something/J.java + test/com/sun/javadoc/testOrdering/src-2/something/package-info.java + test/com/sun/javadoc/testOrdering/src-2/something/something.java Changeset: eb1989ca0494 Author: jlahoda Date: 2014-06-30 17:08 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/eb1989ca0494 6707032: Division by zero warning not suppressed properly in some cases Summary: Delay reporting of the division by zero warning until annotations are resolved, so that @SuppressWarnings works correctly. Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/comp/Check.java + test/tools/javac/warnings/suppress/T6707032.java + test/tools/javac/warnings/suppress/T6707032.out ! test/tools/javac/warnings/suppress/VerifySuppressWarnings.java Changeset: 45882ef4495c Author: mcimadamore Date: 2014-07-01 17:23 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/45882ef4495c 8048905: More tweaking with langtools intellij support Summary: Add support for 'jtreg.home' property; fix code width to be 80; disable import optimizations Reviewed-by: vromero ! make/build.xml ! make/intellij/ant.xml + make/intellij/codeStyleSettings.xml Changeset: 0b822b876bc9 Author: mchung Date: 2014-06-20 13:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/0b822b876bc9 8044063: Remove com.sun.java.browser.* from jdk repo Reviewed-by: darcy, alanb ! src/share/classes/com/sun/tools/javac/resources/legacy.properties ! src/share/classes/com/sun/tools/javac/sym/CreateSymbols.java Changeset: b7a5cbf1090e Author: ddehaven Date: 2014-06-23 13:06 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/b7a5cbf1090e Merge Changeset: b594326278ed Author: prr Date: 2014-07-01 10:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/b594326278ed Merge - test/com/sun/javadoc/testHref/pkg/C3.java Changeset: ba3328912cde Author: briangoetz Date: 2014-07-01 15:54 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/ba3328912cde 8032188: Remove dead code in TransTypes Reviewed-by: darcy ! src/share/classes/com/sun/tools/javac/comp/TransTypes.java Changeset: 3fce8f1a0d76 Author: lana Date: 2014-07-01 14:28 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/3fce8f1a0d76 Merge - test/com/sun/javadoc/testHref/pkg/C3.java Changeset: 86f3208c0070 Author: sogoel Date: 2014-07-02 12:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/86f3208c0070 8044236: create .out files for DefiniteAssignment tests in tools/javac dir Reviewed-by: jjg, vromero ! test/tools/javac/DefiniteAssignment/DASwitch.java + test/tools/javac/DefiniteAssignment/DASwitch.out ! test/tools/javac/DefiniteAssignment/DUParam1.java + test/tools/javac/DefiniteAssignment/DUParam1.out ! test/tools/javac/DefiniteAssignment/DUParam2.java + test/tools/javac/DefiniteAssignment/DUParam2.out ! test/tools/javac/DefiniteAssignment/DefAssignAfterThis_1.java + test/tools/javac/DefiniteAssignment/DefAssignAfterThis_1.out ! test/tools/javac/DefiniteAssignment/DefAssignAfterThis_2.java ! test/tools/javac/DefiniteAssignment/DefAssignAfterTry1.java + test/tools/javac/DefiniteAssignment/DefAssignAfterTry1.out ! test/tools/javac/DefiniteAssignment/DefAssignAfterTry2.java + test/tools/javac/DefiniteAssignment/DefAssignAfterTry2.out ! test/tools/javac/DefiniteAssignment/DefAssignAfterTry3.java + test/tools/javac/DefiniteAssignment/DefAssignAfterTry3.out ! test/tools/javac/DefiniteAssignment/T4704365.java + test/tools/javac/DefiniteAssignment/T4704365.out ! test/tools/javac/DefiniteAssignment/T4717164.java + test/tools/javac/DefiniteAssignment/T4717164.out ! test/tools/javac/DefiniteAssignment/T4717165.java + test/tools/javac/DefiniteAssignment/T4717165.out ! test/tools/javac/DefiniteAssignment/T4718142.java + test/tools/javac/DefiniteAssignment/T4718142.out ! test/tools/javac/DefiniteAssignment/T4718142a.java + test/tools/javac/DefiniteAssignment/T4718142a.out ! test/tools/javac/DefiniteAssignment/T4718708.java + test/tools/javac/DefiniteAssignment/T4718708.out ! test/tools/javac/DefiniteAssignment/T4721062a.java + test/tools/javac/DefiniteAssignment/T4721062a.out ! test/tools/javac/DefiniteAssignment/T4721062b.java + test/tools/javac/DefiniteAssignment/T4721062b.out ! test/tools/javac/DefiniteAssignment/T4725725.java + test/tools/javac/DefiniteAssignment/T4725725.out ! test/tools/javac/DefiniteAssignment/UncaughtException.java + test/tools/javac/DefiniteAssignment/UncaughtException.out Changeset: 185e5bcbc04e Author: sogoel Date: 2014-07-02 13:29 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/185e5bcbc04e 8044864: .out files for enum tests in tools/javac dir - part 1 Reviewed-by: jjg ! test/tools/javac/enum/DA1.java + test/tools/javac/enum/DA1.out ! test/tools/javac/enum/DA2.java + test/tools/javac/enum/DA2.out ! test/tools/javac/enum/DA3.java + test/tools/javac/enum/DA3.out ! test/tools/javac/enum/EnumProtectedConstructor.java + test/tools/javac/enum/EnumProtectedConstructor.out ! test/tools/javac/enum/EnumPublicConstructor.java + test/tools/javac/enum/EnumPublicConstructor.out ! test/tools/javac/enum/EnumSwitch2.java + test/tools/javac/enum/EnumSwitch2.out ! test/tools/javac/enum/ExplicitlyAbstractEnum1.java + test/tools/javac/enum/ExplicitlyAbstractEnum1.out ! test/tools/javac/enum/ExplicitlyAbstractEnum2.java + test/tools/javac/enum/ExplicitlyAbstractEnum2.out ! test/tools/javac/enum/ExplicitlyFinalEnum1.java + test/tools/javac/enum/ExplicitlyFinalEnum1.out ! test/tools/javac/enum/ExplicitlyFinalEnum2.java + test/tools/javac/enum/ExplicitlyFinalEnum2.out Changeset: 61954520ac34 Author: sogoel Date: 2014-07-02 14:27 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/61954520ac34 8046770: .out files for assert, boxing, and overload tests in tools/javac dir Reviewed-by: jjg ! test/tools/javac/assert/DU1.java + test/tools/javac/assert/DU1.out ! test/tools/javac/assert/DU2.java + test/tools/javac/assert/DU2.out ! test/tools/javac/boxing/Boxing2.java + test/tools/javac/boxing/Boxing2.out ! test/tools/javac/boxing/T5082929.java + test/tools/javac/boxing/T5082929.out - test/tools/javac/completion/C.java - test/tools/javac/completion/C.out - test/tools/javac/completion/example/B.class ! test/tools/javac/expression/NullAppend.java + test/tools/javac/expression/NullAppend.out ! test/tools/javac/expression/NullAppend2.java + test/tools/javac/expression/NullAppend2.out ! test/tools/javac/nested/5009484/X.java + test/tools/javac/nested/5009484/X.out ! test/tools/javac/nested/5009484/Y.java + test/tools/javac/nested/5009484/Y.out ! test/tools/javac/overload/T4743490.java + test/tools/javac/overload/T4743490.out ! test/tools/javac/overload/T5090220.java + test/tools/javac/overload/T5090220.out Changeset: aca19c52b246 Author: lana Date: 2014-07-09 10:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/aca19c52b246 Merge - test/com/sun/javadoc/testHref/pkg/C3.java - test/tools/javac/completion/C.java - test/tools/javac/completion/C.out - test/tools/javac/completion/example/B.class Changeset: 14cf3ffab2b7 Author: katleman Date: 2014-07-10 12:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/14cf3ffab2b7 Added tag jdk9-b22 for changeset aca19c52b246 ! .hgtags Changeset: 854b6d0d408c Author: sogoel Date: 2014-07-03 15:48 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/854b6d0d408c 8049284: Missing bug id in test/tools/javac/varargs/warning/Warn* Reviewed-by: darcy ! test/tools/javac/varargs/warning/Warn4.java ! test/tools/javac/varargs/warning/Warn5.java Changeset: 1c63fdd5dee3 Author: jjg Date: 2014-07-04 10:52 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/1c63fdd5dee3 8042261: Implement classfile tests for Deprecated attribute. Reviewed-by: jjg, anazarov, shurailine ! test/tools/javac/classfiles/attributes/SourceFile/SourceFileTestBase.java + test/tools/javac/classfiles/attributes/deprecated/DeprecatedPackageTest.java + test/tools/javac/classfiles/attributes/deprecated/DeprecatedTest.java ! test/tools/javac/classfiles/attributes/lib/TestBase.java + test/tools/javac/classfiles/attributes/lib/TestResult.java Changeset: a92bd8ad80b1 Author: vromero Date: 2014-07-04 16:34 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/a92bd8ad80b1 8049075: javac, wildcards and generic vararg method invocation not accepted Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/javac/comp/Resolve.java + test/tools/javac/varargs/T8049075/VarargsAndWildcardParameterizedTypeTest.java Changeset: 1b2e5054b2fb Author: sogoel Date: 2014-07-07 12:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/1b2e5054b2fb 8046635: .out files for enum tests in tools/javac/dir Reviewed-by: jjg ! test/tools/javac/enum/FauxEnum1.java + test/tools/javac/enum/FauxEnum1.out ! test/tools/javac/enum/FauxEnum3.java + test/tools/javac/enum/FauxEnum3.out ! test/tools/javac/enum/FauxSpecialEnum1.java + test/tools/javac/enum/FauxSpecialEnum1.out ! test/tools/javac/enum/FauxSpecialEnum2.java + test/tools/javac/enum/FauxSpecialEnum2.out ! test/tools/javac/enum/forwardRef/TestEnum1.java + test/tools/javac/enum/forwardRef/TestEnum1.out ! test/tools/javac/enum/forwardRef/TestEnum2.java + test/tools/javac/enum/forwardRef/TestEnum2.out ! test/tools/javac/enum/forwardRef/TestEnum3.java + test/tools/javac/enum/forwardRef/TestEnum3.out ! test/tools/javac/enum/forwardRef/TestEnum4.java + test/tools/javac/enum/forwardRef/TestEnum4.out ! test/tools/javac/enum/forwardRef/TestEnum5.java + test/tools/javac/enum/forwardRef/TestEnum5.out ! test/tools/javac/enum/forwardRef/TestEnum6.java + test/tools/javac/enum/forwardRef/TestEnum6.out Changeset: d46e370a336c Author: sogoel Date: 2014-07-07 12:44 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/d46e370a336c 8046618: .out files for enum tests in tools/javac/dir Reviewed-by: jjg ! test/tools/javac/enum/AbstractEmptyEnum.java + test/tools/javac/enum/AbstractEmptyEnum.out ! test/tools/javac/enum/Enum2.java + test/tools/javac/enum/Enum2.out ! test/tools/javac/enum/LocalEnum.java + test/tools/javac/enum/LocalEnum.out ! test/tools/javac/enum/NestedEnum.java + test/tools/javac/enum/NestedEnum.out ! test/tools/javac/enum/NoFinal.java + test/tools/javac/enum/NoFinal.out ! test/tools/javac/enum/NoFinal2.java + test/tools/javac/enum/NoFinal2.out ! test/tools/javac/enum/NoFinal3.java + test/tools/javac/enum/NoFinal3.out ! test/tools/javac/enum/NoFinal4.java + test/tools/javac/enum/NoFinal4.out ! test/tools/javac/enum/NoFinal5.java + test/tools/javac/enum/NoFinal5.out ! test/tools/javac/enum/T5081785.java + test/tools/javac/enum/T5081785.out Changeset: 10938dc2251d Author: sogoel Date: 2014-07-07 12:55 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/10938dc2251d 8049491: Remove three auxilary files in tools/javac/enum dir Reviewed-by: jjg - test/tools/javac/enum/T5081785a.java - test/tools/javac/enum/T5081785b.java - test/tools/javac/enum/T5081785c.java Changeset: e320e5265383 Author: sogoel Date: 2014-07-07 13:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/e320e5265383 8044080: .out files for unicode, implicitThis and importChecks tests in tools/javac dir Reviewed-by: jjg ! test/tools/javac/implicitThis/NewBeforeOuterConstructed.java + test/tools/javac/implicitThis/NewBeforeOuterConstructed.out ! test/tools/javac/implicitThis/NewBeforeOuterConstructed2.java + test/tools/javac/implicitThis/NewBeforeOuterConstructed2.out ! test/tools/javac/importChecks/ImportCanonical1.java + test/tools/javac/importChecks/ImportCanonical1.out ! test/tools/javac/importChecks/ImportIsFullyQualified.java + test/tools/javac/importChecks/ImportIsFullyQualified.out ! test/tools/javac/importChecks/InvalidImportsNoClasses.java + test/tools/javac/importChecks/InvalidImportsNoClasses.out ! test/tools/javac/unicode/NonasciiDigit.java + test/tools/javac/unicode/NonasciiDigit.out ! test/tools/javac/unicode/NonasciiDigit2.java + test/tools/javac/unicode/NonasciiDigit2.out ! test/tools/javac/unicode/SupplementaryJavaID2.java + test/tools/javac/unicode/SupplementaryJavaID2.out ! test/tools/javac/unicode/SupplementaryJavaID3.java + test/tools/javac/unicode/SupplementaryJavaID3.out ! test/tools/javac/unicode/TripleQuote.java + test/tools/javac/unicode/TripleQuote.out Changeset: 650b288b51aa Author: jlahoda Date: 2014-07-08 15:13 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/650b288b51aa 8042239: javac: TreeMaker.Type(Type t) does not handle UnionClassType Summary: Enhancing TreeMaker.Type(Type t) with support for UnionClassType and IntersectionClassType. Reviewed-by: vromero, rfield Contributed-by: robert.field at oracle.com, jan.lahoda at oracle.com ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/tree/TreeMaker.java + test/tools/javac/tree/MakeTypeTest.java + test/tools/javac/tree/MakeTypeTest.out Changeset: 27c261414e4f Author: mcimadamore Date: 2014-07-08 15:42 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/27c261414e4f 8043926: javac, code valid in 7 is not compiling for 8 Summary: type-containment doesn't handle inference variables correctly Reviewed-by: vromero, dlsmith ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/generics/inference/8043926/T8043926.java Changeset: 2b31e9278cd6 Author: mchung Date: 2014-07-08 18:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/2b31e9278cd6 8029548: (jdeps) use @jdk.Exported to determine supported vs JDK internal API 8031092: jdeps does not recognize --help option. 8048063: (jdeps) Add filtering capability Reviewed-by: alanb, dfuchs ! src/share/classes/com/sun/tools/jdeps/Analyzer.java ! src/share/classes/com/sun/tools/jdeps/Archive.java ! src/share/classes/com/sun/tools/jdeps/ClassFileReader.java ! src/share/classes/com/sun/tools/jdeps/JdepsTask.java ! src/share/classes/com/sun/tools/jdeps/Main.java ! src/share/classes/com/sun/tools/jdeps/PlatformClassPath.java ! src/share/classes/com/sun/tools/jdeps/Profile.java ! src/share/classes/com/sun/tools/jdeps/resources/jdeps.properties ! test/tools/jdeps/APIDeps.java ! test/tools/jdeps/Basic.java + test/tools/jdeps/DotFileTest.java ! test/tools/jdeps/m/Gee.java ! test/tools/jdeps/p/Bar.java Changeset: 85ff2daae534 Author: jlahoda Date: 2014-07-09 16:32 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/85ff2daae534 8031569: Refactor javac scope implementation to enable lazy imports Summary: Introducing an internal API for Scope; rewriting ImportScopes to extend CompoundScopes. Reviewed-by: mcimadamore, jjg, jfranck Contributed-by: maurizio.cimadamore at oracle.com, jan.lahoda at oracle.com ! src/share/classes/com/sun/tools/javac/api/JavacScope.java ! src/share/classes/com/sun/tools/javac/api/JavacTrees.java ! src/share/classes/com/sun/tools/javac/code/ClassFinder.java ! src/share/classes/com/sun/tools/javac/code/Scope.java ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! src/share/classes/com/sun/tools/javac/code/Symtab.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/AttrContext.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/share/classes/com/sun/tools/javac/comp/Enter.java ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/share/classes/com/sun/tools/javac/comp/TransTypes.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/share/classes/com/sun/tools/javac/jvm/JNIWriter.java ! src/share/classes/com/sun/tools/javac/model/AnnotationProxyMaker.java ! src/share/classes/com/sun/tools/javac/model/FilteredMemberList.java ! src/share/classes/com/sun/tools/javac/model/JavacElements.java ! src/share/classes/com/sun/tools/javac/model/JavacTypes.java ! src/share/classes/com/sun/tools/javac/sym/CreateSymbols.java ! src/share/classes/com/sun/tools/javac/tree/JCTree.java ! src/share/classes/com/sun/tools/javac/tree/TreeMaker.java ! src/share/classes/com/sun/tools/javadoc/AnnotationTypeDocImpl.java ! src/share/classes/com/sun/tools/javadoc/ClassDocImpl.java ! src/share/classes/com/sun/tools/javadoc/MethodDocImpl.java ! src/share/classes/com/sun/tools/javadoc/PackageDocImpl.java ! src/share/classes/com/sun/tools/javadoc/SerializedForm.java ! test/tools/javac/6402516/CheckLocalElements.java ! test/tools/javac/6402516/Checker.java ! test/tools/javac/6402516/TestLocalElements.java ! test/tools/javac/6889255/T6889255.java + test/tools/javac/importOnDemand/ImportOnDemandConflicts.java + test/tools/javac/importOnDemand/ImportOnDemandConflicts.out + test/tools/javac/importOnDemand/p1/Object.java + test/tools/javac/importOnDemand/p1/String.java + test/tools/javac/importOnDemand/p2/Boolean.java ! test/tools/javac/lib/DPrinter.java ! test/tools/javac/scope/7017664/CompoundScopeTest.java ! test/tools/javac/scope/7017664/ImplementationCacheTest.java ! test/tools/javac/scope/HashCollisionTest.java ! test/tools/javac/scope/StarImportTest.java ! test/tools/javac/staticImport/6537020/T6537020.out Changeset: 1ea840327bf6 Author: vromero Date: 2014-07-09 10:49 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/1ea840327bf6 8033483: Should ignore nested lambda bodies during overload resolution Reviewed-by: mcimadamore, dlsmith ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java + test/tools/javac/lambda/T8033483/IgnoreLambdaBodyDuringResolutionTest1.java + test/tools/javac/lambda/T8033483/IgnoreLambdaBodyDuringResolutionTest1.out + test/tools/javac/lambda/T8033483/IgnoreLambdaBodyDuringResolutionTest2.java + test/tools/javac/lambda/T8033483/IgnoreLambdaBodyDuringResolutionTest2.out Changeset: fbfbefa43016 Author: ntoda Date: 2014-07-10 13:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/fbfbefa43016 8011044: Remove support for 1.5 and earlier source and target options Reviewed-by: darcy, jjg Contributed-by: neil.toda at oracle.com, brian.goetz at oracle.com ! src/share/classes/com/sun/tools/javac/code/Source.java ! src/share/classes/com/sun/tools/javac/code/Symtab.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/share/classes/com/sun/tools/javac/comp/TransTypes.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/share/classes/com/sun/tools/javac/jvm/Target.java ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java ! src/share/classes/com/sun/tools/javac/main/Main.java ! src/share/classes/com/sun/tools/javac/parser/JavaTokenizer.java ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/share/classes/com/sun/tools/javac/util/BaseFileManager.java ! test/tools/javac/defaultMethods/crossCompile/CrossCompile.java ! test/tools/javac/defaultMethodsVisibility/DefaultMethodsNotVisibleForSourceLessThan8Test.java - test/tools/javac/diags/examples/AnnotationsNotSupported.java - test/tools/javac/diags/examples/AssertAsIdentifier.java - test/tools/javac/diags/examples/EnumAsIdentifier.java - test/tools/javac/diags/examples/EnumsNotSupported.java ! test/tools/javac/diags/examples/Expected2.java - test/tools/javac/diags/examples/ForeachNotSupported.java - test/tools/javac/diags/examples/GenericsNotSupported.java ! test/tools/javac/diags/examples/NeitherConditionalSubtype.java ! test/tools/javac/diags/examples/ObsoleteSourceAndTarget.java + test/tools/javac/diags/examples/OptionRemovedSource.java + test/tools/javac/diags/examples/OptionRemovedTarget.java ! test/tools/javac/diags/examples/SourceNoBootclasspath.java - test/tools/javac/diags/examples/StaticImportNotSupported.java ! test/tools/javac/diags/examples/TypeAnnotationsNotSupported.java - test/tools/javac/diags/examples/UnsupportedFpLit.java - test/tools/javac/diags/examples/VarargsNotSupported.java - test/tools/javac/expression/_super/NonDirectSuper/Base.java - test/tools/javac/expression/_super/NonDirectSuper/NonDirectSuper.java - test/tools/javac/expression/_super/NonDirectSuper/Target11.java - test/tools/javac/miranda/6964669/T6964669.java - test/tools/javac/miranda/6964669/pkg/A.java - test/tools/javac/miranda/6964669/pkg/B.java - test/tools/javac/miranda/6964669/pkg/C.java - test/tools/javac/mixedTarget/CompatibleAbstracts1.java - test/tools/javac/mixedTarget/CompatibleAbstracts2.java ! test/tools/javac/mixedTarget/ExtendCovariant1.java ! test/tools/javac/mixedTarget/ExtendCovariant2.java ! test/tools/javac/options/T6900037.java ! test/tools/javac/options/T6900037.out ! test/tools/javac/options/T7022337.java ! test/tools/javac/processing/messager/MessagerDiags.java ! test/tools/javac/versions/check.sh Changeset: 50fe4b116ef4 Author: lana Date: 2014-07-10 12:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/50fe4b116ef4 Merge - test/tools/javac/enum/T5081785a.java - test/tools/javac/enum/T5081785b.java - test/tools/javac/enum/T5081785c.java Changeset: 31b95f27e9ea Author: lana Date: 2014-07-10 14:06 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/31b95f27e9ea Merge Changeset: 796d8ae1287f Author: ntoda Date: 2014-07-10 16:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/796d8ae1287f 8030610: replace test/tools/javac/versions/check.sh Reviewed-by: jjg - test/tools/javac/versions/CheckClassFileVersion.java + test/tools/javac/versions/Versions.java - test/tools/javac/versions/check.sh Changeset: a0ead6b798e3 Author: ksrini Date: 2014-06-29 17:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/a0ead6b798e3 8049393: [javadoc] parameters are not sorted correctly Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Util.java ! test/com/sun/javadoc/testOrdering/TestOrdering.java + test/com/sun/javadoc/testOrdering/pkg1/A.java + test/com/sun/javadoc/testOrdering/pkg1/B.java + test/com/sun/javadoc/testOrdering/pkg1/MethodOrder.java ! test/com/sun/javadoc/testOrdering/pkg1/UsedClass.java Changeset: 714df883ec8f Author: ksrini Date: 2014-07-11 06:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/714df883ec8f 8049396: [javadoc] add more class-use test cases Reviewed-by: jjg ! test/com/sun/javadoc/testUseOption/TestUseOption.java + test/com/sun/javadoc/testUseOption/pkg1/AnAbstract.java ! test/com/sun/javadoc/testUseOption/pkg1/C10.java ! test/com/sun/javadoc/testUseOption/pkg1/UsedInterface.java ! test/com/sun/javadoc/testUseOption/pkg1/UsedInterfaceA.java Changeset: 33bfb7b328f1 Author: darcy Date: 2014-07-11 13:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/33bfb7b328f1 8050086: jdk.Exported is missing @return Reviewed-by: jjg ! src/share/classes/jdk/Exported.java Changeset: e1689786eba3 Author: jjg Date: 2014-07-11 18:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/e1689786eba3 8048806: Javadoc errors out on some valid HTML tags Reviewed-by: bpatel ! src/share/classes/com/sun/tools/doclint/HtmlTag.java ! test/tools/doclint/ValidTest.java Changeset: 396ae17eb5a2 Author: jjg Date: 2014-07-12 07:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/396ae17eb5a2 8050106: JavaCompiler relies on inappropriate result from comparison Reviewed-by: darcy ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java + test/tools/javac/versions/SourceTargetTest.java Changeset: 0402a91cd14b Author: ksrini Date: 2014-06-15 08:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/0402a91cd14b 8039028: [javadoc] refactor the usage of Util.java Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractIndexWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractTreeWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/AllClassesFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ClassWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/LinkFactoryImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/LinkInfoImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageTreeWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageIndexFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfileWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/PropertyWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/SourceToHTMLConverter.java ! src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/TagletWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/TreeWriter.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/AbstractDoclet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/Configuration.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ClassBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MemberSummaryBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MethodBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ProfilePackageSummaryBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ProfileSummaryBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/SerializedFormBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/InheritDocTaglet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ParamTaglet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ReturnTaglet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/SeeTaglet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ThrowsTaglet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassDocCatalog.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassTree.java - src/share/classes/com/sun/tools/doclets/internal/toolkit/util/CommentedMethodFinder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/DeprecatedAPIListBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocFinder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/ImplementedMethods.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/IndexBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/MetaKeywords.java - src/share/classes/com/sun/tools/doclets/internal/toolkit/util/MethodFinder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/PackageListWriter.java - src/share/classes/com/sun/tools/doclets/internal/toolkit/util/TaggedMethodFinder.java - src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Util.java + src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Utils.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/VisibleMemberMap.java ! test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java Changeset: 01837f3ed565 Author: katleman Date: 2014-07-17 09:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/langtools/rev/01837f3ed565 Added tag jdk9-b23 for changeset 0402a91cd14b ! .hgtags From aph at redhat.com Mon Jul 21 11:12:43 2014 From: aph at redhat.com (aph at redhat.com) Date: Mon, 21 Jul 2014 11:12:43 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/nashorn: 141 new changesets Message-ID: <201407211112.s6LBCijQ003541@aojmv0008> Changeset: 63d07ab01ced Author: katleman Date: 2014-05-01 12:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/63d07ab01ced Added tag jdk9-b11 for changeset 4d60c3292e14 ! .hgtags Changeset: 94c86ea1f2c9 Author: attila Date: 2014-04-25 14:20 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/94c86ea1f2c9 8034967: Reduce access to Nashorn internals Reviewed-by: ahgross, jlaskey, sundar ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterBytecodeGenerator.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterFactory.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterServices.java Changeset: e88f1df9b412 Author: hannesw Date: 2014-04-25 16:34 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/e88f1df9b412 8040078: Avoid repeated reading of source for cached loads Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/internal/ir/debug/JSONWriter.java ! src/jdk/nashorn/internal/objects/NativeFunction.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/JSONFunctions.java ! src/jdk/nashorn/internal/runtime/Source.java ! src/jdk/nashorn/tools/Shell.java ! test/script/trusted/JDK-8006529.js ! test/src/jdk/nashorn/internal/codegen/CompilerTest.java ! test/src/jdk/nashorn/internal/parser/ParserTest.java ! test/src/jdk/nashorn/internal/runtime/ContextTest.java + test/src/jdk/nashorn/internal/runtime/SourceTest.java ! test/src/jdk/nashorn/internal/test/framework/SharedContextEvaluator.java ! test/src/jdk/nashorn/test/models/SourceHelper.java Changeset: 282e9a675e07 Author: lana Date: 2014-05-01 14:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/282e9a675e07 Merge Changeset: ea95bb0346ac Author: katleman Date: 2014-05-08 01:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/ea95bb0346ac Added tag jdk9-b12 for changeset 282e9a675e07 ! .hgtags Changeset: f7f2e9d2912b Author: sundar Date: 2014-05-02 19:15 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/f7f2e9d2912b 8027933: Add --const-as-var option Reviewed-by: jlaskey, hannesw ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/parser/TokenType.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java ! src/jdk/nashorn/internal/runtime/resources/Options.properties ! test/script/basic/JDK-8008448.js + test/script/basic/JDK-8027933.js + test/script/basic/JDK-8027933.js.EXPECTED + test/script/error/JDK-8027933.js + test/script/error/JDK-8027933.js.EXPECTED ! test/src/jdk/nashorn/internal/codegen/CompilerTest.java ! test/src/jdk/nashorn/internal/parser/ParserTest.java ! test/src/jdk/nashorn/internal/runtime/TrustedScriptEngineTest.java Changeset: 6321f565a7b1 Author: hannesw Date: 2014-05-06 12:38 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/6321f565a7b1 8041998: RegExp implementation is not thread-safe Reviewed-by: lagergren, sundar, attila ! src/jdk/nashorn/internal/runtime/regexp/JdkRegExp.java ! src/jdk/nashorn/internal/runtime/regexp/JoniRegExp.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Regex.java + test/script/basic/JDK-8041998.js + test/script/basic/JDK-8041998.js.EXPECTED Changeset: d16c80270f7d Author: sundar Date: 2014-05-06 17:54 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/d16c80270f7d 8042364: Make __proto__ ES6 draft compliant Reviewed-by: jlaskey, lagergren, attila ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! test/script/basic/JDK-8024120.js ! test/script/basic/JDK-8024174.js + test/script/basic/JDK-8042364.js + test/script/basic/JDK-8042364.js.EXPECTED Changeset: 7217348b5f95 Author: sundar Date: 2014-05-07 14:07 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/7217348b5f95 8041697: CompiledScript slower when eval with binding Reviewed-by: lagergren, attila, hannesw ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/tools/Shell.java Changeset: 235d22ccfd24 Author: sundar Date: 2014-05-07 20:20 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/235d22ccfd24 8042600: Add more samples in nashorn/samples directory Reviewed-by: jlaskey, hannesw + samples/BufferArray.java + samples/CastExample.java + samples/README + samples/array_mapreduce.js + samples/astviewer.js + samples/barchart_weather.js + samples/call_lambda.js ! samples/counters.js + samples/dirname.js + samples/disassemble.js + samples/engine/README + samples/engine/accessvar.js + samples/engine/callfunc.js + samples/engine/callmethod.js + samples/engine/exposevar.js + samples/engine/foreignobject.js + samples/engine/hello.js + samples/engine/interface.js + samples/engine/interface2.js + samples/engine/lambda_as_func.js + samples/env.js + samples/expression_closure.js + samples/fileline.js + samples/fizzbuzz.js + samples/for_each.js + samples/gaussian_random.js + samples/gaussian_random_bind.js + samples/gutenberg.js + samples/heredoc.js + samples/interface_impl.js + samples/javaastviewer.js + samples/javacastcounter.js + samples/javaimporter.js + samples/javalist.js + samples/javamap.js + samples/javashell.js + samples/jsadapter_dom.js + samples/jsobject.js + samples/jsobject_mapreduce.js + samples/jsonviewer.js ! samples/letter.js + samples/list_mapreduce.js + samples/locales.js + samples/logisticmap.js + samples/options.js + samples/readLine.js + samples/sam_function.js ! samples/shell.js + samples/stack.js ! samples/test.js + samples/uniform_random.js ! samples/uniq.js + samples/uniqs.js + samples/weather.js Changeset: be4580ae56e2 Author: lana Date: 2014-05-08 15:28 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/be4580ae56e2 Merge Changeset: 4ba78adea63f Author: katleman Date: 2014-05-15 10:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/4ba78adea63f Added tag jdk9-b13 for changeset be4580ae56e2 ! .hgtags Changeset: 093df4def9a7 Author: sundar Date: 2014-05-14 19:01 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/093df4def9a7 8043132: Nashorn : all tests failed with java.security.AccessControlException Reviewed-by: jlaskey, attila ! make/build.xml Changeset: 806df06b6ac5 Author: lana Date: 2014-05-15 10:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/806df06b6ac5 Merge Changeset: edc146bdfd8d Author: katleman Date: 2014-05-22 12:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/edc146bdfd8d Added tag jdk9-b14 for changeset 806df06b6ac5 ! .hgtags Changeset: 185501198f64 Author: sundar Date: 2014-05-20 08:32 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/185501198f64 8043443: Test framework changes to run script tests without security manager Reviewed-by: attila ! make/build.xml ! make/project.properties + test/script/nosecurity/nosecurity.js Changeset: 5c906c370739 Author: mnunez Date: 2014-05-22 11:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/5c906c370739 8028615: jdk.nashorn.x3::some.serious.failure needs more memory to run Reviewed-by: attila, sundar Contributed-by: sergey.lugovoy at oracle.com ! make/project.properties Changeset: 23a42e0d8a5a Author: hannesw Date: 2014-05-22 17:51 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/23a42e0d8a5a 8030202: Nashorn: Multiple RegExp#ignoreCase issues Reviewed-by: sundar, jlaskey ! src/jdk/nashorn/internal/runtime/regexp/joni/Analyser.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ApplyCaseFold.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ByteCodeMachine.java ! src/jdk/nashorn/internal/runtime/regexp/joni/EncodingHelper.java ! src/jdk/nashorn/internal/runtime/regexp/joni/SearchAlgorithm.java + test/script/basic/JDK-8030202.js + test/script/basic/JDK-8030202.js.EXPECTED Changeset: d60ebb2d32a6 Author: lana Date: 2014-05-22 14:40 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/d60ebb2d32a6 Merge Changeset: 068b13565a57 Author: sundar Date: 2014-05-26 15:48 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/068b13565a57 8043930: TypeError when attemping to create an instance of non-public class could be better Reviewed-by: attila, lagergren ! src/jdk/nashorn/internal/runtime/linker/NashornStaticClassLinker.java ! src/jdk/nashorn/internal/runtime/resources/Messages.properties + test/script/basic/JDK-8043930.js + test/script/basic/JDK-8043930.js.EXPECTED Changeset: 32b66f4661ea Author: sundar Date: 2014-05-27 17:40 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/32b66f4661ea 8044000: Access to undefined property yields "null" instead of "undefined" Reviewed-by: lagergren, jlaskey ! src/jdk/nashorn/internal/runtime/linker/Bootstrap.java ! src/jdk/nashorn/internal/runtime/linker/JSObjectLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornGuards.java ! test/src/jdk/nashorn/api/scripting/ScriptObjectMirrorTest.java Changeset: 1d98e2a439dc Author: katleman Date: 2014-05-29 22:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/1d98e2a439dc Added tag jdk9-b15 for changeset 32b66f4661ea ! .hgtags Changeset: 8c53a58a5b72 Author: sundar Date: 2014-05-30 17:22 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/8c53a58a5b72 8044415: ant makefile should have a target to generate javadoc only for jdk.nashorn.api and sub-packages Reviewed-by: jlaskey ! make/build.xml + samples/filebrowser.js + samples/word_histogram.js ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/api/scripting/package-info.java ! src/jdk/nashorn/internal/ir/annotations/Reference.java Changeset: fed8c83dfba4 Author: lana Date: 2014-05-30 09:24 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/fed8c83dfba4 Merge Changeset: b9f9529ba775 Author: katleman Date: 2014-06-04 20:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/b9f9529ba775 Added tag jdk9-b16 for changeset fed8c83dfba4 ! .hgtags Changeset: 26a5fdb90de2 Author: attila Date: 2014-02-26 13:17 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/26a5fdb90de2 8035820: Optimistic recompilation Reviewed-by: hannesw, jlaskey, sundar Contributed-by: attila.szegedi at oracle.com, marcus.lagergren at oracle.com ! .hgignore + bin/rundiff.sh + bin/runnormal.sh + bin/runnormaldual.sh + bin/runopt.sh + bin/runoptdual.sh + bin/runoptdualcatch.sh ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/MethodGenerator.java ! make/build.xml ! make/nbproject/ide-targets.xml ! make/project.properties ! src/jdk/internal/dynalink/DynamicLinker.java ! src/jdk/internal/dynalink/DynamicLinkerFactory.java + src/jdk/internal/dynalink/GuardedInvocationFilter.java ! src/jdk/internal/dynalink/beans/AbstractJavaLinker.java ! src/jdk/internal/dynalink/beans/BeanLinker.java ! src/jdk/internal/dynalink/beans/OverloadedDynamicMethod.java ! src/jdk/internal/dynalink/beans/OverloadedMethod.java ! src/jdk/internal/dynalink/beans/SingleDynamicMethod.java ! src/jdk/internal/dynalink/linker/GuardedInvocation.java ! src/jdk/internal/dynalink/linker/GuardingDynamicLinker.java ! src/jdk/internal/dynalink/linker/LinkRequest.java ! src/jdk/internal/dynalink/linker/LinkerServices.java + src/jdk/internal/dynalink/support/CatchExceptionCombinator.java + src/jdk/internal/dynalink/support/DefaultPrelinkFilter.java ! src/jdk/internal/dynalink/support/LinkRequestImpl.java ! src/jdk/internal/dynalink/support/LinkerServicesImpl.java ! src/jdk/internal/dynalink/support/RuntimeContextLinkRequestImpl.java ! src/jdk/internal/dynalink/support/TypeUtilities.java ! src/jdk/nashorn/api/scripting/JSObject.java ! src/jdk/nashorn/api/scripting/NashornException.java ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java + src/jdk/nashorn/internal/IntDeque.java ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/BranchOptimizer.java ! src/jdk/nashorn/internal/codegen/ClassEmitter.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CodeGeneratorLexicalContext.java + src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/CompileUnit.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/CompilerConstants.java ! src/jdk/nashorn/internal/codegen/Condition.java ! src/jdk/nashorn/internal/codegen/ConstantData.java + src/jdk/nashorn/internal/codegen/DumpBytecode.java ! src/jdk/nashorn/internal/codegen/FieldObjectCreator.java ! src/jdk/nashorn/internal/codegen/FinalizeTypes.java ! src/jdk/nashorn/internal/codegen/FoldConstants.java ! src/jdk/nashorn/internal/codegen/FunctionSignature.java ! src/jdk/nashorn/internal/codegen/Label.java + src/jdk/nashorn/internal/codegen/LocalStateRestorationInfo.java ! src/jdk/nashorn/internal/codegen/Lower.java ! src/jdk/nashorn/internal/codegen/MapCreator.java + src/jdk/nashorn/internal/codegen/MapTuple.java ! src/jdk/nashorn/internal/codegen/MethodEmitter.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/codegen/ObjectCreator.java + src/jdk/nashorn/internal/codegen/ParamTypeMap.java + src/jdk/nashorn/internal/codegen/ProgramPoints.java ! src/jdk/nashorn/internal/codegen/RangeAnalyzer.java ! src/jdk/nashorn/internal/codegen/RuntimeCallSite.java ! src/jdk/nashorn/internal/codegen/SharedScopeCall.java ! src/jdk/nashorn/internal/codegen/SpillObjectCreator.java ! src/jdk/nashorn/internal/codegen/Splitter.java ! src/jdk/nashorn/internal/codegen/WeighNodes.java ! src/jdk/nashorn/internal/codegen/types/BooleanType.java ! src/jdk/nashorn/internal/codegen/types/BytecodeNumericOps.java ! src/jdk/nashorn/internal/codegen/types/BytecodeOps.java ! src/jdk/nashorn/internal/codegen/types/IntType.java ! src/jdk/nashorn/internal/codegen/types/LongType.java ! src/jdk/nashorn/internal/codegen/types/NumberType.java ! src/jdk/nashorn/internal/codegen/types/ObjectType.java ! src/jdk/nashorn/internal/codegen/types/Type.java ! src/jdk/nashorn/internal/ir/AccessNode.java ! src/jdk/nashorn/internal/ir/BaseNode.java ! src/jdk/nashorn/internal/ir/BinaryNode.java ! src/jdk/nashorn/internal/ir/Block.java ! src/jdk/nashorn/internal/ir/BlockStatement.java ! src/jdk/nashorn/internal/ir/CallNode.java ! src/jdk/nashorn/internal/ir/CatchNode.java ! src/jdk/nashorn/internal/ir/Expression.java ! src/jdk/nashorn/internal/ir/FunctionCall.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/ir/IndexNode.java ! src/jdk/nashorn/internal/ir/LexicalContext.java ! src/jdk/nashorn/internal/ir/LiteralNode.java ! src/jdk/nashorn/internal/ir/Node.java + src/jdk/nashorn/internal/ir/Optimistic.java + src/jdk/nashorn/internal/ir/OptimisticLexicalContext.java ! src/jdk/nashorn/internal/ir/RuntimeNode.java ! src/jdk/nashorn/internal/ir/Symbol.java ! src/jdk/nashorn/internal/ir/UnaryNode.java ! src/jdk/nashorn/internal/ir/VarNode.java ! src/jdk/nashorn/internal/ir/debug/ASTWriter.java ! src/jdk/nashorn/internal/ir/debug/JSONWriter.java + src/jdk/nashorn/internal/ir/debug/NashornClassReader.java + src/jdk/nashorn/internal/ir/debug/NashornTextifier.java ! src/jdk/nashorn/internal/ir/debug/PrintVisitor.java ! src/jdk/nashorn/internal/lookup/Lookup.java ! src/jdk/nashorn/internal/lookup/MethodHandleFactory.java ! src/jdk/nashorn/internal/lookup/MethodHandleFunctionality.java ! src/jdk/nashorn/internal/objects/AccessorPropertyDescriptor.java ! src/jdk/nashorn/internal/objects/ArrayBufferView.java ! src/jdk/nashorn/internal/objects/DataPropertyDescriptor.java ! src/jdk/nashorn/internal/objects/GenericPropertyDescriptor.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeArray.java ! src/jdk/nashorn/internal/objects/NativeDebug.java ! src/jdk/nashorn/internal/objects/NativeFunction.java ! src/jdk/nashorn/internal/objects/NativeJSAdapter.java ! src/jdk/nashorn/internal/objects/NativeJavaImporter.java ! src/jdk/nashorn/internal/objects/NativeNumber.java ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/objects/NativeRegExp.java ! src/jdk/nashorn/internal/objects/NativeStrictArguments.java ! src/jdk/nashorn/internal/objects/NativeString.java ! src/jdk/nashorn/internal/objects/ScriptFunctionImpl.java + src/jdk/nashorn/internal/objects/annotations/Optimistic.java ! src/jdk/nashorn/internal/objects/annotations/Property.java ! src/jdk/nashorn/internal/parser/AbstractParser.java ! src/jdk/nashorn/internal/parser/JSONParser.java ! src/jdk/nashorn/internal/parser/Lexer.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/CompiledFunctions.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/Debug.java ! src/jdk/nashorn/internal/runtime/DebugLogger.java ! src/jdk/nashorn/internal/runtime/DebuggerSupport.java ! src/jdk/nashorn/internal/runtime/DefaultPropertyAccess.java ! src/jdk/nashorn/internal/runtime/ECMAErrors.java ! src/jdk/nashorn/internal/runtime/FinalScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/FindProperty.java ! src/jdk/nashorn/internal/runtime/FunctionScope.java ! src/jdk/nashorn/internal/runtime/JSONFunctions.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/NativeJavaPackage.java + src/jdk/nashorn/internal/runtime/OptimisticReturnFilters.java ! src/jdk/nashorn/internal/runtime/Property.java ! src/jdk/nashorn/internal/runtime/PropertyAccess.java ! src/jdk/nashorn/internal/runtime/PropertyHashMap.java ! src/jdk/nashorn/internal/runtime/PropertyMap.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java + src/jdk/nashorn/internal/runtime/RewriteException.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java ! src/jdk/nashorn/internal/runtime/SetMethodCreator.java + src/jdk/nashorn/internal/runtime/SpillProperty.java ! src/jdk/nashorn/internal/runtime/Undefined.java + src/jdk/nashorn/internal/runtime/UnwarrantedOptimismException.java ! src/jdk/nashorn/internal/runtime/UserAccessorProperty.java ! src/jdk/nashorn/internal/runtime/WithObject.java ! src/jdk/nashorn/internal/runtime/arrays/ArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/ArrayFilter.java + src/jdk/nashorn/internal/runtime/arrays/ContinuousArray.java ! src/jdk/nashorn/internal/runtime/arrays/IntArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/LongArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/NoTypeArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/NumberArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/SparseArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/UndefinedArrayFilter.java ! src/jdk/nashorn/internal/runtime/linker/Bootstrap.java ! src/jdk/nashorn/internal/runtime/linker/JSObjectLinker.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterFactory.java ! src/jdk/nashorn/internal/runtime/linker/JavaSuperAdapter.java ! src/jdk/nashorn/internal/runtime/linker/JavaSuperAdapterLinker.java ! src/jdk/nashorn/internal/runtime/linker/LinkerCallSite.java ! src/jdk/nashorn/internal/runtime/linker/NashornBeansLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornBottomLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornCallSiteDescriptor.java ! src/jdk/nashorn/internal/runtime/linker/NashornGuards.java ! src/jdk/nashorn/internal/runtime/linker/NashornLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornPrimitiveLinker.java ! src/jdk/nashorn/internal/runtime/resources/Messages.properties ! src/jdk/nashorn/internal/runtime/resources/Options.properties ! src/jdk/nashorn/internal/scripts/JO.java ! src/jdk/nashorn/tools/Shell.java ! test/script/assert.js ! test/script/basic/JDK-8025515.js + test/script/basic/JDK-8029384.js + test/script/basic/JDK-8029384.js.EXPECTED ! test/script/basic/JDK-8029467.js ! test/script/basic/JDK-8029667.js ! test/script/basic/exprclosure.js.EXPECTED + test/script/basic/hideLocationProperties.js + test/script/basic/hideLocationProperties.js.EXPECTED + test/script/basic/relinkIndexGetter.js + test/script/basic/relinkIndexGetter.js.EXPECTED ! test/script/basic/run-octane.js - test/script/basic/runsunspider-lazy.js ! test/script/basic/runsunspider.js + test/script/basic/typedarrays2.js + test/script/basic/typedarrays2.js.EXPECTED + test/script/currently-failing/property_delete.js ! test/script/maptests/constructor.js ! test/script/maptests/maputil.js ! test/script/maptests/object_literals.js ! test/script/maptests/point.js ! test/script/maptests/property_add.js - test/script/maptests/property_delete.js ! test/script/trusted/JDK-8006529.js ! test/src/jdk/nashorn/api/javaaccess/NumberAccessTest.java ! test/src/jdk/nashorn/api/javaaccess/NumberBoxingTest.java ! test/src/jdk/nashorn/api/javaaccess/SharedObject.java ! test/src/jdk/nashorn/internal/codegen/CompilerTest.java ! test/src/jdk/nashorn/internal/parser/ParserTest.java ! test/src/jdk/nashorn/internal/test/framework/ScriptRunnable.java Changeset: e008b751c93f Author: lagergren Date: 2014-03-03 11:24 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/e008b751c93f 8035836: Array performance improvements Summary: Implement typed arrays with native byte buffers and do fast linking for all continuous arrays Reviewed-by: attila, jlaskey, sundar, hannesw - bin/runnormal.sh - bin/runnormaldual.sh - bin/runopt.sh - bin/runoptdual.sh ! bin/runoptdualcatch.sh - bin/verbose_octane.bat - bin/verbose_octane.sh ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/MemberInfo.java ! make/build-benchmark.xml ! src/jdk/internal/dynalink/ChainedCallSite.java ! src/jdk/internal/dynalink/DynamicLinker.java ! src/jdk/internal/dynalink/linker/GuardedInvocation.java ! src/jdk/internal/dynalink/linker/GuardedTypeConversion.java ! src/jdk/internal/dynalink/linker/LinkRequest.java ! src/jdk/internal/dynalink/support/LinkRequestImpl.java ! src/jdk/internal/dynalink/support/RuntimeContextLinkRequestImpl.java ! src/jdk/internal/dynalink/support/TypeConverterFactory.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/CompilerConstants.java ! src/jdk/nashorn/internal/codegen/Label.java ! src/jdk/nashorn/internal/codegen/MapCreator.java ! src/jdk/nashorn/internal/codegen/Namespace.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/ir/AccessNode.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/ir/IndexNode.java ! src/jdk/nashorn/internal/lookup/Lookup.java ! src/jdk/nashorn/internal/lookup/MethodHandleFactory.java ! src/jdk/nashorn/internal/lookup/MethodHandleFunctionality.java ! src/jdk/nashorn/internal/objects/ArrayBufferView.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeArray.java ! src/jdk/nashorn/internal/objects/NativeArrayBuffer.java ! src/jdk/nashorn/internal/objects/NativeDebug.java ! src/jdk/nashorn/internal/objects/NativeError.java ! src/jdk/nashorn/internal/objects/NativeFloat32Array.java ! src/jdk/nashorn/internal/objects/NativeFloat64Array.java ! src/jdk/nashorn/internal/objects/NativeInt16Array.java ! src/jdk/nashorn/internal/objects/NativeInt32Array.java ! src/jdk/nashorn/internal/objects/NativeInt8Array.java ! src/jdk/nashorn/internal/objects/NativeMath.java ! src/jdk/nashorn/internal/objects/NativeNumber.java ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/objects/NativeRegExp.java ! src/jdk/nashorn/internal/objects/NativeString.java ! src/jdk/nashorn/internal/objects/NativeUint16Array.java ! src/jdk/nashorn/internal/objects/NativeUint32Array.java ! src/jdk/nashorn/internal/objects/NativeUint8Array.java ! src/jdk/nashorn/internal/objects/NativeUint8ClampedArray.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/GlobalFunctions.java ! src/jdk/nashorn/internal/runtime/NativeJavaPackage.java ! src/jdk/nashorn/internal/runtime/Property.java ! src/jdk/nashorn/internal/runtime/PropertyHashMap.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptLoader.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/SetMethodCreator.java ! src/jdk/nashorn/internal/runtime/SpillProperty.java ! src/jdk/nashorn/internal/runtime/WithObject.java ! src/jdk/nashorn/internal/runtime/arrays/ArrayData.java - src/jdk/nashorn/internal/runtime/arrays/ContinuousArray.java + src/jdk/nashorn/internal/runtime/arrays/ContinuousArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/IntArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/LongArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/NumberArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java + src/jdk/nashorn/internal/runtime/arrays/TypedArrayData.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterFactory.java ! src/jdk/nashorn/internal/runtime/linker/LinkerCallSite.java ! src/jdk/nashorn/internal/runtime/linker/NashornGuards.java ! src/jdk/nashorn/internal/runtime/linker/NashornLinker.java ! src/jdk/nashorn/internal/runtime/resources/Messages.properties ! test/examples/string-micro.js ! test/script/basic/JDK-8020357.js ! test/script/basic/NASHORN-377.js ! test/script/basic/typedarrays.js Changeset: c4c229109575 Author: lagergren Date: 2014-03-05 09:51 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/c4c229109575 8036127: Prototype filter needs to be applied to getter guard as well, not just getter Summary: This manifests itself as a bug in optimistic types, as inner functions may access properties of the wrong type, but it is also a bug in tip. Without optimistic types, we have been unable to find a reproducer due to more similar PropertyMaps Reviewed-by: attila, jlaskey, sundar + bin/fastCatchCombinator.jar ! bin/runoptdualcatch.sh ! src/jdk/nashorn/internal/codegen/ClassEmitter.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/FieldObjectCreator.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/PropertyListenerManager.java ! src/jdk/nashorn/internal/runtime/PropertyMap.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java Changeset: 3c1163f9c095 Author: lagergren Date: 2014-03-12 10:31 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/3c1163f9c095 8037177: -Dnashorn.optimistic should be enabled by default, meaning that it has to be explicitly set to false to run with the jdk 8 style conservative types Summary: This will be the new default setting, so the explicit flag should be removed, and instead reverse checked for explicitly DISABLED optimistic types. In the future, we might remove the flag altogether. Reviewed-by: attila, hannesw ! bin/runoptdualcatch.sh ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java ! src/jdk/nashorn/internal/runtime/options/Options.java Changeset: 005ac813256a Author: lagergren Date: 2014-03-14 14:27 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/005ac813256a 8036986: Test should check that correctly type is returned running with optimistic. If optimistic assumption was wrong we should get the right one. Summary: This uses the inspection framework for generated code to ensure optimisim. Reviewed-by: attila, lagergren Contributed-by: matherey.nunez at oracle.com + test/script/basic/optimistic_check_type.js + test/script/basic/optimistic_check_type.js.EXPECTED + test/src/jdk/nashorn/test/tools/StaticTypeInspector.java Changeset: 949577ac683d Author: mnunez Date: 2014-03-17 15:05 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/949577ac683d 8037086: Check that deoptimizing recompilations are correct Reviewed-by: attila, lagergren + test/src/jdk/nashorn/internal/runtime/OptimisticRecompilationTest.java Changeset: ba08b3188eb2 Author: lagergren Date: 2014-03-20 16:16 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/ba08b3188eb2 8033334: Make sure that scope depth information is maintained in the RecompilableScriptFunctionDatas, to avoid unnecessary slow proto linkage when doing on demand compilation Summary: Compute RecompiledScriptFunctionDatas eagerly, annotate them with scope depth information and use them in recompilations. Reviewed-by: attila, hannesw, jlaskey ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/ClassEmitter.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/CompilerConstants.java + src/jdk/nashorn/internal/codegen/FindScopeDepths.java ! src/jdk/nashorn/internal/codegen/MethodEmitter.java ! src/jdk/nashorn/internal/codegen/SharedScopeCall.java ! src/jdk/nashorn/internal/codegen/types/Type.java ! src/jdk/nashorn/internal/ir/Block.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/ir/LexicalContext.java ! src/jdk/nashorn/internal/ir/Symbol.java ! src/jdk/nashorn/internal/ir/debug/NashornTextifier.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/Debug.java ! src/jdk/nashorn/internal/runtime/Property.java ! src/jdk/nashorn/internal/runtime/PropertyDescriptor.java ! src/jdk/nashorn/internal/runtime/PropertyMap.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java ! src/jdk/nashorn/internal/runtime/arrays/ByteBufferArrayData.java ! src/jdk/nashorn/internal/runtime/linker/NashornCallSiteDescriptor.java Changeset: d7807721d24a Author: lagergren Date: 2014-03-20 16:26 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/d7807721d24a 8037967: Broke the build, by commiting without saving the last review comment Reviewed-by: jlaskey, hannesw ! src/jdk/nashorn/internal/runtime/PropertyMap.java Changeset: 21fe19543736 Author: attila Date: 2014-03-21 17:52 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/21fe19543736 Merge ! make/build.xml ! make/project.properties ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/ConstantData.java ! src/jdk/nashorn/internal/codegen/FindScopeDepths.java ! src/jdk/nashorn/internal/codegen/SharedScopeCall.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/objects/AccessorPropertyDescriptor.java ! src/jdk/nashorn/internal/objects/ArrayBufferView.java ! src/jdk/nashorn/internal/objects/DataPropertyDescriptor.java ! src/jdk/nashorn/internal/objects/GenericPropertyDescriptor.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeArray.java ! src/jdk/nashorn/internal/objects/NativeArrayBuffer.java + src/jdk/nashorn/internal/objects/NativeDataView.java ! src/jdk/nashorn/internal/objects/NativeDebug.java ! src/jdk/nashorn/internal/objects/NativeError.java ! src/jdk/nashorn/internal/objects/NativeJSAdapter.java ! src/jdk/nashorn/internal/objects/NativeJavaImporter.java ! src/jdk/nashorn/internal/objects/NativeNumber.java ! src/jdk/nashorn/internal/objects/NativeRegExp.java ! src/jdk/nashorn/internal/objects/NativeStrictArguments.java ! src/jdk/nashorn/internal/objects/NativeString.java ! src/jdk/nashorn/internal/objects/ScriptFunctionImpl.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/DebuggerSupport.java ! src/jdk/nashorn/internal/runtime/ECMAErrors.java ! src/jdk/nashorn/internal/runtime/FinalScriptFunctionData.java - src/jdk/nashorn/internal/runtime/GlobalObject.java ! src/jdk/nashorn/internal/runtime/JSONFunctions.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/NativeJavaPackage.java ! src/jdk/nashorn/internal/runtime/Property.java - src/jdk/nashorn/internal/runtime/PropertyListener.java - src/jdk/nashorn/internal/runtime/PropertyListenerManager.java ! src/jdk/nashorn/internal/runtime/PropertyMap.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java ! src/jdk/nashorn/internal/runtime/SetMethodCreator.java ! src/jdk/nashorn/internal/runtime/UserAccessorProperty.java ! src/jdk/nashorn/internal/runtime/WithObject.java ! src/jdk/nashorn/internal/runtime/arrays/ArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/ByteBufferArrayData.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterFactory.java ! src/jdk/nashorn/internal/runtime/linker/NashornGuards.java ! src/jdk/nashorn/internal/runtime/linker/NashornPrimitiveLinker.java ! src/jdk/nashorn/internal/runtime/resources/Messages.properties ! src/jdk/nashorn/internal/scripts/JO.java ! src/jdk/nashorn/tools/Shell.java + test/script/basic/dataview_new.js + test/script/currently-failing/OptimisticRecompilationTest.java ! test/src/jdk/nashorn/internal/codegen/CompilerTest.java - test/src/jdk/nashorn/internal/runtime/OptimisticRecompilationTest.java Changeset: a6b199203eb8 Author: attila Date: 2014-03-24 18:40 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/a6b199203eb8 8038223: Symbol trace debug output takes time Reviewed-by: hannesw, lagergren ! src/jdk/nashorn/internal/ir/Symbol.java Changeset: 051ac0fec966 Author: attila Date: 2014-03-24 18:41 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/051ac0fec966 8037534: Use scope types to determine optimistic types Reviewed-by: hannesw, lagergren ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/ClassEmitter.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/ConstantData.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/RewriteException.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! test/script/currently-failing/OptimisticRecompilationTest.java Changeset: 95fed751dc0e Author: attila Date: 2014-03-26 15:00 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/95fed751dc0e 8038396: fix for the compiler expression evaluator to be more inquisitive about types Reviewed-by: hannesw, lagergren ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java Changeset: 03b2757e2eba Author: lagergren Date: 2014-03-27 11:45 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/03b2757e2eba 8038406: Testability: as a first step of moving loggers away from the process global space, the Debug object now supports logging POJOs from log entries as an event queue, which can be introspected from test scripts. This is way better than screen scraping brittle and subject-to-change log output. Reviewed-by: attila, hannesw, sundar ! bin/runoptdualcatch.sh ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/StringConstants.java ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/api/scripting/NashornScriptEngineFactory.java ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/DumpBytecode.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/codegen/Splitter.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeArrayBuffer.java ! src/jdk/nashorn/internal/objects/NativeDebug.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/DebugLogger.java ! src/jdk/nashorn/internal/runtime/JSONFunctions.java ! src/jdk/nashorn/internal/runtime/ListAdapter.java ! src/jdk/nashorn/internal/runtime/Logging.java ! src/jdk/nashorn/internal/runtime/PropertyListeners.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/RewriteException.java + src/jdk/nashorn/internal/runtime/RuntimeEvent.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/linker/NashornCallSiteDescriptor.java ! src/jdk/nashorn/internal/runtime/linker/NashornGuards.java ! src/jdk/nashorn/internal/runtime/linker/NashornPrimitiveLinker.java ! src/jdk/nashorn/internal/runtime/linker/PrimitiveLookup.java ! src/jdk/nashorn/tools/Shell.java ! test/script/trusted/JDK-8006529.js + test/script/trusted/event_queue.js + test/script/trusted/event_queue.js.EXPECTED ! test/src/jdk/nashorn/internal/runtime/NoPersistenceCachingTest.java Changeset: fa068c865e46 Author: attila Date: 2014-03-27 14:09 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/fa068c865e46 8038416: Access to undefined scoped variables deoptimized too much Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java Changeset: 7bb20a02bad0 Author: lagergren Date: 2014-03-31 14:13 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/7bb20a02bad0 8027043: Turn global accesses into MethodHandle.constant, with one chance of reassignment, e.g. x = value occuring once in the global scope is ok, twice is not. Reviewed-by: attila, sundar, jlaskey + bin/runoptdualcatch9.sh ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/codegen/SpillObjectCreator.java ! src/jdk/nashorn/internal/lookup/MethodHandleFactory.java ! src/jdk/nashorn/internal/objects/ArrayBufferView.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeArray.java ! src/jdk/nashorn/internal/objects/NativeDataView.java ! src/jdk/nashorn/internal/objects/NativeError.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/DebugLogger.java + src/jdk/nashorn/internal/runtime/GlobalConstants.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/RewriteException.java ! src/jdk/nashorn/internal/runtime/RuntimeEvent.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java ! src/jdk/nashorn/internal/runtime/SetMethodCreator.java ! src/jdk/nashorn/internal/runtime/WithObject.java ! src/jdk/nashorn/internal/runtime/linker/NashornGuards.java - test/script/basic/JDK-8010697.js - test/script/basic/JDK-8010697.js.EXPECTED ! test/script/basic/JDK-8022903.js ! test/script/basic/JDK-8022903.js.EXPECTED ! test/script/basic/JDK-8027042.js ! test/script/basic/JDK-8027042.js.EXPECTED + test/script/currently-failing/JDK-8010697.js + test/script/currently-failing/JDK-8010697.js.EXPECTED ! test/src/jdk/nashorn/api/scripting/ScopeTest.java Changeset: 899b6f171676 Author: lagergren Date: 2014-04-01 11:19 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/899b6f171676 8038799: Guard and unbox boxed primitives types on setting them in Properties to avoid megamorphisism Reviewed-by: attila, jlaskey ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/lookup/MethodHandleFactory.java ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/PropertyHashMap.java ! src/jdk/nashorn/internal/runtime/linker/LinkerCallSite.java - test/script/basic/runsunspider-lazy.js.EXPECTED Changeset: 1b9bd93570f8 Author: lagergren Date: 2014-04-01 16:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/1b9bd93570f8 8038945: Simplify strict undefined checks Reviewed-by: jlaskey, hannesw ! src/jdk/internal/dynalink/support/CallSiteDescriptorFactory.java ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/CompilerConstants.java ! src/jdk/nashorn/internal/codegen/FinalizeTypes.java ! src/jdk/nashorn/internal/codegen/FindScopeDepths.java ! src/jdk/nashorn/internal/ir/RuntimeNode.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java + test/script/basic/JDK-8038945.js + test/script/basic/JDK-8038945.js.EXPECTED Changeset: 2aaf89857444 Author: lagergren Date: 2014-04-02 10:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/2aaf89857444 8039044: Expand undefined intrinsics for all commutative combinators of scrict undefined checks Reviewed-by: jlaskey, hannesw ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/FinalizeTypes.java ! test/script/basic/JDK-8038945.js ! test/script/basic/JDK-8038945.js.EXPECTED Changeset: f47393d4559b Author: attila Date: 2014-04-11 16:40 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/f47393d4559b 8040024: BranchOptimizer produces bad code for NaN FP comparison Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/internal/codegen/BranchOptimizer.java + test/script/basic/JDK-8040024.js + test/script/basic/JDK-8040024.js.EXPECTED Changeset: ddda121eca56 Author: lagergren Date: 2014-04-11 16:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/ddda121eca56 8039746: Transform applies to calls wherever possible, for ScriptFunctions and JSObjects. Reviewed-by: hannesw, attila, sundar, jlaskey ! src/jdk/internal/dynalink/linker/GuardedInvocation.java + src/jdk/nashorn/internal/codegen/ApplySpecialization.java ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/CompilerConstants.java ! src/jdk/nashorn/internal/codegen/FieldObjectCreator.java ! src/jdk/nashorn/internal/codegen/MethodEmitter.java ! src/jdk/nashorn/internal/codegen/ObjectCreator.java ! src/jdk/nashorn/internal/codegen/SpillObjectCreator.java ! src/jdk/nashorn/internal/ir/Block.java ! src/jdk/nashorn/internal/ir/CallNode.java ! src/jdk/nashorn/internal/ir/Flags.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeFunction.java ! src/jdk/nashorn/internal/objects/NativeJSAdapter.java ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/objects/ScriptFunctionImpl.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/CompiledFunctions.java ! src/jdk/nashorn/internal/runtime/GlobalConstants.java ! src/jdk/nashorn/internal/runtime/NativeJavaPackage.java ! src/jdk/nashorn/internal/runtime/Property.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/SetMethodCreator.java ! src/jdk/nashorn/internal/runtime/SpillProperty.java ! src/jdk/nashorn/internal/runtime/arrays/ContinuousArrayData.java ! src/jdk/nashorn/internal/runtime/linker/Bootstrap.java ! src/jdk/nashorn/internal/runtime/linker/JSObjectLinker.java ! src/jdk/nashorn/internal/runtime/linker/LinkerCallSite.java ! src/jdk/nashorn/internal/runtime/linker/NashornCallSiteDescriptor.java ! src/jdk/nashorn/internal/runtime/linker/NashornLinker.java ! src/jdk/nashorn/internal/runtime/linker/PrimitiveLookup.java + test/examples/apply_to_call_benchmark.js ! test/script/basic/JDK-8016618.js ! test/script/basic/JDK-8016618.js.EXPECTED + test/script/basic/apply_to_call/apply_to_call1.js + test/script/basic/apply_to_call/apply_to_call1.js.EXPECTED + test/script/basic/apply_to_call/apply_to_call2.js + test/script/basic/apply_to_call/apply_to_call2.js.EXPECTED + test/script/basic/apply_to_call/apply_to_call3.js + test/script/basic/apply_to_call/apply_to_call3.js.EXPECTED + test/script/basic/apply_to_call/apply_to_call4.js + test/script/basic/apply_to_call/apply_to_call4.js.EXPECTED + test/script/basic/apply_to_call/apply_to_call_bench.js + test/script/basic/apply_to_call/apply_to_call_bench.js.EXPECTED ! test/src/jdk/nashorn/api/scripting/ScriptEngineSecurityTest.java ! test/src/jdk/nashorn/internal/runtime/TrustedScriptEngineTest.java Changeset: 636c6e455269 Author: lagergren Date: 2014-04-11 16:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/636c6e455269 Merge Changeset: 8423d57c70de Author: lagergren Date: 2014-04-17 20:01 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/8423d57c70de 8040089: Apply to call transform was incomplete. Now passes all tests and performance is back Reviewed-by: hannesw, attila, sundar, jlaskey ! bin/fixwhitespace.sh ! bin/runoptdualcatch.sh ! src/jdk/nashorn/internal/codegen/ApplySpecialization.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/ParamTypeMap.java ! src/jdk/nashorn/internal/codegen/ProgramPoints.java ! src/jdk/nashorn/internal/ir/CallNode.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/CompiledFunctions.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! test/script/basic/apply_to_call/apply_to_call1.js ! test/script/basic/apply_to_call/apply_to_call2.js ! test/script/basic/apply_to_call/apply_to_call3.js ! test/script/basic/apply_to_call/apply_to_call4.js ! test/script/basic/apply_to_call/apply_to_call_bench.js + test/script/basic/apply_to_call/apply_to_call_recompile.js + test/script/basic/apply_to_call/apply_to_call_recompile.js.EXPECTED + test/script/basic/apply_to_call/apply_to_call_varargs.js + test/script/basic/apply_to_call/apply_to_call_varargs.js.EXPECTED ! test/script/basic/run-octane.js Changeset: 82dc816bf225 Author: lagergren Date: 2014-04-18 20:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/82dc816bf225 8040102: Remove all references to Unsafe and definition of anonymous clases from the code Summary: As the catch combinator optimization is now part of java.lang.invoke we don't need to put our own in the boot class path in any configuration anymore. Furthermore, with the completion of the array performance subtask of optimistic typing, we can remove the experimental (commented out) Unsafe accessors in the ArrayData classes Reviewed-by: attila, jlaskey - bin/checkintest.sh - bin/fastCatchCombinator.jar ! bin/runopt.sh < bin/runoptdualcatch.sh + bin/runopt_noassert.sh + bin/runopt_nojfr.sh - bin/runoptdualcatch9.sh ! src/jdk/internal/dynalink/linker/GuardedInvocation.java - src/jdk/internal/dynalink/support/CatchExceptionCombinator.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/arrays/ArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/IntArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/LongArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/NumberArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java Changeset: e8c0262bafdd Author: lagergren Date: 2014-04-18 21:24 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/e8c0262bafdd 8040655: When processing a RewriteException debug object, the return value has already been reset to null. We need to catch this value before that. Reviewed-by: attila, lagergren Contributed-by: matherey.nunez at oracle.com ! src/jdk/nashorn/internal/objects/NativeArray.java ! src/jdk/nashorn/internal/objects/NativeDebug.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/DebugLogger.java ! src/jdk/nashorn/internal/runtime/Property.java ! src/jdk/nashorn/internal/runtime/RewriteException.java - src/jdk/nashorn/internal/runtime/RuntimeEvent.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java + src/jdk/nashorn/internal/runtime/events/RecompilationEvent.java + src/jdk/nashorn/internal/runtime/events/RuntimeEvent.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader.java - test/script/basic/arraysIntKey.js - test/script/basic/arraysIntKey.js.EXPECTED + test/script/basic/arrays_int_key.js + test/script/basic/arrays_int_key.js.EXPECTED - test/script/basic/relinkIndexGetter.js - test/script/basic/relinkIndexGetter.js.EXPECTED + test/script/basic/relink_index_getter.js + test/script/basic/relink_index_getter.js.EXPECTED ! test/script/trusted/event_queue.js ! test/script/trusted/event_queue.js.EXPECTED Changeset: 75e8d1a4ba23 Author: lagergren Date: 2014-04-22 14:09 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/75e8d1a4ba23 8033105: Make sure Nashorn test harness can run zlib benchmark Reviewed-by: attila, hannesw ! src/jdk/nashorn/internal/lookup/MethodHandleFactory.java ! src/jdk/nashorn/internal/runtime/ScriptingFunctions.java ! test/script/basic/compile-octane-splitter.js ! test/script/basic/compile-octane-splitter.js.EXPECTED ! test/script/basic/compile-octane.js ! test/script/basic/compile-octane.js.EXPECTED ! test/script/basic/run-octane.js - test/script/basic/runsunspider-eager.js ! test/script/basic/runsunspider.js + test/script/basic/runsunspider.js.EXPECTED Changeset: 222d989ca549 Author: lagergren Date: 2014-04-23 16:13 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/222d989ca549 8038426: Move all loggers from process wide scope into Global scope Reviewed-by: attila, hannesw ! src/jdk/nashorn/internal/codegen/ApplySpecialization.java ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/DumpBytecode.java ! src/jdk/nashorn/internal/codegen/FinalizeTypes.java ! src/jdk/nashorn/internal/codegen/FindScopeDepths.java ! src/jdk/nashorn/internal/codegen/FoldConstants.java ! src/jdk/nashorn/internal/codegen/Lower.java ! src/jdk/nashorn/internal/codegen/MethodEmitter.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/codegen/RangeAnalyzer.java ! src/jdk/nashorn/internal/codegen/Splitter.java ! src/jdk/nashorn/internal/codegen/types/Range.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/lookup/MethodHandleFactory.java ! src/jdk/nashorn/internal/lookup/MethodHandleFunctionality.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/Context.java - src/jdk/nashorn/internal/runtime/DebugLogger.java ! src/jdk/nashorn/internal/runtime/GlobalConstants.java - src/jdk/nashorn/internal/runtime/Logging.java ! src/jdk/nashorn/internal/runtime/PropertyHashMap.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/arrays/ContinuousArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/TypedArrayData.java ! src/jdk/nashorn/internal/runtime/events/RecompilationEvent.java + src/jdk/nashorn/internal/runtime/logging/DebugLogger.java + src/jdk/nashorn/internal/runtime/logging/Loggable.java + src/jdk/nashorn/internal/runtime/logging/Logger.java ! src/jdk/nashorn/internal/runtime/options/KeyValueOption.java + src/jdk/nashorn/internal/runtime/options/LoggingOption.java ! src/jdk/nashorn/internal/runtime/options/Options.java ! src/jdk/nashorn/tools/Shell.java ! test/src/jdk/nashorn/internal/parser/ParserTest.java ! test/src/jdk/nashorn/internal/test/framework/ParallelTestRunner.java Changeset: 0c4cda533038 Author: lagergren Date: 2014-04-23 17:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0c4cda533038 8041434: Add synchronization to the common global constants structure Reviewed-by: attila, hannesw ! bin/runopt.sh ! src/jdk/nashorn/internal/codegen/ApplySpecialization.java ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/ClassEmitter.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/FinalizeTypes.java ! src/jdk/nashorn/internal/codegen/FindScopeDepths.java ! src/jdk/nashorn/internal/codegen/FoldConstants.java ! src/jdk/nashorn/internal/codegen/Lower.java ! src/jdk/nashorn/internal/codegen/MethodEmitter.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/codegen/RangeAnalyzer.java ! src/jdk/nashorn/internal/ir/debug/JSONWriter.java ! src/jdk/nashorn/internal/lookup/MethodHandleFactory.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeFunction.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/GlobalConstants.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java ! src/jdk/nashorn/internal/runtime/arrays/ContinuousArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/TypedArrayData.java ! src/jdk/nashorn/internal/runtime/events/RecompilationEvent.java ! src/jdk/nashorn/internal/runtime/logging/DebugLogger.java ! src/jdk/nashorn/internal/runtime/logging/Loggable.java ! src/jdk/nashorn/tools/Shell.java ! test/src/jdk/nashorn/internal/parser/ParserTest.java Changeset: 77511a74bb48 Author: lagergren Date: 2014-04-25 14:26 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/77511a74bb48 8041905: Fix apply2call bug that prevented avatar.js unit tests from running correctly Reviewed-by: attila, hannesw ! src/jdk/nashorn/internal/codegen/ApplySpecialization.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java Changeset: 0b3e11df32be Author: lagergren Date: 2014-04-28 16:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0b3e11df32be 8041995: Problems when loading tree expressions with several optimistic program points when optimistically initializing ObjectNodes Reviewed-by: jlaskey, attila ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java + test/script/basic/JDK-8041995.js + test/script/basic/JDK-8041995.js.EXPECTED Changeset: d5c2bf69f341 Author: mnunez Date: 2014-04-29 16:00 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/d5c2bf69f341 8038398: OptimisticRecompilationTest fails on staging repo nashorn/jdk9/nashorn due to test framework Reviewed-by: attila, lagergren - test/script/currently-failing/OptimisticRecompilationTest.java + test/script/trusted/optimistic_recompilation.js + test/script/trusted/optimistic_recompilation.js.EXPECTED Changeset: e41798b06137 Author: lagergren Date: 2014-05-02 18:22 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/e41798b06137 8041625: AccessorProperty currentType must only by Object.class when non-primitive, and scoping followup problem for lazily generated with bodies Reviewed-by: jlaskey, attila ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CodeGeneratorLexicalContext.java ! src/jdk/nashorn/internal/codegen/FindScopeDepths.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! test/script/basic/run-octane.js Changeset: 07fdc97e6fc1 Author: mnunez Date: 2014-05-05 14:17 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/07fdc97e6fc1 8037572: Add more test cases to check static types Reviewed-by: attila, lagergren + test/script/basic/optimistic_arithmetic_check_type.js + test/script/basic/optimistic_arithmetic_check_type.js.EXPECTED + test/script/basic/optimistic_assignment_check_type.js + test/script/basic/optimistic_assignment_check_type.js.EXPECTED ! test/script/basic/optimistic_check_type.js ! test/script/basic/optimistic_check_type.js.EXPECTED + test/script/basic/optimistic_logical_check_type.js + test/script/basic/optimistic_logical_check_type.js.EXPECTED + test/script/currently-failing/optimistic_check_type_cases.js + test/script/currently-failing/optimistic_check_type_cases.js.EXPECTED Changeset: c61d579dd5a8 Author: attila Date: 2014-05-13 11:30 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/c61d579dd5a8 8042118: Separate types from symbols Reviewed-by: hannesw, lagergren ! src/jdk/internal/dynalink/support/TypeUtilities.java ! src/jdk/internal/dynalink/support/messages.properties ! src/jdk/nashorn/api/scripting/NashornScriptEngineFactory.java ! src/jdk/nashorn/internal/codegen/ApplySpecialization.java + src/jdk/nashorn/internal/codegen/AssignSymbols.java - src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/BranchOptimizer.java ! src/jdk/nashorn/internal/codegen/ClassEmitter.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CodeGeneratorLexicalContext.java ! src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/CompilerConstants.java - src/jdk/nashorn/internal/codegen/FinalizeTypes.java ! src/jdk/nashorn/internal/codegen/FindScopeDepths.java ! src/jdk/nashorn/internal/codegen/Label.java + src/jdk/nashorn/internal/codegen/LocalVariableTypesCalculator.java ! src/jdk/nashorn/internal/codegen/Lower.java ! src/jdk/nashorn/internal/codegen/MapCreator.java ! src/jdk/nashorn/internal/codegen/MapTuple.java ! src/jdk/nashorn/internal/codegen/MethodEmitter.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/codegen/ObjectCreator.java + src/jdk/nashorn/internal/codegen/OptimisticTypesCalculator.java ! src/jdk/nashorn/internal/codegen/ProgramPoints.java - src/jdk/nashorn/internal/codegen/RangeAnalyzer.java ! src/jdk/nashorn/internal/codegen/SpillObjectCreator.java ! src/jdk/nashorn/internal/codegen/SplitMethodEmitter.java ! src/jdk/nashorn/internal/codegen/WeighNodes.java ! src/jdk/nashorn/internal/codegen/types/BooleanType.java ! src/jdk/nashorn/internal/codegen/types/BytecodeNumericOps.java ! src/jdk/nashorn/internal/codegen/types/IntType.java ! src/jdk/nashorn/internal/codegen/types/LongType.java ! src/jdk/nashorn/internal/codegen/types/NumberType.java - src/jdk/nashorn/internal/codegen/types/Range.java ! src/jdk/nashorn/internal/codegen/types/Type.java ! src/jdk/nashorn/internal/ir/AccessNode.java ! src/jdk/nashorn/internal/ir/BaseNode.java ! src/jdk/nashorn/internal/ir/BinaryNode.java ! src/jdk/nashorn/internal/ir/Block.java ! src/jdk/nashorn/internal/ir/BreakNode.java ! src/jdk/nashorn/internal/ir/BreakableNode.java ! src/jdk/nashorn/internal/ir/BreakableStatement.java ! src/jdk/nashorn/internal/ir/CallNode.java ! src/jdk/nashorn/internal/ir/CaseNode.java ! src/jdk/nashorn/internal/ir/CatchNode.java ! src/jdk/nashorn/internal/ir/ContinueNode.java ! src/jdk/nashorn/internal/ir/Expression.java ! src/jdk/nashorn/internal/ir/ForNode.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/ir/IfNode.java ! src/jdk/nashorn/internal/ir/IndexNode.java + src/jdk/nashorn/internal/ir/JoinPredecessor.java + src/jdk/nashorn/internal/ir/JoinPredecessorExpression.java + src/jdk/nashorn/internal/ir/JumpStatement.java ! src/jdk/nashorn/internal/ir/LabelNode.java ! src/jdk/nashorn/internal/ir/LexicalContext.java ! src/jdk/nashorn/internal/ir/LexicalContextExpression.java ! src/jdk/nashorn/internal/ir/LiteralNode.java + src/jdk/nashorn/internal/ir/LocalVariableConversion.java ! src/jdk/nashorn/internal/ir/LoopNode.java ! src/jdk/nashorn/internal/ir/Node.java ! src/jdk/nashorn/internal/ir/ObjectNode.java ! src/jdk/nashorn/internal/ir/Optimistic.java ! src/jdk/nashorn/internal/ir/OptimisticLexicalContext.java ! src/jdk/nashorn/internal/ir/RuntimeNode.java ! src/jdk/nashorn/internal/ir/SplitNode.java ! src/jdk/nashorn/internal/ir/SwitchNode.java ! src/jdk/nashorn/internal/ir/Symbol.java - src/jdk/nashorn/internal/ir/TemporarySymbols.java ! src/jdk/nashorn/internal/ir/TernaryNode.java ! src/jdk/nashorn/internal/ir/ThrowNode.java ! src/jdk/nashorn/internal/ir/TryNode.java ! src/jdk/nashorn/internal/ir/UnaryNode.java ! src/jdk/nashorn/internal/ir/VarNode.java ! src/jdk/nashorn/internal/ir/WhileNode.java ! src/jdk/nashorn/internal/ir/debug/ASTWriter.java ! src/jdk/nashorn/internal/ir/debug/JSONWriter.java ! src/jdk/nashorn/internal/ir/debug/NashornTextifier.java ! src/jdk/nashorn/internal/ir/debug/PrintVisitor.java ! src/jdk/nashorn/internal/ir/visitor/NodeOperatorVisitor.java ! src/jdk/nashorn/internal/ir/visitor/NodeVisitor.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeString.java ! src/jdk/nashorn/internal/objects/ScriptFunctionImpl.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/parser/TokenType.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/OptimisticReturnFilters.java ! src/jdk/nashorn/internal/runtime/Property.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/RewriteException.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/UnwarrantedOptimismException.java ! src/jdk/nashorn/internal/runtime/linker/Bootstrap.java ! src/jdk/nashorn/internal/runtime/linker/JSObjectLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornPrimitiveLinker.java ! src/jdk/nashorn/internal/runtime/resources/Options.properties ! src/jdk/nashorn/tools/Shell.java ! test/script/basic/JDK-8012083.js ! test/script/basic/JDK-8026137.js ! test/script/basic/NASHORN-737.js.EXPECTED + test/script/basic/boolean_arithmetic.js + test/script/basic/boolean_arithmetic.js.EXPECTED ! test/script/basic/optimistic_check_type.js.EXPECTED ! test/script/basic/optimistic_logical_check_type.js.EXPECTED ! test/script/basic/parser/breakStat.js.EXPECTED ! test/script/basic/parser/continueStat.js.EXPECTED ! test/script/basic/parser/labelledStat.js.EXPECTED ! test/script/basic/parser/lhsExpr.js.EXPECTED ! test/script/basic/run-octane.js ! test/script/basic/runsunspider.js ! test/script/trusted/JDK-8006529.js ! test/src/jdk/nashorn/api/scripting/ScriptEngineTest.java Changeset: ca80b07bd06d Author: attila Date: 2014-05-13 14:54 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/ca80b07bd06d 8043002: Improve performance of Nashorn equality operators Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/runtime/DebuggerSupport.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java Changeset: fbca2b7761ae Author: attila Date: 2014-05-14 10:51 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/fbca2b7761ae 8043003: Use strongly referenced generic invokers Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java Changeset: fd32489a1cf1 Author: attila Date: 2014-05-14 15:55 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/fd32489a1cf1 8043004: Reduce variability at JavaAdapter call sites Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/CompilerConstants.java ! src/jdk/nashorn/internal/codegen/DumpBytecode.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterBytecodeGenerator.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterServices.java ! src/jdk/nashorn/internal/runtime/linker/JavaArgumentConverters.java ! src/jdk/nashorn/internal/runtime/linker/NashornBeansLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornLinker.java Changeset: 1b93607e77f8 Author: attila Date: 2014-05-14 16:29 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/1b93607e77f8 8043137: Collapse long sequences of NOP in Nashorn bytecode output Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/internal/ir/debug/NashornTextifier.java Changeset: 0b5790104afb Author: mnunez Date: 2014-05-14 15:50 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0b5790104afb 8044154: Nashorn : all tests failed with java.security.AccessControlException Reviewed-by: attila, sundar ! make/build.xml Changeset: e18b0b919ef7 Author: attila Date: 2014-05-14 17:05 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/e18b0b919ef7 8043133: Fix corner cases of JDK-8041995 Reviewed-by: hannesw, lagergren ! src/jdk/nashorn/internal/codegen/CodeGenerator.java + test/script/basic/JDK-8043133.js + test/script/basic/JDK-8043133.js.EXPECTED Changeset: e369d45a77e0 Author: attila Date: 2014-05-15 15:28 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/e369d45a77e0 8043235: Type-based optimizations interfere with continuation methods Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/internal/codegen/CodeGenerator.java + test/script/basic/JDK-8043235.js + test/script/basic/JDK-8043235.js.EXPECTED Changeset: d509e7ba47dd Author: lagergren Date: 2014-05-19 15:29 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/d509e7ba47dd 8034206: Make parts of code pipeline reusable in order to facilitate faster warmup and faster lazy compilation. Reviewed-by: hannesw, attila ! bin/runopt.sh ! src/jdk/nashorn/internal/codegen/ApplySpecialization.java ! src/jdk/nashorn/internal/codegen/AssignSymbols.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java - src/jdk/nashorn/internal/codegen/CompilationEnvironment.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/CompileUnit.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/ConstantData.java ! src/jdk/nashorn/internal/codegen/FindScopeDepths.java ! src/jdk/nashorn/internal/codegen/FoldConstants.java ! src/jdk/nashorn/internal/codegen/Label.java ! src/jdk/nashorn/internal/codegen/LocalVariableTypesCalculator.java ! src/jdk/nashorn/internal/codegen/Lower.java ! src/jdk/nashorn/internal/codegen/OptimisticTypesCalculator.java - src/jdk/nashorn/internal/codegen/ParamTypeMap.java + src/jdk/nashorn/internal/codegen/TypeEvaluator.java + src/jdk/nashorn/internal/codegen/TypeMap.java ! src/jdk/nashorn/internal/ir/AccessNode.java ! src/jdk/nashorn/internal/ir/BaseNode.java ! src/jdk/nashorn/internal/ir/BinaryNode.java ! src/jdk/nashorn/internal/ir/Block.java ! src/jdk/nashorn/internal/ir/BlockStatement.java ! src/jdk/nashorn/internal/ir/BreakableNode.java ! src/jdk/nashorn/internal/ir/BreakableStatement.java ! src/jdk/nashorn/internal/ir/CallNode.java ! src/jdk/nashorn/internal/ir/CaseNode.java ! src/jdk/nashorn/internal/ir/CatchNode.java ! src/jdk/nashorn/internal/ir/EmptyNode.java ! src/jdk/nashorn/internal/ir/Expression.java ! src/jdk/nashorn/internal/ir/ExpressionStatement.java ! src/jdk/nashorn/internal/ir/ForNode.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/ir/IfNode.java ! src/jdk/nashorn/internal/ir/IndexNode.java ! src/jdk/nashorn/internal/ir/JoinPredecessorExpression.java ! src/jdk/nashorn/internal/ir/JumpStatement.java ! src/jdk/nashorn/internal/ir/LabelNode.java + src/jdk/nashorn/internal/ir/Labels.java ! src/jdk/nashorn/internal/ir/LiteralNode.java ! src/jdk/nashorn/internal/ir/LoopNode.java ! src/jdk/nashorn/internal/ir/Node.java ! src/jdk/nashorn/internal/ir/ObjectNode.java ! src/jdk/nashorn/internal/ir/Optimistic.java ! src/jdk/nashorn/internal/ir/PropertyNode.java ! src/jdk/nashorn/internal/ir/ReturnNode.java ! src/jdk/nashorn/internal/ir/RuntimeNode.java ! src/jdk/nashorn/internal/ir/SplitNode.java ! src/jdk/nashorn/internal/ir/SwitchNode.java ! src/jdk/nashorn/internal/ir/Symbol.java ! src/jdk/nashorn/internal/ir/TernaryNode.java ! src/jdk/nashorn/internal/ir/ThrowNode.java ! src/jdk/nashorn/internal/ir/TryNode.java ! src/jdk/nashorn/internal/ir/UnaryNode.java ! src/jdk/nashorn/internal/ir/VarNode.java ! src/jdk/nashorn/internal/ir/WhileNode.java ! src/jdk/nashorn/internal/ir/WithNode.java ! src/jdk/nashorn/internal/ir/debug/JSONWriter.java ! src/jdk/nashorn/internal/ir/debug/ObjectSizeCalculator.java ! src/jdk/nashorn/internal/ir/debug/PrintVisitor.java ! src/jdk/nashorn/internal/objects/NativeArray.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/CompiledFunctions.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/RewriteException.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptLoader.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader.java ! src/jdk/nashorn/tools/Shell.java ! test/script/trusted/JDK-8006529.js Changeset: c5612f4c4b61 Author: attila Date: 2014-05-19 18:24 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/c5612f4c4b61 8043431: Fix yet another corner case of JDK-8041995 Reviewed-by: hannesw, lagergren ! src/jdk/nashorn/internal/codegen/CodeGenerator.java + test/script/basic/JDK-8043431.js + test/script/basic/JDK-8043431.js.EXPECTED Changeset: 6f3a4acb49fe Author: lagergren Date: 2014-05-20 10:40 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/6f3a4acb49fe 8043504: Octane test harness was missing argument to print_always at one callsite, causing erroneous logging Reviewed-by: sundar, attila ! test/script/basic/run-octane.js Changeset: 6fc56d9cbb73 Author: attila Date: 2014-05-21 12:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/6fc56d9cbb73 8043608: Make equality tests inline better Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java Changeset: 12c7c5ccf4ae Author: attila Date: 2014-05-21 15:38 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/12c7c5ccf4ae 8043605: Enable history for empty property maps Reviewed-by: jlaskey, sundar ! src/jdk/nashorn/internal/runtime/PropertyMap.java Changeset: 59b025df6d0a Author: lagergren Date: 2014-05-21 16:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/59b025df6d0a 8043633: In order to remove global state outside of contexts, make sure Timing class is an instance and not a static global collection of data. Move into Context. Move -Dnashorn.timing to an official logging option. Reviewed-by: sundar, attila ! bin/runopt.sh ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java ! src/jdk/nashorn/internal/runtime/Timing.java ! src/jdk/nashorn/internal/runtime/resources/Options.properties Changeset: a9414c20b7e7 Author: lagergren Date: 2014-05-21 16:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/a9414c20b7e7 8043611: Move timing dependent benchmark for apply2call specialization to currently_failing. It is dependent that nothing takes machine time when doing the two runs, causing spurious assertions. Suggest running octane.raytrace manually instead to verify that this works, or incorporating it in the nightly test suite Reviewed-by: sundar, attila - test/script/basic/apply_to_call/apply_to_call_bench.js - test/script/basic/apply_to_call/apply_to_call_bench.js.EXPECTED + test/script/currently-failing/apply_to_call_bench.js + test/script/currently-failing/apply_to_call_bench.js.EXPECTED Changeset: 5b017d6edef6 Author: lagergren Date: 2014-05-21 16:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/5b017d6edef6 8043632: Parallelize class installation and various script fixes. Reviewed-by: sundar, attila + bin/run_octane.sh ! bin/runopt.sh ! docs/DEVELOPER_README ! make/build-benchmark.xml ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java - test/script/basic/ranges_disabled.js - test/script/basic/ranges_disabled.js.EXPECTED - test/script/basic/ranges_enabled.js - test/script/basic/ranges_enabled.js.EXPECTED - test/script/basic/ranges_payload.js Changeset: 6e915a39b248 Author: lagergren Date: 2014-05-27 21:25 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/6e915a39b248 8044012: Integrate the latest best known performance flags int ant octane jobs, and make sure that it's easy to compare 'ant octane-nashorn' and 'ant octane-v8' at the push of a button. (or rather; the entry of a command line) Reviewed-by: jlaskey, sundar ! docs/DEVELOPER_README ! make/build-benchmark.xml ! make/build.xml ! make/project.properties ! src/jdk/nashorn/internal/runtime/resources/Options.properties ! test/script/basic/run-octane.js Changeset: 403fa5685a2f Author: lagergren Date: 2014-05-28 13:58 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/403fa5685a2f 8044102: Ensure bechmark exclude list for Octane benchmarks is in only one place, project.properties, and fix benchmark harness Reviewed-by: attila, sundar ! bin/fixwhitespace.sh ! make/build-benchmark.xml ! make/build.xml ! make/project.properties ! test/script/basic/runsunspider.js Changeset: f44ec6545b9a Author: attila Date: 2014-05-28 16:53 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/f44ec6545b9a Merge ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/MemberInfo.java ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/StringConstants.java ! make/build.xml ! make/project.properties ! src/jdk/internal/dynalink/beans/BeanLinker.java ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/CompileUnit.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/ConstantData.java ! src/jdk/nashorn/internal/codegen/FindScopeDepths.java ! src/jdk/nashorn/internal/codegen/MapCreator.java ! src/jdk/nashorn/internal/ir/BinaryNode.java ! src/jdk/nashorn/internal/ir/debug/JSONWriter.java ! src/jdk/nashorn/internal/lookup/Lookup.java ! src/jdk/nashorn/internal/objects/ArrayBufferView.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeArray.java ! src/jdk/nashorn/internal/objects/NativeArrayBuffer.java ! src/jdk/nashorn/internal/objects/NativeDataView.java ! src/jdk/nashorn/internal/objects/NativeDebug.java ! src/jdk/nashorn/internal/objects/NativeError.java ! src/jdk/nashorn/internal/objects/NativeFloat32Array.java ! src/jdk/nashorn/internal/objects/NativeFloat64Array.java ! src/jdk/nashorn/internal/objects/NativeFunction.java ! src/jdk/nashorn/internal/objects/NativeInt16Array.java ! src/jdk/nashorn/internal/objects/NativeInt32Array.java ! src/jdk/nashorn/internal/objects/NativeInt8Array.java ! src/jdk/nashorn/internal/objects/NativeJSAdapter.java ! src/jdk/nashorn/internal/objects/NativeJavaImporter.java ! src/jdk/nashorn/internal/objects/NativeNumber.java ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/objects/NativeRegExp.java ! src/jdk/nashorn/internal/objects/NativeString.java ! src/jdk/nashorn/internal/objects/NativeUint16Array.java ! src/jdk/nashorn/internal/objects/NativeUint32Array.java ! src/jdk/nashorn/internal/objects/NativeUint8Array.java ! src/jdk/nashorn/internal/objects/NativeUint8ClampedArray.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/parser/TokenType.java ! src/jdk/nashorn/internal/runtime/AccessorProperty.java ! src/jdk/nashorn/internal/runtime/CodeInstaller.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/FinalScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/JSONFunctions.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/Property.java ! src/jdk/nashorn/internal/runtime/PropertyMap.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/Source.java ! src/jdk/nashorn/internal/runtime/SpillProperty.java ! src/jdk/nashorn/internal/runtime/UserAccessorProperty.java ! src/jdk/nashorn/internal/runtime/arrays/ArrayFilter.java ! src/jdk/nashorn/internal/runtime/arrays/DeletedRangeArrayFilter.java ! src/jdk/nashorn/internal/runtime/arrays/SparseArrayData.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterBytecodeGenerator.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterFactory.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterServices.java ! src/jdk/nashorn/internal/runtime/resources/Options.properties ! src/jdk/nashorn/tools/Shell.java ! test/script/trusted/JDK-8006529.js ! test/script/trusted/event_queue.js ! test/script/trusted/optimistic_recompilation.js ! test/src/jdk/nashorn/internal/codegen/CompilerTest.java ! test/src/jdk/nashorn/internal/parser/ParserTest.java + test/src/jdk/nashorn/internal/runtime/CodeStoreAndPathTest.java ! test/src/jdk/nashorn/internal/runtime/TrustedScriptEngineTest.java Changeset: aeccdbb8d366 Author: attila Date: 2014-06-02 17:36 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/aeccdbb8d366 Merge ! make/build.xml ! make/project.properties ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/internal/runtime/linker/Bootstrap.java ! src/jdk/nashorn/internal/runtime/linker/JSObjectLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornGuards.java ! src/jdk/nashorn/internal/runtime/resources/Messages.properties Changeset: e445404a69f5 Author: sundar Date: 2014-06-03 13:57 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/e445404a69f5 8044612: StringIndexOutOfBoundException in NativeRegExp.appendReplacement Reviewed-by: hannesw, lagergren ! src/jdk/nashorn/internal/objects/NativeRegExp.java + test/script/basic/JDK-8044612.js Changeset: f855686309df Author: sundar Date: 2014-06-03 14:13 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/f855686309df 8044520: Nashorn cannot execute node.js's express module Reviewed-by: hannesw, lagergren ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/runtime/GlobalFunctions.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java + test/script/basic/JDK-8044520.js Changeset: 0625a45b5333 Author: attila Date: 2014-06-03 11:31 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0625a45b5333 8044171: Make optimistic exception handlers smaller Reviewed-by: hannesw, lagergren ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/runtime/RewriteException.java Changeset: eff9df533685 Author: attila Date: 2014-06-03 12:04 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/eff9df533685 8044533: Deoptimizing negation produces wrong result for zero Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/codegen/CodeGenerator.java + test/script/basic/JDK-8044533.js + test/script/basic/JDK-8044533.js.EXPECTED Changeset: b46f809c8322 Author: attila Date: 2014-06-03 12:05 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/b46f809c8322 8044534: Constant folding for unary + should produce int for boolean literals Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/codegen/FoldConstants.java + test/script/basic/JDK-8044534.js + test/script/basic/JDK-8044534.js.EXPECTED Changeset: 21f799bc2254 Author: attila Date: 2014-06-03 12:05 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/21f799bc2254 8044518: Ensure exceptions related to optimistic recompilation are not serializable Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/runtime/RewriteException.java ! src/jdk/nashorn/internal/runtime/UnwarrantedOptimismException.java + test/src/jdk/nashorn/internal/runtime/ExceptionsNotSerializable.java Changeset: fd14a4b555f7 Author: sundar Date: 2014-06-04 13:55 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/fd14a4b555f7 8044750: megamorphic getter for scope objects does not call __noSuchProperty__ hook Reviewed-by: attila, lagergren, hannesw ! src/jdk/nashorn/internal/runtime/ScriptObject.java + test/script/basic/JDK-8044750.js ! test/src/jdk/nashorn/api/scripting/ScopeTest.java Changeset: cf4d2252d444 Author: attila Date: 2014-06-04 13:08 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/cf4d2252d444 8044638: Tidy up Nashorn codebase for code standards Reviewed-by: lagergren, sundar ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/ClassGenerator.java ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/ConstructorGenerator.java ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/PrototypeGenerator.java ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/StringConstants.java ! src/jdk/internal/dynalink/ChainedCallSite.java ! src/jdk/internal/dynalink/DefaultBootstrapper.java ! src/jdk/internal/dynalink/DynamicLinker.java ! src/jdk/internal/dynalink/DynamicLinkerFactory.java ! src/jdk/internal/dynalink/MonomorphicCallSite.java ! src/jdk/internal/dynalink/NoSuchDynamicMethodException.java ! src/jdk/internal/dynalink/beans/AbstractJavaLinker.java ! src/jdk/internal/dynalink/beans/AccessibleMembersLookup.java ! src/jdk/internal/dynalink/beans/ApplicableOverloadedMethods.java ! src/jdk/internal/dynalink/beans/BeanIntrospector.java ! src/jdk/internal/dynalink/beans/BeanLinker.java ! src/jdk/internal/dynalink/beans/BeansLinker.java ! src/jdk/internal/dynalink/beans/CallerSensitiveDetector.java ! src/jdk/internal/dynalink/beans/CallerSensitiveDynamicMethod.java ! src/jdk/internal/dynalink/beans/CheckRestrictedPackage.java ! src/jdk/internal/dynalink/beans/ClassString.java ! src/jdk/internal/dynalink/beans/DynamicMethod.java ! src/jdk/internal/dynalink/beans/DynamicMethodLinker.java ! src/jdk/internal/dynalink/beans/FacetIntrospector.java ! src/jdk/internal/dynalink/beans/GuardedInvocationComponent.java ! src/jdk/internal/dynalink/beans/MaximallySpecific.java ! src/jdk/internal/dynalink/beans/OverloadedDynamicMethod.java ! src/jdk/internal/dynalink/beans/OverloadedMethod.java ! src/jdk/internal/dynalink/beans/SimpleDynamicMethod.java ! src/jdk/internal/dynalink/beans/SingleDynamicMethod.java ! src/jdk/internal/dynalink/beans/StaticClass.java ! src/jdk/internal/dynalink/beans/StaticClassIntrospector.java ! src/jdk/internal/dynalink/beans/StaticClassLinker.java ! src/jdk/internal/dynalink/linker/GuardedInvocation.java ! src/jdk/internal/dynalink/linker/LinkerServices.java ! src/jdk/internal/dynalink/support/AbstractCallSiteDescriptor.java ! src/jdk/internal/dynalink/support/AbstractRelinkableCallSite.java ! src/jdk/internal/dynalink/support/AutoDiscovery.java ! src/jdk/internal/dynalink/support/BottomGuardingDynamicLinker.java ! src/jdk/internal/dynalink/support/CallSiteDescriptorFactory.java ! src/jdk/internal/dynalink/support/ClassMap.java ! src/jdk/internal/dynalink/support/CompositeGuardingDynamicLinker.java ! src/jdk/internal/dynalink/support/CompositeTypeBasedGuardingDynamicLinker.java ! src/jdk/internal/dynalink/support/DefaultCallSiteDescriptor.java ! src/jdk/internal/dynalink/support/DefaultPrelinkFilter.java ! src/jdk/internal/dynalink/support/Guards.java ! src/jdk/internal/dynalink/support/LinkRequestImpl.java ! src/jdk/internal/dynalink/support/LinkerServicesImpl.java ! src/jdk/internal/dynalink/support/Lookup.java ! src/jdk/internal/dynalink/support/LookupCallSiteDescriptor.java ! src/jdk/internal/dynalink/support/NameCodec.java ! src/jdk/internal/dynalink/support/NamedDynCallSiteDescriptor.java ! src/jdk/internal/dynalink/support/RuntimeContextLinkRequestImpl.java ! src/jdk/internal/dynalink/support/TypeConverterFactory.java ! src/jdk/internal/dynalink/support/TypeUtilities.java ! src/jdk/internal/dynalink/support/UnnamedDynCallSiteDescriptor.java ! src/jdk/nashorn/api/scripting/Formatter.java ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/api/scripting/ScriptUtils.java ! src/jdk/nashorn/api/scripting/URLReader.java ! src/jdk/nashorn/internal/codegen/ApplySpecialization.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/CompilerConstants.java ! src/jdk/nashorn/internal/codegen/FieldObjectCreator.java ! src/jdk/nashorn/internal/codegen/Label.java ! src/jdk/nashorn/internal/codegen/LocalStateRestorationInfo.java ! src/jdk/nashorn/internal/codegen/ObjectCreator.java ! src/jdk/nashorn/internal/codegen/SplitMethodEmitter.java ! src/jdk/nashorn/internal/codegen/Splitter.java ! src/jdk/nashorn/internal/codegen/TypeMap.java ! src/jdk/nashorn/internal/codegen/WeighNodes.java ! src/jdk/nashorn/internal/codegen/types/BooleanType.java ! src/jdk/nashorn/internal/codegen/types/IntType.java ! src/jdk/nashorn/internal/codegen/types/LongType.java ! src/jdk/nashorn/internal/codegen/types/NumberType.java ! src/jdk/nashorn/internal/codegen/types/ObjectType.java ! src/jdk/nashorn/internal/codegen/types/Type.java ! src/jdk/nashorn/internal/ir/BlockLexicalContext.java ! src/jdk/nashorn/internal/ir/CaseNode.java ! src/jdk/nashorn/internal/ir/Expression.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/ir/Labels.java ! src/jdk/nashorn/internal/ir/LexicalContextExpression.java ! src/jdk/nashorn/internal/ir/LiteralNode.java ! src/jdk/nashorn/internal/ir/LoopNode.java ! src/jdk/nashorn/internal/ir/Node.java ! src/jdk/nashorn/internal/ir/ObjectNode.java ! src/jdk/nashorn/internal/ir/OptimisticLexicalContext.java ! src/jdk/nashorn/internal/ir/ReturnNode.java ! src/jdk/nashorn/internal/ir/SplitNode.java ! src/jdk/nashorn/internal/ir/SwitchNode.java ! src/jdk/nashorn/internal/ir/TernaryNode.java ! src/jdk/nashorn/internal/ir/TryNode.java ! src/jdk/nashorn/internal/ir/UnaryNode.java ! src/jdk/nashorn/internal/ir/debug/ASTWriter.java ! src/jdk/nashorn/internal/ir/debug/NashornClassReader.java ! src/jdk/nashorn/internal/ir/debug/NashornTextifier.java ! src/jdk/nashorn/internal/lookup/MethodHandleFactory.java ! src/jdk/nashorn/internal/objects/AccessorPropertyDescriptor.java ! src/jdk/nashorn/internal/objects/BoundScriptFunctionImpl.java ! src/jdk/nashorn/internal/objects/DataPropertyDescriptor.java ! src/jdk/nashorn/internal/objects/GenericPropertyDescriptor.java ! src/jdk/nashorn/internal/objects/NativeBoolean.java ! src/jdk/nashorn/internal/objects/NativeError.java ! src/jdk/nashorn/internal/objects/NativeFloat32Array.java ! src/jdk/nashorn/internal/objects/NativeInt16Array.java ! src/jdk/nashorn/internal/objects/NativeInt32Array.java ! src/jdk/nashorn/internal/objects/NativeInt8Array.java ! src/jdk/nashorn/internal/objects/NativeJSON.java ! src/jdk/nashorn/internal/objects/NativeJava.java ! src/jdk/nashorn/internal/objects/NativeNumber.java ! src/jdk/nashorn/internal/objects/NativeRegExp.java ! src/jdk/nashorn/internal/objects/NativeRegExpExecResult.java ! src/jdk/nashorn/internal/objects/NativeStrictArguments.java ! src/jdk/nashorn/internal/objects/NativeString.java ! src/jdk/nashorn/internal/objects/NativeUint16Array.java ! src/jdk/nashorn/internal/objects/NativeUint32Array.java ! src/jdk/nashorn/internal/objects/NativeUint8Array.java ! src/jdk/nashorn/internal/objects/NativeUint8ClampedArray.java ! src/jdk/nashorn/internal/objects/PrototypeObject.java ! src/jdk/nashorn/internal/parser/JSONParser.java ! src/jdk/nashorn/internal/parser/Lexer.java ! src/jdk/nashorn/internal/runtime/CodeStore.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/CompiledScript.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/Debug.java ! src/jdk/nashorn/internal/runtime/DebuggerSupport.java ! src/jdk/nashorn/internal/runtime/ECMAErrors.java ! src/jdk/nashorn/internal/runtime/ECMAException.java ! src/jdk/nashorn/internal/runtime/GlobalConstants.java ! src/jdk/nashorn/internal/runtime/GlobalFunctions.java ! src/jdk/nashorn/internal/runtime/JSONFunctions.java ! src/jdk/nashorn/internal/runtime/JSObjectListAdapter.java ! src/jdk/nashorn/internal/runtime/NashornLoader.java ! src/jdk/nashorn/internal/runtime/OptimisticReturnFilters.java ! src/jdk/nashorn/internal/runtime/PropertyMap.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptingFunctions.java ! src/jdk/nashorn/internal/runtime/SetMethodCreator.java ! src/jdk/nashorn/internal/runtime/Source.java ! src/jdk/nashorn/internal/runtime/Timing.java ! src/jdk/nashorn/internal/runtime/UserAccessorProperty.java ! src/jdk/nashorn/internal/runtime/arrays/ArrayFilter.java ! src/jdk/nashorn/internal/runtime/arrays/ByteBufferArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/ContinuousArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/DeletedArrayFilter.java ! src/jdk/nashorn/internal/runtime/arrays/FrozenArrayFilter.java ! src/jdk/nashorn/internal/runtime/arrays/IntArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/LongArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/NumberArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/SealedArrayFilter.java ! src/jdk/nashorn/internal/runtime/arrays/TypedArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/UndefinedArrayFilter.java ! src/jdk/nashorn/internal/runtime/events/RecompilationEvent.java ! src/jdk/nashorn/internal/runtime/events/RuntimeEvent.java ! src/jdk/nashorn/internal/runtime/linker/BoundDynamicMethodLinker.java ! src/jdk/nashorn/internal/runtime/linker/ClassAndLoader.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterBytecodeGenerator.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterFactory.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterServices.java ! src/jdk/nashorn/internal/runtime/linker/JavaSuperAdapterLinker.java ! src/jdk/nashorn/internal/runtime/linker/LinkerCallSite.java ! src/jdk/nashorn/internal/runtime/linker/NashornBeansLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornBottomLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornCallSiteDescriptor.java ! src/jdk/nashorn/internal/runtime/linker/NashornStaticClassLinker.java ! src/jdk/nashorn/internal/runtime/logging/DebugLogger.java ! src/jdk/nashorn/internal/runtime/regexp/JdkRegExp.java ! src/jdk/nashorn/internal/runtime/regexp/JoniRegExp.java ! src/jdk/nashorn/internal/runtime/regexp/RegExp.java ! src/jdk/nashorn/internal/runtime/regexp/RegExpScanner.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Analyser.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ApplyCaseFold.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ApplyCaseFoldArg.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ArrayCompiler.java ! src/jdk/nashorn/internal/runtime/regexp/joni/BitSet.java ! src/jdk/nashorn/internal/runtime/regexp/joni/BitStatus.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ByteCodeMachine.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ByteCodePrinter.java ! src/jdk/nashorn/internal/runtime/regexp/joni/CodeRangeBuffer.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Compiler.java ! src/jdk/nashorn/internal/runtime/regexp/joni/EncodingHelper.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Lexer.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Matcher.java ! src/jdk/nashorn/internal/runtime/regexp/joni/MatcherFactory.java ! src/jdk/nashorn/internal/runtime/regexp/joni/MinMaxLen.java ! src/jdk/nashorn/internal/runtime/regexp/joni/NodeOptInfo.java ! src/jdk/nashorn/internal/runtime/regexp/joni/OptAnchorInfo.java ! src/jdk/nashorn/internal/runtime/regexp/joni/OptEnvironment.java ! src/jdk/nashorn/internal/runtime/regexp/joni/OptExactInfo.java ! src/jdk/nashorn/internal/runtime/regexp/joni/OptMapInfo.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Option.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Parser.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Regex.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Region.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ScanEnvironment.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ScannerSupport.java ! src/jdk/nashorn/internal/runtime/regexp/joni/SearchAlgorithm.java ! src/jdk/nashorn/internal/runtime/regexp/joni/StackEntry.java ! src/jdk/nashorn/internal/runtime/regexp/joni/StackMachine.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Syntax.java ! src/jdk/nashorn/internal/runtime/regexp/joni/Token.java ! src/jdk/nashorn/internal/runtime/regexp/joni/WarnCallback.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/AnchorNode.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/AnyCharNode.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/BackRefNode.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/CClassNode.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/ConsAltNode.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/EncloseNode.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/Node.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/QuantifierNode.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/StateNode.java ! src/jdk/nashorn/internal/runtime/regexp/joni/ast/StringNode.java ! src/jdk/nashorn/internal/runtime/regexp/joni/encoding/ObjPtr.java ! src/jdk/nashorn/internal/runtime/regexp/joni/exception/InternalException.java ! src/jdk/nashorn/internal/runtime/regexp/joni/exception/JOniException.java ! src/jdk/nashorn/internal/runtime/regexp/joni/exception/SyntaxException.java ! src/jdk/nashorn/internal/runtime/regexp/joni/exception/ValueException.java ! test/examples/apply_to_call_benchmark.js ! test/examples/array-micro.js ! test/examples/dual-fields-micro.js ! test/examples/innerbench.js ! test/examples/int-micro.js ! test/examples/string-micro.js ! test/examples/typechain.js ! test/lib/benchmark.js ! test/opt/add.js ! test/opt/add_constant.js ! test/opt/add_reuse_callsite.js ! test/opt/add_revert2.js ! test/opt/cascade_specialize.js ! test/script/assert.js ! test/script/basic/8024180/global_var_delete.js ! test/script/basic/8024180/global_var_shadow.js ! test/script/basic/8024180/scope_no_such_prop.js ! test/script/basic/8024180/with_expr_prop_add.js ! test/script/basic/8024180/with_expr_proto_prop_add.js ! test/script/basic/8024180/with_java_object.js ! test/script/basic/JDK-8005958.js ! test/script/basic/JDK-8006304.js ! test/script/basic/JDK-8006337.js ! test/script/basic/JDK-8006529-b.js ! test/script/basic/JDK-8006570.js ! test/script/basic/JDK-8006852a.js ! test/script/basic/JDK-8006852b.js ! test/script/basic/JDK-8006857.js ! test/script/basic/JDK-8006983.js ! test/script/basic/JDK-8006984.js ! test/script/basic/JDK-8007060.js ! test/script/basic/JDK-8007140.js ! test/script/basic/JDK-8007215.js ! test/script/basic/JDK-8007460.js ! test/script/basic/JDK-8007522.js ! test/script/basic/JDK-8007523.js ! test/script/basic/JDK-8007619.js ! test/script/basic/JDK-8007990.js ! test/script/basic/JDK-8008197.js ! test/script/basic/JDK-8008206.js ! test/script/basic/JDK-8008238.js ! test/script/basic/JDK-8008554.js ! test/script/basic/JDK-8008814-3.js ! test/script/basic/JDK-8008814-4.js ! test/script/basic/JDK-8009553.js ! test/script/basic/JDK-8009868.js ! test/script/basic/JDK-8010709.js ! test/script/basic/JDK-8010710.js ! test/script/basic/JDK-8010720.js ! test/script/basic/JDK-8010731.js ! test/script/basic/JDK-8010804.js ! test/script/basic/JDK-8010946-privileged.js ! test/script/basic/JDK-8010946.js ! test/script/basic/JDK-8011023.js ! test/script/basic/JDK-8011209.js ! test/script/basic/JDK-8011237.js ! test/script/basic/JDK-8011274.js ! test/script/basic/JDK-8011357.js ! test/script/basic/JDK-8011362.js ! test/script/basic/JDK-8011365.js ! test/script/basic/JDK-8011382.js ! test/script/basic/JDK-8011394.js ! test/script/basic/JDK-8011552.js ! test/script/basic/JDK-8011555.js ! test/script/basic/JDK-8011578.js ! test/script/basic/JDK-8011718.js ! test/script/basic/JDK-8011756.js ! test/script/basic/JDK-8011893.js ! test/script/basic/JDK-8011960.js ! test/script/basic/JDK-8011964.js ! test/script/basic/JDK-8011974.js ! test/script/basic/JDK-8012083.js ! test/script/basic/JDK-8012164.js ! test/script/basic/JDK-8012191.js ! test/script/basic/JDK-8012240.js ! test/script/basic/JDK-8012291.js ! test/script/basic/JDK-8012305.js ! test/script/basic/JDK-8012457.js ! test/script/basic/JDK-8012462.js ! test/script/basic/JDK-8013131.js ! test/script/basic/JDK-8013167.js ! test/script/basic/JDK-8013325.js ! test/script/basic/JDK-8013337.js ! test/script/basic/JDK-8013444.js ! test/script/basic/JDK-8013729.js ! test/script/basic/JDK-8013873.js ! test/script/basic/JDK-8013874.js ! test/script/basic/JDK-8013878.js ! test/script/basic/JDK-8013919.js ! test/script/basic/JDK-8014426.js ! test/script/basic/JDK-8014647.js ! test/script/basic/JDK-8014781.js ! test/script/basic/JDK-8014785.js ! test/script/basic/JDK-8014953.js ! test/script/basic/JDK-8015267.js ! test/script/basic/JDK-8015345.js ! test/script/basic/JDK-8015346.js ! test/script/basic/JDK-8015347.js ! test/script/basic/JDK-8015348.js ! test/script/basic/JDK-8015349.js ! test/script/basic/JDK-8015350.js ! test/script/basic/JDK-8015352.js ! test/script/basic/JDK-8015353.js ! test/script/basic/JDK-8015354.js ! test/script/basic/JDK-8015355.js ! test/script/basic/JDK-8015356.js ! test/script/basic/JDK-8015357.js ! test/script/basic/JDK-8015741.js ! test/script/basic/JDK-8015830.js ! test/script/basic/JDK-8015892.js ! test/script/basic/JDK-8015945.js ! test/script/basic/JDK-8015959.js ! test/script/basic/JDK-8015969.js ! test/script/basic/JDK-8016235.js ! test/script/basic/JDK-8016239.js ! test/script/basic/JDK-8016518.js ! test/script/basic/JDK-8016542.js ! test/script/basic/JDK-8016618.js ! test/script/basic/JDK-8016667.js ! test/script/basic/JDK-8016681.js ! test/script/basic/JDK-8017046.js ! test/script/basic/JDK-8017082.js ! test/script/basic/JDK-8017084.js ! test/script/basic/JDK-8017768.js ! test/script/basic/JDK-8017950.js ! test/script/basic/JDK-8019226.js ! test/script/basic/JDK-8019473.js ! test/script/basic/JDK-8019478.js ! test/script/basic/JDK-8019482.js ! test/script/basic/JDK-8019488.js ! test/script/basic/JDK-8019508.js ! test/script/basic/JDK-8019553.js ! test/script/basic/JDK-8019585.js ! test/script/basic/JDK-8019629.js ! test/script/basic/JDK-8019783.js ! test/script/basic/JDK-8019791.js ! test/script/basic/JDK-8019805.js ! test/script/basic/JDK-8019808.js ! test/script/basic/JDK-8019809.js ! test/script/basic/JDK-8019810.js ! test/script/basic/JDK-8019811.js ! test/script/basic/JDK-8019814.js ! test/script/basic/JDK-8019817.js ! test/script/basic/JDK-8019819.js ! test/script/basic/JDK-8019821.js ! test/script/basic/JDK-8019822.js ! test/script/basic/JDK-8019947.js ! test/script/basic/JDK-8019963.js ! test/script/basic/JDK-8019983.js ! test/script/basic/JDK-8019985.js ! test/script/basic/JDK-8020124.js ! test/script/basic/JDK-8020132.js ! test/script/basic/JDK-8020223.js ! test/script/basic/JDK-8020324.js ! test/script/basic/JDK-8020325.js ! test/script/basic/JDK-8020354.js ! test/script/basic/JDK-8020355.js ! test/script/basic/JDK-8020356.js ! test/script/basic/JDK-8020357.js ! test/script/basic/JDK-8020358.js ! test/script/basic/JDK-8020380.js ! test/script/basic/JDK-8020437.js ! test/script/basic/JDK-8020463.js ! test/script/basic/JDK-8020508.js ! test/script/basic/JDK-8021122.js ! test/script/basic/JDK-8022598.js ! test/script/basic/JDK-8022731.js ! test/script/basic/JDK-8022903.js ! test/script/basic/JDK-8023026.js ! test/script/basic/JDK-8023373.js ! test/script/basic/JDK-8023531.js ! test/script/basic/JDK-8023551.js ! test/script/basic/JDK-8023630.js ! test/script/basic/JDK-8023650.js ! test/script/basic/JDK-8023780.js ! test/script/basic/JDK-8023784.js ! test/script/basic/JDK-8024120.js ! test/script/basic/JDK-8024174.js ! test/script/basic/JDK-8024255.js ! test/script/basic/JDK-8024512.js ! test/script/basic/JDK-8024619.js ! test/script/basic/JDK-8024846.js ! test/script/basic/JDK-8024847.js ! test/script/basic/JDK-8024972.js ! test/script/basic/JDK-8025048-2.js ! test/script/basic/JDK-8025048.js ! test/script/basic/JDK-8025080.js ! test/script/basic/JDK-8025090.js ! test/script/basic/JDK-8025111.js ! test/script/basic/JDK-8025147.js ! test/script/basic/JDK-8025149.js ! test/script/basic/JDK-8025163.js ! test/script/basic/JDK-8025197.js ! test/script/basic/JDK-8025213.js ! test/script/basic/JDK-8025312.js ! test/script/basic/JDK-8025325.js ! test/script/basic/JDK-8025434.js ! test/script/basic/JDK-8025486.js ! test/script/basic/JDK-8025488.js ! test/script/basic/JDK-8025515.js ! test/script/basic/JDK-8025520.js ! test/script/basic/JDK-8025589.js ! test/script/basic/JDK-8026008.js ! test/script/basic/JDK-8026016.js ! test/script/basic/JDK-8026033.js ! test/script/basic/JDK-8026042.js ! test/script/basic/JDK-8026048.js ! test/script/basic/JDK-8026112.js ! test/script/basic/JDK-8026125.js ! test/script/basic/JDK-8026137.js ! test/script/basic/JDK-8026161.js ! test/script/basic/JDK-8026162.js ! test/script/basic/JDK-8026167.js ! test/script/basic/JDK-8026248.js ! test/script/basic/JDK-8026264.js ! test/script/basic/JDK-8026292.js ! test/script/basic/JDK-8026302.js ! test/script/basic/JDK-8026317.js ! test/script/basic/JDK-8026367.js ! test/script/basic/JDK-8026692.js ! test/script/basic/JDK-8026693.js ! test/script/basic/JDK-8026701.js ! test/script/basic/JDK-8026805.js ! test/script/basic/JDK-8026858.js ! test/script/basic/JDK-8026955.js ! test/script/basic/JDK-8027016.js ! test/script/basic/JDK-8027024.js ! test/script/basic/JDK-8027042.js ! test/script/basic/JDK-8027236.js ! test/script/basic/JDK-8027562.js ! test/script/basic/JDK-8027700.js ! test/script/basic/JDK-8027753.js ! test/script/basic/JDK-8027828.js ! test/script/basic/JDK-8027933.js ! test/script/basic/JDK-8028020.js ! test/script/basic/JDK-8028210.js ! test/script/basic/JDK-8028434.js ! test/script/basic/JDK-8029364.js ! test/script/basic/JDK-8029384.js ! test/script/basic/JDK-8029467.js ! test/script/basic/JDK-8029667.js ! test/script/basic/JDK-8030182.js ! test/script/basic/JDK-8030182_2.js ! test/script/basic/JDK-8030197.js ! test/script/basic/JDK-8030199.js ! test/script/basic/JDK-8030200.js ! test/script/basic/JDK-8030202.js ! test/script/basic/JDK-8030809.js ! test/script/basic/JDK-8031317.js ! test/script/basic/JDK-8031359.js ! test/script/basic/JDK-8031983.js ! test/script/basic/JDK-8032004.js ! test/script/basic/JDK-8032068.js ! test/script/basic/JDK-8034055.js ! test/script/basic/JDK-8037562.js ! test/script/basic/JDK-8038945.js ! test/script/basic/JDK-8039387.js ! test/script/basic/JDK-8040024.js ! test/script/basic/JDK-8041995.js ! test/script/basic/JDK-8041998.js ! test/script/basic/JDK-8042364.js ! test/script/basic/JDK-8043133.js ! test/script/basic/JDK-8043235.js ! test/script/basic/JDK-8043431.js ! test/script/basic/JDK-8043930.js ! test/script/basic/JDK-8044520.js ! test/script/basic/JDK-8044533.js ! test/script/basic/JDK-8044534.js ! test/script/basic/JDK-8044612.js ! test/script/basic/JDK_8005848.js ! test/script/basic/NASHORN-100.js ! test/script/basic/NASHORN-101.js ! test/script/basic/NASHORN-102.js ! test/script/basic/NASHORN-103.js ! test/script/basic/NASHORN-104.js ! test/script/basic/NASHORN-105.js ! test/script/basic/NASHORN-106.js ! test/script/basic/NASHORN-107.js ! test/script/basic/NASHORN-108.js ! test/script/basic/NASHORN-109.js ! test/script/basic/NASHORN-11.js ! test/script/basic/NASHORN-111.js ! test/script/basic/NASHORN-113.js ! test/script/basic/NASHORN-114.js ! test/script/basic/NASHORN-115.js ! test/script/basic/NASHORN-117.js ! test/script/basic/NASHORN-118.js ! test/script/basic/NASHORN-119.js ! test/script/basic/NASHORN-12.js ! test/script/basic/NASHORN-120.js ! test/script/basic/NASHORN-122.js ! test/script/basic/NASHORN-126.js ! test/script/basic/NASHORN-127.js ! test/script/basic/NASHORN-130.js ! test/script/basic/NASHORN-132.js ! test/script/basic/NASHORN-133.js ! test/script/basic/NASHORN-135.js ! test/script/basic/NASHORN-136.js ! test/script/basic/NASHORN-14.js ! test/script/basic/NASHORN-148.js ! test/script/basic/NASHORN-15.js ! test/script/basic/NASHORN-153.js ! test/script/basic/NASHORN-156.js ! test/script/basic/NASHORN-157.js ! test/script/basic/NASHORN-163.js ! test/script/basic/NASHORN-164.js ! test/script/basic/NASHORN-165.js ! test/script/basic/NASHORN-166.js ! test/script/basic/NASHORN-168.js ! test/script/basic/NASHORN-169.js ! test/script/basic/NASHORN-172.js ! test/script/basic/NASHORN-173.js ! test/script/basic/NASHORN-174.js ! test/script/basic/NASHORN-175.js ! test/script/basic/NASHORN-176.js ! test/script/basic/NASHORN-177.js ! test/script/basic/NASHORN-178.js ! test/script/basic/NASHORN-179.js ! test/script/basic/NASHORN-18.js ! test/script/basic/NASHORN-181.js ! test/script/basic/NASHORN-182.js ! test/script/basic/NASHORN-183.js ! test/script/basic/NASHORN-184.js ! test/script/basic/NASHORN-185.js ! test/script/basic/NASHORN-187.js ! test/script/basic/NASHORN-188.js ! test/script/basic/NASHORN-19.js ! test/script/basic/NASHORN-190.js ! test/script/basic/NASHORN-192.js ! test/script/basic/NASHORN-194.js ! test/script/basic/NASHORN-196.js ! test/script/basic/NASHORN-198.js ! test/script/basic/NASHORN-20.js ! test/script/basic/NASHORN-201.js ! test/script/basic/NASHORN-202.js ! test/script/basic/NASHORN-203.js ! test/script/basic/NASHORN-204.js ! test/script/basic/NASHORN-205.js ! test/script/basic/NASHORN-206.js ! test/script/basic/NASHORN-207.js ! test/script/basic/NASHORN-207_2.js ! test/script/basic/NASHORN-208.js ! test/script/basic/NASHORN-209.js ! test/script/basic/NASHORN-21.js ! test/script/basic/NASHORN-211.js ! test/script/basic/NASHORN-212.js ! test/script/basic/NASHORN-213.js ! test/script/basic/NASHORN-215.js ! test/script/basic/NASHORN-216.js ! test/script/basic/NASHORN-217.js ! test/script/basic/NASHORN-219.js ! test/script/basic/NASHORN-22.js ! test/script/basic/NASHORN-221.js ! test/script/basic/NASHORN-222.js ! test/script/basic/NASHORN-223.js ! test/script/basic/NASHORN-225.js ! test/script/basic/NASHORN-226.js ! test/script/basic/NASHORN-227.js ! test/script/basic/NASHORN-228.js ! test/script/basic/NASHORN-229.js ! test/script/basic/NASHORN-229_subtest.js ! test/script/basic/NASHORN-23.js ! test/script/basic/NASHORN-232.js ! test/script/basic/NASHORN-234.js ! test/script/basic/NASHORN-235.js ! test/script/basic/NASHORN-236.js ! test/script/basic/NASHORN-237.js ! test/script/basic/NASHORN-239.js ! test/script/basic/NASHORN-24.js ! test/script/basic/NASHORN-241.js ! test/script/basic/NASHORN-242.js ! test/script/basic/NASHORN-245.js ! test/script/basic/NASHORN-247.js ! test/script/basic/NASHORN-25.js ! test/script/basic/NASHORN-251.js ! test/script/basic/NASHORN-252.js ! test/script/basic/NASHORN-253.js ! test/script/basic/NASHORN-256.js ! test/script/basic/NASHORN-258.js ! test/script/basic/NASHORN-26.js ! test/script/basic/NASHORN-260.js ! test/script/basic/NASHORN-261.js ! test/script/basic/NASHORN-262.js ! test/script/basic/NASHORN-263.js ! test/script/basic/NASHORN-264.js ! test/script/basic/NASHORN-265.js ! test/script/basic/NASHORN-266.js ! test/script/basic/NASHORN-269.js ! test/script/basic/NASHORN-27.js ! test/script/basic/NASHORN-270.js ! test/script/basic/NASHORN-271.js ! test/script/basic/NASHORN-275.js ! test/script/basic/NASHORN-276.js ! test/script/basic/NASHORN-277.js ! test/script/basic/NASHORN-278.js ! test/script/basic/NASHORN-28.js ! test/script/basic/NASHORN-281.js ! test/script/basic/NASHORN-284.js ! test/script/basic/NASHORN-285.js ! test/script/basic/NASHORN-288.js ! test/script/basic/NASHORN-29.js ! test/script/basic/NASHORN-293.js ! test/script/basic/NASHORN-294.js ! test/script/basic/NASHORN-296.js ! test/script/basic/NASHORN-297.js ! test/script/basic/NASHORN-30.js ! test/script/basic/NASHORN-300.js ! test/script/basic/NASHORN-301.js ! test/script/basic/NASHORN-304.js ! test/script/basic/NASHORN-310.js ! test/script/basic/NASHORN-318.js ! test/script/basic/NASHORN-32.js ! test/script/basic/NASHORN-321.js ! test/script/basic/NASHORN-323.js ! test/script/basic/NASHORN-324.js ! test/script/basic/NASHORN-33.js ! test/script/basic/NASHORN-331.js ! test/script/basic/NASHORN-337.js ! test/script/basic/NASHORN-34.js ! test/script/basic/NASHORN-340.js ! test/script/basic/NASHORN-349.js ! test/script/basic/NASHORN-354.js ! test/script/basic/NASHORN-355.js ! test/script/basic/NASHORN-36.js ! test/script/basic/NASHORN-365.js ! test/script/basic/NASHORN-366.js ! test/script/basic/NASHORN-368.js ! test/script/basic/NASHORN-37.js ! test/script/basic/NASHORN-375.js ! test/script/basic/NASHORN-376.js ! test/script/basic/NASHORN-377.js ! test/script/basic/NASHORN-378.js ! test/script/basic/NASHORN-38.js ! test/script/basic/NASHORN-380.js ! test/script/basic/NASHORN-381.js ! test/script/basic/NASHORN-382.js ! test/script/basic/NASHORN-383.js ! test/script/basic/NASHORN-384.js ! test/script/basic/NASHORN-385.js ! test/script/basic/NASHORN-389.js ! test/script/basic/NASHORN-393.js ! test/script/basic/NASHORN-394.js ! test/script/basic/NASHORN-396.js ! test/script/basic/NASHORN-397.js ! test/script/basic/NASHORN-398.js ! test/script/basic/NASHORN-40.js ! test/script/basic/NASHORN-400.js ! test/script/basic/NASHORN-401.js ! test/script/basic/NASHORN-402.js ! test/script/basic/NASHORN-404.js ! test/script/basic/NASHORN-405.js ! test/script/basic/NASHORN-406.js ! test/script/basic/NASHORN-408.js ! test/script/basic/NASHORN-415.js ! test/script/basic/NASHORN-416.js ! test/script/basic/NASHORN-417.js ! test/script/basic/NASHORN-418.js ! test/script/basic/NASHORN-420.js ! test/script/basic/NASHORN-421.js ! test/script/basic/NASHORN-423.js ! test/script/basic/NASHORN-423a.js ! test/script/basic/NASHORN-424.js ! test/script/basic/NASHORN-425.js ! test/script/basic/NASHORN-426.js ! test/script/basic/NASHORN-427.js ! test/script/basic/NASHORN-428.js ! test/script/basic/NASHORN-429.js ! test/script/basic/NASHORN-432.js ! test/script/basic/NASHORN-433.js ! test/script/basic/NASHORN-434.js ! test/script/basic/NASHORN-435.js ! test/script/basic/NASHORN-437.js ! test/script/basic/NASHORN-44.js ! test/script/basic/NASHORN-441.js ! test/script/basic/NASHORN-442.js ! test/script/basic/NASHORN-443.js ! test/script/basic/NASHORN-444.js ! test/script/basic/NASHORN-445.js ! test/script/basic/NASHORN-446.js ! test/script/basic/NASHORN-447.js ! test/script/basic/NASHORN-448.js ! test/script/basic/NASHORN-449.js ! test/script/basic/NASHORN-45.js ! test/script/basic/NASHORN-450.js ! test/script/basic/NASHORN-452.js ! test/script/basic/NASHORN-459.js ! test/script/basic/NASHORN-46.js ! test/script/basic/NASHORN-462.js ! test/script/basic/NASHORN-463.js ! test/script/basic/NASHORN-468.js ! test/script/basic/NASHORN-47.js ! test/script/basic/NASHORN-473.js ! test/script/basic/NASHORN-474.js ! test/script/basic/NASHORN-478.js ! test/script/basic/NASHORN-48.js ! test/script/basic/NASHORN-481.js ! test/script/basic/NASHORN-482.js ! test/script/basic/NASHORN-484.js ! test/script/basic/NASHORN-486.js ! test/script/basic/NASHORN-487.js ! test/script/basic/NASHORN-488.js ! test/script/basic/NASHORN-49.js ! test/script/basic/NASHORN-490.js ! test/script/basic/NASHORN-494.js ! test/script/basic/NASHORN-497.js ! test/script/basic/NASHORN-498.js ! test/script/basic/NASHORN-499.js ! test/script/basic/NASHORN-50.js ! test/script/basic/NASHORN-500.js ! test/script/basic/NASHORN-503.js ! test/script/basic/NASHORN-51.js ! test/script/basic/NASHORN-511.js ! test/script/basic/NASHORN-515.js ! test/script/basic/NASHORN-516.js ! test/script/basic/NASHORN-52.js ! test/script/basic/NASHORN-534.js ! test/script/basic/NASHORN-535.js ! test/script/basic/NASHORN-544.js ! test/script/basic/NASHORN-55.js ! test/script/basic/NASHORN-554.js ! test/script/basic/NASHORN-556.js ! test/script/basic/NASHORN-56.js ! test/script/basic/NASHORN-562.js ! test/script/basic/NASHORN-565.js ! test/script/basic/NASHORN-575.js ! test/script/basic/NASHORN-58.js ! test/script/basic/NASHORN-59.js ! test/script/basic/NASHORN-592-dual.js ! test/script/basic/NASHORN-592.js ! test/script/basic/NASHORN-597.js ! test/script/basic/NASHORN-60.js ! test/script/basic/NASHORN-609.js ! test/script/basic/NASHORN-61.js ! test/script/basic/NASHORN-62.js ! test/script/basic/NASHORN-620.js ! test/script/basic/NASHORN-623.js ! test/script/basic/NASHORN-627.js ! test/script/basic/NASHORN-63.js ! test/script/basic/NASHORN-637.js ! test/script/basic/NASHORN-639.js ! test/script/basic/NASHORN-64.js ! test/script/basic/NASHORN-642.js ! test/script/basic/NASHORN-646.js ! test/script/basic/NASHORN-658.js ! test/script/basic/NASHORN-659.js ! test/script/basic/NASHORN-66.js ! test/script/basic/NASHORN-664.js ! test/script/basic/NASHORN-665.js ! test/script/basic/NASHORN-67.js ! test/script/basic/NASHORN-678.js ! test/script/basic/NASHORN-68.js ! test/script/basic/NASHORN-689.js ! test/script/basic/NASHORN-69.js ! test/script/basic/NASHORN-691.js ! test/script/basic/NASHORN-694.js ! test/script/basic/NASHORN-697.js ! test/script/basic/NASHORN-703.js ! test/script/basic/NASHORN-703a.js ! test/script/basic/NASHORN-705.js ! test/script/basic/NASHORN-71.js ! test/script/basic/NASHORN-710.js ! test/script/basic/NASHORN-711.js ! test/script/basic/NASHORN-72.js ! test/script/basic/NASHORN-722.js ! test/script/basic/NASHORN-73.js ! test/script/basic/NASHORN-737.js ! test/script/basic/NASHORN-74.js ! test/script/basic/NASHORN-740.js ! test/script/basic/NASHORN-75.js ! test/script/basic/NASHORN-758.js ! test/script/basic/NASHORN-759.js ! test/script/basic/NASHORN-760.js ! test/script/basic/NASHORN-768.js ! test/script/basic/NASHORN-778.js ! test/script/basic/NASHORN-78.js ! test/script/basic/NASHORN-79.js ! test/script/basic/NASHORN-792.js ! test/script/basic/NASHORN-80.js ! test/script/basic/NASHORN-81.js ! test/script/basic/NASHORN-833.js ! test/script/basic/NASHORN-837.js ! test/script/basic/NASHORN-85.js ! test/script/basic/NASHORN-86.js ! test/script/basic/NASHORN-87.js ! test/script/basic/NASHORN-89.js ! test/script/basic/NASHORN-90.js ! test/script/basic/NASHORN-91.js ! test/script/basic/NASHORN-92.js ! test/script/basic/NASHORN-93.js ! test/script/basic/NASHORN-95.js ! test/script/basic/NASHORN-96.js ! test/script/basic/NASHORN-97.js ! test/script/basic/NASHORN-98.js ! test/script/basic/NASHORN-99.js ! test/script/basic/access-specializer.js ! test/script/basic/addition.js ! test/script/basic/allgettersetters.js ! test/script/basic/andor.js ! test/script/basic/anonrecur.js ! test/script/basic/apply_to_call/apply_to_call1.js ! test/script/basic/apply_to_call/apply_to_call2.js ! test/script/basic/apply_to_call/apply_to_call3.js ! test/script/basic/apply_to_call/apply_to_call4.js ! test/script/basic/apply_to_call/apply_to_call_recompile.js ! test/script/basic/apply_to_call/apply_to_call_varargs.js ! test/script/basic/applycall.js ! test/script/basic/args.js ! test/script/basic/arity.js ! test/script/basic/arrayprotoclass.js ! test/script/basic/arrays.js ! test/script/basic/arrays2.js ! test/script/basic/arrays_int_key.js ! test/script/basic/arrayset.js ! test/script/basic/arrayundefined.js ! test/script/basic/assign.js ! test/script/basic/bitwise_and.js ! test/script/basic/boolean_arithmetic.js ! test/script/basic/booleangetter.js ! test/script/basic/builtin.js ! test/script/basic/builtin_assign.js ! test/script/basic/builtinchain.js ! test/script/basic/calllink.js ! test/script/basic/classloader.js ! test/script/basic/closure.js ! test/script/basic/closure.js.EXPECTED ! test/script/basic/commandargs.js ! test/script/basic/compile-octane-splitter.js ! test/script/basic/compile-octane.js ! test/script/basic/condassign.js ! test/script/basic/construct.js ! test/script/basic/constructorname.js ! test/script/basic/convert.js ! test/script/basic/dataview_endian.js ! test/script/basic/dataview_getset.js ! test/script/basic/dataview_new.js ! test/script/basic/date.js ! test/script/basic/dateparse.js ! test/script/basic/decinc.js ! test/script/basic/delete.js ! test/script/basic/delete2.js ! test/script/basic/dotpropname.js ! test/script/basic/doublecache.js ! test/script/basic/enumeration.js ! test/script/basic/errors.js ! test/script/basic/errorstack.js ! test/script/basic/eval.js ! test/script/basic/evalreturn.js ! test/script/basic/exprclosure.js ! test/script/basic/extensibility.js ! test/script/basic/fileline.js ! test/script/basic/finally-catchalls.js ! test/script/basic/finallyreturn.js ! test/script/basic/forin.js ! test/script/basic/forin2.js ! test/script/basic/funcarray.js ! test/script/basic/funcbind.js ! test/script/basic/funcbind2.js ! test/script/basic/funcbind3.js ! test/script/basic/funcconstructor.js ! test/script/basic/getclassname.js ! test/script/basic/getter_callsite.js ! test/script/basic/gettercalls.js ! test/script/basic/getterfunc.js ! test/script/basic/gettersetter.js ! test/script/basic/globalaccess.js ! test/script/basic/globals.js ! test/script/basic/globalscope.js ! test/script/basic/hello.js ! test/script/basic/herestr_operator.js ! test/script/basic/hideLocationProperties.js ! test/script/basic/illegaljavaname.js ! test/script/basic/importpackage.js ! test/script/basic/incheck.js ! test/script/basic/indexedcall.js ! test/script/basic/info.js ! test/script/basic/inherited_nonwritable.js ! test/script/basic/instanceof.js ! test/script/basic/instanceof2.js ! test/script/basic/interfaces.js ! test/script/basic/iterator.js ! test/script/basic/java.js ! test/script/basic/javaadapter.js ! test/script/basic/javaarray.js ! test/script/basic/javaarrayconversion.js ! test/script/basic/javaclassoverrides.js ! test/script/basic/javaexceptions.js ! test/script/basic/javaimporter.js ! test/script/basic/javainnerclasses.js ! test/script/basic/javasigcall.js ! test/script/basic/jquery.js ! test/script/basic/jsadapter.js ! test/script/basic/jsadapterlink.js ! test/script/basic/json.js ! test/script/basic/list.js ! test/script/basic/literal.js ! test/script/basic/load.js ! test/script/basic/loadedfile.js ! test/script/basic/localundef.js ! test/script/basic/map.js ! test/script/basic/math.js ! test/script/basic/minuszero.js ! test/script/basic/module.js ! test/script/basic/moduleload.js ! test/script/basic/nashorn2.js ! test/script/basic/natives.js ! test/script/basic/new.js ! test/script/basic/newexpr.js ! test/script/basic/newnew.js ! test/script/basic/no_line_numbers.js ! test/script/basic/nonconstructors.js ! test/script/basic/nosuchmethod.js ! test/script/basic/nosuchproperty.js ! test/script/basic/number.js ! test/script/basic/numberstring.js ! test/script/basic/objectprops.js ! test/script/basic/objects.js ! test/script/basic/optimistic_arithmetic_check_type.js ! test/script/basic/optimistic_assignment_check_type.js ! test/script/basic/optimistic_check_type.js ! test/script/basic/optimistic_logical_check_type.js ! test/script/basic/options.js ! test/script/basic/paramspec.js ! test/script/basic/parser/assignmentExpr.js ! test/script/basic/parser/binaryExpr.js ! test/script/basic/parser/breakStat.js ! test/script/basic/parser/condExpr.js ! test/script/basic/parser/continueStat.js ! test/script/basic/parser/debuggerStat.js ! test/script/basic/parser/functions.js ! test/script/basic/parser/ifStat.js ! test/script/basic/parser/labelledStat.js ! test/script/basic/parser/lhsExpr.js ! test/script/basic/parser/loopStat.js ! test/script/basic/parser/objectLitExpr.js ! test/script/basic/parser/parenExpr.js ! test/script/basic/parser/primaryExpr.js ! test/script/basic/parser/returnStat.js ! test/script/basic/parser/switchStat.js ! test/script/basic/parser/throwStat.js ! test/script/basic/parser/tryCatchStat.js ! test/script/basic/parser/unaryExpr.js ! test/script/basic/parser/useStrict.js ! test/script/basic/parser/util.js ! test/script/basic/parser/varDecl.js ! test/script/basic/parser/withStat.js ! test/script/basic/propchange.js ! test/script/basic/propertycheck.js ! test/script/basic/prototype.js ! test/script/basic/pushpull.js ! test/script/basic/regex.js ! test/script/basic/regexp_flags.js ! test/script/basic/relink_index_getter.js ! test/script/basic/run-octane.js ! test/script/basic/runsunspider.js ! test/script/basic/samfunc.js ! test/script/basic/scripting.js ! test/script/basic/scripting.js.EXPECTED ! test/script/basic/sealfreeze.js ! test/script/basic/setlength.js ! test/script/basic/splitter.js ! test/script/basic/stdin.js ! test/script/basic/strings.js ! test/script/basic/throws.js ! test/script/basic/tosource.js ! test/script/basic/tostring.js ! test/script/basic/try.js ! test/script/basic/try2.js ! test/script/basic/trybreakcont.js ! test/script/basic/trycatch.js ! test/script/basic/trycatchfor.js ! test/script/basic/tryfinallyreturn.js ! test/script/basic/tryforbreak.js ! test/script/basic/typechange.js ! test/script/basic/typecoerce.js ! test/script/basic/typedarrays.js ! test/script/basic/typedarrays2.js ! test/script/basic/typeof.js ! test/script/basic/typeof2.js ! test/script/basic/undefined.js ! test/script/basic/underscore.js ! test/script/basic/varargs.js ! test/script/basic/void.js ! test/script/basic/with.js ! test/script/basic/withprimitive.js ! test/script/basic/writable_relink.js ! test/script/basic/xorassign.js ! test/script/basic/yui.js ! test/script/currently-failing/JDK-8006191.js ! test/script/currently-failing/apply_to_call_bench.js ! test/script/currently-failing/clone_ir.js ! test/script/currently-failing/gettersetter.js ! test/script/currently-failing/logcoverage.js ! test/script/currently-failing/optimistic_check_type_cases.js ! test/script/currently-failing/property_delete.js ! test/script/error/JDK-8008814-1.js ! test/script/error/JDK-8008814-2.js ! test/script/error/JDK-8016522.js ! test/script/error/JDK-8020437-2.js ! test/script/error/JDK-8020437.js ! test/script/error/JDK-8026039.js ! test/script/error/JDK-8026039.js.EXPECTED ! test/script/error/JDK-8027933.js ! test/script/error/JDK-8039047.js ! test/script/error/NASHORN-154/function_mult_params_in_strict.js ! test/script/error/NASHORN-154/improper_return_break_continue.js ! test/script/error/NASHORN-154/invalid_lvalue.js ! test/script/error/NASHORN-154/literal_data_and_accessor.js ! test/script/error/NASHORN-154/literal_mult_getters.js ! test/script/error/NASHORN-154/literal_mult_prop_in_strict.js ! test/script/error/NASHORN-154/with_in_strict.js ! test/script/error/NASHORN-214.js ! test/script/error/NASHORN-35.js ! test/script/error/NASHORN-39.js ! test/script/error/NASHORN-568.js ! test/script/error/NASHORN-57.js ! test/script/error/NASHORN-668.js ! test/script/error/quotemissing.js ! test/script/error/strictmode.js ! test/script/jfx/kaleidoscope.js ! test/script/jfx/spread.js ! test/script/maptests/builtins.js ! test/script/maptests/constructor.js ! test/script/maptests/maputil.js ! test/script/maptests/object_create.js ! test/script/maptests/object_literals.js ! test/script/maptests/point.js ! test/script/maptests/property_add.js ! test/script/maptests/proto.js ! test/script/markdown.js ! test/script/markdown/anchors-by-reference.js ! test/script/markdown/automatic-anchors.js ! test/script/markdown/blockquote-nested-markdown.js ! test/script/markdown/blockquote.js ! test/script/markdown/code-block-html-escape.js ! test/script/markdown/code-block.js ! test/script/markdown/doubline-list.js ! test/script/markdown/emphasis.js ! test/script/markdown/escaped-number-period.js ! test/script/markdown/escaping.js ! test/script/markdown/github-style-at-start.js ! test/script/markdown/github-style-codeblock.js ! test/script/markdown/github-style-linebreaks.js ! test/script/markdown/h1-with-double-hash.js ! test/script/markdown/h1-with-equals.js ! test/script/markdown/h1-with-single-hash.js ! test/script/markdown/h2-with-dashes.js ! test/script/markdown/h2-with-double-hash.js ! test/script/markdown/h2-with-single-hash.js ! test/script/markdown/h3-with-double-hash.js ! test/script/markdown/h3-with-single-hash.js ! test/script/markdown/h4-with-single-hash.js ! test/script/markdown/h5-with-single-hash.js ! test/script/markdown/h6-with-single-hash.js ! test/script/markdown/horizontal-rules.js ! test/script/markdown/html5-strutural-tags.js ! test/script/markdown/images.js ! test/script/markdown/implicit-anchors.js ! test/script/markdown/inline-anchors.js ! test/script/markdown/inline-code.js ! test/script/markdown/inline-style-tag.js ! test/script/markdown/lazy-blockquote.js ! test/script/markdown/list-with-blockquote.js ! test/script/markdown/list-with-code.js ! test/script/markdown/multi-paragraph-list.js ! test/script/markdown/multiline-unordered-list.js ! test/script/markdown/nested-blockquote.js ! test/script/markdown/ordered-list-same-number.js ! test/script/markdown/ordered-list-wrong-numbers.js ! test/script/markdown/ordered-list.js ! test/script/markdown/relative-anchors.js ! test/script/markdown/simple-paragraph.js ! test/script/markdown/strong.js ! test/script/markdown/table-basic.js ! test/script/markdown/table-large.js ! test/script/markdown/table-with-equals.js ! test/script/markdown/unordered-list-asterisk.js ! test/script/markdown/unordered-list-minus.js ! test/script/markdown/unordered-list-plus.js ! test/script/markdown/url-with-parenthesis.js ! test/script/nosecurity/nosecurity.js ! test/script/sandbox/JDK-8031106.js ! test/script/sandbox/NASHORN-525.js ! test/script/sandbox/arrayclass.js ! test/script/sandbox/classbind.js ! test/script/sandbox/classloader.js ! test/script/sandbox/doprivileged.js ! test/script/sandbox/engine.js ! test/script/sandbox/env.js ! test/script/sandbox/exec.js ! test/script/sandbox/exit.js ! test/script/sandbox/file.js ! test/script/sandbox/interfaceimpl.js ! test/script/sandbox/javaextend.js ! test/script/sandbox/jsadapter.js ! test/script/sandbox/loadLibrary.js ! test/script/sandbox/loadcompat.js ! test/script/sandbox/nashorninternals.js ! test/script/sandbox/net.js ! test/script/sandbox/property.js ! test/script/sandbox/reflection.js ! test/script/sandbox/runnable.js ! test/script/sandbox/unsafe.js ! test/script/test262.js ! test/script/test262_single.js ! test/script/trusted/JDK-8006424.js ! test/script/trusted/JDK-8006529.js ! test/script/trusted/JDK-8008305.js ! test/script/trusted/JDK-8008305_subtest.js ! test/script/trusted/JDK-8020809.js ! test/script/trusted/JDK-8021129.js ! test/script/trusted/JDK-8021189.js ! test/script/trusted/JDK-8025629.js ! test/script/trusted/JDK-8032060.js ! test/script/trusted/NASHORN-638.js ! test/script/trusted/NASHORN-653.js ! test/script/trusted/event_queue.js ! test/script/trusted/getenv.js ! test/script/trusted/optimistic_recompilation.js ! test/src/jdk/nashorn/api/NashornSQLDriver.java ! test/src/jdk/nashorn/api/javaaccess/ArrayConversionTest.java ! test/src/jdk/nashorn/api/javaaccess/ConsStringTest.java ! test/src/jdk/nashorn/api/javaaccess/NumberBoxingTest.java ! test/src/jdk/nashorn/api/javaaccess/SharedObject.java ! test/src/jdk/nashorn/api/scripting/InvocableTest.java ! test/src/jdk/nashorn/api/scripting/PluggableJSObjectTest.java ! test/src/jdk/nashorn/api/scripting/ScopeTest.java ! test/src/jdk/nashorn/api/scripting/ScriptEngineSecurityTest.java ! test/src/jdk/nashorn/api/scripting/ScriptEngineTest.java ! test/src/jdk/nashorn/api/scripting/ScriptObjectMirrorTest.java ! test/src/jdk/nashorn/internal/codegen/CompilerTest.java ! test/src/jdk/nashorn/internal/performance/OctaneTest.java ! test/src/jdk/nashorn/internal/performance/PerformanceWrapper.java ! test/src/jdk/nashorn/internal/runtime/CodeStoreAndPathTest.java ! test/src/jdk/nashorn/internal/runtime/ExceptionsNotSerializable.java ! test/src/jdk/nashorn/internal/runtime/NoPersistenceCachingTest.java ! test/src/jdk/nashorn/internal/runtime/SourceTest.java ! test/src/jdk/nashorn/internal/runtime/TrustedScriptEngineTest.java ! test/src/jdk/nashorn/internal/runtime/regexp/JdkRegExpTest.java ! test/src/jdk/nashorn/internal/runtime/regexp/joni/JoniTest.java ! test/src/jdk/nashorn/internal/test/framework/AbstractScriptRunnable.java ! test/src/jdk/nashorn/internal/test/framework/JSJUnitReportReporter.java ! test/src/jdk/nashorn/internal/test/framework/ScriptRunnable.java ! test/src/jdk/nashorn/internal/test/framework/ScriptTest.java ! test/src/jdk/nashorn/internal/test/framework/SharedContextEvaluator.java ! test/src/jdk/nashorn/internal/test/framework/TestFinder.java ! test/src/jdk/nashorn/internal/test/framework/TestReorderInterceptor.java ! test/src/jdk/nashorn/test/models/ConstructorWithArgument.java ! test/src/jdk/nashorn/test/models/DessertToppingFloorWaxDriver.java ! test/src/jdk/nashorn/test/models/IntFloatOverloadSelection.java ! test/src/jdk/nashorn/test/models/Jdk8011362TestSubject.java ! test/src/jdk/nashorn/test/models/Nashorn401TestSubject.java ! test/src/jdk/nashorn/test/models/OuterClass.java ! test/src/jdk/nashorn/test/models/OverrideObject.java ! test/src/jdk/nashorn/test/models/PropertyBind.java ! test/src/jdk/nashorn/test/models/StringArgs.java ! test/src/jdk/nashorn/test/models/VarArgConstructor.java ! test/src/jdk/nashorn/test/tools/StaticTypeInspector.java Changeset: 8d35928f8db5 Author: attila Date: 2014-06-04 14:32 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/8d35928f8db5 8044502: Get rid of global optimistic flag Reviewed-by: lagergren, sundar ! make/build.xml ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/ScriptEnvironment.java ! src/jdk/nashorn/internal/runtime/resources/Options.properties ! test/script/trusted/event_queue.js ! test/script/trusted/optimistic_recompilation.js ! test/src/jdk/nashorn/api/javaaccess/NumberAccessTest.java ! test/src/jdk/nashorn/api/javaaccess/NumberBoxingTest.java ! test/src/jdk/nashorn/internal/runtime/CodeStoreAndPathTest.java Changeset: 1987caf5e034 Author: sundar Date: 2014-06-04 19:01 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/1987caf5e034 8044695: __stack__ becomes visible in Error properties Reviewed-by: lagergren, jlaskey, attila ! src/jdk/nashorn/internal/objects/NativeError.java + test/script/basic/JDK-8044695.js Changeset: 2794e13491d0 Author: attila Date: 2014-06-04 16:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/2794e13491d0 8044803: Unnecessary restOf check Reviewed-by: hannesw, jlaskey ! src/jdk/nashorn/internal/codegen/CodeGenerator.java Changeset: 0e4a3071c236 Author: attila Date: 2014-06-04 20:43 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0e4a3071c236 8038413: NPE in unboxInteger Reviewed-by: jlaskey, sundar ! src/jdk/internal/dynalink/support/TypeUtilities.java + test/script/basic/JDK-8038413.js + test/script/basic/JDK-8038413.js.EXPECTED Changeset: 353483cfe8c6 Author: attila Date: 2014-06-05 12:15 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/353483cfe8c6 8046014: MultiGlobalCompiledScript should cache :createProgramFunction handle Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/runtime/Context.java Changeset: a43d59738770 Author: attila Date: 2014-06-05 12:16 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/a43d59738770 8044816: On-demand compiled top-level program doesn't need :createProgramFunction Reviewed-by: jlaskey, lagergren, sundar ! src/jdk/nashorn/internal/codegen/CodeGenerator.java Changeset: 4a47b7cfecdf Author: lana Date: 2014-06-05 19:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/4a47b7cfecdf Merge - bin/checkintest.sh - bin/verbose_octane.bat - bin/verbose_octane.sh - src/jdk/nashorn/internal/codegen/Attr.java - src/jdk/nashorn/internal/codegen/FinalizeTypes.java - src/jdk/nashorn/internal/codegen/RangeAnalyzer.java - src/jdk/nashorn/internal/codegen/types/Range.java - src/jdk/nashorn/internal/ir/TemporarySymbols.java - src/jdk/nashorn/internal/runtime/DebugLogger.java - src/jdk/nashorn/internal/runtime/Logging.java - test/script/basic/JDK-8010697.js - test/script/basic/JDK-8010697.js.EXPECTED - test/script/basic/arraysIntKey.js - test/script/basic/arraysIntKey.js.EXPECTED - test/script/basic/ranges_disabled.js - test/script/basic/ranges_disabled.js.EXPECTED - test/script/basic/ranges_enabled.js - test/script/basic/ranges_enabled.js.EXPECTED - test/script/basic/ranges_payload.js - test/script/basic/runsunspider-eager.js - test/script/basic/runsunspider-lazy.js - test/script/basic/runsunspider-lazy.js.EXPECTED - test/script/maptests/property_delete.js Changeset: 893c337bc95f Author: katleman Date: 2014-06-12 10:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/893c337bc95f Added tag jdk9-b17 for changeset 4a47b7cfecdf ! .hgtags Changeset: 7ff4bb87bdc8 Author: katleman Date: 2014-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/7ff4bb87bdc8 Added tag jdk9-b18 for changeset 893c337bc95f ! .hgtags Changeset: d3cc5b704bfe Author: hannesw Date: 2014-06-06 16:51 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/d3cc5b704bfe 8046215: Running uncompilable scripts throws NullPointerException Reviewed-by: sundar, jlaskey ! src/jdk/nashorn/internal/runtime/Context.java ! test/src/jdk/nashorn/internal/runtime/ContextTest.java Changeset: 96f475bfb917 Author: attila Date: 2014-06-09 16:00 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/96f475bfb917 8046025: AccessorProperty.getGetter is not threadsafe Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/internal/runtime/AccessorProperty.java Changeset: 71cfc5012321 Author: sundar Date: 2014-06-11 08:53 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/71cfc5012321 8044798: API for debugging Nashorn Reviewed-by: jlaskey, hannesw ! src/jdk/nashorn/internal/runtime/DebuggerSupport.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/Source.java + test/script/nosecurity/JDK-8044798.js + test/script/nosecurity/JDK-8044798.js.EXPECTED + test/script/nosecurity/debuggersupportapi.js + test/script/nosecurity/debuggersupportapi.js.EXPECTED Changeset: afba7593f395 Author: sundar Date: 2014-06-12 17:39 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/afba7593f395 8044517: Run & debug single Nashorn test Reviewed-by: lagergren, attila Contributed-by: jaroslav.tulach at oracle.com ! make/build.xml ! make/nbproject/ide-file-targets.xml ! make/nbproject/project.xml Changeset: 344ec7352124 Author: lana Date: 2014-06-12 15:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/344ec7352124 Merge Changeset: 46e36a92e37c Author: lana Date: 2014-06-18 10:08 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/46e36a92e37c Merge Changeset: ada4855e44e2 Author: katleman Date: 2014-06-19 11:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/ada4855e44e2 Added tag jdk9-b19 for changeset 46e36a92e37c ! .hgtags Changeset: b9a5c20a37b9 Author: lagergren Date: 2014-06-17 11:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/b9a5c20a37b9 8046898: Make sure that lazy compilation is the default, remove redundant "enable lazy compilation" flags, added warning message if compile logging is enabled and lazy is switched off. Verified existing test suite code coverage equivalence between lazy and eager. Reviewed-by: attila, hannesw ! buildtools/nasgen/src/jdk/nashorn/internal/tools/nasgen/MemberInfo.java ! make/project.properties ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/ir/BinaryNode.java ! src/jdk/nashorn/internal/ir/FunctionNode.java ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/FinalScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/PropertyMap.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/Source.java ! src/jdk/nashorn/internal/runtime/arrays/ArrayFilter.java ! src/jdk/nashorn/internal/runtime/logging/DebugLogger.java ! test/src/UnnamedPackageTestCallback.java Changeset: 2a4a7831f274 Author: sundar Date: 2014-06-17 15:55 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/2a4a7831f274 8047035: (function() "hello")() crashes in Lexer with jdk9 Reviewed-by: lagergren, hannesw, attila ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/parser/Token.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java + test/script/basic/JDK-8047035.js + test/script/basic/JDK-8047035.js.EXPECTED Changeset: 1a9340351629 Author: sundar Date: 2014-06-17 18:23 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/1a9340351629 8047057: Add a regression test for the passing test cases from JDK-8042304 Reviewed-by: lagergren, attila + test/script/basic/JDK-8047057.js Changeset: fdfda6a035c6 Author: lana Date: 2014-06-18 10:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/fdfda6a035c6 Merge Changeset: d703c59c556f Author: lana Date: 2014-06-20 10:14 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/d703c59c556f Merge Changeset: 174cf53bce4e Author: katleman Date: 2014-06-26 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/174cf53bce4e Added tag jdk9-b20 for changeset d703c59c556f ! .hgtags Changeset: 0d5282ab2aef Author: katleman Date: 2014-07-03 11:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0d5282ab2aef Added tag jdk9-b21 for changeset 174cf53bce4e ! .hgtags Changeset: 5d4795d6c1e2 Author: lagergren Date: 2014-06-19 10:46 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/5d4795d6c1e2 8047078: Fuzzing bug discovered when ArrayLiteralNodes weren't immutable Reviewed-by: attila, sundar ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/LocalVariableTypesCalculator.java ! src/jdk/nashorn/internal/codegen/Splitter.java ! src/jdk/nashorn/internal/codegen/WeighNodes.java ! src/jdk/nashorn/internal/ir/LiteralNode.java ! test/script/basic/JDK-8047057.js + test/script/basic/JDK-8047078.js Changeset: 4489c79d4f3c Author: sundar Date: 2014-06-19 20:36 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/4489c79d4f3c 8047369: Add regression tests for passing test cases of JDK-8024971 Reviewed-by: hannesw, jlaskey + test/script/basic/JDK-8047369.js Changeset: 69ac4832e447 Author: attila Date: 2014-06-20 12:25 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/69ac4832e447 8046921: Deoptimization type information peristence Reviewed-by: hannesw, lagergren ! make/project.properties ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/Compiler.java + src/jdk/nashorn/internal/codegen/OptimisticTypesPersistence.java ! src/jdk/nashorn/internal/codegen/TypeMap.java ! src/jdk/nashorn/internal/runtime/CompiledFunction.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! test/script/basic/JDK-8030182_2.js.EXPECTED Changeset: 6afee63aa1cc Author: attila Date: 2014-06-23 10:59 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/6afee63aa1cc 8046905: apply on apply is broken Reviewed-by: hannesw, lagergren ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java + test/script/basic/JDK-8046905.js + test/script/basic/JDK-8046905.js.EXPECTED ! test/script/basic/JDK-8047057.js Changeset: 3edd4da9386f Author: sundar Date: 2014-06-23 21:23 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/3edd4da9386f 8047728: (function(x){var o={x:0}; with(o){delete x} return o.x})() evaluates to 0 instead of undefined Reviewed-by: jlaskey, hannesw, attila + bin/jjsdebug.sh ! make/nbproject/ide-targets.xml ! src/jdk/nashorn/internal/codegen/AssignSymbols.java ! src/jdk/nashorn/internal/codegen/LocalVariableTypesCalculator.java + test/script/basic/JDK-8047728.js Changeset: 72493c5057dd Author: hannesw Date: 2014-06-23 18:32 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/72493c5057dd 8046201: Avoid repeated flattening of nested ConsStrings Reviewed-by: lagergren, attila ! src/jdk/nashorn/internal/runtime/ConsString.java + test/src/jdk/nashorn/internal/runtime/ConsStringTest.java Changeset: 4f3468f46d20 Author: sundar Date: 2014-06-24 19:43 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/4f3468f46d20 8047959: bindings created for declarations in eval code are not mutable Reviewed-by: jlaskey, attila ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/FieldObjectCreator.java ! src/jdk/nashorn/internal/codegen/LocalVariableTypesCalculator.java ! src/jdk/nashorn/internal/codegen/MapCreator.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/Source.java + test/script/basic/JDK-8047959.js + test/script/basic/JDK-8047959.js.EXPECTED Changeset: cf90d5f11b98 Author: attila Date: 2014-06-24 19:29 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/cf90d5f11b98 8048009: Type info caching accidentally defeated Reviewed-by: hannesw, jlaskey ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/OptimisticTypesPersistence.java Changeset: a8bab91498c2 Author: sundar Date: 2014-06-25 17:08 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/a8bab91498c2 8048071: eval within 'with' statement does not use correct scope if with scope expression has a copy of eval Reviewed-by: hannesw, jlaskey ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/ir/IdentNode.java + test/script/basic/JDK-8048071.js + test/script/basic/JDK-8048071.js.EXPECTED Changeset: 0489dcbb882b Author: hannesw Date: 2014-06-25 14:36 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0489dcbb882b 8048079: Persistent code store is broken after optimistic types merge Reviewed-by: sundar, jlaskey, attila ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java + test/script/basic/JDK-8048079_1.js + test/script/basic/JDK-8048079_1.js.EXPECTED + test/script/basic/JDK-8048079_2.js + test/script/basic/JDK-8048079_2.js.EXPECTED ! test/src/jdk/nashorn/internal/runtime/CodeStoreAndPathTest.java Changeset: 6ab069e48456 Author: attila Date: 2014-06-26 13:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/6ab069e48456 8047357: More precise synthetic return + unreachable throw Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/codegen/AssignSymbols.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/LocalVariableTypesCalculator.java ! src/jdk/nashorn/internal/codegen/Lower.java ! src/jdk/nashorn/internal/ir/Block.java ! src/jdk/nashorn/internal/ir/CaseNode.java ! src/jdk/nashorn/internal/ir/ExpressionStatement.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/ir/Node.java ! src/jdk/nashorn/internal/ir/Statement.java + src/jdk/nashorn/internal/ir/Terminal.java ! src/jdk/nashorn/internal/ir/debug/ASTWriter.java ! src/jdk/nashorn/internal/ir/debug/PrintVisitor.java ! test/script/basic/JDK-8047057.js + test/script/basic/JDK-8047357.js + test/script/basic/JDK-8047357.js.EXPECTED Changeset: 75a86907fa90 Author: attila Date: 2014-06-26 15:36 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/75a86907fa90 8047371: local variable declaration in TypeEvaluator should use ScriptObject.addOwnProperty instead of .set Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/internal/codegen/TypeEvaluator.java + test/script/basic/JDK-8047371.js + test/script/basic/JDK-8047371.js.EXPECTED Changeset: 2bb8aaa1192e Author: lagergren Date: 2014-06-27 10:47 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/2bb8aaa1192e 8048505: ScriptingFunctions.readFully couldn't handle file names represented as ConsStrings Reviewed-by: sundar, hannesw ! src/jdk/nashorn/internal/runtime/ScriptingFunctions.java + test/script/basic/JDK-8048505.js + test/script/basic/JDK-8048505.js.EXPECTED Changeset: 33e826f0e742 Author: sundar Date: 2014-06-27 21:54 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/33e826f0e742 8046013: TypeError: Cannot apply "with" to non script object Reviewed-by: lagergren, hannesw ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java ! src/jdk/nashorn/internal/runtime/WithObject.java + test/script/basic/JDK-8046013.js + test/script/basic/JDK-8046013.js.EXPECTED ! test/src/jdk/nashorn/api/scripting/ScriptEngineTest.java Changeset: d707226979a9 Author: sundar Date: 2014-06-30 20:23 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/d707226979a9 8048718: JSON.parse('{"0":0, "64":0}') throws ArrayindexOutOfBoundsException Reviewed-by: lagergren, hannesw, attila ! src/jdk/nashorn/internal/runtime/ScriptObject.java + test/script/basic/JDK-8048718.js Changeset: 6d8005c341ee Author: hannesw Date: 2014-06-30 17:31 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/6d8005c341ee 8048586: String concatenation with optimistic types is slow Reviewed-by: lagergren, attila ! src/jdk/nashorn/internal/codegen/LocalVariableTypesCalculator.java ! src/jdk/nashorn/internal/codegen/types/ObjectType.java ! src/jdk/nashorn/internal/codegen/types/Type.java ! src/jdk/nashorn/internal/runtime/JSType.java + test/script/basic/JDK-8048586.js Changeset: 947cd4cdca37 Author: sundar Date: 2014-07-01 17:37 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/947cd4cdca37 8047359: large string size RangeError should be thrown rather than reporting negative length Reviewed-by: hannesw, attila ! make/build.xml ! src/jdk/internal/dynalink/beans/OverloadedMethod.java ! src/jdk/internal/dynalink/support/CompositeTypeBasedGuardingDynamicLinker.java ! src/jdk/nashorn/internal/codegen/FunctionSignature.java ! src/jdk/nashorn/internal/ir/debug/NashornClassReader.java ! src/jdk/nashorn/internal/objects/NativeDate.java ! src/jdk/nashorn/internal/runtime/ConsString.java ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java ! src/jdk/nashorn/internal/runtime/Source.java ! src/jdk/nashorn/internal/runtime/UserAccessorProperty.java ! src/jdk/nashorn/internal/runtime/arrays/ByteBufferArrayData.java ! src/jdk/nashorn/internal/runtime/linker/InvokeByName.java ! src/jdk/nashorn/internal/runtime/resources/Messages.properties + test/script/basic/JDK-8047359.js Changeset: 08e791e084ae Author: lana Date: 2014-07-01 14:27 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/08e791e084ae Merge Changeset: fd943e294985 Author: sundar Date: 2014-07-02 18:10 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/fd943e294985 8043232: Index selection of overloaded java new constructors Reviewed-by: attila, hannesw, jlaskey ! src/jdk/internal/dynalink/beans/AbstractJavaLinker.java ! src/jdk/internal/dynalink/beans/BeansLinker.java ! src/jdk/internal/dynalink/beans/CallerSensitiveDynamicMethod.java ! src/jdk/internal/dynalink/beans/DynamicMethod.java ! src/jdk/internal/dynalink/beans/DynamicMethodLinker.java ! src/jdk/internal/dynalink/beans/OverloadedDynamicMethod.java ! src/jdk/internal/dynalink/beans/SimpleDynamicMethod.java ! src/jdk/internal/dynalink/beans/StaticClassLinker.java ! src/jdk/nashorn/internal/runtime/NativeJavaPackage.java ! src/jdk/nashorn/internal/runtime/linker/NashornBottomLinker.java ! src/jdk/nashorn/internal/runtime/resources/Messages.properties + test/script/basic/JDK-8043232.js + test/script/basic/JDK-8043232.js.EXPECTED Changeset: f364357f0290 Author: attila Date: 2014-07-03 11:18 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/f364357f0290 8049222: JSType class exposes public mutable arrays Reviewed-by: hannesw, sundar ! src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/UserAccessorProperty.java Changeset: 0dd54eea1a25 Author: attila Date: 2014-07-03 11:18 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0dd54eea1a25 8049223: RewriteException class exposes public mutable arrays Reviewed-by: hannesw, sundar ! src/jdk/nashorn/internal/runtime/RewriteException.java Changeset: ad26ecacc9a3 Author: attila Date: 2014-07-03 11:18 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/ad26ecacc9a3 8049225: Source class exposes public mutable array Reviewed-by: hannesw, sundar ! src/jdk/nashorn/internal/codegen/OptimisticTypesPersistence.java ! src/jdk/nashorn/internal/runtime/CodeStore.java ! src/jdk/nashorn/internal/runtime/Source.java Changeset: 0e923ff689b9 Author: attila Date: 2014-07-03 16:15 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0e923ff689b9 8047166: 'do with({}) break ; while(0);' crashes in CodeGenerator Reviewed-by: hannesw, jlaskey ! src/jdk/nashorn/internal/codegen/CodeGenerator.java + test/script/basic/JDK-8047166.js Changeset: 75b62ab45160 Author: attila Date: 2014-07-03 17:14 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/75b62ab45160 8047331: Assertion in CompiledFunction when running earley-boyer after Merge Reviewed-by: hannesw, jlaskey ! src/jdk/nashorn/internal/runtime/CompiledFunction.java Changeset: 9687a3590924 Author: sundar Date: 2014-07-03 23:03 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/9687a3590924 8049242: Explicit constructor overload selection should work with StaticClass as well Reviewed-by: jlaskey, attila ! src/jdk/internal/dynalink/beans/AbstractJavaLinker.java ! src/jdk/internal/dynalink/beans/StaticClassLinker.java ! test/script/basic/JDK-8043232.js ! test/script/basic/JDK-8043232.js.EXPECTED + test/script/basic/JDK-8049242.js + test/script/basic/JDK-8049242.js.EXPECTED Changeset: a9d39bcfeb1b Author: lana Date: 2014-07-09 10:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/a9d39bcfeb1b Merge Changeset: e80633fe720b Author: katleman Date: 2014-07-10 12:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/e80633fe720b Added tag jdk9-b22 for changeset a9d39bcfeb1b ! .hgtags Changeset: 3ec6924f7b57 Author: sundar Date: 2014-07-04 15:56 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/3ec6924f7b57 8049086: Minor API convenience functions on "Java" object Reviewed-by: attila, hannesw ! src/jdk/nashorn/api/scripting/ScriptUtils.java ! src/jdk/nashorn/internal/objects/NativeJava.java ! src/jdk/nashorn/internal/runtime/linker/BoundDynamicMethod.java + test/script/basic/JDK-8049086.js + test/script/basic/JDK-8049086.js.EXPECTED Changeset: 94075abda229 Author: sundar Date: 2014-07-04 20:15 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/94075abda229 8044760: Avoid PropertyMap duplicate for global instances Reviewed-by: attila, hannesw ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeDebug.java ! src/jdk/nashorn/internal/runtime/PropertyMap.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java Changeset: 40995fbd176b Author: sundar Date: 2014-07-08 16:30 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/40995fbd176b 8049524: Global object initialization via javax.script API should be minimal Reviewed-by: attila, hannesw ! src/jdk/nashorn/api/scripting/NashornException.java ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java - src/jdk/nashorn/api/scripting/resources/engine.js ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/ScriptFunctionImpl.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/ECMAErrors.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! test/src/jdk/nashorn/internal/runtime/CodeStoreAndPathTest.java Changeset: d714b9555e5d Author: attila Date: 2014-07-08 13:13 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/d714b9555e5d 8047067: all eval arguments need to be copied in Lower Reviewed-by: lagergren, sundar ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/Lower.java ! src/jdk/nashorn/internal/ir/CallNode.java ! src/jdk/nashorn/internal/objects/Global.java ! test/script/basic/JDK-8047057.js + test/script/basic/JDK-8047067.js Changeset: aa3fda2d2967 Author: lana Date: 2014-07-10 12:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/aa3fda2d2967 Merge - src/jdk/nashorn/api/scripting/resources/engine.js Changeset: 0842814207c0 Author: katleman Date: 2014-07-17 09:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/nashorn/rev/0842814207c0 Added tag jdk9-b23 for changeset aa3fda2d2967 ! .hgtags From ed at camswl.com Mon Jul 21 12:17:06 2014 From: ed at camswl.com (ed at camswl.com) Date: Mon, 21 Jul 2014 12:17:06 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: Add support for AES Intrinsics Message-ID: <201407211217.s6LCH6Vq014190@aojmv0008> Changeset: 135fb0fc4123 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-21 10:46 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/135fb0fc4123 Add support for AES Intrinsics ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp ! src/cpu/aarch64/vm/vm_version_aarch64.cpp From edward.nevill at linaro.org Mon Jul 21 16:36:07 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Mon, 21 Jul 2014 17:36:07 +0100 Subject: [aarch64-port-dev ] RFR: Refactor SIMD instructions using INSN macros Message-ID: <1405960567.25467.42.camel@localhost.localdomain> Hi, The following patch refactors the SIMD instructions using INSN macros. In addition to removing about 100 lines of code it now supports a larger chunk of simd instructions and is more orthogonal in what it supports. Instructions now supported using INSN macros are ld1, ld2, ld3, ld4, st1, st2, st3, st4, ld1r, ld2r, ld3r, ld4r eor, orr, and, bic, bif, bit, bsl, orn aese, aesd, aesmc, aesimc I have tested that AES and CRC intrinsics still work on appropriate HW and have done a jtreg/hotspot test. OK? Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1405959820 -3600 # Mon Jul 21 17:23:40 2014 +0100 # Node ID c4af536cc45c9e0928e51408b07de2d3f9193d55 # Parent 135fb0fc41236934277396d7d0d6bb2714093ad6 Refactor SIMD instructions using INSN macros diff -r 135fb0fc4123 -r c4af536cc45c src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Mon Jul 21 10:46:47 2014 +0100 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Mon Jul 21 17:23:40 2014 +0100 @@ -1857,6 +1857,154 @@ S32, D64, Q128 }; +void v_ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int op1, int op2) +{ + starti; + f(0,31), f((int)T & 1, 30); + f(op1, 29, 21), f(0, 20, 16), f(op2, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); +} +void v_ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, + int imm, int op1, int op2) +{ + starti; + f(0,31), f((int)T & 1, 30); + f(op1 | 0b100, 29, 21), f(0b11111, 20, 16), f(op2, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); +} +void v_ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, + Register Xm, int op1, int op2) +{ + starti; + f(0,31), f((int)T & 1, 30); + f(op1 | 0b100, 29, 21), rf(Xm, 16), f(op2, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); +} + +#define INSN1(NAME, op1, op2) \ + void NAME(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { \ + v_ld_st(Vt, T, Xn, op1, op2); \ + } \ + void NAME(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { \ + v_ld_st(Vt, T, Xn, imm, op1, op2); \ + } \ + void NAME(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { \ + v_ld_st(Vt, T, Xn, Xm, op1, op2); \ + } +#define INSN2(NAME, op1, op2) \ + void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn) { \ + assert(Vt->successor() == Vt2, "Registers must be ordered"); \ + v_ld_st(Vt, T, Xn, op1, op2); \ + } \ + void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, \ + int imm) { \ + assert(Vt->successor() == Vt2, "Registers must be ordered"); \ + v_ld_st(Vt, T, Xn, imm, op1, op2); \ + } \ + void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, \ + Register Xm) { \ + assert(Vt->successor() == Vt2, "Registers must be ordered"); \ + v_ld_st(Vt, T, Xn, Xm, op1, op2); \ + } +#define INSN3(NAME, op1, op2) \ + void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ + SIMD_Arrangement T, Register Xn) { \ + assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ + "Registers must be ordered"); \ + v_ld_st(Vt, T, Xn, op1, op2); \ + } \ + void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ + SIMD_Arrangement T, Register Xn, int imm) { \ + assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ + "Registers must be ordered"); \ + v_ld_st(Vt, T, Xn, imm, op1, op2); \ + } \ + void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ + SIMD_Arrangement T, Register Xn, Register Xm) { \ + assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ + "Registers must be ordered"); \ + v_ld_st(Vt, T, Xn, Xm, op1, op2); \ + } +#define INSN4(NAME, op1, op2) \ + void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ + FloatRegister Vt4, SIMD_Arrangement T, Register Xn) { \ + assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ + Vt3->successor() == Vt4, "Registers must be ordered"); \ + v_ld_st(Vt, T, Xn, op1, op2); \ + } \ + void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ + FloatRegister Vt4, SIMD_Arrangement T, Register Xn, int imm) { \ + assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ + Vt3->successor() == Vt4, "Registers must be ordered"); \ + v_ld_st(Vt, T, Xn, imm, op1, op2); \ + } \ + void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ + FloatRegister Vt4, SIMD_Arrangement T, Register Xn, Register Xm) { \ + assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ + Vt3->successor() == Vt4, "Registers must be ordered"); \ + v_ld_st(Vt, T, Xn, Xm, op1, op2); \ + } + + INSN1(v_ld1, 0b001100010, 0b0111); + INSN2(v_ld1, 0b001100010, 0b1010); + INSN3(v_ld1, 0b001100010, 0b0110); + INSN4(v_ld1, 0b001100010, 0b0010); + + INSN2(v_ld2, 0b001100010, 0b1000); + INSN3(v_ld3, 0b001100010, 0b0100); + INSN4(v_ld4, 0b001100010, 0b0000); + + INSN1(v_st1, 0b001100000, 0b0111); + INSN2(v_st1, 0b001100000, 0b1010); + INSN3(v_st1, 0b001100000, 0b0110); + INSN4(v_st1, 0b001100000, 0b0010); + + INSN2(v_st2, 0b001100000, 0b1000); + INSN3(v_st3, 0b001100000, 0b0100); + INSN4(v_st4, 0b001100000, 0b0000); + + INSN1(v_ld1r, 0b001101010, 0b1100); + INSN2(v_ld2r, 0b001101011, 0b1100); + INSN3(v_ld3r, 0b001101010, 0b1110); + INSN4(v_ld4r, 0b001101011, 0b1110); + +#undef INSN1 +#undef INSN2 +#undef INSN3 +#undef INSN4 + +#define INSN(NAME, opc) \ + void NAME(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn, FloatRegister Vm) { \ + starti; \ + assert(T == T8B || T == T16B, "must be T8B or T16B"); \ + f(0, 31), f((int)T & 1, 30), f(opc, 29, 21); \ + rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); \ + } + + INSN(v_eor, 0b101110001); + INSN(v_orr, 0b001110101); + INSN(v_and, 0b001110001); + INSN(v_bic, 0b001110011); + INSN(v_bif, 0b101110111); + INSN(v_bit, 0b101110101); + INSN(v_bsl, 0b101110011); + INSN(v_orn, 0b001110111); + +#undef INSN + +#define INSN(NAME, opc) \ + void NAME(FloatRegister Vd, FloatRegister Vn) { \ + starti; \ + f(opc, 31, 10), rf(Vn, 5), rf(Vd, 0); \ + } + + INSN(v_aese, 0b0100111000101000010010); + INSN(v_aesd, 0b0100111000101000010110); + INSN(v_aesmc, 0b0100111000101000011010); + INSN(v_aesimc, 0b0100111000101000011110); + +#undef INSN + void v_shl(FloatRegister Vd, FloatRegister Vn, SIMD_Arrangement T, int shift){ starti; /* The encodings for the immh:immb fields (bits 22:16) are @@ -1924,229 +2072,6 @@ v_pmull(Vd, Ta, Vn, Vm, Tb); } - void v_ld1(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { - starti; - f(0,31), f((int)T & 1, 30), f(0b00110001000000, 29, 16), f(0b0111, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - f(0,31), f((int)T & 1, 30), f(0b00110001000000, 29, 16), f(0b1010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - f(0,31), f((int)T & 1, 30), f(0b00110001000000, 29, 16), f(0b0110, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); - f(0,31), f((int)T & 1, 30), f(0b00110001000000, 29, 16), f(0b0010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - - void v_ld1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { - starti; - assert((8 << ((int)T & 1)) == imm, "size/imm mismatch"); - f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), f(0b11111, 20, 16), f(0b0111, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { - starti; - f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), rf(Xm, 16), f(0b0111, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, int imm) { - starti; - assert((16 << ((int)T & 1)) == imm, "size/imm mismatch"); - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), f(0b11111, 20, 16), f(0b1010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, Register Xm) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), rf(Xm, 16), f(0b1010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, int imm) { - starti; - assert((24 << ((int)T & 1)) == imm, "size/imm mismatch"); - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), f(0b11111, 20, 16), f(0b0110, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, Register Xm) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), rf(Xm, 16), f(0b0110, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, int imm) { - starti; - assert((32 << ((int)T & 1)) == imm, "size/imm mismatch"); - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); - f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), f(0b11111, 20, 16), f(0b0010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, Register Xm) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); - f(0, 31), f((int)T & 1, 30), f(0b001100110, 29, 21), rf(Xm, 16), f(0b0010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - - void v_st1(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { - starti; - f(0, 31), f((int)T & 1, 30), f(0b00110000000000, 29, 16), f(0b0111, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - f(0, 31), f((int)T & 1, 30), f(0b00110000000000, 29, 16), f(0b1010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - f(0, 31), f((int)T & 1, 30), f(0b00110000000000, 29, 16), f(0b0110, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); - f(0, 31), f((int)T & 1, 30), f(0b00110000000000, 29, 16), f(0b0010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - - void v_st1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { - starti; - assert((8 << ((int)T & 1)) == imm, "size/imm mismatch"); - f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0111, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { - starti; - f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0111, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, int imm) { - starti; - assert((16 << ((int)T & 1)) == imm, "size/imm mismatch"); - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b1010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, Register Xm) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b1010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, int imm) { - starti; - assert((24 << ((int)T & 1)) == imm, "size/imm mismatch"); - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0110, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, Register Xm) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0110, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, int imm) { - starti; - assert((32 << ((int)T & 1)) == imm, "size/imm mismatch"); - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); - f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, Register Xm) { - starti; - assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); - assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); - assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); - f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0010, 15, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - - void v_ld1r(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { - starti; - f(0, 31), f((int)T & 1, 30), f(0b001101010000001100, 29, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1r(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { - starti; - f(0, 31), f((int)T & 1, 30), f(0b001101110, 29, 21), rf(Xm, 16); - f(0b1100, 15, 12), f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - void v_ld1r(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { - starti; - assert((1 << ((int)T & 3)) == imm, "size/imm mismatch"); - f(0, 31), f((int)T & 1, 30), f(0b001101110111111100, 29, 12); - f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); - } - - void v_eor(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn, FloatRegister Vm) { - starti; - assert(T == T8B || T == T16B, "must be T8B or T16B"); - f(0, 31), f((int)T & 1, 30), f(0b101110001, 29, 21); - rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); - } - - void v_orr(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn, FloatRegister Vm) { - starti; - assert(T == T8B || T == T16B, "must be T8B or T16B"); - f(0, 31), f((int)T & 1, 30), f(0b001110101, 29, 21); - rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); - } - - void v_aese(FloatRegister Vd, FloatRegister Vn) - { - starti; - f(0b0100111000101000010010, 31, 10), rf(Vn, 5), rf(Vd, 0); - } - - void v_aesd(FloatRegister Vd, FloatRegister Vn) - { - starti; - f(0b0100111000101000010110, 31, 10), rf(Vn, 5), rf(Vd, 0); - } - - void v_aesmc(FloatRegister Vd, FloatRegister Vn) - { - starti; - f(0b0100111000101000011010, 31, 10), rf(Vn, 5), rf(Vd, 0); - } - - void v_aesimc(FloatRegister Vd, FloatRegister Vn) - { - starti; - f(0b0100111000101000011110, 31, 10), rf(Vn, 5), rf(Vd, 0); - } - void v_rev32(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn) { starti; --- CUT HERE --- From aph at redhat.com Mon Jul 21 17:19:24 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 21 Jul 2014 18:19:24 +0100 Subject: [aarch64-port-dev ] RFR: Refactor SIMD instructions using INSN macros In-Reply-To: <1405960567.25467.42.camel@localhost.localdomain> References: <1405960567.25467.42.camel@localhost.localdomain> Message-ID: <53CD4B9C.8080609@redhat.com> On 07/21/2014 05:36 PM, Edward Nevill wrote: > The following patch refactors the SIMD instructions using INSN macros. > > In addition to removing about 100 lines of code it now supports a > larger chunk of simd instructions and is more orthogonal in what it > supports. Yes, that's much better. Thanks. Andrew. From fridrich.strba at suse.com Tue Jul 22 04:38:08 2014 From: fridrich.strba at suse.com (Fridrich Strba) Date: Tue, 22 Jul 2014 06:38:08 +0200 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 Message-ID: <53CDEAB0.6000106@suse.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Good people, Since some time, with icedtea 2.5 and with icedtea 2.5.1, when I build on aarch64, around 42k seconds into the build I get a crash in javac: [42490s] # Running javac: [42490s] /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/bootstrap/jdk1.6.0/bin/java - -XX:-PrintVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput - -Xmx512m -Xms512m -XX:PermSize=32m -XX:MaxPermSize=160m - -Xbootclasspath/p:/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/langtools/dist/bootstrap/lib/javac.jar - -jar /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/langtools/dist/bootstrap/lib/javac.jar - -g -source 7 -target 7 -encoding ascii - -Xbootclasspath:/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/classes - -sourcepath /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/gensrc:../../../../../src/solaris/classes:../../../../../src/share/classes - -d /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/classes @/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/tmp/sun/com.sun.net.httpserver/.classes.list.filtered [42534s] gmake[6]: Leaving directory '/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make/com/sun/net/httpserver' [42534s] gmake[6]: Entering directory '/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make/com/sun/jmx' [42537s] INFO: ENABLE_FULL_DEBUG_SYMBOLS=0 [42538s] /bin/mkdir -p /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/classes/javax/management/remote/rmi [42538s] rm -f /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/classes/javax/management/remote/rmi/RMIConnectionImpl_Stub.class [42538s] if [ -x /usr/sbin/paxmark.sh ] ; then \ [42538s] if [ -w /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/bin/java ] ; then \ [42538s] /usr/sbin/paxmark.sh -m /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/bin/java ; \ [42538s] fi ; \ [42538s] fi [42538s] /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/bin/java - -XX:-PrintVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput - -Xmx512m -Xms512m -XX:PermSize=32m -XX:MaxPermSize=160m -cp /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/classes sun.rmi.rmic.Main -classpath "/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/classes" \ [42538s] -d /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/classes \ [42538s] -v1.2 \ [42538s] -keepgenerated \ [42538s] javax.management.remote.rmi.RMIConnectionImpl [42544s] # [42544s] # A fatal error has been detected by the Java Runtime Environment: [42544s] # [42544s] # SIGSEGV (0xb) at pc=0x0000004001bad070, pid=29101, tid=274904080880 [42544s] # [42544s] # JRE version: OpenJDK Runtime Environment (7.0_65-b32) (build 1.7.0_65-b32) [42544s] # Java VM: OpenJDK 64-Bit Server VM (25.0-b70 mixed mode linux-aarch64 compressed oops) [42544s] # Problematic frame: [42544s] # J 58 C2 java.lang.String.hashCode()I (55 bytes) @ 0x0000004001bad070 [0x0000004001bacf40+0x130] [42544s] # [42544s] # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again [42544s] # [42544s] # An error report file with more information is saved as: [42544s] # /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make/com/sun/jmx/hs_err_pid29101.log [42664s] # [ timer expired, abort... ] [42664s] Makefile:124: recipe for target '/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/classes/javax/management/remote/rmi/RMIConnectionImpl_Stub.class' failed [42664s] gmake[6]: *** [/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk.build/classes/javax/management/remote/rmi/RMIConnectionImpl_Stub.class] Aborted [42664s] gmake[6]: Leaving directory '/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make/com/sun/jmx' [42664s] Makefile:49: recipe for target 'all' failed [42664s] gmake[5]: *** [all] Error 1 [42664s] gmake[5]: Leaving directory '/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make/com/sun' [42664s] Makefile:43: recipe for target 'all' failed [42664s] gmake[4]: *** [all] Error 1 [42664s] gmake[4]: Leaving directory '/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make/com' [42664s] Makefile:253: recipe for target 'all' failed [42664s] gmake[3]: *** [all] Error 1 [42664s] gmake[3]: Leaving directory '/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make' [42664s] make/jdk-rules.gmk:92: recipe for target 'jdk-build' failed [42664s] gmake[2]: *** [jdk-build] Error 2 [42664s] gmake[2]: Leaving directory '/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk' [42664s] Makefile:251: recipe for target 'build_product_image' failed [42664s] gmake[1]: *** [build_product_image] Error 2 [42664s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk' [42664s] Makefile:2208: recipe for target 'stamps/icedtea.stamp' failed [42664s] make: *** [stamps/icedtea.stamp] Error 2 [42664s] error: Bad exit status from /var/tmp/rpm-tmp.hiPwLb (%build) We are doing the build using qemu emulation and it might be qemu bug. Nonetheless, I would love to ask you whether this does not ring a bell to someone of you. I get the crash in exactly the same place each time I rebuild. I tried to get to a native aarch64 hardware to be able to get a trace and see whether I cannot solve it, but I had little success in finding it as of now. Not giving up though. If you have any idea about what could be wrong there, I would appreciate any hint. Cheers Fridrich Strba -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iEYEARECAAYFAlPN6rAACgkQu9a1imXPdA+3pACdG3RwqiCNN3LMTVM1sUnJDRGo L54AnjDUn5/5aCMQcWlUxROCdqA5M5xs =b/lY -----END PGP SIGNATURE----- From edward.nevill at linaro.org Tue Jul 22 06:27:22 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Tue, 22 Jul 2014 07:27:22 +0100 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 In-Reply-To: <53CDEAB0.6000106@suse.com> References: <53CDEAB0.6000106@suse.com> Message-ID: Hi Fridrich, On 22 July 2014 05:38, Fridrich Strba wrote: > [42544s] # > [42544s] # An error report file with more information is saved as: > [42544s] # > > /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make/com/sun/jmx/hs_err_pid29101.log > [42664s] # [ timer expired, abort... ] > Could you put this ^^^^^ file somewhere where we can access it. Thanks, Ed Nevill From ed at camswl.com Tue Jul 22 06:33:32 2014 From: ed at camswl.com (ed at camswl.com) Date: Tue, 22 Jul 2014 06:33:32 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: Refactor SIMD instructions using INSN macros Message-ID: <201407220633.s6M6XW02026087@aojmv0008> Changeset: c4af536cc45c Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-21 17:23 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/c4af536cc45c Refactor SIMD instructions using INSN macros ! src/cpu/aarch64/vm/assembler_aarch64.hpp From aph at redhat.com Tue Jul 22 12:25:38 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 22 Jul 2014 13:25:38 +0100 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 In-Reply-To: <53CDEAB0.6000106@suse.com> References: <53CDEAB0.6000106@suse.com> Message-ID: <53CE5842.2050100@redhat.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 On 07/22/2014 05:38 AM, Fridrich Strba wrote: > Since some time, with icedtea 2.5 and with icedtea 2.5.1, when I build on aarch64, around 42k seconds into the build I get a crash in javac: The problem is not with the OpenJDK port you are building, but with the OpenJDK that you already have installed. It is broken. You need to revert that installed OpenJDK back to the last working version and then recompile everything from the latest source. If you need a complete built version of OpenJDK 7 for AArch64 I can provide you with one, or you can unpack it from the Fedora RPMs. Andrew. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.14 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJTzlhCAAoJEKXNYDUzL6ZxwmYIAIAnN0uQng97yvwN94jehGvr aYtz4LeUfxbgXvgyYEljY1Nk9Jm5nzFrhxh230DTyVogiZG6fSOi3thji5+2NY6D lYeeugu0ybjOswriCSe0rDVkY5r8+CTmpzEY8V80uQcA9Oxb2Jbhx9kBgndpCyDA 98q7PQ5ztpA2dq9YSmfj3VOnxLy6ZFPOKFz2SU786p0jkntGjPGRASQqY8VTJZxp XmZSyP3fTIh8VIznzF0JbZqxbf7KVF6LR79JuMiyjmzDawZ5zPU0KtL9uYcmjFy3 zvVsRCx4v7T5S+jWYyOzWUWPNSJ0X7NTuCiDYrbU6jX3Tai7jdIc+8NvMCcXlUU= =SQBP -----END PGP SIGNATURE----- From edward.nevill at linaro.org Tue Jul 22 13:38:34 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Tue, 22 Jul 2014 14:38:34 +0100 Subject: [aarch64-port-dev ] RFR: Fix assertion failure in jtreg DeoptimizeAllTest.java Message-ID: <1406036314.21528.8.camel@localhost.localdomain> Hi, The jtreg test hotspot/test/compiler/whitebox/DeoptimizeAllTest.java generates the following assertion failure # Internal Error (/home/ed/work/rc12/jdk8/hotspot/src/cpu/aarch64/vm/nativeInst_aarch64.cpp:219), pid=9665, tid=547521864176 # assert(nativeInstruction_at(verified_entry)->is_jump_or_nop()) failed: Aarch64 cannot replace non-jump with jump The command I use to invoke jtreg is /work/ed/images/j2sdk-image/bin/java -jar lib/jtreg.jar -conc:8 -othervm -jdk:/work/ed/images/j2sdk-image -v1 -a -ignore:quiet ../u20_b16/hotspot/test/compiler/whitebox/DeoptimizeAllTest.java The patch below fixes this by inserting a nop in generate_native_wrapper. There is already a nop in generate_native_wrapper but on the path where method->is_method_handle_intrinsic() it never gets generated because method_handle_intrinsic() is handled on a separate path. The above test now passes and I have retested with a complete jtreg/hotspot test with no regressions. OK to push? Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1406036237 -3600 # Tue Jul 22 14:37:17 2014 +0100 # Node ID a6873b738433a61980c523fcf844f69c93205d81 # Parent c4af536cc45c9e0928e51408b07de2d3f9193d55 Fix assertion failure in DeoptimizeAllTest diff -r c4af536cc45c -r a6873b738433 src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp --- a/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Mon Jul 21 17:23:40 2014 +0100 +++ b/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Tue Jul 22 14:37:17 2014 +0100 @@ -1313,6 +1313,9 @@ vmIntrinsics::ID iid = method->intrinsic_id(); intptr_t start = (intptr_t)__ pc(); int vep_offset = ((intptr_t)__ pc()) - start; + + // First instruction must be a nop as it may need to be patched on deoptimisation + __ nop(); gen_special_dispatch(masm, method, in_sig_bt, --- CUT HERE --- From aph at redhat.com Tue Jul 22 14:27:22 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 22 Jul 2014 15:27:22 +0100 Subject: [aarch64-port-dev ] RFR: Fix assertion failure in jtreg DeoptimizeAllTest.java In-Reply-To: <1406036314.21528.8.camel@localhost.localdomain> References: <1406036314.21528.8.camel@localhost.localdomain> Message-ID: <53CE74CA.3030409@redhat.com> On 07/22/2014 02:38 PM, Edward Nevill wrote: > OK to push? OK, thanks. Andrew. From ed at camswl.com Tue Jul 22 14:57:17 2014 From: ed at camswl.com (ed at camswl.com) Date: Tue, 22 Jul 2014 14:57:17 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: Fix assertion failure in DeoptimizeAllTest Message-ID: <201407221457.s6MEvHTE010288@aojmv0008> Changeset: a6873b738433 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-22 14:37 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/a6873b738433 Fix assertion failure in DeoptimizeAllTest ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp From aph at redhat.com Tue Jul 22 15:48:41 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 22 Jul 2014 16:48:41 +0100 Subject: [aarch64-port-dev ] Refactor & rename vector instructions Message-ID: <53CE87D9.2090106@redhat.com> This one is in two parts. The first part merely strips the "v_" prefix from vector instructions, and the second changes the ld/st instructions to use the Address form, saving a bunch of Assembler methods along the way. Ed, please check that I haven't broken anything. Andrew. -------------- next part -------------- # HG changeset patch # User aph # Date 1406033124 14400 # Tue Jul 22 08:45:24 2014 -0400 # Node ID e2941a6acc555c7736128d678c59033188b9bafe # Parent c4af536cc45c9e0928e51408b07de2d3f9193d55 Remove "v_" prefixes from all SIMD instructions. diff -r c4af536cc45c -r e2941a6acc55 src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Mon Jul 21 17:23:40 2014 +0100 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Tue Jul 22 08:45:24 2014 -0400 @@ -1857,14 +1857,14 @@ S32, D64, Q128 }; -void v_ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int op1, int op2) +void ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int op1, int op2) { starti; f(0,31), f((int)T & 1, 30); f(op1, 29, 21), f(0, 20, 16), f(op2, 15, 12); f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); } -void v_ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, +void ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm, int op1, int op2) { starti; @@ -1872,7 +1872,7 @@ f(op1 | 0b100, 29, 21), f(0b11111, 20, 16), f(op2, 15, 12); f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); } -void v_ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, +void ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm, int op1, int op2) { starti; @@ -1883,90 +1883,90 @@ #define INSN1(NAME, op1, op2) \ void NAME(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { \ - v_ld_st(Vt, T, Xn, op1, op2); \ + ld_st(Vt, T, Xn, op1, op2); \ } \ void NAME(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { \ - v_ld_st(Vt, T, Xn, imm, op1, op2); \ + ld_st(Vt, T, Xn, imm, op1, op2); \ } \ void NAME(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { \ - v_ld_st(Vt, T, Xn, Xm, op1, op2); \ + ld_st(Vt, T, Xn, Xm, op1, op2); \ } #define INSN2(NAME, op1, op2) \ void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn) { \ assert(Vt->successor() == Vt2, "Registers must be ordered"); \ - v_ld_st(Vt, T, Xn, op1, op2); \ + ld_st(Vt, T, Xn, op1, op2); \ } \ void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, \ int imm) { \ assert(Vt->successor() == Vt2, "Registers must be ordered"); \ - v_ld_st(Vt, T, Xn, imm, op1, op2); \ + ld_st(Vt, T, Xn, imm, op1, op2); \ } \ void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, \ Register Xm) { \ assert(Vt->successor() == Vt2, "Registers must be ordered"); \ - v_ld_st(Vt, T, Xn, Xm, op1, op2); \ + ld_st(Vt, T, Xn, Xm, op1, op2); \ } #define INSN3(NAME, op1, op2) \ void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ SIMD_Arrangement T, Register Xn) { \ assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ "Registers must be ordered"); \ - v_ld_st(Vt, T, Xn, op1, op2); \ + ld_st(Vt, T, Xn, op1, op2); \ } \ void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ SIMD_Arrangement T, Register Xn, int imm) { \ assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ "Registers must be ordered"); \ - v_ld_st(Vt, T, Xn, imm, op1, op2); \ + ld_st(Vt, T, Xn, imm, op1, op2); \ } \ void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ SIMD_Arrangement T, Register Xn, Register Xm) { \ assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ "Registers must be ordered"); \ - v_ld_st(Vt, T, Xn, Xm, op1, op2); \ + ld_st(Vt, T, Xn, Xm, op1, op2); \ } #define INSN4(NAME, op1, op2) \ void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ FloatRegister Vt4, SIMD_Arrangement T, Register Xn) { \ assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ Vt3->successor() == Vt4, "Registers must be ordered"); \ - v_ld_st(Vt, T, Xn, op1, op2); \ + ld_st(Vt, T, Xn, op1, op2); \ } \ void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ FloatRegister Vt4, SIMD_Arrangement T, Register Xn, int imm) { \ assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ Vt3->successor() == Vt4, "Registers must be ordered"); \ - v_ld_st(Vt, T, Xn, imm, op1, op2); \ + ld_st(Vt, T, Xn, imm, op1, op2); \ } \ void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ FloatRegister Vt4, SIMD_Arrangement T, Register Xn, Register Xm) { \ assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ Vt3->successor() == Vt4, "Registers must be ordered"); \ - v_ld_st(Vt, T, Xn, Xm, op1, op2); \ + ld_st(Vt, T, Xn, Xm, op1, op2); \ } - INSN1(v_ld1, 0b001100010, 0b0111); - INSN2(v_ld1, 0b001100010, 0b1010); - INSN3(v_ld1, 0b001100010, 0b0110); - INSN4(v_ld1, 0b001100010, 0b0010); + INSN1(ld1, 0b001100010, 0b0111); + INSN2(ld1, 0b001100010, 0b1010); + INSN3(ld1, 0b001100010, 0b0110); + INSN4(ld1, 0b001100010, 0b0010); - INSN2(v_ld2, 0b001100010, 0b1000); - INSN3(v_ld3, 0b001100010, 0b0100); - INSN4(v_ld4, 0b001100010, 0b0000); + INSN2(ld2, 0b001100010, 0b1000); + INSN3(ld3, 0b001100010, 0b0100); + INSN4(ld4, 0b001100010, 0b0000); - INSN1(v_st1, 0b001100000, 0b0111); - INSN2(v_st1, 0b001100000, 0b1010); - INSN3(v_st1, 0b001100000, 0b0110); - INSN4(v_st1, 0b001100000, 0b0010); + INSN1(st1, 0b001100000, 0b0111); + INSN2(st1, 0b001100000, 0b1010); + INSN3(st1, 0b001100000, 0b0110); + INSN4(st1, 0b001100000, 0b0010); - INSN2(v_st2, 0b001100000, 0b1000); - INSN3(v_st3, 0b001100000, 0b0100); - INSN4(v_st4, 0b001100000, 0b0000); + INSN2(st2, 0b001100000, 0b1000); + INSN3(st3, 0b001100000, 0b0100); + INSN4(st4, 0b001100000, 0b0000); - INSN1(v_ld1r, 0b001101010, 0b1100); - INSN2(v_ld2r, 0b001101011, 0b1100); - INSN3(v_ld3r, 0b001101010, 0b1110); - INSN4(v_ld4r, 0b001101011, 0b1110); + INSN1(ld1r, 0b001101010, 0b1100); + INSN2(ld2r, 0b001101011, 0b1100); + INSN3(ld3r, 0b001101010, 0b1110); + INSN4(ld4r, 0b001101011, 0b1110); #undef INSN1 #undef INSN2 @@ -1981,14 +1981,14 @@ rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); \ } - INSN(v_eor, 0b101110001); - INSN(v_orr, 0b001110101); - INSN(v_and, 0b001110001); - INSN(v_bic, 0b001110011); - INSN(v_bif, 0b101110111); - INSN(v_bit, 0b101110101); - INSN(v_bsl, 0b101110011); - INSN(v_orn, 0b001110111); + INSN(eor, 0b101110001); + INSN(orr, 0b001110101); + INSN(andr, 0b001110001); + INSN(bic, 0b001110011); + INSN(bif, 0b101110111); + INSN(bit, 0b101110101); + INSN(bsl, 0b101110011); + INSN(orn, 0b001110111); #undef INSN @@ -1998,14 +1998,14 @@ f(opc, 31, 10), rf(Vn, 5), rf(Vd, 0); \ } - INSN(v_aese, 0b0100111000101000010010); - INSN(v_aesd, 0b0100111000101000010110); - INSN(v_aesmc, 0b0100111000101000011010); - INSN(v_aesimc, 0b0100111000101000011110); + INSN(aese, 0b0100111000101000010010); + INSN(aesd, 0b0100111000101000010110); + INSN(aesmc, 0b0100111000101000011010); + INSN(aesimc, 0b0100111000101000011110); #undef INSN - void v_shl(FloatRegister Vd, FloatRegister Vn, SIMD_Arrangement T, int shift){ + void shl(FloatRegister Vd, FloatRegister Vn, SIMD_Arrangement T, int shift){ starti; /* The encodings for the immh:immb fields (bits 22:16) are * 0001 xxx 8B/16B, shift = xxx @@ -2018,7 +2018,7 @@ f(0b010101, 15, 10), rf(Vn, 5), rf(Vd, 0); } - void v_ushll(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, SIMD_Arrangement Tb, int shift) { + void ushll(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, SIMD_Arrangement Tb, int shift) { starti; /* The encodings for the immh:immb fields (bits 22:16) are * 0001 xxx 8H, 8B/16b shift = xxx @@ -2031,22 +2031,22 @@ f(0, 31), f(Tb & 1, 30), f(0b1011110, 29, 23), f((1 << ((Tb>>1)+3))|shift, 22, 16); f(0b101001, 15, 10), rf(Vn, 5), rf(Vd, 0); } - void v_ushll2(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, SIMD_Arrangement Tb, int shift) { - v_ushll(Vd, Ta, Vn, Tb, shift); + void ushll2(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, SIMD_Arrangement Tb, int shift) { + ushll(Vd, Ta, Vn, Tb, shift); } - void v_uzp1(FloatRegister Vd, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement T, int op = 0){ + void uzp1(FloatRegister Vd, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement T, int op = 0){ starti; f(0, 31), f((T & 0x1), 30), f(0b001110, 29, 24), f((T >> 1), 23, 22), f(0, 21); rf(Vm, 16), f(0, 15), f(op, 14), f(0b0110, 13, 10), rf(Vn, 5), rf(Vd, 0); } - void v_uzp2(FloatRegister Vd, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement T){ - v_uzp1(Vd, Vn, Vm, T, 1); + void uzp2(FloatRegister Vd, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement T){ + uzp1(Vd, Vn, Vm, T, 1); } // Move from general purpose register // mov Vd.T[index], Rn - void v_mov(FloatRegister Vd, SIMD_Arrangement T, int index, Register Xn) { + void mov(FloatRegister Vd, SIMD_Arrangement T, int index, Register Xn) { starti; f(0b01001110000, 31, 21), f(((1 << (T >> 1)) | (index << ((T >> 1) + 1))), 20, 16); f(0b000111, 15, 10), rf(Xn, 5), rf(Vd, 0); @@ -2054,7 +2054,7 @@ // Move to general purpose register // mov Rd, Vn.T[index] - void v_mov(Register Xd, FloatRegister Vn, SIMD_Arrangement T, int index) { + void mov(Register Xd, FloatRegister Vn, SIMD_Arrangement T, int index) { starti; f(0, 31), f((T >= T1D) ? 1:0, 30), f(0b001110000, 29, 21); f(((1 << (T >> 1)) | (index << ((T >> 1) + 1))), 20, 16); @@ -2062,17 +2062,17 @@ } // We do not handle the 1Q arrangement. - void v_pmull(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement Tb) { + void pmull(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement Tb) { starti; assert(Ta == T8H && (Tb == T8B || Tb == T16B), "Invalid Size specifier"); f(0, 31), f(Tb & 1, 30), f(0b001110001, 29, 21), rf(Vm, 16), f(0b111000, 15, 10); rf(Vn, 5), rf(Vd, 0); } - void v_pmull2(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement Tb) { - v_pmull(Vd, Ta, Vn, Vm, Tb); + void pmull2(FloatRegister Vd, SIMD_Arrangement Ta, FloatRegister Vn, FloatRegister Vm, SIMD_Arrangement Tb) { + pmull(Vd, Ta, Vn, Vm, Tb); } - void v_rev32(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn) + void rev32(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn) { starti; assert(T <= T8H, "must be one of T8B, T16B, T4H, T8H"); diff -r c4af536cc45c -r e2941a6acc55 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Mon Jul 21 17:23:40 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 22 08:45:24 2014 -0400 @@ -2239,131 +2239,131 @@ if (UseNeon) { cmp(len, 64); br(Assembler::LT, L_by16); - v_eor(v16, T16B, v16, v16); + eor(v16, T16B, v16, v16); Label L_fold; add(tmp, table0, 4*256*sizeof(juint)); // Point at the Neon constants - v_ld1(v0, v1, T2D, buf, 32); - v_ld1r(v4, T2D, tmp, 8); - v_ld1r(v5, T2D, tmp, 8); - v_ld1r(v6, T2D, tmp, 8); - v_ld1r(v7, T2D, tmp, 8); - v_mov(v16, T4S, 0, crc); - - v_eor(v0, T16B, v0, v16); + ld1(v0, v1, T2D, buf, 32); + ld1r(v4, T2D, tmp, 8); + ld1r(v5, T2D, tmp, 8); + ld1r(v6, T2D, tmp, 8); + ld1r(v7, T2D, tmp, 8); + mov(v16, T4S, 0, crc); + + eor(v0, T16B, v0, v16); sub(len, len, 64); BIND(L_fold); - v_pmull(v22, T8H, v0, v5, T8B); - v_pmull(v20, T8H, v0, v7, T8B); - v_pmull(v23, T8H, v0, v4, T8B); - v_pmull(v21, T8H, v0, v6, T8B); - - v_pmull2(v18, T8H, v0, v5, T16B); - v_pmull2(v16, T8H, v0, v7, T16B); - v_pmull2(v19, T8H, v0, v4, T16B); - v_pmull2(v17, T8H, v0, v6, T16B); - - v_uzp1(v24, v20, v22, T8H); - v_uzp2(v25, v20, v22, T8H); - v_eor(v20, T16B, v24, v25); - - v_uzp1(v26, v16, v18, T8H); - v_uzp2(v27, v16, v18, T8H); - v_eor(v16, T16B, v26, v27); - - v_ushll2(v22, T4S, v20, T8H, 8); - v_ushll(v20, T4S, v20, T4H, 8); - - v_ushll2(v18, T4S, v16, T8H, 8); - v_ushll(v16, T4S, v16, T4H, 8); - - v_eor(v22, T16B, v23, v22); - v_eor(v18, T16B, v19, v18); - v_eor(v20, T16B, v21, v20); - v_eor(v16, T16B, v17, v16); - - v_uzp1(v17, v16, v20, T2D); - v_uzp2(v21, v16, v20, T2D); - v_eor(v17, T16B, v17, v21); - - v_ushll2(v20, T2D, v17, T4S, 16); - v_ushll(v16, T2D, v17, T2S, 16); - - v_eor(v20, T16B, v20, v22); - v_eor(v16, T16B, v16, v18); - - v_uzp1(v17, v20, v16, T2D); - v_uzp2(v21, v20, v16, T2D); - v_eor(v28, T16B, v17, v21); - - v_pmull(v22, T8H, v1, v5, T8B); - v_pmull(v20, T8H, v1, v7, T8B); - v_pmull(v23, T8H, v1, v4, T8B); - v_pmull(v21, T8H, v1, v6, T8B); - - v_pmull2(v18, T8H, v1, v5, T16B); - v_pmull2(v16, T8H, v1, v7, T16B); - v_pmull2(v19, T8H, v1, v4, T16B); - v_pmull2(v17, T8H, v1, v6, T16B); - - v_ld1(v0, v1, T2D, buf, 32); - - v_uzp1(v24, v20, v22, T8H); - v_uzp2(v25, v20, v22, T8H); - v_eor(v20, T16B, v24, v25); - - v_uzp1(v26, v16, v18, T8H); - v_uzp2(v27, v16, v18, T8H); - v_eor(v16, T16B, v26, v27); - - v_ushll2(v22, T4S, v20, T8H, 8); - v_ushll(v20, T4S, v20, T4H, 8); - - v_ushll2(v18, T4S, v16, T8H, 8); - v_ushll(v16, T4S, v16, T4H, 8); - - v_eor(v22, T16B, v23, v22); - v_eor(v18, T16B, v19, v18); - v_eor(v20, T16B, v21, v20); - v_eor(v16, T16B, v17, v16); - - v_uzp1(v17, v16, v20, T2D); - v_uzp2(v21, v16, v20, T2D); - v_eor(v16, T16B, v17, v21); - - v_ushll2(v20, T2D, v16, T4S, 16); - v_ushll(v16, T2D, v16, T2S, 16); - - v_eor(v20, T16B, v22, v20); - v_eor(v16, T16B, v16, v18); - - v_uzp1(v17, v20, v16, T2D); - v_uzp2(v21, v20, v16, T2D); - v_eor(v20, T16B, v17, v21); - - v_shl(v16, v28, T2D, 1); - v_shl(v17, v20, T2D, 1); - - v_eor(v0, T16B, v0, v16); - v_eor(v1, T16B, v1, v17); + pmull(v22, T8H, v0, v5, T8B); + pmull(v20, T8H, v0, v7, T8B); + pmull(v23, T8H, v0, v4, T8B); + pmull(v21, T8H, v0, v6, T8B); + + pmull2(v18, T8H, v0, v5, T16B); + pmull2(v16, T8H, v0, v7, T16B); + pmull2(v19, T8H, v0, v4, T16B); + pmull2(v17, T8H, v0, v6, T16B); + + uzp1(v24, v20, v22, T8H); + uzp2(v25, v20, v22, T8H); + eor(v20, T16B, v24, v25); + + uzp1(v26, v16, v18, T8H); + uzp2(v27, v16, v18, T8H); + eor(v16, T16B, v26, v27); + + ushll2(v22, T4S, v20, T8H, 8); + ushll(v20, T4S, v20, T4H, 8); + + ushll2(v18, T4S, v16, T8H, 8); + ushll(v16, T4S, v16, T4H, 8); + + eor(v22, T16B, v23, v22); + eor(v18, T16B, v19, v18); + eor(v20, T16B, v21, v20); + eor(v16, T16B, v17, v16); + + uzp1(v17, v16, v20, T2D); + uzp2(v21, v16, v20, T2D); + eor(v17, T16B, v17, v21); + + ushll2(v20, T2D, v17, T4S, 16); + ushll(v16, T2D, v17, T2S, 16); + + eor(v20, T16B, v20, v22); + eor(v16, T16B, v16, v18); + + uzp1(v17, v20, v16, T2D); + uzp2(v21, v20, v16, T2D); + eor(v28, T16B, v17, v21); + + pmull(v22, T8H, v1, v5, T8B); + pmull(v20, T8H, v1, v7, T8B); + pmull(v23, T8H, v1, v4, T8B); + pmull(v21, T8H, v1, v6, T8B); + + pmull2(v18, T8H, v1, v5, T16B); + pmull2(v16, T8H, v1, v7, T16B); + pmull2(v19, T8H, v1, v4, T16B); + pmull2(v17, T8H, v1, v6, T16B); + + ld1(v0, v1, T2D, buf, 32); + + uzp1(v24, v20, v22, T8H); + uzp2(v25, v20, v22, T8H); + eor(v20, T16B, v24, v25); + + uzp1(v26, v16, v18, T8H); + uzp2(v27, v16, v18, T8H); + eor(v16, T16B, v26, v27); + + ushll2(v22, T4S, v20, T8H, 8); + ushll(v20, T4S, v20, T4H, 8); + + ushll2(v18, T4S, v16, T8H, 8); + ushll(v16, T4S, v16, T4H, 8); + + eor(v22, T16B, v23, v22); + eor(v18, T16B, v19, v18); + eor(v20, T16B, v21, v20); + eor(v16, T16B, v17, v16); + + uzp1(v17, v16, v20, T2D); + uzp2(v21, v16, v20, T2D); + eor(v16, T16B, v17, v21); + + ushll2(v20, T2D, v16, T4S, 16); + ushll(v16, T2D, v16, T2S, 16); + + eor(v20, T16B, v22, v20); + eor(v16, T16B, v16, v18); + + uzp1(v17, v20, v16, T2D); + uzp2(v21, v20, v16, T2D); + eor(v20, T16B, v17, v21); + + shl(v16, v28, T2D, 1); + shl(v17, v20, T2D, 1); + + eor(v0, T16B, v0, v16); + eor(v1, T16B, v1, v17); subs(len, len, 32); br(Assembler::GE, L_fold); mov(crc, 0); - v_mov(tmp, v0, T1D, 0); + mov(tmp, v0, T1D, 0); update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, false); update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, true); - v_mov(tmp, v0, T1D, 1); + mov(tmp, v0, T1D, 1); update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, false); update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, true); - v_mov(tmp, v1, T1D, 0); + mov(tmp, v1, T1D, 0); update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, false); update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, true); - v_mov(tmp, v1, T1D, 1); + mov(tmp, v1, T1D, 1); update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, false); update_word_crc32(crc, tmp, tmp2, table0, table1, table2, table3, true); @@ -2773,7 +2773,7 @@ decode_heap_oop_not_null(dst); } else { ldr(dst, src); - } + } } void MacroAssembler::store_heap_oop(Address dst, Register src) { diff -r c4af536cc45c -r e2941a6acc55 src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Mon Jul 21 17:23:40 2014 +0100 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Tue Jul 22 08:45:24 2014 -0400 @@ -37,6 +37,8 @@ class MacroAssembler: public Assembler { friend class LIR_Assembler; + using Assembler::mov; + protected: // Support for VM calls diff -r c4af536cc45c -r e2941a6acc55 src/cpu/aarch64/vm/stubGenerator_aarch64.cpp --- a/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Mon Jul 21 17:23:40 2014 +0100 +++ b/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Tue Jul 22 08:45:24 2014 -0400 @@ -1901,75 +1901,75 @@ __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); - __ v_ld1(v0, __ T16B, from); // get 16 bytes of input + __ ld1(v0, __ T16B, from); // get 16 bytes of input - __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); - __ v_rev32(v3, __ T16B, v3); - __ v_rev32(v4, __ T16B, v4); - __ v_aese(v0, v1); - __ v_aesmc(v0, v0); - __ v_aese(v0, v2); - __ v_aesmc(v0, v0); - __ v_aese(v0, v3); - __ v_aesmc(v0, v0); - __ v_aese(v0, v4); - __ v_aesmc(v0, v0); + __ ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); + __ rev32(v3, __ T16B, v3); + __ rev32(v4, __ T16B, v4); + __ aese(v0, v1); + __ aesmc(v0, v0); + __ aese(v0, v2); + __ aesmc(v0, v0); + __ aese(v0, v3); + __ aesmc(v0, v0); + __ aese(v0, v4); + __ aesmc(v0, v0); - __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); - __ v_rev32(v3, __ T16B, v3); - __ v_rev32(v4, __ T16B, v4); - __ v_aese(v0, v1); - __ v_aesmc(v0, v0); - __ v_aese(v0, v2); - __ v_aesmc(v0, v0); - __ v_aese(v0, v3); - __ v_aesmc(v0, v0); - __ v_aese(v0, v4); - __ v_aesmc(v0, v0); + __ ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); + __ rev32(v3, __ T16B, v3); + __ rev32(v4, __ T16B, v4); + __ aese(v0, v1); + __ aesmc(v0, v0); + __ aese(v0, v2); + __ aesmc(v0, v0); + __ aese(v0, v3); + __ aesmc(v0, v0); + __ aese(v0, v4); + __ aesmc(v0, v0); - __ v_ld1(v1, v2, __ T16B, key, 32); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); + __ ld1(v1, v2, __ T16B, key, 32); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); __ cmpw(keylen, 44); __ br(Assembler::EQ, L_doLast); - __ v_aese(v0, v1); - __ v_aesmc(v0, v0); - __ v_aese(v0, v2); - __ v_aesmc(v0, v0); + __ aese(v0, v1); + __ aesmc(v0, v0); + __ aese(v0, v2); + __ aesmc(v0, v0); - __ v_ld1(v1, v2, __ T16B, key, 32); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); + __ ld1(v1, v2, __ T16B, key, 32); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); __ cmpw(keylen, 52); __ br(Assembler::EQ, L_doLast); - __ v_aese(v0, v1); - __ v_aesmc(v0, v0); - __ v_aese(v0, v2); - __ v_aesmc(v0, v0); + __ aese(v0, v1); + __ aesmc(v0, v0); + __ aese(v0, v2); + __ aesmc(v0, v0); - __ v_ld1(v1, v2, __ T16B, key, 32); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); + __ ld1(v1, v2, __ T16B, key, 32); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); __ BIND(L_doLast); - __ v_aese(v0, v1); - __ v_aesmc(v0, v0); - __ v_aese(v0, v2); + __ aese(v0, v1); + __ aesmc(v0, v0); + __ aese(v0, v2); - __ v_ld1(v1, __ T16B, key); - __ v_rev32(v1, __ T16B, v1); - __ v_eor(v0, __ T16B, v0, v1); + __ ld1(v1, __ T16B, key); + __ rev32(v1, __ T16B, v1); + __ eor(v0, __ T16B, v0, v1); - __ v_st1(v0, __ T16B, to); + __ st1(v0, __ T16B, to); __ mov(r0, 0); @@ -2002,76 +2002,76 @@ __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); - __ v_ld1(v0, __ T16B, from); // get 16 bytes of input + __ ld1(v0, __ T16B, from); // get 16 bytes of input - __ v_ld1(v5, __ T16B, key, 16); - __ v_rev32(v5, __ T16B, v5); + __ ld1(v5, __ T16B, key, 16); + __ rev32(v5, __ T16B, v5); - __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); - __ v_rev32(v3, __ T16B, v3); - __ v_rev32(v4, __ T16B, v4); - __ v_aesd(v0, v1); - __ v_aesimc(v0, v0); - __ v_aesd(v0, v2); - __ v_aesimc(v0, v0); - __ v_aesd(v0, v3); - __ v_aesimc(v0, v0); - __ v_aesd(v0, v4); - __ v_aesimc(v0, v0); + __ ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); + __ rev32(v3, __ T16B, v3); + __ rev32(v4, __ T16B, v4); + __ aesd(v0, v1); + __ aesimc(v0, v0); + __ aesd(v0, v2); + __ aesimc(v0, v0); + __ aesd(v0, v3); + __ aesimc(v0, v0); + __ aesd(v0, v4); + __ aesimc(v0, v0); - __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); - __ v_rev32(v3, __ T16B, v3); - __ v_rev32(v4, __ T16B, v4); - __ v_aesd(v0, v1); - __ v_aesimc(v0, v0); - __ v_aesd(v0, v2); - __ v_aesimc(v0, v0); - __ v_aesd(v0, v3); - __ v_aesimc(v0, v0); - __ v_aesd(v0, v4); - __ v_aesimc(v0, v0); + __ ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); + __ rev32(v3, __ T16B, v3); + __ rev32(v4, __ T16B, v4); + __ aesd(v0, v1); + __ aesimc(v0, v0); + __ aesd(v0, v2); + __ aesimc(v0, v0); + __ aesd(v0, v3); + __ aesimc(v0, v0); + __ aesd(v0, v4); + __ aesimc(v0, v0); - __ v_ld1(v1, v2, __ T16B, key, 32); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); + __ ld1(v1, v2, __ T16B, key, 32); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); __ cmpw(keylen, 44); __ br(Assembler::EQ, L_doLast); - __ v_aesd(v0, v1); - __ v_aesimc(v0, v0); - __ v_aesd(v0, v2); - __ v_aesimc(v0, v0); + __ aesd(v0, v1); + __ aesimc(v0, v0); + __ aesd(v0, v2); + __ aesimc(v0, v0); - __ v_ld1(v1, v2, __ T16B, key, 32); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); + __ ld1(v1, v2, __ T16B, key, 32); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); __ cmpw(keylen, 52); __ br(Assembler::EQ, L_doLast); - __ v_aesd(v0, v1); - __ v_aesimc(v0, v0); - __ v_aesd(v0, v2); - __ v_aesimc(v0, v0); + __ aesd(v0, v1); + __ aesimc(v0, v0); + __ aesd(v0, v2); + __ aesimc(v0, v0); - __ v_ld1(v1, v2, __ T16B, key, 32); - __ v_rev32(v1, __ T16B, v1); - __ v_rev32(v2, __ T16B, v2); + __ ld1(v1, v2, __ T16B, key, 32); + __ rev32(v1, __ T16B, v1); + __ rev32(v2, __ T16B, v2); __ BIND(L_doLast); - __ v_aesd(v0, v1); - __ v_aesimc(v0, v0); - __ v_aesd(v0, v2); + __ aesd(v0, v1); + __ aesimc(v0, v0); + __ aesd(v0, v2); - __ v_eor(v0, __ T16B, v0, v5); + __ eor(v0, __ T16B, v0, v5); - __ v_st1(v0, __ T16B, to); + __ st1(v0, __ T16B, to); __ mov(r0, 0); @@ -2114,65 +2114,65 @@ __ mov(rscratch1, len_reg); __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); - __ v_ld1(v0, __ T16B, rvec); + __ ld1(v0, __ T16B, rvec); __ cmpw(keylen, 52); __ br(Assembler::CC, L_loadkeys_44); __ br(Assembler::EQ, L_loadkeys_52); - __ v_ld1(v17, v18, __ T16B, key, 32); - __ v_rev32(v17, __ T16B, v17); - __ v_rev32(v18, __ T16B, v18); + __ ld1(v17, v18, __ T16B, key, 32); + __ rev32(v17, __ T16B, v17); + __ rev32(v18, __ T16B, v18); __ BIND(L_loadkeys_52); - __ v_ld1(v19, v20, __ T16B, key, 32); - __ v_rev32(v19, __ T16B, v19); - __ v_rev32(v20, __ T16B, v20); + __ ld1(v19, v20, __ T16B, key, 32); + __ rev32(v19, __ T16B, v19); + __ rev32(v20, __ T16B, v20); __ BIND(L_loadkeys_44); - __ v_ld1(v21, v22, v23, v24, __ T16B, key, 64); - __ v_rev32(v21, __ T16B, v21); - __ v_rev32(v22, __ T16B, v22); - __ v_rev32(v23, __ T16B, v23); - __ v_rev32(v24, __ T16B, v24); - __ v_ld1(v25, v26, v27, v28, __ T16B, key, 64); - __ v_rev32(v25, __ T16B, v25); - __ v_rev32(v26, __ T16B, v26); - __ v_rev32(v27, __ T16B, v27); - __ v_rev32(v28, __ T16B, v28); - __ v_ld1(v29, v30, v31, __ T16B, key); - __ v_rev32(v29, __ T16B, v29); - __ v_rev32(v30, __ T16B, v30); - __ v_rev32(v31, __ T16B, v31); + __ ld1(v21, v22, v23, v24, __ T16B, key, 64); + __ rev32(v21, __ T16B, v21); + __ rev32(v22, __ T16B, v22); + __ rev32(v23, __ T16B, v23); + __ rev32(v24, __ T16B, v24); + __ ld1(v25, v26, v27, v28, __ T16B, key, 64); + __ rev32(v25, __ T16B, v25); + __ rev32(v26, __ T16B, v26); + __ rev32(v27, __ T16B, v27); + __ rev32(v28, __ T16B, v28); + __ ld1(v29, v30, v31, __ T16B, key); + __ rev32(v29, __ T16B, v29); + __ rev32(v30, __ T16B, v30); + __ rev32(v31, __ T16B, v31); __ BIND(L_aes_loop); - __ v_ld1(v1, __ T16B, from, 16); - __ v_eor(v0, __ T16B, v0, v1); + __ ld1(v1, __ T16B, from, 16); + __ eor(v0, __ T16B, v0, v1); __ br(Assembler::CC, L_rounds_44); __ br(Assembler::EQ, L_rounds_52); - __ v_aese(v0, v17); __ v_aesmc(v0, v0); - __ v_aese(v0, v18); __ v_aesmc(v0, v0); + __ aese(v0, v17); __ aesmc(v0, v0); + __ aese(v0, v18); __ aesmc(v0, v0); __ BIND(L_rounds_52); - __ v_aese(v0, v19); __ v_aesmc(v0, v0); - __ v_aese(v0, v20); __ v_aesmc(v0, v0); + __ aese(v0, v19); __ aesmc(v0, v0); + __ aese(v0, v20); __ aesmc(v0, v0); __ BIND(L_rounds_44); - __ v_aese(v0, v21); __ v_aesmc(v0, v0); - __ v_aese(v0, v22); __ v_aesmc(v0, v0); - __ v_aese(v0, v23); __ v_aesmc(v0, v0); - __ v_aese(v0, v24); __ v_aesmc(v0, v0); - __ v_aese(v0, v25); __ v_aesmc(v0, v0); - __ v_aese(v0, v26); __ v_aesmc(v0, v0); - __ v_aese(v0, v27); __ v_aesmc(v0, v0); - __ v_aese(v0, v28); __ v_aesmc(v0, v0); - __ v_aese(v0, v29); __ v_aesmc(v0, v0); - __ v_aese(v0, v30); - __ v_eor(v0, __ T16B, v0, v31); + __ aese(v0, v21); __ aesmc(v0, v0); + __ aese(v0, v22); __ aesmc(v0, v0); + __ aese(v0, v23); __ aesmc(v0, v0); + __ aese(v0, v24); __ aesmc(v0, v0); + __ aese(v0, v25); __ aesmc(v0, v0); + __ aese(v0, v26); __ aesmc(v0, v0); + __ aese(v0, v27); __ aesmc(v0, v0); + __ aese(v0, v28); __ aesmc(v0, v0); + __ aese(v0, v29); __ aesmc(v0, v0); + __ aese(v0, v30); + __ eor(v0, __ T16B, v0, v31); - __ v_st1(v0, __ T16B, to, 16); + __ st1(v0, __ T16B, to, 16); __ sub(len_reg, len_reg, 16); __ cbnz(len_reg, L_aes_loop); - __ v_st1(v0, __ T16B, rvec); + __ st1(v0, __ T16B, rvec); __ mov(r0, rscratch2); @@ -2213,70 +2213,70 @@ __ mov(rscratch2, len_reg); __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); - __ v_ld1(v2, __ T16B, rvec); + __ ld1(v2, __ T16B, rvec); - __ v_ld1(v31, __ T16B, key, 16); - __ v_rev32(v31, __ T16B, v31); + __ ld1(v31, __ T16B, key, 16); + __ rev32(v31, __ T16B, v31); __ cmpw(keylen, 52); __ br(Assembler::CC, L_loadkeys_44); __ br(Assembler::EQ, L_loadkeys_52); - __ v_ld1(v17, v18, __ T16B, key, 32); - __ v_rev32(v17, __ T16B, v17); - __ v_rev32(v18, __ T16B, v18); + __ ld1(v17, v18, __ T16B, key, 32); + __ rev32(v17, __ T16B, v17); + __ rev32(v18, __ T16B, v18); __ BIND(L_loadkeys_52); - __ v_ld1(v19, v20, __ T16B, key, 32); - __ v_rev32(v19, __ T16B, v19); - __ v_rev32(v20, __ T16B, v20); + __ ld1(v19, v20, __ T16B, key, 32); + __ rev32(v19, __ T16B, v19); + __ rev32(v20, __ T16B, v20); __ BIND(L_loadkeys_44); - __ v_ld1(v21, v22, v23, v24, __ T16B, key, 64); - __ v_rev32(v21, __ T16B, v21); - __ v_rev32(v22, __ T16B, v22); - __ v_rev32(v23, __ T16B, v23); - __ v_rev32(v24, __ T16B, v24); - __ v_ld1(v25, v26, v27, v28, __ T16B, key, 64); - __ v_rev32(v25, __ T16B, v25); - __ v_rev32(v26, __ T16B, v26); - __ v_rev32(v27, __ T16B, v27); - __ v_rev32(v28, __ T16B, v28); - __ v_ld1(v29, v30, __ T16B, key); - __ v_rev32(v29, __ T16B, v29); - __ v_rev32(v30, __ T16B, v30); + __ ld1(v21, v22, v23, v24, __ T16B, key, 64); + __ rev32(v21, __ T16B, v21); + __ rev32(v22, __ T16B, v22); + __ rev32(v23, __ T16B, v23); + __ rev32(v24, __ T16B, v24); + __ ld1(v25, v26, v27, v28, __ T16B, key, 64); + __ rev32(v25, __ T16B, v25); + __ rev32(v26, __ T16B, v26); + __ rev32(v27, __ T16B, v27); + __ rev32(v28, __ T16B, v28); + __ ld1(v29, v30, __ T16B, key); + __ rev32(v29, __ T16B, v29); + __ rev32(v30, __ T16B, v30); __ BIND(L_aes_loop); - __ v_ld1(v0, __ T16B, from, 16); - __ v_orr(v1, __ T16B, v0, v0); + __ ld1(v0, __ T16B, from, 16); + __ orr(v1, __ T16B, v0, v0); __ br(Assembler::CC, L_rounds_44); __ br(Assembler::EQ, L_rounds_52); - __ v_aesd(v0, v17); __ v_aesimc(v0, v0); - __ v_aesd(v0, v17); __ v_aesimc(v0, v0); + __ aesd(v0, v17); __ aesimc(v0, v0); + __ aesd(v0, v17); __ aesimc(v0, v0); __ BIND(L_rounds_52); - __ v_aesd(v0, v19); __ v_aesimc(v0, v0); - __ v_aesd(v0, v20); __ v_aesimc(v0, v0); + __ aesd(v0, v19); __ aesimc(v0, v0); + __ aesd(v0, v20); __ aesimc(v0, v0); __ BIND(L_rounds_44); - __ v_aesd(v0, v21); __ v_aesimc(v0, v0); - __ v_aesd(v0, v22); __ v_aesimc(v0, v0); - __ v_aesd(v0, v23); __ v_aesimc(v0, v0); - __ v_aesd(v0, v24); __ v_aesimc(v0, v0); - __ v_aesd(v0, v25); __ v_aesimc(v0, v0); - __ v_aesd(v0, v26); __ v_aesimc(v0, v0); - __ v_aesd(v0, v27); __ v_aesimc(v0, v0); - __ v_aesd(v0, v28); __ v_aesimc(v0, v0); - __ v_aesd(v0, v29); __ v_aesimc(v0, v0); - __ v_aesd(v0, v30); - __ v_eor(v0, __ T16B, v0, v31); - __ v_eor(v0, __ T16B, v0, v2); + __ aesd(v0, v21); __ aesimc(v0, v0); + __ aesd(v0, v22); __ aesimc(v0, v0); + __ aesd(v0, v23); __ aesimc(v0, v0); + __ aesd(v0, v24); __ aesimc(v0, v0); + __ aesd(v0, v25); __ aesimc(v0, v0); + __ aesd(v0, v26); __ aesimc(v0, v0); + __ aesd(v0, v27); __ aesimc(v0, v0); + __ aesd(v0, v28); __ aesimc(v0, v0); + __ aesd(v0, v29); __ aesimc(v0, v0); + __ aesd(v0, v30); + __ eor(v0, __ T16B, v0, v31); + __ eor(v0, __ T16B, v0, v2); - __ v_st1(v0, __ T16B, to, 16); - __ v_orr(v2, __ T16B, v1, v1); + __ st1(v0, __ T16B, to, 16); + __ orr(v2, __ T16B, v1, v1); __ sub(len_reg, len_reg, 16); __ cbnz(len_reg, L_aes_loop); - __ v_st1(v2, __ T16B, rvec); + __ st1(v2, __ T16B, rvec); __ mov(r0, rscratch2); -------------- next part -------------- # HG changeset patch # User aph # Date 1406043669 14400 # Tue Jul 22 11:41:09 2014 -0400 # Node ID edc520ea0515eec648bed444d3da5965b213f1ff # Parent e2941a6acc555c7736128d678c59033188b9bafe Reorganize vector instructions. diff -r e2941a6acc55 -r edc520ea0515 src/cpu/aarch64/vm/assembler_aarch64.cpp --- a/src/cpu/aarch64/vm/assembler_aarch64.cpp Tue Jul 22 08:45:24 2014 -0400 +++ b/src/cpu/aarch64/vm/assembler_aarch64.cpp Tue Jul 22 11:41:09 2014 -0400 @@ -1191,18 +1191,11 @@ } #ifndef PRODUCT - { - address PC = __ pc(); - __ bl(__ pc()+(1<<27)-4); - NativeCall* call = nativeCall_at(PC); - ptrdiff_t offset = call->destination()-PC; - assert(offset == (1<<27)-4, "broken branch coding"); - PC = __ pc(); - __ bl(__ pc()-(1<<27)); - call = nativeCall_at(PC); - offset = call->destination()-PC; - assert(offset == -(1<<27), "broken branch coding"); - } + + address PC = __ pc(); + __ ld1(v0, __ T16B, Address(r16)); // No offset + __ ld1(v0, __ T16B, __ post(r16, 0)); // Post-index + __ ld1(v0, __ T16B, Address(r16, r17)); // #endif // PRODUCT diff -r e2941a6acc55 -r edc520ea0515 src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Tue Jul 22 08:45:24 2014 -0400 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Tue Jul 22 11:41:09 2014 -0400 @@ -417,15 +417,16 @@ } } - Register base() { - guarantee((_mode == base_plus_offset | _mode == base_plus_offset_reg), + Register base() const { + guarantee((_mode == base_plus_offset | _mode == base_plus_offset_reg + | _mode == post), "wrong mode"); return _base; } - long offset() { + long offset() const { return _offset; } - Register index() { + Register index() const { return _index; } mode getMode() const { @@ -1847,7 +1848,7 @@ * We just use FloatRegister in the following. They are exactly the same * as SIMD registers. */ -public: + public: enum SIMD_Arrangement { T8B, T16B, T4H, T8H, T2S, T4S, T1D, T2D @@ -1857,92 +1858,74 @@ S32, D64, Q128 }; -void ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int op1, int op2) -{ + + private: + + void ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int op1, int op2) { starti; f(0,31), f((int)T & 1, 30); f(op1, 29, 21), f(0, 20, 16), f(op2, 15, 12); f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); -} -void ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, - int imm, int op1, int op2) -{ + } + void ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, + int imm, int op1, int op2) { starti; f(0,31), f((int)T & 1, 30); f(op1 | 0b100, 29, 21), f(0b11111, 20, 16), f(op2, 15, 12); f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); -} -void ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, - Register Xm, int op1, int op2) -{ + } + void ld_st(FloatRegister Vt, SIMD_Arrangement T, Register Xn, + Register Xm, int op1, int op2) { starti; f(0,31), f((int)T & 1, 30); f(op1 | 0b100, 29, 21), rf(Xm, 16), f(op2, 15, 12); f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); -} + } -#define INSN1(NAME, op1, op2) \ - void NAME(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { \ - ld_st(Vt, T, Xn, op1, op2); \ - } \ - void NAME(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { \ - ld_st(Vt, T, Xn, imm, op1, op2); \ - } \ - void NAME(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { \ - ld_st(Vt, T, Xn, Xm, op1, op2); \ + void ld_st(FloatRegister Vt, SIMD_Arrangement T, Address a, int op1, int op2) { + switch (a.getMode()) { + case Address::base_plus_offset: + guarantee(a.offset() == 0, "no offset allowed here"); + ld_st(Vt, T, a.base(), op1, op2); + break; + case Address::post: + ld_st(Vt, T, a.base(), a.offset(), op1, op2); + break; + case Address::base_plus_offset_reg: + ld_st(Vt, T, a.base(), a.index(), op1, op2); + break; + default: + ShouldNotReachHere(); + } + } + + public: + +#define INSN1(NAME, op1, op2) \ + void NAME(FloatRegister Vt, SIMD_Arrangement T, const Address &a) { \ + ld_st(Vt, T, a, op1, op2); \ + } + +#define INSN2(NAME, op1, op2) \ + void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, const Address &a) { \ + assert(Vt->successor() == Vt2, "Registers must be ordered"); \ + ld_st(Vt, T, a, op1, op2); \ } -#define INSN2(NAME, op1, op2) \ - void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn) { \ - assert(Vt->successor() == Vt2, "Registers must be ordered"); \ - ld_st(Vt, T, Xn, op1, op2); \ - } \ - void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, \ - int imm) { \ - assert(Vt->successor() == Vt2, "Registers must be ordered"); \ - ld_st(Vt, T, Xn, imm, op1, op2); \ - } \ - void NAME(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, \ - Register Xm) { \ - assert(Vt->successor() == Vt2, "Registers must be ordered"); \ - ld_st(Vt, T, Xn, Xm, op1, op2); \ + +#define INSN3(NAME, op1, op2) \ + void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ + SIMD_Arrangement T, const Address &a) { \ + assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ + "Registers must be ordered"); \ + ld_st(Vt, T, a, op1, op2); \ } -#define INSN3(NAME, op1, op2) \ - void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ - SIMD_Arrangement T, Register Xn) { \ - assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ - "Registers must be ordered"); \ - ld_st(Vt, T, Xn, op1, op2); \ - } \ - void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ - SIMD_Arrangement T, Register Xn, int imm) { \ - assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ - "Registers must be ordered"); \ - ld_st(Vt, T, Xn, imm, op1, op2); \ - } \ - void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ - SIMD_Arrangement T, Register Xn, Register Xm) { \ - assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3, \ - "Registers must be ordered"); \ - ld_st(Vt, T, Xn, Xm, op1, op2); \ - } -#define INSN4(NAME, op1, op2) \ - void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ - FloatRegister Vt4, SIMD_Arrangement T, Register Xn) { \ - assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ - Vt3->successor() == Vt4, "Registers must be ordered"); \ - ld_st(Vt, T, Xn, op1, op2); \ - } \ - void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ - FloatRegister Vt4, SIMD_Arrangement T, Register Xn, int imm) { \ - assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ - Vt3->successor() == Vt4, "Registers must be ordered"); \ - ld_st(Vt, T, Xn, imm, op1, op2); \ - } \ - void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ - FloatRegister Vt4, SIMD_Arrangement T, Register Xn, Register Xm) { \ - assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ - Vt3->successor() == Vt4, "Registers must be ordered"); \ - ld_st(Vt, T, Xn, Xm, op1, op2); \ + +#define INSN4(NAME, op1, op2) \ + void NAME(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, \ + FloatRegister Vt4, SIMD_Arrangement T, const Address &a) { \ + assert(Vt->successor() == Vt2 && Vt2->successor() == Vt3 && \ + Vt3->successor() == Vt4, "Registers must be ordered"); \ + ld_st(Vt, T, a, op1, op2); \ } INSN1(ld1, 0b001100010, 0b0111); diff -r e2941a6acc55 -r edc520ea0515 src/cpu/aarch64/vm/icache_aarch64.cpp --- a/src/cpu/aarch64/vm/icache_aarch64.cpp Tue Jul 22 08:45:24 2014 -0400 +++ b/src/cpu/aarch64/vm/icache_aarch64.cpp Tue Jul 22 11:41:09 2014 -0400 @@ -32,7 +32,10 @@ void ICacheStubGenerator::generate_icache_flush( ICache::flush_icache_stub_t* flush_icache_stub) { - aarch64TestHook(); // Give anyone who calls this a surprise *flush_icache_stub = (ICache::flush_icache_stub_t)NULL; } + +void ICache::initialize() { + aarch64TestHook(); +} diff -r e2941a6acc55 -r edc520ea0515 src/cpu/aarch64/vm/icache_aarch64.hpp --- a/src/cpu/aarch64/vm/icache_aarch64.hpp Tue Jul 22 08:45:24 2014 -0400 +++ b/src/cpu/aarch64/vm/icache_aarch64.hpp Tue Jul 22 11:41:09 2014 -0400 @@ -33,7 +33,7 @@ class ICache : public AbstractICache { public: - static void initialize() {} + static void initialize(); static void invalidate_word(address addr) { __clear_cache((char *)addr, (char *)(addr + 3)); } diff -r e2941a6acc55 -r edc520ea0515 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 22 08:45:24 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 22 11:41:09 2014 -0400 @@ -2245,11 +2245,11 @@ add(tmp, table0, 4*256*sizeof(juint)); // Point at the Neon constants - ld1(v0, v1, T2D, buf, 32); - ld1r(v4, T2D, tmp, 8); - ld1r(v5, T2D, tmp, 8); - ld1r(v6, T2D, tmp, 8); - ld1r(v7, T2D, tmp, 8); + ld1(v0, v1, T2D, post(buf, 32)); + ld1r(v4, T2D, post(tmp, 8)); + ld1r(v5, T2D, post(tmp, 8)); + ld1r(v6, T2D, post(tmp, 8)); + ld1r(v7, T2D, post(tmp, 8)); mov(v16, T4S, 0, crc); eor(v0, T16B, v0, v16); @@ -2309,7 +2309,7 @@ pmull2(v19, T8H, v1, v4, T16B); pmull2(v17, T8H, v1, v6, T16B); - ld1(v0, v1, T2D, buf, 32); + ld1(v0, v1, T2D, post(buf, 32)); uzp1(v24, v20, v22, T8H); uzp2(v25, v20, v22, T8H); diff -r e2941a6acc55 -r edc520ea0515 src/cpu/aarch64/vm/stubGenerator_aarch64.cpp --- a/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Tue Jul 22 08:45:24 2014 -0400 +++ b/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Tue Jul 22 11:41:09 2014 -0400 @@ -1903,7 +1903,7 @@ __ ld1(v0, __ T16B, from); // get 16 bytes of input - __ ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ ld1(v1, v2, v3, v4, __ T16B, __ post(key, 64)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); __ rev32(v3, __ T16B, v3); @@ -1917,7 +1917,7 @@ __ aese(v0, v4); __ aesmc(v0, v0); - __ ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ ld1(v1, v2, v3, v4, __ T16B, __ post(key, 64)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); __ rev32(v3, __ T16B, v3); @@ -1931,7 +1931,7 @@ __ aese(v0, v4); __ aesmc(v0, v0); - __ ld1(v1, v2, __ T16B, key, 32); + __ ld1(v1, v2, __ T16B, __ post(key, 32)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); @@ -1943,7 +1943,7 @@ __ aese(v0, v2); __ aesmc(v0, v0); - __ ld1(v1, v2, __ T16B, key, 32); + __ ld1(v1, v2, __ T16B, __ post(key, 32)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); @@ -1955,7 +1955,7 @@ __ aese(v0, v2); __ aesmc(v0, v0); - __ ld1(v1, v2, __ T16B, key, 32); + __ ld1(v1, v2, __ T16B, __ post(key, 32)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); @@ -2004,10 +2004,10 @@ __ ld1(v0, __ T16B, from); // get 16 bytes of input - __ ld1(v5, __ T16B, key, 16); + __ ld1(v5, __ T16B, __ post(key, 16)); __ rev32(v5, __ T16B, v5); - __ ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ ld1(v1, v2, v3, v4, __ T16B, __ post(key, 64)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); __ rev32(v3, __ T16B, v3); @@ -2021,7 +2021,7 @@ __ aesd(v0, v4); __ aesimc(v0, v0); - __ ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ ld1(v1, v2, v3, v4, __ T16B, __ post(key, 64)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); __ rev32(v3, __ T16B, v3); @@ -2035,7 +2035,7 @@ __ aesd(v0, v4); __ aesimc(v0, v0); - __ ld1(v1, v2, __ T16B, key, 32); + __ ld1(v1, v2, __ T16B, __ post(key, 32)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); @@ -2047,7 +2047,7 @@ __ aesd(v0, v2); __ aesimc(v0, v0); - __ ld1(v1, v2, __ T16B, key, 32); + __ ld1(v1, v2, __ T16B, __ post(key, 32)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); @@ -2059,7 +2059,7 @@ __ aesd(v0, v2); __ aesimc(v0, v0); - __ ld1(v1, v2, __ T16B, key, 32); + __ ld1(v1, v2, __ T16B, __ post(key, 32)); __ rev32(v1, __ T16B, v1); __ rev32(v2, __ T16B, v2); @@ -2120,20 +2120,20 @@ __ br(Assembler::CC, L_loadkeys_44); __ br(Assembler::EQ, L_loadkeys_52); - __ ld1(v17, v18, __ T16B, key, 32); + __ ld1(v17, v18, __ T16B, __ post(key, 32)); __ rev32(v17, __ T16B, v17); __ rev32(v18, __ T16B, v18); __ BIND(L_loadkeys_52); - __ ld1(v19, v20, __ T16B, key, 32); + __ ld1(v19, v20, __ T16B, __ post(key, 32)); __ rev32(v19, __ T16B, v19); __ rev32(v20, __ T16B, v20); __ BIND(L_loadkeys_44); - __ ld1(v21, v22, v23, v24, __ T16B, key, 64); + __ ld1(v21, v22, v23, v24, __ T16B, __ post(key, 64)); __ rev32(v21, __ T16B, v21); __ rev32(v22, __ T16B, v22); __ rev32(v23, __ T16B, v23); __ rev32(v24, __ T16B, v24); - __ ld1(v25, v26, v27, v28, __ T16B, key, 64); + __ ld1(v25, v26, v27, v28, __ T16B, __ post(key, 64)); __ rev32(v25, __ T16B, v25); __ rev32(v26, __ T16B, v26); __ rev32(v27, __ T16B, v27); @@ -2144,7 +2144,7 @@ __ rev32(v31, __ T16B, v31); __ BIND(L_aes_loop); - __ ld1(v1, __ T16B, from, 16); + __ ld1(v1, __ T16B, __ post(from, 16)); __ eor(v0, __ T16B, v0, v1); __ br(Assembler::CC, L_rounds_44); @@ -2168,7 +2168,7 @@ __ aese(v0, v30); __ eor(v0, __ T16B, v0, v31); - __ st1(v0, __ T16B, to, 16); + __ st1(v0, __ T16B, __ post(to, 16)); __ sub(len_reg, len_reg, 16); __ cbnz(len_reg, L_aes_loop); @@ -2215,27 +2215,27 @@ __ ld1(v2, __ T16B, rvec); - __ ld1(v31, __ T16B, key, 16); + __ ld1(v31, __ T16B, __ post(key, 16)); __ rev32(v31, __ T16B, v31); __ cmpw(keylen, 52); __ br(Assembler::CC, L_loadkeys_44); __ br(Assembler::EQ, L_loadkeys_52); - __ ld1(v17, v18, __ T16B, key, 32); + __ ld1(v17, v18, __ T16B, __ post(key, 32)); __ rev32(v17, __ T16B, v17); __ rev32(v18, __ T16B, v18); __ BIND(L_loadkeys_52); - __ ld1(v19, v20, __ T16B, key, 32); + __ ld1(v19, v20, __ T16B, __ post(key, 32)); __ rev32(v19, __ T16B, v19); __ rev32(v20, __ T16B, v20); __ BIND(L_loadkeys_44); - __ ld1(v21, v22, v23, v24, __ T16B, key, 64); + __ ld1(v21, v22, v23, v24, __ T16B, __ post(key, 64)); __ rev32(v21, __ T16B, v21); __ rev32(v22, __ T16B, v22); __ rev32(v23, __ T16B, v23); __ rev32(v24, __ T16B, v24); - __ ld1(v25, v26, v27, v28, __ T16B, key, 64); + __ ld1(v25, v26, v27, v28, __ T16B, __ post(key, 64)); __ rev32(v25, __ T16B, v25); __ rev32(v26, __ T16B, v26); __ rev32(v27, __ T16B, v27); @@ -2245,7 +2245,7 @@ __ rev32(v30, __ T16B, v30); __ BIND(L_aes_loop); - __ ld1(v0, __ T16B, from, 16); + __ ld1(v0, __ T16B, __ post(from, 16)); __ orr(v1, __ T16B, v0, v0); __ br(Assembler::CC, L_rounds_44); @@ -2270,7 +2270,7 @@ __ eor(v0, __ T16B, v0, v31); __ eor(v0, __ T16B, v0, v2); - __ st1(v0, __ T16B, to, 16); + __ st1(v0, __ T16B, __ post(to, 16)); __ orr(v2, __ T16B, v1, v1); __ sub(len_reg, len_reg, 16); From aph at redhat.com Tue Jul 22 15:56:14 2014 From: aph at redhat.com (aph at redhat.com) Date: Tue, 22 Jul 2014 15:56:14 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: 3 new changesets Message-ID: <201407221556.s6MFuEfV019562@aojmv0008> Changeset: e2941a6acc55 Author: aph Date: 2014-07-22 08:45 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/e2941a6acc55 Remove "v_" prefixes from all SIMD instructions. ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Changeset: b5402ba4ef01 Author: aph Date: 2014-07-22 11:55 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/b5402ba4ef01 Reorganize SIMD instructions. ! src/cpu/aarch64/vm/assembler_aarch64.cpp ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/icache_aarch64.cpp ! src/cpu/aarch64/vm/icache_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Changeset: fdcc9aef9dbb Author: aph Date: 2014-07-22 11:56 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/fdcc9aef9dbb Merge From ed at camswl.com Wed Jul 23 08:14:03 2014 From: ed at camswl.com (Edward Nevill) Date: Wed, 23 Jul 2014 09:14:03 +0100 Subject: [aarch64-port-dev ] JTREG, SPECjbb2013 and Hadoop/Terasort results for OpenJDK 8 on AArch64 Message-ID: <1406103243.27044.7.camel@mint> This is a summary of the JTREG test results =========================================== The build and test results are cycled every 10 days. For detailed information on the test output please refer to: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/summary/2014/204/summary.html ------------------------------------------------------------------------------- client-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/16 pass: 545; fail: 19 Build 1: aarch64/2014/jun/18 pass: 538; fail: 19 Build 2: aarch64/2014/jun/24 pass: 538; fail: 19 Build 3: aarch64/2014/jun/25 pass: 538; fail: 19 Build 4: aarch64/2014/jun/28 pass: 536; fail: 28 Build 5: aarch64/2014/jul/03 pass: 545; fail: 19 Build 6: aarch64/2014/jul/08 pass: 545; fail: 19 Build 7: aarch64/2014/jul/09 pass: 545; fail: 19 Build 8: aarch64/2014/jul/10 pass: 545; fail: 19 Build 9: aarch64/2014/jul/23 pass: 545; fail: 19 ------------------------------------------------------------------------------- client-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/16 pass: 4,968; fail: 498; error: 44 Build 1: aarch64/2014/jun/18 pass: 4,969; fail: 496; error: 45 Build 2: aarch64/2014/jun/24 pass: 4,970; fail: 495; error: 45 Build 3: aarch64/2014/jun/25 pass: 4,967; fail: 498; error: 45 Build 4: aarch64/2014/jun/28 pass: 4,968; fail: 497; error: 45 Build 5: aarch64/2014/jul/03 pass: 5,228; fail: 234; error: 48 Build 6: aarch64/2014/jul/08 pass: 5,242; fail: 219; error: 49 Build 7: aarch64/2014/jul/09 pass: 5,238; fail: 217; error: 55 Build 8: aarch64/2014/jul/10 pass: 5,230; fail: 234; error: 46 Build 9: aarch64/2014/jul/23 pass: 5,281; fail: 182; error: 47 1 fatal errors were detected; please follow the link above for more detail. ------------------------------------------------------------------------------- client-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/16 pass: 2,999; error: 16 Build 1: aarch64/2014/jun/18 pass: 2,999; error: 16 Build 2: aarch64/2014/jun/24 pass: 2,999; error: 16 Build 3: aarch64/2014/jun/25 pass: 3,000; fail: 1; error: 14 Build 4: aarch64/2014/jun/28 pass: 2,999; error: 16 Build 5: aarch64/2014/jul/03 pass: 2,999; error: 16 Build 6: aarch64/2014/jul/08 pass: 2,999; error: 16 Build 7: aarch64/2014/jul/09 pass: 3,000; error: 15 Build 8: aarch64/2014/jul/10 pass: 2,999; error: 16 Build 9: aarch64/2014/jul/23 pass: 3,000; error: 15 ------------------------------------------------------------------------------- server-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/16 pass: 554; fail: 10 Build 1: aarch64/2014/jun/18 pass: 554; fail: 3 Build 2: aarch64/2014/jun/24 pass: 554; fail: 3 Build 3: aarch64/2014/jun/25 pass: 555; fail: 2 Build 4: aarch64/2014/jun/28 pass: 553; fail: 11 Build 5: aarch64/2014/jul/03 pass: 562; fail: 2 Build 6: aarch64/2014/jul/08 pass: 562; fail: 2 Build 7: aarch64/2014/jul/09 pass: 562; fail: 2 Build 8: aarch64/2014/jul/10 pass: 562; fail: 2 Build 9: aarch64/2014/jul/23 pass: 562; fail: 2 ------------------------------------------------------------------------------- server-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/16 pass: 4,976; fail: 491; error: 43 Build 1: aarch64/2014/jun/18 pass: 4,974; fail: 492; error: 44 Build 2: aarch64/2014/jun/24 pass: 4,973; fail: 492; error: 45 Build 3: aarch64/2014/jun/25 pass: 4,975; fail: 491; error: 44 Build 4: aarch64/2014/jun/28 pass: 4,973; fail: 493; error: 44 Build 5: aarch64/2014/jul/03 pass: 5,239; fail: 221; error: 50 Build 6: aarch64/2014/jul/08 pass: 5,239; fail: 217; error: 54 Build 7: aarch64/2014/jul/09 pass: 5,231; fail: 231; error: 48 Build 8: aarch64/2014/jul/10 pass: 5,246; fail: 212; error: 52 Build 9: aarch64/2014/jul/23 pass: 5,291; fail: 174; error: 45 ------------------------------------------------------------------------------- server-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/16 pass: 3,004; error: 11 Build 1: aarch64/2014/jun/18 pass: 3,004; error: 11 Build 2: aarch64/2014/jun/24 pass: 3,004; error: 11 Build 3: aarch64/2014/jun/25 pass: 3,004; error: 11 Build 4: aarch64/2014/jun/28 pass: 3,004; error: 11 Build 5: aarch64/2014/jul/03 pass: 3,004; error: 11 Build 6: aarch64/2014/jul/08 pass: 3,004; error: 11 Build 7: aarch64/2014/jul/09 pass: 3,004; error: 11 Build 8: aarch64/2014/jul/10 pass: 3,004; error: 11 Build 9: aarch64/2014/jul/23 pass: 3,004; error: 11 Previous results can be found here: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/index.html SPECjbb2013 composite regression test completed =============================================== This test measures the relative performance of the server compiler running the SPECjbb2013 composite tests and compares the performance against the baseline performance of the server compiler taken on 2014-04-01. In accordance with [1], the SPECjbb2013 tests are run on a system which is not production ready and does not meet all the requirements for publishing compliant results. The numbers below shall be treated as non-compliant (nc) and are for experimental purposes only. Relative performance: Server max-jOPS (nc): 0.57x Relative performance: Server critical-jOPS (nc): 0.62x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/SPECjbb2013-1.00-results/ [1] http://www.spec.org/fairuse.html#Academic Regression test Hadoop-Terasort completed ========================================= This test measures the performance of the server and client compilers running Hadoop sorting a 1GB file using Terasort and compares the performance against the baseline performance of the Zero interpreter and against the baseline performance of the client and server compilers on 2014-04-01. Relative performance: Zero: 1.0, Client: 49.35, Server: 81.12 Client 49.35 / Client 2014-04-01 (43.00): 1.15x Server 81.12 / Server 2014-04-01 (71.00): 1.14x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/hadoop-terasort-benchmark-results/ From ed at camswl.com Wed Jul 23 09:21:19 2014 From: ed at camswl.com (Edward Nevill) Date: Wed, 23 Jul 2014 10:21:19 +0100 Subject: [aarch64-port-dev ] Refactor & rename vector instructions In-Reply-To: <53CE87D9.2090106@redhat.com> References: <53CE87D9.2090106@redhat.com> Message-ID: <1406107279.27044.8.camel@mint> On Tue, 2014-07-22 at 16:48 +0100, Andrew Haley wrote: > Ed, please check that I haven't broken anything. It seems fine. I'll merge the patches into JDK9 now. Regards, Ed. From doko at ubuntu.com Wed Jul 23 10:15:44 2014 From: doko at ubuntu.com (Matthias Klose) Date: Wed, 23 Jul 2014 12:15:44 +0200 Subject: [aarch64-port-dev ] jdk8 test cases in the jdk7u archives? In-Reply-To: <53CCEE38.9050506@redhat.com> References: <53CCECDE.7090007@ubuntu.com> <53CCEE38.9050506@redhat.com> Message-ID: <53CF8B50.3070903@ubuntu.com> Am 21.07.2014 12:40, schrieb Andrew Haley: > On 07/21/2014 11:35 AM, Matthias Klose wrote: >> Looking at jtreg test results on aarch64 for >> http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/a03843f2ff15 (included >> in IcedTea 2.5.1), I see a lot of test failures which are not seen on x86. It >> looks like these tests were backported from jdk8 but don't succeed (like >> CRCTest.java). Is there a reference run which tests should pass, or is there an >> exclude lists which doesn't run the tests which are expected to fail? > > Not that I know of. The current HotSpot in jdk7u is simply the HotSpot from 8, > with some minor tweaks. I would appreciate any help getting these things right. I looked for new .java files in the tests subdir in both hotspot tarballs. See below for the new files, sorted by the test state (note that OK may contain some .java files which are not tests; I only looked for test failures) Matthias -------------- next part -------------- OK: test/aarch64/DoubleArithTests.java test/aarch64/DoubleCmpTests.java test/aarch64/FloatArithTests.java test/aarch64/FloatCmpTests.java test/aarch64/IntArithTests.java test/aarch64/IntCmpTests.java test/aarch64/IntLogicTests.java test/aarch64/IntShiftTests.java test/aarch64/LongArithTests.java test/aarch64/LongCmpTests.java test/aarch64/LongLogicTests.java test/aarch64/LongShiftTests.java test/compiler/6896617/Test6896617.java test/compiler/6934604/TestByteBoxing.java test/compiler/6934604/TestDoubleBoxing.java test/compiler/6934604/TestFloatBoxing.java test/compiler/6934604/TestIntBoxing.java test/compiler/6934604/TestLongBoxing.java test/compiler/6934604/TestShortBoxing.java test/compiler/8011706/Test8011706.java test/compiler/8011771/Test8011771.java test/compiler/intrinsics/mathexact/Verify.java test/compiler/intrinsics/stringequals/TestStringEqualsBadLength.java test/compiler/jsr292/ConcurrentClassLoadingTest.java test/compiler/jsr292/CreatesInterfaceDotEqualsCallInfo.java test/compiler/jsr292/methodHandleExceptions/ByteClassLoader.java test/compiler/jsr292/methodHandleExceptions/p/C.java test/compiler/jsr292/methodHandleExceptions/p/Dok.java test/compiler/jsr292/methodHandleExceptions/p/E.java test/compiler/jsr292/methodHandleExceptions/p/F.java test/compiler/jsr292/methodHandleExceptions/p/I.java test/compiler/jsr292/methodHandleExceptions/p/Tdirect.java test/compiler/jsr292/methodHandleExceptions/p/Treflect.java test/compiler/profiling/TestUnexpectedProfilingMismatch.java test/compiler/profiling/unloadingconflict/B.java test/compiler/profiling/unloadingconflict/TestProfileConflictClassUnloading.java test/compiler/tiered/CompLevelsTest.java test/compiler/types/TypeSpeculation.java test/compiler/uncommontrap/StackOverflowGuardPagesOff.java test/compiler/uncommontrap/TestStackBangRbp.java test/compiler/uncommontrap/UncommonTrapStackBang.java test/compiler/unsafe/GetUnsafeObjectG1PreBarrier.java test/compiler/whitebox/CompilerWhiteBoxTest.java test/gc/arguments/TestAlignmentToUseLargePages.java test/gc/arguments/TestG1HeapRegionSize.java test/gc/arguments/TestMaxHeapSizeTools.java test/gc/arguments/TestUseCompressedOopsErgoTools.java test/gc/g1/TestShrinkToOneRegion.java test/gc/metaspace/G1AddMetaspaceDependency.java test/gc/TestSystemGC.java test/runtime/7194254/Test7194254.java test/runtime/8001071/Test8001071.java test/runtime/8003720/Asmator.java test/runtime/8003720/VictimClassLoader.java test/runtime/8003720/Victim.java test/runtime/8007475/StackMapFrameTest.java test/runtime/8024804/RegisterNatives.java test/runtime/8026394/InterfaceObjectTest.java test/runtime/CDSCompressedKPtrs/XShareAuto.java test/runtime/ClassUnload/classes/test/Empty.java test/runtime/CommandLine/PrintGCApplicationConcurrentTime.java test/runtime/InternalApi/ThreadCpuTimesDeadlock.java test/runtime/LoadClass/LoadClassNegative.java test/runtime/LoadClass/TestForName.java test/runtime/memory/MultiAllocateNullCheck.java test/runtime/memory/ReadFromNoaccessArea.java test/runtime/RedefineObject/Agent.java test/runtime/RedefineObject/WalkThroughInvoke.java test/runtime/testlibrary/ClassUnloadCommon.java test/runtime/testlibrary/GeneratedClassLoader.java test/runtime/XCheckJniJsig/XCheckJSig.java test/sanity/ExecuteInternalVMTests.java test/serviceability/sa/jmap-hprof/JMapHProfLargeHeapProc.java test/serviceability/threads/TestFalseDeadLock.java test/testlibrary/com/oracle/java/testlibrary/Asserts.java test/testlibrary/com/oracle/java/testlibrary/ByteCodeLoader.java test/testlibrary/com/oracle/java/testlibrary/InMemoryJavaCompiler.java test/testlibrary/com/oracle/java/testlibrary/InputArguments.java test/testlibrary/com/oracle/java/testlibrary/JDKToolLauncher.java test/testlibrary/com/oracle/java/testlibrary/PerfCounter.java test/testlibrary/com/oracle/java/testlibrary/PerfCounters.java test/testlibrary/ctw/src/sun/hotspot/tools/ctw/ClassesListInFile.java test/testlibrary/ctw/src/sun/hotspot/tools/ctw/ClassPathDirEntry.java test/testlibrary/ctw/src/sun/hotspot/tools/ctw/ClassPathJarEntry.java test/testlibrary/ctw/src/sun/hotspot/tools/ctw/ClassPathJarInDirEntry.java test/testlibrary/ctw/src/sun/hotspot/tools/ctw/Compiler.java test/testlibrary/ctw/src/sun/hotspot/tools/ctw/CompileTheWorld.java test/testlibrary/ctw/src/sun/hotspot/tools/ctw/PathHandler.java test/testlibrary/ctw/src/sun/hotspot/tools/ctw/Utils.java test/testlibrary/ctw/test/Bar.java test/testlibrary/ctw/test/CtwTest.java test/testlibrary/ctw/test/Foo.java FAILED: test/compiler/7088419/CRCTest.java test/compiler/8011901/Test8011901.java test/compiler/8015436/Test8015436.java test/compiler/codecache/CheckReservedInitialCodeCacheSizeArgOrder.java test/compiler/codecache/CheckUpperLimit.java test/compiler/inlining/DefaultAndConcreteMethodsCHA.java test/compiler/inlining/InlineDefaultMethod1.java test/compiler/inlining/InlineDefaultMethod.java test/compiler/intrinsics/mathexact/AddExactICondTest.java test/compiler/intrinsics/mathexact/AddExactIConstantTest.java test/compiler/intrinsics/mathexact/AddExactILoadTest.java test/compiler/intrinsics/mathexact/AddExactILoopDependentTest.java test/compiler/intrinsics/mathexact/AddExactINonConstantTest.java test/compiler/intrinsics/mathexact/AddExactIRepeatTest.java test/compiler/intrinsics/mathexact/AddExactLConstantTest.java test/compiler/intrinsics/mathexact/AddExactLNonConstantTest.java test/compiler/intrinsics/mathexact/CompareTest.java test/compiler/intrinsics/mathexact/DecExactITest.java test/compiler/intrinsics/mathexact/DecExactLTest.java test/compiler/intrinsics/mathexact/GVNTest.java test/compiler/intrinsics/mathexact/IncExactITest.java test/compiler/intrinsics/mathexact/IncExactLTest.java test/compiler/intrinsics/mathexact/MulExactICondTest.java test/compiler/intrinsics/mathexact/MulExactIConstantTest.java test/compiler/intrinsics/mathexact/MulExactILoadTest.java test/compiler/intrinsics/mathexact/MulExactILoopDependentTest.java test/compiler/intrinsics/mathexact/MulExactINonConstantTest.java test/compiler/intrinsics/mathexact/MulExactIRepeatTest.java test/compiler/intrinsics/mathexact/MulExactLConstantTest.java test/compiler/intrinsics/mathexact/MulExactLNonConstantTest.java test/compiler/intrinsics/mathexact/NegExactIConstantTest.java test/compiler/intrinsics/mathexact/NegExactILoadTest.java test/compiler/intrinsics/mathexact/NegExactILoopDependentTest.java test/compiler/intrinsics/mathexact/NegExactINonConstantTest.java test/compiler/intrinsics/mathexact/NegExactLConstantTest.java test/compiler/intrinsics/mathexact/NegExactLNonConstantTest.java test/compiler/intrinsics/mathexact/NestedMathExactTest.java test/compiler/intrinsics/mathexact/SplitThruPhiTest.java test/compiler/intrinsics/mathexact/SubExactICondTest.java test/compiler/intrinsics/mathexact/SubExactIConstantTest.java test/compiler/intrinsics/mathexact/SubExactILoadTest.java test/compiler/intrinsics/mathexact/SubExactILoopDependentTest.java test/compiler/intrinsics/mathexact/SubExactINonConstantTest.java test/compiler/intrinsics/mathexact/SubExactIRepeatTest.java test/compiler/intrinsics/mathexact/SubExactLConstantTest.java test/compiler/intrinsics/mathexact/SubExactLNonConstantTest.java test/compiler/jsr292/methodHandleExceptions/TestAMEnotNPE.java test/compiler/startup/SmallCodeCacheStartup.java test/compiler/startup/StartupOutput.java test/compiler/tiered/NonTieredLevelsTest.java test/compiler/tiered/TieredLevelsTest.java test/compiler/whitebox/ClearMethodStateTest.java test/compiler/whitebox/DeoptimizeAllTest.java test/compiler/whitebox/DeoptimizeMethodTest.java test/compiler/whitebox/EnqueueMethodForCompilationTest.java test/compiler/whitebox/IsMethodCompilableTest.java test/compiler/whitebox/MakeMethodNotCompilableTest.java test/compiler/whitebox/SetDontInlineMethodTest.java test/compiler/whitebox/SetForceInlineMethodTest.java test/gc/6941923/Test6941923.java test/gc/arguments/TestCMSHeapSizeFlags.java test/gc/arguments/TestCompressedClassFlags.java test/gc/arguments/TestG1HeapSizeFlags.java test/gc/arguments/TestHeapFreeRatio.java test/gc/arguments/TestInitialTenuringThreshold.java test/gc/arguments/TestMaxNewSize.java test/gc/arguments/TestMinInitialErgonomics.java test/gc/arguments/TestParallelHeapSizeFlags.java test/gc/arguments/TestSerialHeapSizeFlags.java test/gc/arguments/TestUnrecognizedVMOptionsHandling.java test/gc/arguments/TestUseCompressedOopsErgo.java test/gc/concurrentMarkSweep/CheckAllocateAndSystemGC.java test/gc/concurrentMarkSweep/GuardShrinkWarning.java test/gc/concurrentMarkSweep/SystemGCOnForegroundCollector.java test/gc/g1/TestHumongousAllocInitialMark.java test/gc/g1/TestPrintGCDetails.java test/gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java test/gc/metaspace/TestMetaspaceMemoryPool.java test/gc/metaspace/TestMetaspacePerfCounters.java test/gc/metaspace/TestMetaspaceSizeFlags.java test/gc/metaspace/TestPerfCountersAndMemoryPools.java test/gc/parallelScavenge/AdaptiveGCBoundary.java test/gc/startup_warnings/TestCMSForegroundFlags.java test/gc/startup_warnings/TestCMSIncrementalMode.java test/gc/startup_warnings/TestCMS.java test/gc/startup_warnings/TestCMSNoIncrementalMode.java test/gc/startup_warnings/TestDefaultMaxRAMFraction.java test/gc/startup_warnings/TestDefNewCMS.java test/gc/startup_warnings/TestG1.java test/gc/startup_warnings/TestIncGC.java test/gc/startup_warnings/TestParallelGC.java test/gc/startup_warnings/TestParallelScavengeSerialOld.java test/gc/startup_warnings/TestParNewCMS.java test/gc/startup_warnings/TestParNewSerialOld.java test/gc/startup_warnings/TestSerialGC.java test/gc/TestG1ZeroPGCTJcmdThreadPrint.java test/gc/TestObjectAlignment.java test/runtime/8003720/Test8003720.java test/runtime/8007320/ConstMethodTest.java test/runtime/8026365/InvokeSpecialAnonTest.java test/runtime/CDSCompressedKPtrs/CDSCompressedKPtrsError.java test/runtime/CDSCompressedKPtrs/CDSCompressedKPtrs.java test/runtime/ClassFile/JsrRewriting.java test/runtime/ClassFile/OomWhileParsingRepeatedJsr.java test/runtime/ClassUnload/KeepAliveClass.java test/runtime/ClassUnload/KeepAliveClassLoader.java test/runtime/ClassUnload/KeepAliveObject.java test/runtime/ClassUnload/KeepAliveSoftReference.java test/runtime/CommandLine/BooleanFlagWithInvalidValue.java test/runtime/CommandLine/ConfigFileParsing.java test/runtime/CommandLine/FlagWithInvalidValue.java test/runtime/CommandLine/NonBooleanFlagWithInvalidBooleanPrefix.java test/runtime/CommandLine/UnrecognizedVMOption.java test/runtime/CompressedOops/CompressedClassPointers.java test/runtime/CompressedOops/CompressedKlassPointerAndOops.java test/runtime/contended/Basic.java test/runtime/contended/DefaultValue.java test/runtime/contended/HasNonStatic.java test/runtime/contended/Inheritance1.java test/runtime/contended/OopMaps.java test/runtime/contended/Options.java test/runtime/interned/SanityTest.java test/runtime/lambda-features/PublicStaticInterfaceMethodHandling.java test/runtime/memory/ReserveMemory.java test/runtime/memory/RunUnitTestsConcurrently.java test/runtime/memory/StressVirtualSpaceResize.java test/runtime/Metaspace/FragmentMetaspaceSimple.java test/runtime/SharedArchiveFile/CdsDifferentObjectAlignment.java test/runtime/SharedArchiveFile/CdsSameObjectAlignment.java test/runtime/SharedArchiveFile/SharedArchiveFile.java test/serviceability/sa/jmap-hprof/JMapHProfLargeHeapTest.java test/testlibrary_tests/AssertsTest.java test/testlibrary_tests/OutputAnalyzerReportingTest.java test/testlibrary_tests/OutputAnalyzerTest.java Error: test/runtime/ClassUnload/UnloadTest.java test/runtime/Metaspace/classes/test/Empty.java test/runtime/Metaspace/FragmentMetaspace.java test/runtime/RedefineObject/TestRedefineObject.java test/sanity/WhiteBox.java test/testlibrary/ctw/test/ClassesDirTest.java test/testlibrary/ctw/test/ClassesListTest.java test/testlibrary/ctw/test/JarDirTest.java test/testlibrary/ctw/test/JarsTest.java From adinn at redhat.com Wed Jul 23 15:37:40 2014 From: adinn at redhat.com (Andrew Dinn) Date: Wed, 23 Jul 2014 16:37:40 +0100 Subject: [aarch64-port-dev ] Simulator builds are now working again Message-ID: <53CFD6C4.6060103@redhat.com> Recently the AArch64 hotspot switched from using dsb to dmb. This was fine for real hardware but caused strange problems with the x86 simulator build. For example, javac Hello.java crashed with an out of memory error. The problem was that the simulator method dmb() was implemented with an empty body (it should have returned error return value NYI). So, no memory flushes or fences were happening. I have pushed a patch to the simulator repo to implement dmb (it accepts LD, ST, SY and ISH for the CRm code). x86 simulator builds are now working again. regards, Andrew Dinn ----------- From ed at camswl.com Wed Jul 23 15:45:31 2014 From: ed at camswl.com (ed at camswl.com) Date: Wed, 23 Jul 2014 15:45:31 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/hotspot: 5 new changesets Message-ID: <201407231545.s6NFjVGI019482@aojmv0008> Changeset: b8fa2d9e725d Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-21 10:46 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b8fa2d9e725d Add support for AES Intrinsics ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp ! src/cpu/aarch64/vm/vm_version_aarch64.cpp Changeset: 472552a0ca8e Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-21 17:23 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/472552a0ca8e Refactor SIMD instructions using INSN macros ! src/cpu/aarch64/vm/assembler_aarch64.hpp Changeset: 56896724aabd Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-22 14:37 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/56896724aabd Fix assertion failure in DeoptimizeAllTest ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Changeset: b36fac116ec9 Author: aph Date: 2014-07-22 08:45 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/b36fac116ec9 Remove "v_" prefixes from all SIMD instructions. ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Changeset: 59715cbbf542 Author: aph Date: 2014-07-22 11:55 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/59715cbbf542 Reorganize SIMD instructions. ! src/cpu/aarch64/vm/assembler_aarch64.cpp ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/icache_aarch64.cpp ! src/cpu/aarch64/vm/icache_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp From fridrich.strba at suse.com Thu Jul 24 04:35:21 2014 From: fridrich.strba at suse.com (Fridrich Strba) Date: Thu, 24 Jul 2014 06:35:21 +0200 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 In-Reply-To: References: <53CDEAB0.6000106@suse.com> Message-ID: <53D08D09.20807@suse.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hello, In order to be sure that the old java is not broken, I used for this build a bootstrap zero build of the same code: icedtea 2.5.1 in order to produce the hotspot build. It still crashes in the same place http://pastebin.com/s2UJ1aHB. The file it produced is attached. Thanks a lot for willingness to help Fridrich On 22/07/14 08:27, Edward Nevill wrote: > Hi Fridrich, > > > On 22 July 2014 05:38, Fridrich Strba > wrote: > > [42544s] # [42544s] # An error report file with more information is > saved as: [42544s] # > /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make/com/sun/jmx/hs_err_pid29101.log > > [42664s] # [ timer expired, abort... ] > > > Could you put this ^^^^^ file somewhere where we can access it. > > Thanks, Ed Nevill > -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iEYEARECAAYFAlPQjQkACgkQu9a1imXPdA/53gCcCMOYTS8I4ij6/gIJ+Bwy0qU3 8GIAoIB23jG1GWGRD9wvQzXuiXiChsFF =M2zN -----END PGP SIGNATURE----- From fridrich.strba at suse.com Thu Jul 24 05:39:09 2014 From: fridrich.strba at suse.com (Fridrich Strba) Date: Thu, 24 Jul 2014 07:39:09 +0200 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 In-Reply-To: <53D08D09.20807@suse.com> References: <53CDEAB0.6000106@suse.com> <53D08D09.20807@suse.com> Message-ID: <53D09BFD.5010005@suse.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Since the list seems to strip attachments, here is the hs_err_pid29101.log: http://pastebin.com/NkLvWWTD Cheers Fridrich On 24/07/14 06:35, Fridrich Strba wrote: > Hello, > > In order to be sure that the old java is not broken, I used for > this build a bootstrap zero build of the same code: icedtea 2.5.1 > in order to produce the hotspot build. It still crashes in the same > place http://pastebin.com/s2UJ1aHB. The file it produced is > attached. > > Thanks a lot for willingness to help > > Fridrich > > On 22/07/14 08:27, Edward Nevill wrote: >> Hi Fridrich, > > >> On 22 July 2014 05:38, Fridrich Strba > > wrote: > >> [42544s] # [42544s] # An error report file with more information >> is saved as: [42544s] # >> /home/abuild/rpmbuild/BUILD/icedtea-2.5.1/openjdk/jdk/make/com/sun/jmx/hs_err_pid29101.log > >> > > [42664s] # [ timer expired, abort... ] > > >> Could you put this ^^^^^ file somewhere where we can access it. > >> Thanks, Ed Nevill > > > -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iEYEARECAAYFAlPQm/0ACgkQu9a1imXPdA+zLwCaAvHocClSpM2YL80CXr0+rcQs rG0An0lyBpxM1Asb6Ub/QGkzQB66YrAo =fR4l -----END PGP SIGNATURE----- From fridrich.strba at suse.com Thu Jul 24 05:46:01 2014 From: fridrich.strba at suse.com (Fridrich Strba) Date: Thu, 24 Jul 2014 07:46:01 +0200 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 In-Reply-To: <53D08D09.20807@suse.com> References: <53CDEAB0.6000106@suse.com> <53D08D09.20807@suse.com> Message-ID: <53D09D99.7040909@suse.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Sorry, disregard the previous message, I pasted a wrong log. The one of the aarch64 build is: # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x0000004001c074b4, pid=32573, tid=274904080880 # # JRE version: OpenJDK Runtime Environment (7.0_65-b32) (build 1.7.0_65-b32) # Java VM: OpenJDK 64-Bit Server VM (25.0-b70 mixed mode linux-aarch64 compressed oops) # Problematic frame: # J 209 C1 java.util.AbstractList.()V (10 bytes) @ 0x0000004001c074b4 [0x0000004001c073c0+0xf4] # # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again # # If you would like to submit a bug report, please visit: # http://bugreport.sun.com/bugreport/crash.jsp # - --------------- T H R E A D --------------- Current thread (0x000000000041f800): JavaThread "main" [_thread_in_Java, id=32574, stack(0x00000040016f7000,0x00000040018f7000)] siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x00000000019a6000 Registers: R0=0x000000400c33c4e0 R1=0x00000000f5c77448 R2=0x0000000000020778 R3=0x0000000080000001 R4=0x0000000000000000 R5=0x00000000000000a0 R6=0x00000000f5b1aea8 R7=0x0000000000000568 R8=0x00000040019a6000 R9=0x000000400c6055b0 R10=0x00000000f5588350 R11=0x00000000f5b20770 R12=0x000000400c3ee480 R13=0x00000040018f4e10 R14=0x0000000000000001 R15=0x0000000000000068 R16=0x000000000000006f R17=0x00000000000000a3 R18=0x00000000f5c77288 R19=0x00000000000000b7 R20=0x00000040018f4e48 R21=0x00000040014e6be0 R22=0x000000400c3eaf19 R23=0x0000000000000013 R24=0x00000040018f4eb8 R25=0x00000000f5b17af0 R26=0x000000400c3f12e0 R27=0x0000000000000000 R28=0x000000000041f800 R29=0x00000040018f4e90 R30=0x0000004001a8dcc0 Top of Stack: (sp=0x00000040018f4e10) 0x00000040018f4e10: 00000040018f5050 0000004001bd648c 0x00000040018f4e20: 00000000f5b1ae68 0000000000000001 0x00000040018f4e30: 0000000100000001 00000000f5621890 0x00000040018f4e40: 00000000f5b1aea8 00000000f5c77448 0x00000040018f4e50: 00000040018f4e50 000000400c3eaf19 0x00000040018f4e60: 00000040018f4eb8 000000400c3f12e0 0x00000040018f4e70: 0000000000000000 000000400c3eaf80 0x00000040018f4e80: 00000040018f4e48 00000040018f4e80 0x00000040018f4e90: 00000040018f4f00 0000004001a8dcc0 0x00000040018f4ea0: 00000000f5b1aea8 0000000000000000 0x00000040018f4eb0: 000000000000000a 00000000f5c77448 0x00000040018f4ec0: 00000040018f4ec0 000000400c3eb00b 0x00000040018f4ed0: 00000040018f4f18 000000400c3f12e0 0x00000040018f4ee0: 0000000000000000 000000400c3eb030 0x00000040018f4ef0: 00000040018f4ea8 00000040018f4ef0 0x00000040018f4f00: 00000040018f4f60 0000004001a8dcc0 0x00000040018f4f10: 000000000000000a 00000000f5c77448 0x00000040018f4f20: 00000040018f4f20 000000400c3eb0bb 0x00000040018f4f30: 00000040018f4f70 000000400c3f12e0 0x00000040018f4f40: 0000000000000000 000000400c3eb0d8 0x00000040018f4f50: 00000040018f4f10 00000040018f4f30 0x00000040018f4f60: 00000040018f4fc0 0000004001a8dcc0 0x00000040018f4f70: 00000000f5c77448 00000000f5c77448 0x00000040018f4f80: 00000040018f4f80 000000400c59dc64 0x00000040018f4f90: 00000040018f5008 000000400c59fb30 0x00000040018f4fa0: 0000000000000000 000000400c59ddd0 0x00000040018f4fb0: 00000040018f4f70 00000040018f4fc0 0x00000040018f4fc0: 00000040018f5050 0000004001a8dba8 0x00000040018f4fd0: 0000000000000000 0000000000000000 0x00000040018f4fe0: 0000000000000000 0000000000000000 0x00000040018f4ff0: 0000000000000000 0000000000000000 0x00000040018f5000: 00000000f5c76580 00000000f5ab3778 Instructions: (pc=0x0000004001c074b4) 0x0000004001c07494: 20 f9 ff 58 42 4c 1d 12 5f 00 00 71 20 02 00 54 0x0000004001c074a4: 3f 0c 00 b9 fd 7b 44 a9 ff 43 01 91 e8 ec ff f0 0x0000004001c074b4: 1f 01 40 b9 c0 03 5f d6 e0 07 00 f9 08 00 80 92 0x0000004001c074c4: e8 03 00 f9 8e be fd 97 da ff ff 17 e0 07 00 f9 Register to memory mapping: R0=0x000000400c33c4e0 R1=0x00000000f5c77448 R2=0x0000000000020778 R3=0x0000000080000001 R4=0x0000000000000000 R5=0x00000000000000a0 R6=0x00000000f5b1aea8 R7=0x0000000000000568 R8=0x00000040019a6000 R9=0x000000400c6055b0 R10=0x00000000f5588350 R11=0x00000000f5b20770 R12=0x000000400c3ee480 R13=0x00000040018f4e10 R14=0x0000000000000001 R15=0x0000000000000068 R16=0x000000000000006f R17=0x00000000000000a3 R18=0x00000000f5c77288 R19=0x00000000000000b7 R20=0x00000040018f4e48 R21=0x00000040014e6be0 R22=0x000000400c3eaf19 R23=0x0000000000000013 R24=0x00000040018f4eb8 R25=0x00000000f5b17af0 R26=0x000000400c3f12e0 R27=0x0000000000000000 R28=0x000000000041f800 R29=0x00000040018f4e90 R30=0x0000004001a8dcc0 Stack: [0x00000040016f7000,0x00000040018f7000], sp=0x00000040018f4e10, free space=2039k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) J 209 C1 java.util.AbstractList.()V (10 bytes) @ 0x0000004001c074b4 [0x0000004001c073c0+0xf4] Thanks Fridrich -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iEYEARECAAYFAlPQnZkACgkQu9a1imXPdA/T9gCeJnIIdp+I9KFqvJRBU78BSXdr qHYAnRC8ZdfTSfg1t/r4JGTZ/WcqXNIm =veXA -----END PGP SIGNATURE----- From adinn at redhat.com Thu Jul 24 08:00:18 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Thu, 24 Jul 2014 08:00:18 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/hotspot: 8 new changesets Message-ID: <201407240800.s6O80I20016086@aojmv0008> Changeset: 899df65664f8 Author: hseigel Date: 2014-03-04 15:46 -0500 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/899df65664f8 8032536: JVM resolves wrong method in some unusual cases Summary: Handle package private case Reviewed-by: coleenp, acorn, jdn ! src/share/vm/oops/klassVtable.cpp Changeset: f39c5f05151b Author: hseigel Date: 2014-03-17 10:17 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/f39c5f05151b 8035119: Fix exceptions to bytecode verification Summary: Prevent ctor calls to super() and this() from avoidable code (try blocks, if stmts, etc.) Reviewed-by: coleenp, acorn, mschoene ! src/share/vm/classfile/stackMapTable.cpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/classfile/verifier.hpp Changeset: 19cccbf76d6d Author: hseigel Date: 2014-02-13 11:28 -0500 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/19cccbf76d6d 8030763: Validate global memory allocation Summary: Add length checks where necessary Reviewed-by: coleenp, mschoene ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/utilities/vmError.cpp Changeset: 391c133a4a5d Author: coleenp Date: 2014-03-19 14:45 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/391c133a4a5d 8037076: Check constant pool constants Summary: Fix events log string. Reviewed-by: kvn, mschoene ! src/share/vm/utilities/events.cpp Changeset: 54ddcfa65655 Author: acorn Date: 2014-03-20 11:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/54ddcfa65655 8037167: Better method signature resolution Reviewed-by: mschoene, hseigel, lfoltan ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp Changeset: e8ca2de9b829 Author: hseigel Date: 2014-04-07 09:27 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/e8ca2de9b829 8037157: Verify call Summary: Check for null method Reviewed-by: coleenp, acorn, mschoene ! src/share/vm/classfile/verifier.cpp Changeset: 0e7628b16442 Author: hseigel Date: 2014-05-28 08:09 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/0e7628b16442 8043454: Test case for 8037157 should not throw a VerifyError Summary: Don't throw VerifyError if method is NULL. Reviewed-by: acorn, lfoltan, mschoene ! src/share/vm/classfile/verifier.cpp Changeset: b59d2e4fec44 Author: hseigel Date: 2014-03-19 14:02 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/b59d2e4fec44 8036800: Attribute OOM to correct part of code Summary: checks that the attribute_length does not exceed the length of remaining data in the class file Reviewed-by: coleenp, ahgross ! src/share/vm/classfile/classFileParser.cpp From aph at redhat.com Thu Jul 24 08:34:04 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 24 Jul 2014 09:34:04 +0100 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 In-Reply-To: <53D09D99.7040909@suse.com> References: <53CDEAB0.6000106@suse.com> <53D08D09.20807@suse.com> <53D09D99.7040909@suse.com> Message-ID: <53D0C4FC.1010401@redhat.com> On 24/07/14 06:46, Fridrich Strba wrote: > Sorry, disregard the previous message, I pasted a wrong log. The one of the aarch64 build is: I don't think anyone can help you until we have a reproducible bug. How did you configure and build icedtea 2.5.1? Andrew. From edward.nevill at linaro.org Thu Jul 24 09:41:24 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Thu, 24 Jul 2014 10:41:24 +0100 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 In-Reply-To: <53D09D99.7040909@suse.com> References: <53CDEAB0.6000106@suse.com> <53D08D09.20807@suse.com> <53D09D99.7040909@suse.com> Message-ID: <1406194884.29221.40.camel@localhost.localdomain> Hi Fridrich, On Thu, 2014-07-24 at 07:46 +0200, Fridrich Strba wrote: ># ># A fatal error has been detected by the Java Runtime Environment: ># ># SIGSEGV (0xb) at pc=0x0000004001c074b4, pid=32573, tid=274904080880 OK, I have had a look at this and discussed this with our QEMU expert and we think we may know what is going on. Instructions: (pc=0x0000004001c074b4) > 0x0000004001c07494: 20 f9 ff 58 42 4c 1d 12 5f 00 00 71 20 02 00 54 > 0x0000004001c074a4: 3f 0c 00 b9 fd 7b 44 a9 ff 43 01 91 e8 ec ff f0 > 0x0000004001c074b4: 1f 01 40 b9 c0 03 5f d6 e0 07 00 f9 08 00 80 92 > 0x0000004001c074c4: e8 03 00 f9 8e be fd 97 da ff ff 17 e0 07 00 f9 > Disassembling the above hex gives us:- 0x411028 : ldr x0, 0x410f4c 0x41102c : and w2, w2, #0x7ffff8 0x411030 : cmp w2, #0x0 0x411034 : b.eq 0x411078 0x411038 : str wzr, [x1,#12] 0x41103c : ldp x29, x30, [sp,#64] 0x411040 : add sp, sp, #0x50 0x411044 : adrp x8, 0x1b0000 0x411048 : ldr wzr, [x8] ;;; <<< Fault address 0x41104c : ret 0x411050 : str x0, [sp,#8] 0x411054 : mov x8, #0xffffffffffffffff // #-1 0x411058 : str x8, [sp] 0x41105c : bl 0x380a94 0x411060 : b 0x410fc8 0x411064 : str x0, [sp,#8] So it is faulting on the instruction "ldr wzr, [x8]". This is a test of the polling page. What OpenJDK does is, when it wants to do a GC it runs all threads to a safe point, ie a point in the compiled code where it knows the location of all object references. It does this by read protecting the polling page. The polling page is polled at well known safe points such as (in the above case) a return from a method. OpenJDK then traps the resultant SIG SEGV and when all threads have run to a safe point it is safe to do a GC. However, it would seem that in this case although the signal is being thrown, it is not being caught correctly by OpenJDK. The first question is whether you are running this is user emulation or system emulation. My QEMU expert tells me that in user emulation mode signals may not be delivered to the correct thread. He has pointed me at the following QEMU patch which may help, but is not a fix. Otherwise I am afraid the answer is to run in system emulation mode, or run on real HW. All the best, Edward Nevill --- CUT HERE --- From: Alexander Graf Date: Tue, 10 Jul 2012 20:40:55 +0200 Subject: linux-user: Run multi-threaded code on a single core Running multi-threaded code can easily expose some of the fundamental breakages in QEMU's design. It's just not a well supported scenario. So if we pin the whole process to a single host CPU, we guarantee that we will never have concurrent memory access actually happen. We can still get scheduled away at any time, so it's no complete guarantee, but apparently it reduces the odds well enough to get my test cases to pass. This gets Java 1.7 working for me again on my test box. Signed-off-by: Alexander Graf --- linux-user/syscall.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index d62e9e6..5295afb 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -4400,6 +4400,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp, if (nptl_flags & CLONE_SETTLS) cpu_set_tls (new_env, newtls); + /* agraf: Pin ourselves to a single CPU when running multi-threaded. + This turned out to improve stability for me. */ + { + cpu_set_t mask; + CPU_ZERO(&mask); + CPU_SET(0, &mask); + sched_setaffinity(0, sizeof(mask), &mask); + } + /* Grab a mutex so that thread setup appears atomic. */ pthread_mutex_lock(&clone_lock); --- CUT HERE --- From edward.nevill at linaro.org Thu Jul 24 10:01:29 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Thu, 24 Jul 2014 11:01:29 +0100 Subject: [aarch64-port-dev ] JTreg failures in aarch64 jdk7u Message-ID: <1406196089.29221.51.camel@localhost.localdomain> Hi, I have been looking at the hotspot jtreg failures in aarch64 jdk7u. Currently I get. Test results: passed: 343; failed: 102; error: 1 This is because the hotspot in aarch64 jdk7u is based on jdk8 hotspot (hs25) instead of the jdk7u hotspot (hs24). The jtreg test suite in aarch64 jdk7u contains many tests which fail because they use JDK8 source features, or depend on JDK8 APIs. For example, all 38 mathexact tests fail because there is no mathexact in JDK7. Running the same test suite on x86 gives me Test results: passed: 311; failed: 134; error: 1 If I take the jtreg hotspot test suite from x86 jdk7u hotspot (hs24) and run it on aarch64 jdk7u I get the following results. Test results: passed: 279; failed: 11; error: 2 compared with the following running it on x86 Test results: passed: 286; failed: 4; error: 2 So, what is the best solution to this? 1) Prune the existing aarch64 jdk7u hotspot jtreg tree to remove all tests which depend on jdk8 or 2) Generate an exclude list of the above tests or 3) Replace the aarch64 jdk7u hotspot jtreg tree (from hs25) with the one from x86 (hs24). I am happy to implement whichever solution people think is best. All the best, Ed. From aph at redhat.com Thu Jul 24 10:10:07 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 24 Jul 2014 11:10:07 +0100 Subject: [aarch64-port-dev ] JTreg failures in aarch64 jdk7u In-Reply-To: <1406196089.29221.51.camel@localhost.localdomain> References: <1406196089.29221.51.camel@localhost.localdomain> Message-ID: <53D0DB7F.7010801@redhat.com> Hi, On 07/24/2014 11:01 AM, Edward Nevill wrote: > I have been looking at the hotspot jtreg failures in aarch64 jdk7u. Currently I get. We are already having a conversation about this. See "jdk8 test cases in the jdk7u archives" in this list. > Test results: passed: 343; failed: 102; error: 1 > > This is because the hotspot in aarch64 jdk7u is based on jdk8 > hotspot (hs25) instead of the jdk7u hotspot (hs24). The jtreg test > suite in aarch64 jdk7u contains many tests which fail because they > use JDK8 source features, or depend on JDK8 APIs. > > For example, all 38 mathexact tests fail because there is no > mathexact in JDK7. > > Running the same test suite on x86 gives me > > Test results: passed: 311; failed: 134; error: 1 > > If I take the jtreg hotspot test suite from x86 jdk7u hotspot (hs24) > and run it on aarch64 jdk7u I get the following results. > > Test results: passed: 279; failed: 11; error: 2 > > compared with the following running it on x86 > > Test results: passed: 286; failed: 4; error: 2 > > So, what is the best solution to this? > > 1) Prune the existing aarch64 jdk7u hotspot jtreg tree to remove all > tests which depend on jdk8 or > 2) Generate an exclude list of the above tests or > 3) Replace the aarch64 jdk7u hotspot jtreg tree (from hs25) with the > one from x86 (hs24). I think that 3) would be best. Medium term, we should do a real backport of AArch64 to hs24 and integrate it with the current icedtea7-forest tree. Then, icedtea7-forest users get to build from a single set of sources. Andrew. From aph at redhat.com Thu Jul 24 10:23:51 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 24 Jul 2014 11:23:51 +0100 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 In-Reply-To: <1406194884.29221.40.camel@localhost.localdomain> References: <53CDEAB0.6000106@suse.com> <53D08D09.20807@suse.com> <53D09D99.7040909@suse.com> <1406194884.29221.40.camel@localhost.localdomain> Message-ID: <53D0DEB7.6070805@redhat.com> On 07/24/2014 10:41 AM, Edward Nevill wrote: > So it is faulting on the instruction "ldr wzr, [x8]". This is a test > of the polling page. What OpenJDK does is, when it wants to do a GC > it runs all threads to a safe point, ie a point in the compiled code > where it knows the location of all object references. It does this > by read protecting the polling page. The polling page is polled at > well known safe points such as (in the above case) a return from a > method. > > OpenJDK then traps the resultant SIG SEGV and when all threads have > run to a safe point it is safe to do a GC. > > However, it would seem that in this case although the signal is > being thrown, it is not being caught correctly by OpenJDK. > > The first question is whether you are running this is user emulation > or system emulation. My QEMU expert tells me that in user emulation > mode signals may not be delivered to the correct thread. Thanks for that. I'm pretty amazed that QEMU user mode is fit for anything at all if it can't get something so basic right. If I ever had any doubt about the wisdom of writing a our homebrew simulator to develop the AArch64 OpenJDK port, it is now gone. Andrew. From fridrich.strba at suse.com Thu Jul 24 13:31:43 2014 From: fridrich.strba at suse.com (Fridrich Strba) Date: Thu, 24 Jul 2014 15:31:43 +0200 Subject: [aarch64-port-dev ] Crashes while building aarch64 port using icedtea 2.5.1 In-Reply-To: <1406194884.29221.40.camel@localhost.localdomain> References: <53CDEAB0.6000106@suse.com> <53D08D09.20807@suse.com> <53D09D99.7040909@suse.com> <1406194884.29221.40.camel@localhost.localdomain> Message-ID: <53D10ABF.7070808@suse.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hello Edward On 24/07/14 11:41, Edward Nevill wrote: > So it is faulting on the instruction "ldr wzr, [x8]". This is a > test of the polling page. What OpenJDK does is, when it wants to do > a GC it runs all threads to a safe point, ie a point in the > compiled code where it knows the location of all object references. > It does this by read protecting the polling page. The polling page > is polled at well known safe points such as (in the above case) a > return from a method. > > OpenJDK then traps the resultant SIG SEGV and when all threads have > run to a safe point it is safe to do a GC. > > However, it would seem that in this case although the signal is > being thrown, it is not being caught correctly by OpenJDK. > > The first question is whether you are running this is user > emulation or system emulation. My QEMU expert tells me that in user > emulation mode signals may not be delivered to the correct thread. > > He has pointed me at the following QEMU patch which may help, but > is not a fix. > > Otherwise I am afraid the answer is to run in system emulation > mode, or run on real HW. Thanks a lot for your analysis. Yes, I use user emulation. But the version of qemu I use actually has that patch included and I see it hanging always on one and only core/thread of cpu. Nonetheless, this crashes happen when working on the same file all the time, although not in the same frame, which validates your analysis. Just wondering whether there is a particular construct in that file that makes the virtual machine to go a path that has problem. As a bottom-line I see that I will most probably need to get hand on a real aarch64 hardware. Thanks for your help again Fridrich -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iEYEARECAAYFAlPRCr4ACgkQu9a1imXPdA8kLwCgg/vBvQ48zN8FeJAuvQEZnEdl bbsAnj3FtfR8A/LUgFE7A/lL7L2RsxZ0 =OwOQ -----END PGP SIGNATURE----- From adinn at redhat.com Fri Jul 25 15:46:41 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Fri, 25 Jul 2014 15:46:41 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u: 2 new changesets Message-ID: <201407251546.s6PFkg25006962@aojmv0008> Changeset: 96751db4491c Author: adinn Date: 2014-07-25 16:42 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/rev/96751db4491c Added tag jdk7u60_b04_aarch64_832 for changeset bb25a70164f1 ! .hgtags Changeset: 330252a21a4f Author: adinn Date: 2014-07-25 16:44 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/rev/330252a21a4f Added tag jdk7u60_b04_aarch64_833 for changeset 96751db4491c ! .hgtags From adinn at redhat.com Fri Jul 25 15:46:49 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Fri, 25 Jul 2014 15:46:49 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/corba: 2 new changesets Message-ID: <201407251546.s6PFkn7D007038@aojmv0008> Changeset: 6e9ce16f3251 Author: adinn Date: 2014-07-25 16:42 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/corba/rev/6e9ce16f3251 Added tag jdk7u60_b04_aarch64_832 for changeset 062d34833910 ! .hgtags Changeset: e50f2e271b9a Author: adinn Date: 2014-07-25 16:44 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/corba/rev/e50f2e271b9a Added tag jdk7u60_b04_aarch64_833 for changeset 6e9ce16f3251 ! .hgtags From adinn at redhat.com Fri Jul 25 15:46:54 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Fri, 25 Jul 2014 15:46:54 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/hotspot: Added tag jdk7u60_b04_aarch64_833 for changeset b59d2e4fec44 Message-ID: <201407251546.s6PFksaN007083@aojmv0008> Changeset: 12d37b10f725 Author: adinn Date: 2014-07-25 16:44 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/12d37b10f725 Added tag jdk7u60_b04_aarch64_833 for changeset b59d2e4fec44 ! .hgtags From adinn at redhat.com Fri Jul 25 15:46:58 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Fri, 25 Jul 2014 15:46:58 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/jaxp: 2 new changesets Message-ID: <201407251546.s6PFkwZ4007123@aojmv0008> Changeset: c9fc52d664ab Author: adinn Date: 2014-07-25 16:42 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/jaxp/rev/c9fc52d664ab Added tag jdk7u60_b04_aarch64_832 for changeset 8d0b651f4537 ! .hgtags Changeset: 7a5d1d29b587 Author: adinn Date: 2014-07-25 16:44 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/jaxp/rev/7a5d1d29b587 Added tag jdk7u60_b04_aarch64_833 for changeset c9fc52d664ab ! .hgtags From adinn at redhat.com Fri Jul 25 15:47:03 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Fri, 25 Jul 2014 15:47:03 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/jaxws: 2 new changesets Message-ID: <201407251547.s6PFl3Gc007163@aojmv0008> Changeset: 1eaddec2ed9f Author: adinn Date: 2014-07-25 16:42 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/jaxws/rev/1eaddec2ed9f Added tag jdk7u60_b04_aarch64_832 for changeset 831288f0db78 ! .hgtags Changeset: b1bacea09f0c Author: adinn Date: 2014-07-25 16:44 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/jaxws/rev/b1bacea09f0c Added tag jdk7u60_b04_aarch64_833 for changeset 1eaddec2ed9f ! .hgtags From adinn at redhat.com Fri Jul 25 15:47:08 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Fri, 25 Jul 2014 15:47:08 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/jdk: 2 new changesets Message-ID: <201407251547.s6PFl9BQ007206@aojmv0008> Changeset: b7a451ec4a1a Author: adinn Date: 2014-07-25 16:42 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/jdk/rev/b7a451ec4a1a Added tag jdk7u60_b04_aarch64_832 for changeset 9f7e97ccf9ec ! .hgtags Changeset: 083c260c2517 Author: adinn Date: 2014-07-25 16:44 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/jdk/rev/083c260c2517 Added tag jdk7u60_b04_aarch64_833 for changeset b7a451ec4a1a ! .hgtags From adinn at redhat.com Fri Jul 25 15:47:14 2014 From: adinn at redhat.com (adinn at redhat.com) Date: Fri, 25 Jul 2014 15:47:14 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/langtools: 2 new changesets Message-ID: <201407251547.s6PFlEMi007245@aojmv0008> Changeset: fdc0cac1767f Author: adinn Date: 2014-07-25 16:42 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/langtools/rev/fdc0cac1767f Added tag jdk7u60_b04_aarch64_832 for changeset a54f411174bb ! .hgtags Changeset: 940be410ac3b Author: adinn Date: 2014-07-25 16:44 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/langtools/rev/940be410ac3b Added tag jdk7u60_b04_aarch64_833 for changeset fdc0cac1767f ! .hgtags From aph at redhat.com Mon Jul 28 09:13:40 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 28 Jul 2014 10:13:40 +0100 Subject: [aarch64-port-dev ] JDK8: Delete dead code Message-ID: <53D61444.2050704@redhat.com> This is the first part of a cleanup to remove all the stuff that we thought might be useful but hasn't turned out to be, along with obsolete comments. Andrew. comparing with ssh://hg.openjdk.java.net/aarch64-port/jdk8/hotspot searching for changes remote: X11 forwarding request failed on channel 0 changeset: 7202:4020f25a52c2 tag: tip user: aph date: Fri Jul 25 08:17:44 2014 -0400 summary: Delete dead code. diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/aarch64.ad Fri Jul 25 08:17:44 2014 -0400 @@ -892,11 +892,6 @@ //============================================================================= -// Emit an interrupt that is caught by the debugger (for debugging compiler). -void emit_break(CodeBuffer &cbuf) { - Unimplemented(); -} - #ifndef PRODUCT void MachBreakpointNode::format(PhaseRegAlloc *ra_, outputStream *st) const { st->print("BREAKPOINT"); diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/aarch64Test.cpp --- a/src/cpu/aarch64/vm/aarch64Test.cpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/aarch64Test.cpp Fri Jul 25 08:17:44 2014 -0400 @@ -35,43 +35,4 @@ CodeBuffer code(b); MacroAssembler _masm(&code); entry(&code); - // dive now before we hit all the Unimplemented() calls - // exit(0); - -#if 0 - // old test code to compute sum of squares - enum { r0, r1, r2, r3, r4, LR = 30 }; - - address entry = __ pc(); - - __ _mov_imm(r0, 100); - address loop = __ pc(); - __ _sub_imm(r0, r0, 1); - __ _cbnz(r0, loop); - // __ _br(LR); - - char stack[4096]; - unsigned long memory[100]; - - __ _mov_imm(r0, 1); - __ _mov_imm(r4, 100); - loop = __ pc(); - __ _mov(r1, r0); - __ _mul(r2, r1, r1); - __ _str_post(r2, r3, 8); - __ _add_imm(r0, r0, 1); - __ _sub_imm(r4, r4, 1); - __ _cbnz(r4, loop); - __ _br(LR); - - Disassembler::decode(entry, __ pc()); - - sim.init((u_int64_t)entry, (u_int64_t)stack + sizeof stack, - (u_int64_t)stack); - sim.getCPUState().xreg((GReg)r3, 0) = (u_int64_t)memory; - sim.run(); - printf("Table of squares:\n"); - for (int i = 0; i < 100; i++) - printf(" %d\n", memory[i]); -#endif } diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Fri Jul 25 08:17:44 2014 -0400 @@ -1244,12 +1244,6 @@ f(size & 0b01, 31, 30), f(0b011, 29, 27), f(0b00, 25, 24); long offset = (adr.target() - pc()) >> 2; sf(offset, 23, 5); -#if 0 - Relocation* reloc = adr.rspec().reloc(); - relocInfo::relocType rtype = (relocInfo::relocType) reloc->type(); - assert(rtype == relocInfo::internal_word_type, - "only internal_word_type relocs make sense here"); -#endif code_section()->relocate(pc(), adr.rspec()); return; } diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 @@ -2994,7 +2994,9 @@ void LIR_Assembler::membar_storeload() { __ membar(MacroAssembler::StoreLoad); } -void LIR_Assembler::get_thread(LIR_Opr result_reg) { Unimplemented(); } +void LIR_Assembler::get_thread(LIR_Opr result_reg) { + __ mov(result_reg->as_register(), rthread); +} void LIR_Assembler::peephole(LIR_List *lir) { diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp Tue Jul 22 11:56:07 2014 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1246 +0,0 @@ -/* - * Copyright (c) 2013, Red Hat Inc. - * Copyright (c) 2005, 2010, 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. - * - */ - -#include "precompiled.hpp" -#include "c1/c1_Instruction.hpp" -#include "c1/c1_LinearScan.hpp" -#include "utilities/bitMap.inline.hpp" - - -//---------------------------------------------------------------------- -// Allocation of FPU stack slots (Intel x86 only) -//---------------------------------------------------------------------- - -void LinearScan::allocate_fpu_stack() { - // First compute which FPU registers are live at the start of each basic block - // (To minimize the amount of work we have to do if we have to merge FPU stacks) - if (ComputeExactFPURegisterUsage) { - Interval* intervals_in_register, *intervals_in_memory; - create_unhandled_lists(&intervals_in_register, &intervals_in_memory, is_in_fpu_register, NULL); - - // ignore memory intervals by overwriting intervals_in_memory - // the dummy interval is needed to enforce the walker to walk until the given id: - // without it, the walker stops when the unhandled-list is empty -> live information - // beyond this point would be incorrect. - Interval* dummy_interval = new Interval(any_reg); - dummy_interval->add_range(max_jint - 2, max_jint - 1); - dummy_interval->set_next(Interval::end()); - intervals_in_memory = dummy_interval; - - IntervalWalker iw(this, intervals_in_register, intervals_in_memory); - - const int num_blocks = block_count(); - for (int i = 0; i < num_blocks; i++) { - BlockBegin* b = block_at(i); - - // register usage is only needed for merging stacks -> compute only - // when more than one predecessor. - // the block must not have any spill moves at the beginning (checked by assertions) - // spill moves would use intervals that are marked as handled and so the usage bit - // would been set incorrectly - - // NOTE: the check for number_of_preds > 1 is necessary. A block with only one - // predecessor may have spill moves at the begin of the block. - // If an interval ends at the current instruction id, it is not possible - // to decide if the register is live or not at the block begin -> the - // register information would be incorrect. - if (b->number_of_preds() > 1) { - int id = b->first_lir_instruction_id(); - BitMap regs(FrameMap::nof_fpu_regs); - regs.clear(); - - iw.walk_to(id); // walk after the first instruction (always a label) of the block - assert(iw.current_position() == id, "did not walk completely to id"); - - // Only consider FPU values in registers - Interval* interval = iw.active_first(fixedKind); - while (interval != Interval::end()) { - int reg = interval->assigned_reg(); - assert(reg >= pd_first_fpu_reg && reg <= pd_last_fpu_reg, "no fpu register"); - assert(interval->assigned_regHi() == -1, "must not have hi register (doubles stored in one register)"); - assert(interval->from() <= id && id < interval->to(), "interval out of range"); - -#ifndef PRODUCT - if (TraceFPURegisterUsage) { - tty->print("fpu reg %d is live because of ", reg - pd_first_fpu_reg); interval->print(); - } -#endif - - regs.set_bit(reg - pd_first_fpu_reg); - interval = interval->next(); - } - - b->set_fpu_register_usage(regs); - -#ifndef PRODUCT - if (TraceFPURegisterUsage) { - tty->print("FPU regs for block %d, LIR instr %d): ", b->block_id(), id); regs.print_on(tty); tty->cr(); - } -#endif - } - } - } - -#ifndef TARGET_ARCH_aarch64 - FpuStackAllocator alloc(ir()->compilation(), this); - _fpu_stack_allocator = &alloc; - alloc.allocate(); - _fpu_stack_allocator = NULL; -#endif -} - - -FpuStackAllocator::FpuStackAllocator(Compilation* compilation, LinearScan* allocator) - : _compilation(compilation) - , _lir(NULL) - , _pos(-1) - , _allocator(allocator) - , _sim(compilation) - , _temp_sim(compilation) -{} - -void FpuStackAllocator::allocate() { - int num_blocks = allocator()->block_count(); - for (int i = 0; i < num_blocks; i++) { - // Set up to process block - BlockBegin* block = allocator()->block_at(i); - intArray* fpu_stack_state = block->fpu_stack_state(); - -#ifndef PRODUCT - if (TraceFPUStack) { - tty->cr(); - tty->print_cr("------- Begin of new Block %d -------", block->block_id()); - } -#endif - - assert(fpu_stack_state != NULL || - block->end()->as_Base() != NULL || - block->is_set(BlockBegin::exception_entry_flag), - "FPU stack state must be present due to linear-scan order for FPU stack allocation"); - // note: exception handler entries always start with an empty fpu stack - // because stack merging would be too complicated - - if (fpu_stack_state != NULL) { - sim()->read_state(fpu_stack_state); - } else { - sim()->clear(); - } - -#ifndef PRODUCT - if (TraceFPUStack) { - tty->print("Reading FPU state for block %d:", block->block_id()); - sim()->print(); - tty->cr(); - } -#endif - - allocate_block(block); - CHECK_BAILOUT(); - } -} - -void FpuStackAllocator::allocate_block(BlockBegin* block) { - bool processed_merge = false; - LIR_OpList* insts = block->lir()->instructions_list(); - set_lir(block->lir()); - set_pos(0); - - - // Note: insts->length() may change during loop - while (pos() < insts->length()) { - LIR_Op* op = insts->at(pos()); - _debug_information_computed = false; - -#ifndef PRODUCT - if (TraceFPUStack) { - op->print(); - } - check_invalid_lir_op(op); -#endif - - LIR_OpBranch* branch = op->as_OpBranch(); - LIR_Op1* op1 = op->as_Op1(); - LIR_Op2* op2 = op->as_Op2(); - LIR_OpCall* opCall = op->as_OpCall(); - - if (branch != NULL && branch->block() != NULL) { - if (!processed_merge) { - // propagate stack at first branch to a successor - processed_merge = true; - bool required_merge = merge_fpu_stack_with_successors(block); - - assert(!required_merge || branch->cond() == lir_cond_always, "splitting of critical edges should prevent FPU stack mismatches at cond branches"); - } - - } else if (op1 != NULL) { - handle_op1(op1); - } else if (op2 != NULL) { - handle_op2(op2); - } else if (opCall != NULL) { - handle_opCall(opCall); - } - - compute_debug_information(op); - - set_pos(1 + pos()); - } - - // Propagate stack when block does not end with branch - if (!processed_merge) { - merge_fpu_stack_with_successors(block); - } -} - - -void FpuStackAllocator::compute_debug_information(LIR_Op* op) { - if (!_debug_information_computed && op->id() != -1 && allocator()->has_info(op->id())) { - visitor.visit(op); - - // exception handling - if (allocator()->compilation()->has_exception_handlers()) { - XHandlers* xhandlers = visitor.all_xhandler(); - int n = xhandlers->length(); - for (int k = 0; k < n; k++) { - allocate_exception_handler(xhandlers->handler_at(k)); - } - } else { - assert(visitor.all_xhandler()->length() == 0, "missed exception handler"); - } - - // compute debug information - int n = visitor.info_count(); - assert(n > 0, "should not visit operation otherwise"); - - for (int j = 0; j < n; j++) { - CodeEmitInfo* info = visitor.info_at(j); - // Compute debug information - allocator()->compute_debug_info(info, op->id()); - } - } - _debug_information_computed = true; -} - -void FpuStackAllocator::allocate_exception_handler(XHandler* xhandler) { - if (!sim()->is_empty()) { - LIR_List* old_lir = lir(); - int old_pos = pos(); - intArray* old_state = sim()->write_state(); - -#ifndef PRODUCT - if (TraceFPUStack) { - tty->cr(); - tty->print_cr("------- begin of exception handler -------"); - } -#endif - - if (xhandler->entry_code() == NULL) { - // need entry code to clear FPU stack - LIR_List* entry_code = new LIR_List(_compilation); - entry_code->jump(xhandler->entry_block()); - xhandler->set_entry_code(entry_code); - } - - LIR_OpList* insts = xhandler->entry_code()->instructions_list(); - set_lir(xhandler->entry_code()); - set_pos(0); - - // Note: insts->length() may change during loop - while (pos() < insts->length()) { - LIR_Op* op = insts->at(pos()); - -#ifndef PRODUCT - if (TraceFPUStack) { - op->print(); - } - check_invalid_lir_op(op); -#endif - - switch (op->code()) { - case lir_move: - assert(op->as_Op1() != NULL, "must be LIR_Op1"); - assert(pos() != insts->length() - 1, "must not be last operation"); - - handle_op1((LIR_Op1*)op); - break; - - case lir_branch: - assert(op->as_OpBranch()->cond() == lir_cond_always, "must be unconditional branch"); - assert(pos() == insts->length() - 1, "must be last operation"); - - // remove all remaining dead registers from FPU stack - clear_fpu_stack(LIR_OprFact::illegalOpr); - break; - - default: - // other operations not allowed in exception entry code - ShouldNotReachHere(); - } - - set_pos(pos() + 1); - } - -#ifndef PRODUCT - if (TraceFPUStack) { - tty->cr(); - tty->print_cr("------- end of exception handler -------"); - } -#endif - - set_lir(old_lir); - set_pos(old_pos); - sim()->read_state(old_state); - } -} - - -int FpuStackAllocator::fpu_num(LIR_Opr opr) { - assert(opr->is_fpu_register() && !opr->is_xmm_register(), "shouldn't call this otherwise"); - return opr->is_single_fpu() ? opr->fpu_regnr() : opr->fpu_regnrLo(); -} - -int FpuStackAllocator::tos_offset(LIR_Opr opr) { - return sim()->offset_from_tos(fpu_num(opr)); -} - - -LIR_Opr FpuStackAllocator::to_fpu_stack(LIR_Opr opr) { - assert(opr->is_fpu_register() && !opr->is_xmm_register(), "shouldn't call this otherwise"); - - int stack_offset = tos_offset(opr); - if (opr->is_single_fpu()) { - return LIR_OprFact::single_fpu(stack_offset)->make_fpu_stack_offset(); - } else { - assert(opr->is_double_fpu(), "shouldn't call this otherwise"); - return LIR_OprFact::double_fpu(stack_offset)->make_fpu_stack_offset(); - } -} - -LIR_Opr FpuStackAllocator::to_fpu_stack_top(LIR_Opr opr, bool dont_check_offset) { - assert(opr->is_fpu_register() && !opr->is_xmm_register(), "shouldn't call this otherwise"); - assert(dont_check_offset || tos_offset(opr) == 0, "operand is not on stack top"); - - int stack_offset = 0; - if (opr->is_single_fpu()) { - return LIR_OprFact::single_fpu(stack_offset)->make_fpu_stack_offset(); - } else { - assert(opr->is_double_fpu(), "shouldn't call this otherwise"); - return LIR_OprFact::double_fpu(stack_offset)->make_fpu_stack_offset(); - } -} - - - -void FpuStackAllocator::insert_op(LIR_Op* op) { - lir()->insert_before(pos(), op); - set_pos(1 + pos()); -} - - -void FpuStackAllocator::insert_exchange(int offset) { - if (offset > 0) { - LIR_Op1* fxch_op = new LIR_Op1(lir_fxch, LIR_OprFact::intConst(offset), LIR_OprFact::illegalOpr); - insert_op(fxch_op); - sim()->swap(offset); - -#ifndef PRODUCT - if (TraceFPUStack) { - tty->print("Exchanged register: %d New state: ", sim()->get_slot(0)); sim()->print(); tty->cr(); - } -#endif - - } -} - -void FpuStackAllocator::insert_exchange(LIR_Opr opr) { - insert_exchange(tos_offset(opr)); -} - - -void FpuStackAllocator::insert_free(int offset) { - // move stack slot to the top of stack and then pop it - insert_exchange(offset); - - LIR_Op* fpop = new LIR_Op0(lir_fpop_raw); - insert_op(fpop); - sim()->pop(); - -#ifndef PRODUCT - if (TraceFPUStack) { - tty->print("Inserted pop New state: "); sim()->print(); tty->cr(); - } -#endif -} - - -void FpuStackAllocator::insert_free_if_dead(LIR_Opr opr) { - if (sim()->contains(fpu_num(opr))) { - int res_slot = tos_offset(opr); - insert_free(res_slot); - } -} - -void FpuStackAllocator::insert_free_if_dead(LIR_Opr opr, LIR_Opr ignore) { - if (fpu_num(opr) != fpu_num(ignore) && sim()->contains(fpu_num(opr))) { - int res_slot = tos_offset(opr); - insert_free(res_slot); - } -} - -void FpuStackAllocator::insert_copy(LIR_Opr from, LIR_Opr to) { - int offset = tos_offset(from); - LIR_Op1* fld = new LIR_Op1(lir_fld, LIR_OprFact::intConst(offset), LIR_OprFact::illegalOpr); - insert_op(fld); - - sim()->push(fpu_num(to)); - -#ifndef PRODUCT - if (TraceFPUStack) { - tty->print("Inserted copy (%d -> %d) New state: ", fpu_num(from), fpu_num(to)); sim()->print(); tty->cr(); - } -#endif -} - -void FpuStackAllocator::do_rename(LIR_Opr from, LIR_Opr to) { - sim()->rename(fpu_num(from), fpu_num(to)); -} - -void FpuStackAllocator::do_push(LIR_Opr opr) { - sim()->push(fpu_num(opr)); -} - -void FpuStackAllocator::pop_if_last_use(LIR_Op* op, LIR_Opr opr) { - assert(op->fpu_pop_count() == 0, "fpu_pop_count alredy set"); - assert(tos_offset(opr) == 0, "can only pop stack top"); - - if (opr->is_last_use()) { - op->set_fpu_pop_count(1); - sim()->pop(); - } -} - -void FpuStackAllocator::pop_always(LIR_Op* op, LIR_Opr opr) { - assert(op->fpu_pop_count() == 0, "fpu_pop_count alredy set"); - assert(tos_offset(opr) == 0, "can only pop stack top"); - - op->set_fpu_pop_count(1); - sim()->pop(); -} - -void FpuStackAllocator::clear_fpu_stack(LIR_Opr preserve) { - int result_stack_size = (preserve->is_fpu_register() && !preserve->is_xmm_register() ? 1 : 0); - while (sim()->stack_size() > result_stack_size) { - assert(!sim()->slot_is_empty(0), "not allowed"); - - if (result_stack_size == 0 || sim()->get_slot(0) != fpu_num(preserve)) { - insert_free(0); - } else { - // move "preserve" to bottom of stack so that all other stack slots can be popped - insert_exchange(sim()->stack_size() - 1); - } - } -} - - -void FpuStackAllocator::handle_op1(LIR_Op1* op1) { - LIR_Opr in = op1->in_opr(); - LIR_Opr res = op1->result_opr(); - - LIR_Opr new_in = in; // new operands relative to the actual fpu stack top - LIR_Opr new_res = res; - - // Note: this switch is processed for all LIR_Op1, regardless if they have FPU-arguments, - // so checks for is_float_kind() are necessary inside the cases - switch (op1->code()) { - - case lir_return: { - // FPU-Stack must only contain the (optional) fpu return value. - // All remaining dead values are popped from the stack - // If the input operand is a fpu-register, it is exchanged to the bottom of the stack - - clear_fpu_stack(in); - if (in->is_fpu_register() && !in->is_xmm_register()) { - new_in = to_fpu_stack_top(in); - } - - break; - } - - case lir_move: { - if (in->is_fpu_register() && !in->is_xmm_register()) { - if (res->is_xmm_register()) { - // move from fpu register to xmm register (necessary for operations that - // are not available in the SSE instruction set) - insert_exchange(in); - new_in = to_fpu_stack_top(in); - pop_always(op1, in); - - } else if (res->is_fpu_register() && !res->is_xmm_register()) { - // move from fpu-register to fpu-register: - // * input and result register equal: - // nothing to do - // * input register is last use: - // rename the input register to result register -> input register - // not present on fpu-stack afterwards - // * input register not last use: - // duplicate input register to result register to preserve input - // - // Note: The LIR-Assembler does not produce any code for fpu register moves, - // so input and result stack index must be equal - - if (fpu_num(in) == fpu_num(res)) { - // nothing to do - } else if (in->is_last_use()) { - insert_free_if_dead(res);//, in); - do_rename(in, res); - } else { - insert_free_if_dead(res); - insert_copy(in, res); - } - new_in = to_fpu_stack(res); - new_res = new_in; - - } else { - // move from fpu-register to memory - // input operand must be on top of stack - - insert_exchange(in); - - // create debug information here because afterwards the register may have been popped - compute_debug_information(op1); - - new_in = to_fpu_stack_top(in); - pop_if_last_use(op1, in); - } - - } else if (res->is_fpu_register() && !res->is_xmm_register()) { - // move from memory/constant to fpu register - // result is pushed on the stack - - insert_free_if_dead(res); - - // create debug information before register is pushed - compute_debug_information(op1); - - do_push(res); - new_res = to_fpu_stack_top(res); - } - break; - } - - case lir_neg: { - if (in->is_fpu_register() && !in->is_xmm_register()) { - assert(res->is_fpu_register() && !res->is_xmm_register(), "must be"); - assert(in->is_last_use(), "old value gets destroyed"); - - insert_free_if_dead(res, in); - insert_exchange(in); - new_in = to_fpu_stack_top(in); - - do_rename(in, res); - new_res = to_fpu_stack_top(res); - } - break; - } - - case lir_convert: { - Bytecodes::Code bc = op1->as_OpConvert()->bytecode(); - switch (bc) { - case Bytecodes::_d2f: - case Bytecodes::_f2d: - assert(res->is_fpu_register(), "must be"); - assert(in->is_fpu_register(), "must be"); - - if (!in->is_xmm_register() && !res->is_xmm_register()) { - // this is quite the same as a move from fpu-register to fpu-register - // Note: input and result operands must have different types - if (fpu_num(in) == fpu_num(res)) { - // nothing to do - new_in = to_fpu_stack(in); - } else if (in->is_last_use()) { - insert_free_if_dead(res);//, in); - new_in = to_fpu_stack(in); - do_rename(in, res); - } else { - insert_free_if_dead(res); - insert_copy(in, res); - new_in = to_fpu_stack_top(in, true); - } - new_res = to_fpu_stack(res); - } - - break; - - case Bytecodes::_i2f: - case Bytecodes::_l2f: - case Bytecodes::_i2d: - case Bytecodes::_l2d: - assert(res->is_fpu_register(), "must be"); - if (!res->is_xmm_register()) { - insert_free_if_dead(res); - do_push(res); - new_res = to_fpu_stack_top(res); - } - break; - - case Bytecodes::_f2i: - case Bytecodes::_d2i: - assert(in->is_fpu_register(), "must be"); - if (!in->is_xmm_register()) { - insert_exchange(in); - new_in = to_fpu_stack_top(in); - - // TODO: update registes of stub - } - break; - - case Bytecodes::_f2l: - case Bytecodes::_d2l: - assert(in->is_fpu_register(), "must be"); - if (!in->is_xmm_register()) { - insert_exchange(in); - new_in = to_fpu_stack_top(in); - pop_always(op1, in); - } - break; - - case Bytecodes::_i2l: - case Bytecodes::_l2i: - case Bytecodes::_i2b: - case Bytecodes::_i2c: - case Bytecodes::_i2s: - // no fpu operands - break; - - default: - ShouldNotReachHere(); - } - break; - } - - case lir_roundfp: { - assert(in->is_fpu_register() && !in->is_xmm_register(), "input must be in register"); - assert(res->is_stack(), "result must be on stack"); - - insert_exchange(in); - new_in = to_fpu_stack_top(in); - pop_if_last_use(op1, in); - break; - } - - default: { - assert(!in->is_float_kind() && !res->is_float_kind(), "missed a fpu-operation"); - } - } - - op1->set_in_opr(new_in); - op1->set_result_opr(new_res); -} - -void FpuStackAllocator::handle_op2(LIR_Op2* op2) { - LIR_Opr left = op2->in_opr1(); - if (!left->is_float_kind()) { - return; - } - if (left->is_xmm_register()) { - return; - } - - LIR_Opr right = op2->in_opr2(); - LIR_Opr res = op2->result_opr(); - LIR_Opr new_left = left; // new operands relative to the actual fpu stack top - LIR_Opr new_right = right; - LIR_Opr new_res = res; - - assert(!left->is_xmm_register() && !right->is_xmm_register() && !res->is_xmm_register(), "not for xmm registers"); - - switch (op2->code()) { - case lir_cmp: - case lir_cmp_fd2i: - case lir_ucmp_fd2i: - case lir_assert: { - assert(left->is_fpu_register(), "invalid LIR"); - assert(right->is_fpu_register(), "invalid LIR"); - - // the left-hand side must be on top of stack. - // the right-hand side is never popped, even if is_last_use is set - insert_exchange(left); - new_left = to_fpu_stack_top(left); - new_right = to_fpu_stack(right); - pop_if_last_use(op2, left); - break; - } - - case lir_mul_strictfp: - case lir_div_strictfp: { - assert(op2->tmp1_opr()->is_fpu_register(), "strict operations need temporary fpu stack slot"); - insert_free_if_dead(op2->tmp1_opr()); - assert(sim()->stack_size() <= 7, "at least one stack slot must be free"); - // fall-through: continue with the normal handling of lir_mul and lir_div - } - case lir_add: - case lir_sub: - case lir_mul: - case lir_div: { - assert(left->is_fpu_register(), "must be"); - assert(res->is_fpu_register(), "must be"); - assert(left->is_equal(res), "must be"); - - // either the left-hand or the right-hand side must be on top of stack - // (if right is not a register, left must be on top) - if (!right->is_fpu_register()) { - insert_exchange(left); - new_left = to_fpu_stack_top(left); - } else { - // no exchange necessary if right is alredy on top of stack - if (tos_offset(right) == 0) { - new_left = to_fpu_stack(left); - new_right = to_fpu_stack_top(right); - } else { - insert_exchange(left); - new_left = to_fpu_stack_top(left); - new_right = to_fpu_stack(right); - } - - if (right->is_last_use()) { - op2->set_fpu_pop_count(1); - - if (tos_offset(right) == 0) { - sim()->pop(); - } else { - // if left is on top of stack, the result is placed in the stack - // slot of right, so a renaming from right to res is necessary - assert(tos_offset(left) == 0, "must be"); - sim()->pop(); - do_rename(right, res); - } - } - } - new_res = to_fpu_stack(res); - - break; - } - - case lir_rem: { - assert(left->is_fpu_register(), "must be"); - assert(right->is_fpu_register(), "must be"); - assert(res->is_fpu_register(), "must be"); - assert(left->is_equal(res), "must be"); - - // Must bring both operands to top of stack with following operand ordering: - // * fpu stack before rem: ... right left - // * fpu stack after rem: ... left - if (tos_offset(right) != 1) { - insert_exchange(right); - insert_exchange(1); - } - insert_exchange(left); - assert(tos_offset(right) == 1, "check"); - assert(tos_offset(left) == 0, "check"); - - new_left = to_fpu_stack_top(left); - new_right = to_fpu_stack(right); - - op2->set_fpu_pop_count(1); - sim()->pop(); - do_rename(right, res); - - new_res = to_fpu_stack_top(res); - break; - } - - case lir_abs: - case lir_sqrt: { - // Right argument appears to be unused - assert(right->is_illegal(), "must be"); - assert(left->is_fpu_register(), "must be"); - assert(res->is_fpu_register(), "must be"); - assert(left->is_last_use(), "old value gets destroyed"); - - insert_free_if_dead(res, left); - insert_exchange(left); - do_rename(left, res); - - new_left = to_fpu_stack_top(res); - new_res = new_left; - - op2->set_fpu_stack_size(sim()->stack_size()); - break; - } - - case lir_log: - case lir_log10: { - // log and log10 need one temporary fpu stack slot, so - // there is one temporary registers stored in temp of the - // operation. the stack allocator must guarantee that the stack - // slots are really free, otherwise there might be a stack - // overflow. - assert(right->is_illegal(), "must be"); - assert(left->is_fpu_register(), "must be"); - assert(res->is_fpu_register(), "must be"); - assert(op2->tmp1_opr()->is_fpu_register(), "must be"); - - insert_free_if_dead(op2->tmp1_opr()); - insert_free_if_dead(res, left); - insert_exchange(left); - do_rename(left, res); - - new_left = to_fpu_stack_top(res); - new_res = new_left; - - op2->set_fpu_stack_size(sim()->stack_size()); - assert(sim()->stack_size() <= 7, "at least one stack slot must be free"); - break; - } - - - case lir_tan: - case lir_sin: - case lir_cos: - case lir_exp: { - // sin, cos and exp need two temporary fpu stack slots, so there are two temporary - // registers (stored in right and temp of the operation). - // the stack allocator must guarantee that the stack slots are really free, - // otherwise there might be a stack overflow. - assert(left->is_fpu_register(), "must be"); - assert(res->is_fpu_register(), "must be"); - // assert(left->is_last_use(), "old value gets destroyed"); - assert(right->is_fpu_register(), "right is used as the first temporary register"); - assert(op2->tmp1_opr()->is_fpu_register(), "temp is used as the second temporary register"); - assert(fpu_num(left) != fpu_num(right) && fpu_num(right) != fpu_num(op2->tmp1_opr()) && fpu_num(op2->tmp1_opr()) != fpu_num(res), "need distinct temp registers"); - - insert_free_if_dead(right); - insert_free_if_dead(op2->tmp1_opr()); - - insert_free_if_dead(res, left); - insert_exchange(left); - do_rename(left, res); - - new_left = to_fpu_stack_top(res); - new_res = new_left; - - op2->set_fpu_stack_size(sim()->stack_size()); - assert(sim()->stack_size() <= 6, "at least two stack slots must be free"); - break; - } - - case lir_pow: { - // pow needs two temporary fpu stack slots, so there are two temporary - // registers (stored in tmp1 and tmp2 of the operation). - // the stack allocator must guarantee that the stack slots are really free, - // otherwise there might be a stack overflow. - assert(left->is_fpu_register(), "must be"); - assert(right->is_fpu_register(), "must be"); - assert(res->is_fpu_register(), "must be"); - - assert(op2->tmp1_opr()->is_fpu_register(), "tmp1 is the first temporary register"); - assert(op2->tmp2_opr()->is_fpu_register(), "tmp2 is the second temporary register"); - assert(fpu_num(left) != fpu_num(right) && fpu_num(left) != fpu_num(op2->tmp1_opr()) && fpu_num(left) != fpu_num(op2->tmp2_opr()) && fpu_num(left) != fpu_num(res), "need distinct temp registers"); - assert(fpu_num(right) != fpu_num(op2->tmp1_opr()) && fpu_num(right) != fpu_num(op2->tmp2_opr()) && fpu_num(right) != fpu_num(res), "need distinct temp registers"); - assert(fpu_num(op2->tmp1_opr()) != fpu_num(op2->tmp2_opr()) && fpu_num(op2->tmp1_opr()) != fpu_num(res), "need distinct temp registers"); - assert(fpu_num(op2->tmp2_opr()) != fpu_num(res), "need distinct temp registers"); - - insert_free_if_dead(op2->tmp1_opr()); - insert_free_if_dead(op2->tmp2_opr()); - - // Must bring both operands to top of stack with following operand ordering: - // * fpu stack before pow: ... right left - // * fpu stack after pow: ... left - - insert_free_if_dead(res, right); - - if (tos_offset(right) != 1) { - insert_exchange(right); - insert_exchange(1); - } - insert_exchange(left); - assert(tos_offset(right) == 1, "check"); - assert(tos_offset(left) == 0, "check"); - - new_left = to_fpu_stack_top(left); - new_right = to_fpu_stack(right); - - op2->set_fpu_stack_size(sim()->stack_size()); - assert(sim()->stack_size() <= 6, "at least two stack slots must be free"); - - sim()->pop(); - - do_rename(right, res); - - new_res = to_fpu_stack_top(res); - break; - } - - default: { - assert(false, "missed a fpu-operation"); - } - } - - op2->set_in_opr1(new_left); - op2->set_in_opr2(new_right); - op2->set_result_opr(new_res); -} - -void FpuStackAllocator::handle_opCall(LIR_OpCall* opCall) { - LIR_Opr res = opCall->result_opr(); - - // clear fpu-stack before call - // it may contain dead values that could not have been remved by previous operations - clear_fpu_stack(LIR_OprFact::illegalOpr); - assert(sim()->is_empty(), "fpu stack must be empty now"); - - // compute debug information before (possible) fpu result is pushed - compute_debug_information(opCall); - - if (res->is_fpu_register() && !res->is_xmm_register()) { - do_push(res); - opCall->set_result_opr(to_fpu_stack_top(res)); - } -} - -#ifndef PRODUCT -void FpuStackAllocator::check_invalid_lir_op(LIR_Op* op) { - switch (op->code()) { - case lir_24bit_FPU: - case lir_reset_FPU: - case lir_ffree: - assert(false, "operations not allowed in lir. If one of these operations is needed, check if they have fpu operands"); - break; - - case lir_fpop_raw: - case lir_fxch: - case lir_fld: - assert(false, "operations only inserted by FpuStackAllocator"); - break; - } -} -#endif - - -void FpuStackAllocator::merge_insert_add(LIR_List* instrs, FpuStackSim* cur_sim, int reg) { - LIR_Op1* move = new LIR_Op1(lir_move, LIR_OprFact::doubleConst(0), LIR_OprFact::double_fpu(reg)->make_fpu_stack_offset()); - - instrs->instructions_list()->push(move); - - cur_sim->push(reg); - move->set_result_opr(to_fpu_stack(move->result_opr())); - - #ifndef PRODUCT - if (TraceFPUStack) { - tty->print("Added new register: %d New state: ", reg); cur_sim->print(); tty->cr(); - } - #endif -} - -void FpuStackAllocator::merge_insert_xchg(LIR_List* instrs, FpuStackSim* cur_sim, int slot) { - assert(slot > 0, "no exchange necessary"); - - LIR_Op1* fxch = new LIR_Op1(lir_fxch, LIR_OprFact::intConst(slot)); - instrs->instructions_list()->push(fxch); - cur_sim->swap(slot); - - #ifndef PRODUCT - if (TraceFPUStack) { - tty->print("Exchanged register: %d New state: ", cur_sim->get_slot(slot)); cur_sim->print(); tty->cr(); - } - #endif -} - -void FpuStackAllocator::merge_insert_pop(LIR_List* instrs, FpuStackSim* cur_sim) { - int reg = cur_sim->get_slot(0); - - LIR_Op* fpop = new LIR_Op0(lir_fpop_raw); - instrs->instructions_list()->push(fpop); - cur_sim->pop(reg); - - #ifndef PRODUCT - if (TraceFPUStack) { - tty->print("Removed register: %d New state: ", reg); cur_sim->print(); tty->cr(); - } - #endif -} - -bool FpuStackAllocator::merge_rename(FpuStackSim* cur_sim, FpuStackSim* sux_sim, int start_slot, int change_slot) { - int reg = cur_sim->get_slot(change_slot); - - for (int slot = start_slot; slot >= 0; slot--) { - int new_reg = sux_sim->get_slot(slot); - - if (!cur_sim->contains(new_reg)) { - cur_sim->set_slot(change_slot, new_reg); - - #ifndef PRODUCT - if (TraceFPUStack) { - tty->print("Renamed register %d to %d New state: ", reg, new_reg); cur_sim->print(); tty->cr(); - } - #endif - - return true; - } - } - return false; -} - - -void FpuStackAllocator::merge_fpu_stack(LIR_List* instrs, FpuStackSim* cur_sim, FpuStackSim* sux_sim) { -#ifndef PRODUCT - if (TraceFPUStack) { - tty->cr(); - tty->print("before merging: pred: "); cur_sim->print(); tty->cr(); - tty->print(" sux: "); sux_sim->print(); tty->cr(); - } - - int slot; - for (slot = 0; slot < cur_sim->stack_size(); slot++) { - assert(!cur_sim->slot_is_empty(slot), "not handled by algorithm"); - } - for (slot = 0; slot < sux_sim->stack_size(); slot++) { - assert(!sux_sim->slot_is_empty(slot), "not handled by algorithm"); - } -#endif - - // size difference between cur and sux that must be resolved by adding or removing values form the stack - int size_diff = cur_sim->stack_size() - sux_sim->stack_size(); - - if (!ComputeExactFPURegisterUsage) { - // add slots that are currently free, but used in successor - // When the exact FPU register usage is computed, the stack does - // not contain dead values at merging -> no values must be added - - int sux_slot = sux_sim->stack_size() - 1; - while (size_diff < 0) { - assert(sux_slot >= 0, "slot out of bounds -> error in algorithm"); - - int reg = sux_sim->get_slot(sux_slot); - if (!cur_sim->contains(reg)) { - merge_insert_add(instrs, cur_sim, reg); - size_diff++; - - if (sux_slot + size_diff != 0) { - merge_insert_xchg(instrs, cur_sim, sux_slot + size_diff); - } - } - sux_slot--; - } - } - - assert(cur_sim->stack_size() >= sux_sim->stack_size(), "stack size must be equal or greater now"); - assert(size_diff == cur_sim->stack_size() - sux_sim->stack_size(), "must be"); - - // stack merge algorithm: - // 1) as long as the current stack top is not in the right location (that meens - // it should not be on the stack top), exchange it into the right location - // 2) if the stack top is right, but the remaining stack is not ordered correctly, - // the stack top is exchanged away to get another value on top -> - // now step 1) can be continued - // the stack can also contain unused items -> these items are removed from stack - - int finished_slot = sux_sim->stack_size() - 1; - while (finished_slot >= 0 || size_diff > 0) { - while (size_diff > 0 || (cur_sim->stack_size() > 0 && cur_sim->get_slot(0) != sux_sim->get_slot(0))) { - int reg = cur_sim->get_slot(0); - if (sux_sim->contains(reg)) { - int sux_slot = sux_sim->offset_from_tos(reg); - merge_insert_xchg(instrs, cur_sim, sux_slot + size_diff); - - } else if (!merge_rename(cur_sim, sux_sim, finished_slot, 0)) { - assert(size_diff > 0, "must be"); - - merge_insert_pop(instrs, cur_sim); - size_diff--; - } - assert(cur_sim->stack_size() == 0 || cur_sim->get_slot(0) != reg, "register must have been changed"); - } - - while (finished_slot >= 0 && cur_sim->get_slot(finished_slot) == sux_sim->get_slot(finished_slot)) { - finished_slot--; - } - - if (finished_slot >= 0) { - int reg = cur_sim->get_slot(finished_slot); - - if (sux_sim->contains(reg) || !merge_rename(cur_sim, sux_sim, finished_slot, finished_slot)) { - assert(sux_sim->contains(reg) || size_diff > 0, "must be"); - merge_insert_xchg(instrs, cur_sim, finished_slot); - } - assert(cur_sim->get_slot(finished_slot) != reg, "register must have been changed"); - } - } - -#ifndef PRODUCT - if (TraceFPUStack) { - tty->print("after merging: pred: "); cur_sim->print(); tty->cr(); - tty->print(" sux: "); sux_sim->print(); tty->cr(); - tty->cr(); - } -#endif - assert(cur_sim->stack_size() == sux_sim->stack_size(), "stack size must be equal now"); -} - - -void FpuStackAllocator::merge_cleanup_fpu_stack(LIR_List* instrs, FpuStackSim* cur_sim, BitMap& live_fpu_regs) { -#ifndef PRODUCT - if (TraceFPUStack) { - tty->cr(); - tty->print("before cleanup: state: "); cur_sim->print(); tty->cr(); - tty->print(" live: "); live_fpu_regs.print_on(tty); tty->cr(); - } -#endif - - int slot = 0; - while (slot < cur_sim->stack_size()) { - int reg = cur_sim->get_slot(slot); - if (!live_fpu_regs.at(reg)) { - if (slot != 0) { - merge_insert_xchg(instrs, cur_sim, slot); - } - merge_insert_pop(instrs, cur_sim); - } else { - slot++; - } - } - -#ifndef PRODUCT - if (TraceFPUStack) { - tty->print("after cleanup: state: "); cur_sim->print(); tty->cr(); - tty->print(" live: "); live_fpu_regs.print_on(tty); tty->cr(); - tty->cr(); - } - - // check if fpu stack only contains live registers - for (unsigned int i = 0; i < live_fpu_regs.size(); i++) { - if (live_fpu_regs.at(i) != cur_sim->contains(i)) { - tty->print_cr("mismatch between required and actual stack content"); - break; - } - } -#endif -} - - -bool FpuStackAllocator::merge_fpu_stack_with_successors(BlockBegin* block) { -#ifndef PRODUCT - if (TraceFPUStack) { - tty->print_cr("Propagating FPU stack state for B%d at LIR_Op position %d to successors:", - block->block_id(), pos()); - sim()->print(); - tty->cr(); - } -#endif - - bool changed = false; - int number_of_sux = block->number_of_sux(); - - if (number_of_sux == 1 && block->sux_at(0)->number_of_preds() > 1) { - // The successor has at least two incoming edges, so a stack merge will be necessary - // If this block is the first predecessor, cleanup the current stack and propagate it - // If this block is not the first predecessor, a stack merge will be necessary - - BlockBegin* sux = block->sux_at(0); - intArray* state = sux->fpu_stack_state(); - LIR_List* instrs = new LIR_List(_compilation); - - if (state != NULL) { - // Merge with a successors that already has a FPU stack state - // the block must only have one successor because critical edges must been split - FpuStackSim* cur_sim = sim(); - FpuStackSim* sux_sim = temp_sim(); - sux_sim->read_state(state); - - merge_fpu_stack(instrs, cur_sim, sux_sim); - - } else { - // propagate current FPU stack state to successor without state - // clean up stack first so that there are no dead values on the stack - if (ComputeExactFPURegisterUsage) { - FpuStackSim* cur_sim = sim(); - BitMap live_fpu_regs = block->sux_at(0)->fpu_register_usage(); - assert(live_fpu_regs.size() == FrameMap::nof_fpu_regs, "missing register usage"); - - merge_cleanup_fpu_stack(instrs, cur_sim, live_fpu_regs); - } - - intArray* state = sim()->write_state(); - if (TraceFPUStack) { - tty->print_cr("Setting FPU stack state of B%d (merge path)", sux->block_id()); - sim()->print(); tty->cr(); - } - sux->set_fpu_stack_state(state); - } - - if (instrs->instructions_list()->length() > 0) { - lir()->insert_before(pos(), instrs); - set_pos(instrs->instructions_list()->length() + pos()); - changed = true; - } - - } else { - // Propagate unmodified Stack to successors where a stack merge is not necessary - intArray* state = sim()->write_state(); - for (int i = 0; i < number_of_sux; i++) { - BlockBegin* sux = block->sux_at(i); - -#ifdef ASSERT - for (int j = 0; j < sux->number_of_preds(); j++) { - assert(block == sux->pred_at(j), "all critical edges must be broken"); - } - - // check if new state is same - if (sux->fpu_stack_state() != NULL) { - intArray* sux_state = sux->fpu_stack_state(); - assert(state->length() == sux_state->length(), "overwriting existing stack state"); - for (int j = 0; j < state->length(); j++) { - assert(state->at(j) == sux_state->at(j), "overwriting existing stack state"); - } - } -#endif -#ifndef PRODUCT - if (TraceFPUStack) { - tty->print_cr("Setting FPU stack state of B%d", sux->block_id()); - sim()->print(); tty->cr(); - } -#endif - - sux->set_fpu_stack_state(state); - } - } - -#ifndef PRODUCT - // assertions that FPU stack state conforms to all successors' states - intArray* cur_state = sim()->write_state(); - for (int i = 0; i < number_of_sux; i++) { - BlockBegin* sux = block->sux_at(i); - intArray* sux_state = sux->fpu_stack_state(); - - assert(sux_state != NULL, "no fpu state"); - assert(cur_state->length() == sux_state->length(), "incorrect length"); - for (int i = 0; i < cur_state->length(); i++) { - assert(cur_state->at(i) == sux_state->at(i), "element not equal"); - } - } -#endif - - return changed; -} diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/c1_LinearScan_aarch64.hpp --- a/src/cpu/aarch64/vm/c1_LinearScan_aarch64.hpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/c1_LinearScan_aarch64.hpp Fri Jul 25 08:17:44 2014 -0400 @@ -24,8 +24,8 @@ * */ -#ifndef CPU_X86_VM_C1_LINEARSCAN_X86_HPP -#define CPU_X86_VM_C1_LINEARSCAN_X86_HPP +#ifndef CPU_AARCH64_VM_C1_LINEARSCAN_HPP +#define CPU_AARCH64_VM_C1_LINEARSCAN_HPP inline bool LinearScan::is_processed_reg_num(int reg_num) { return reg_num <= FrameMap::last_cpu_reg() || reg_num >= pd_nof_cpu_regs_frame_map; @@ -74,78 +74,4 @@ } - -class FpuStackAllocator VALUE_OBJ_CLASS_SPEC { - private: - Compilation* _compilation; - LinearScan* _allocator; - - LIR_OpVisitState visitor; - - LIR_List* _lir; - int _pos; - FpuStackSim _sim; - FpuStackSim _temp_sim; - - bool _debug_information_computed; - - LinearScan* allocator() { return _allocator; } - Compilation* compilation() const { return _compilation; } - - // unified bailout support - void bailout(const char* msg) const { compilation()->bailout(msg); } - bool bailed_out() const { return compilation()->bailed_out(); } - - int pos() { return _pos; } - void set_pos(int pos) { _pos = pos; } - LIR_Op* cur_op() { Unimplemented(); return lir()->instructions_list()->at(pos()); } - LIR_List* lir() { return _lir; } - void set_lir(LIR_List* lir) { _lir = lir; } - FpuStackSim* sim() { return &_sim; } - FpuStackSim* temp_sim() { return &_temp_sim; } - - int fpu_num(LIR_Opr opr); - int tos_offset(LIR_Opr opr); - LIR_Opr to_fpu_stack_top(LIR_Opr opr, bool dont_check_offset = false); - - // Helper functions for handling operations - void insert_op(LIR_Op* op); - void insert_exchange(int offset); - void insert_exchange(LIR_Opr opr); - void insert_free(int offset); - void insert_free_if_dead(LIR_Opr opr); - void insert_free_if_dead(LIR_Opr opr, LIR_Opr ignore); - void insert_copy(LIR_Opr from, LIR_Opr to); - void do_rename(LIR_Opr from, LIR_Opr to); - void do_push(LIR_Opr opr); - void pop_if_last_use(LIR_Op* op, LIR_Opr opr); - void pop_always(LIR_Op* op, LIR_Opr opr); - void clear_fpu_stack(LIR_Opr preserve); - void handle_op1(LIR_Op1* op1); - void handle_op2(LIR_Op2* op2); - void handle_opCall(LIR_OpCall* opCall); - void compute_debug_information(LIR_Op* op); - void allocate_exception_handler(XHandler* xhandler); - void allocate_block(BlockBegin* block); - -#ifndef PRODUCT - void check_invalid_lir_op(LIR_Op* op); -#endif - - // Helper functions for merging of fpu stacks - void merge_insert_add(LIR_List* instrs, FpuStackSim* cur_sim, int reg); - void merge_insert_xchg(LIR_List* instrs, FpuStackSim* cur_sim, int slot); - void merge_insert_pop(LIR_List* instrs, FpuStackSim* cur_sim); - bool merge_rename(FpuStackSim* cur_sim, FpuStackSim* sux_sim, int start_slot, int change_slot); - void merge_fpu_stack(LIR_List* instrs, FpuStackSim* cur_sim, FpuStackSim* sux_sim); - void merge_cleanup_fpu_stack(LIR_List* instrs, FpuStackSim* cur_sim, BitMap& live_fpu_regs); - bool merge_fpu_stack_with_successors(BlockBegin* block); - - public: - LIR_Opr to_fpu_stack(LIR_Opr opr); // used by LinearScan for creation of debug information - - FpuStackAllocator(Compilation* compilation, LinearScan* allocator); - void allocate(); -}; - -#endif // CPU_X86_VM_C1_LINEARSCAN_X86_HPP +#endif // CPU_AARCH64_VM_C1_LINEARSCAN_HPP diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 @@ -432,9 +432,6 @@ } -void C1_MacroAssembler::unverified_entry(Register receiver, Register ic_klass) { Unimplemented(); } - - void C1_MacroAssembler::verified_entry() { } diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/cppInterpreterGenerator_aarch64.hpp --- a/src/cpu/aarch64/vm/cppInterpreterGenerator_aarch64.hpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/cppInterpreterGenerator_aarch64.hpp Fri Jul 25 08:17:44 2014 -0400 @@ -29,29 +29,7 @@ protected: -#if 0 - address generate_asm_interpreter_entry(bool synchronized); - address generate_native_entry(bool synchronized); - address generate_abstract_entry(void); - address generate_math_entry(AbstractInterpreter::MethodKind kind); - address generate_empty_entry(void); - address generate_accessor_entry(void); - address generate_Reference_get_entry(void); - void lock_method(void); - void generate_stack_overflow_check(void); - - void generate_counter_incr(Label* overflow, Label* profile_method, Label* profile_method_continue); - void generate_counter_overflow(Label* do_continue); -#endif - void generate_more_monitors(); void generate_deopt_handling(); -#if 0 - address generate_interpreter_frame_manager(bool synchronized); // C++ interpreter only - void generate_compute_interpreter_state(const Register state, - const Register prev_state, - const Register sender_sp, - bool native); // C++ interpreter only -#endif #endif // CPU_AARCH64_VM_CPPINTERPRETERGENERATOR_AARCH64_HPP diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/interp_masm_aarch64.cpp --- a/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 @@ -43,10 +43,6 @@ // Implementation of InterpreterMacroAssembler -#ifdef CC_INTERP -void InterpreterMacroAssembler::get_method(Register reg) { Unimplemented(); } -#endif // CC_INTERP - #ifndef CC_INTERP void InterpreterMacroAssembler::check_and_handle_popframe(Register java_thread) { diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Fri Jul 25 08:17:44 2014 -0400 @@ -696,19 +696,6 @@ void store_check_part_1(Register obj); void store_check_part_2(Register obj); - // currently unimplemented -#if 0 - // C 'boolean' to Java boolean: x == 0 ? 0 : 1 - void c2bool(Register x); - - // C++ bool manipulation - - void movbool(Register dst, Address src); - void movbool(Address dst, bool boolconst); - void movbool(Address dst, Register src); - void testbool(Register dst); -#endif - // oop manipulations void load_klass(Register dst, Register src); void store_klass(Register dst, Register src); @@ -744,12 +731,6 @@ void decode_heap_oop_not_null(Register dst, Register src); void set_narrow_oop(Register dst, jobject obj); - // currently unimplemented -#if 0 - void set_narrow_oop(Address dst, jobject obj); - void cmp_narrow_oop(Register dst, jobject obj); - void cmp_narrow_oop(Address dst, jobject obj); -#endif void encode_klass_not_null(Register r); void decode_klass_not_null(Register r); @@ -757,38 +738,18 @@ void decode_klass_not_null(Register dst, Register src); void set_narrow_klass(Register dst, Klass* k); - // currently unimplemented -#if 0 - void set_narrow_klass(Address dst, Klass* k); - void cmp_narrow_klass(Register dst, Klass* k); - void cmp_narrow_klass(Address dst, Klass* k); -#endif // if heap base register is used - reinit it with the correct value void reinit_heapbase(); DEBUG_ONLY(void verify_heapbase(const char* msg);) - // currently unimplemented -#if 0 - void int3(); -#endif - void push_CPU_state(); void pop_CPU_state() ; // Round up to a power of two void round_to(Register reg, int modulus); - // unimplemented -#if 0 - // Callee saved registers handling - void push_callee_saved_registers(); - void pop_callee_saved_registers(); -#endif - - // unimplemented - // allocation void eden_allocate( Register obj, // result: pointer to object after successful allocation @@ -860,25 +821,9 @@ Register temp_reg, Label& L_success); - // unimplemented -#if 0 - // method handles (JSR 292) - void check_method_handle_type(Register mtype_reg, Register mh_reg, - Register temp_reg, - Label& wrong_method_type); - void load_method_handle_vmslots(Register vmslots_reg, Register mh_reg, - Register temp_reg); - void jump_to_method_handle_entry(Register mh_reg, Register temp_reg); -#endif Address argument_address(RegisterOrConstant arg_slot, int extra_slot_offset = 0); - //---- -#if 0 - // method handles (JSR 292) - void set_word_if_not_zero(Register reg); // sets reg to 1 if not zero, otherwise 0 -#endif - // Debugging // only if +VerifyOops @@ -903,22 +848,12 @@ static void debug64(char* msg, int64_t pc, int64_t regs[]); - // unimplemented -#if 0 - void os_breakpoint(); -#endif - void untested() { stop("untested"); } void unimplemented(const char* what = "") { char* b = new char[1024]; jio_snprintf(b, 1024, "unimplemented: %s", what); stop(b); } void should_not_reach_here() { stop("should not reach here"); } - // unimplemented -#if 0 - void print_CPU_state(); -#endif - // Stack overflow checking void bang_stack_with_offset(int offset) { // stack grows down, caller passes positive offset @@ -947,39 +882,7 @@ str(rscratch1, Address(rscratch2)); } - // unimplemented -#if 0 - void addptr(Address dst, Register src); -#endif - - void addptr(Register dst, Address src) { Unimplemented(); } - // unimplemented -#if 0 - void addptr(Register dst, int32_t src); - void addptr(Register dst, Register src); -#endif - void addptr(Register dst, RegisterOrConstant src) { Unimplemented(); } - - // unimplemented -#if 0 - void andptr(Register dst, int32_t src); -#endif - void andptr(Register src1, Register src2) { Unimplemented(); } - - // unimplemented -#if 0 - // renamed to drag out the casting of address to int32_t/intptr_t - void cmp32(Register src1, int32_t imm); - - void cmp32(Register src1, Address src2); -#endif - - void cmpptr(Register src1, Register src2) { Unimplemented(); } void cmpptr(Register src1, Address src2); - // void cmpptr(Address src1, Register src2) { Unimplemented(); } - - void cmpptr(Register src1, int32_t src2) { Unimplemented(); } - void cmpptr(Address src1, int32_t src2) { Unimplemented(); } void cmpxchgptr(Register oldv, Register newv, Register addr, Register tmp, Label &suceed, Label *fail); @@ -993,69 +896,6 @@ void atomic_xchg(Register prev, Register newv, Register addr); void atomic_xchgw(Register prev, Register newv, Register addr); - void imulptr(Register dst, Register src) { Unimplemented(); } - - - void negptr(Register dst) { Unimplemented(); } - - void notptr(Register dst) { Unimplemented(); } - - // unimplemented -#if 0 - void shlptr(Register dst, int32_t shift); -#endif - void shlptr(Register dst) { Unimplemented(); } - - // unimplemented -#if 0 - void shrptr(Register dst, int32_t shift); -#endif - void shrptr(Register dst) { Unimplemented(); } - - void sarptr(Register dst) { Unimplemented(); } - void sarptr(Register dst, int32_t src) { Unimplemented(); } - - void subptr(Address dst, int32_t src) { Unimplemented(); } - - void subptr(Register dst, Address src) { Unimplemented(); } - // unimplemented -#if 0 - void subptr(Register dst, int32_t src); - // Force generation of a 4 byte immediate value even if it fits into 8bit - void subptr_imm32(Register dst, int32_t src); - void subptr(Register dst, Register src); -#endif - void subptr(Register dst, RegisterOrConstant src) { Unimplemented(); } - - void sbbptr(Address dst, int32_t src) { Unimplemented(); } - void sbbptr(Register dst, int32_t src) { Unimplemented(); } - - void xchgptr(Register src1, Register src2) { Unimplemented(); } - void xchgptr(Register src1, Address src2) { Unimplemented(); } - - void xaddptr(Address src1, Register src2) { Unimplemented(); } - - - - // unimplemented -#if 0 - - // Perhaps we should implement this one - void lea(Register dst, Address adr) { Unimplemented(); } - - void leal32(Register dst, Address src) { Unimplemented(); } - - void orptr(Register dst, Address src) { Unimplemented(); } - void orptr(Register dst, Register src) { Unimplemented(); } - void orptr(Register dst, int32_t src) { Unimplemented(); } - - void testptr(Register src, int32_t imm32) { Unimplemented(); } - void testptr(Register src1, Register src2); - - void xorptr(Register dst, Register src) { Unimplemented(); } - void xorptr(Register dst, Address src) { Unimplemented(); } -#endif - void orptr(Address adr, RegisterOrConstant src) { ldr(rscratch2, adr); if (src.is_register()) @@ -1077,46 +917,6 @@ // Emit the CompiledIC call idiom void ic_call(address entry); - // Jumps - - // unimplemented -#if 0 - // NOTE: these jumps tranfer to the effective address of dst NOT - // the address contained by dst. This is because this is more natural - // for jumps/calls. - void jump(Address dst); - void jump_cc(Condition cc, Address dst); -#endif - - // Floating - - void fadd_s(Address src) { Unimplemented(); } - - void fldcw(Address src) { Unimplemented(); } - - void fld_s(int index) { Unimplemented(); } - void fld_s(Address src) { Unimplemented(); } - - void fld_d(Address src) { Unimplemented(); } - - void fld_x(Address src) { Unimplemented(); } - - void fmul_s(Address src) { Unimplemented(); } - - // unimplemented -#if 0 - // compute pow(x,y) and exp(x) with x86 instructions. Don't cover - // all corner cases and may result in NaN and require fallback to a - // runtime call. - void fast_pow(); - void fast_exp(); -#endif - - // computes exp(x). Fallback to runtime call included. - void exp_with_fallback(int num_fpu_regs_in_use) { Unimplemented(); } - // computes pow(x,y). Fallback to runtime call included. - void pow_with_fallback(int num_fpu_regs_in_use) { Unimplemented(); } - public: // Data @@ -1124,23 +924,9 @@ void mov_metadata(Register dst, Metadata* obj); Address allocate_metadata_address(Metadata* obj); Address constant_oop_address(jobject obj); - // unimplemented -#if 0 - void pushoop(jobject obj); -#endif void movoop(Register dst, jobject obj, bool immediate = false); - // sign extend as need a l to ptr sized element - void movl2ptr(Register dst, Address src) { Unimplemented(); } - void movl2ptr(Register dst, Register src) { Unimplemented(); } - - // unimplemented -#if 0 - // C2 compiled method's prolog code. - void verified_entry(int framesize, bool stack_bang, bool fp_mode_24b); -#endif - // CRC32 code for java.util.zip.CRC32::updateBytes() instrinsic. void kernel_crc32(Register crc, Register buf, Register len, Register table0, Register table1, Register table2, Register table3, diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/macroAssembler_aarch64.inline.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.inline.hpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.inline.hpp Fri Jul 25 08:17:44 2014 -0400 @@ -31,8 +31,6 @@ #ifndef PRODUCT -inline void MacroAssembler::pd_print_patched_instruction(address branch) { Unimplemented(); } - #endif // ndef PRODUCT #endif // CPU_AARCH64_VM_MACROASSEMBLER_AARCH64_INLINE_HPP diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/methodHandles_aarch64.cpp --- a/src/cpu/aarch64/vm/methodHandles_aarch64.cpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/methodHandles_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 @@ -41,13 +41,6 @@ #define BIND(label) bind(label); BLOCK_COMMENT(#label ":") -// Workaround for C++ overloading nastiness on '0' for RegisterOrConstant. -#if 0 -static RegisterOrConstant constant(int value) { - return RegisterOrConstant(value); -} -#endif - void MethodHandles::load_klass_from_Class(MacroAssembler* _masm, Register klass_reg) { if (VerifyMethodHandles) verify_klass(_masm, klass_reg, SystemDictionary::WK_KLASS_ENUM_NAME(java_lang_Class), diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/nativeInst_aarch64.cpp --- a/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/nativeInst_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 @@ -48,8 +48,6 @@ return instruction_address() + displacement(); } -void NativeCall::print() { Unimplemented(); } - // Inserts a native call instruction at a given pc void NativeCall::insert(address code_pos, address entry) { Unimplemented(); } @@ -83,12 +81,8 @@ //------------------------------------------------------------------- -int NativeMovRegMem::instruction_start() const { Unimplemented(); return 0; } - address NativeMovRegMem::instruction_address() const { return addr_at(instruction_offset); } -address NativeMovRegMem::next_instruction_address() const { Unimplemented(); return 0; } - int NativeMovRegMem::offset() const { address pc = instruction_address(); unsigned insn = *(unsigned*)pc; @@ -117,23 +111,11 @@ #endif } - -void NativeMovRegMem::print() { Unimplemented(); } - -//------------------------------------------------------------------- - -void NativeLoadAddress::verify() { Unimplemented(); } - - -void NativeLoadAddress::print() { Unimplemented(); } - //-------------------------------------------------------------------------------- void NativeJump::verify() { ; } -void NativeJump::insert(address code_pos, address entry) { Unimplemented(); } - void NativeJump::check_verified_entry_alignment(address entry, address verified_entry) { } @@ -222,11 +204,6 @@ } -void NativePopReg::insert(address code_pos, Register reg) { Unimplemented(); } - - -void NativeIllegalInstruction::insert(address code_pos) { Unimplemented(); } - void NativeGeneralJump::verify() { } diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/nativeInst_aarch64.hpp --- a/src/cpu/aarch64/vm/nativeInst_aarch64.hpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/nativeInst_aarch64.hpp Fri Jul 25 08:17:44 2014 -0400 @@ -57,7 +57,6 @@ enum { instruction_size = 4 }; inline bool is_nop(); bool is_dtrace_trap(); - inline bool is_call(); inline bool is_illegal(); inline bool is_return(); bool is_jump(); @@ -175,11 +174,6 @@ return is_call_at(return_address - NativeCall::return_address_offset); } - static bool is_call_to(address instr, address target) { - return nativeInstruction_at(instr)->is_call() && - nativeCall_at(instr)->destination() == target; - } - // MT-safe patching of a call instruction. static void insert(address code_pos, address entry); @@ -345,9 +339,6 @@ // unit test stuff static void test() {} - - private: - friend NativeLoadAddress* nativeLoadAddress_at (address address) { Unimplemented(); return 0; } }; class NativeJump: public NativeInstruction { @@ -434,10 +425,6 @@ public: }; -inline bool NativeInstruction::is_illegal() { Unimplemented(); return false; } -inline bool NativeInstruction::is_call() { Unimplemented(); return false; } -inline bool NativeInstruction::is_return() { Unimplemented(); return false; } - inline bool NativeInstruction::is_nop() { uint32_t insn = *(uint32_t*)addr_at(0); return insn == 0xd503201f; @@ -466,8 +453,4 @@ return is_nop() || is_jump(); } -inline bool NativeInstruction::is_cond_jump() { Unimplemented(); return false; } - -inline bool NativeInstruction::is_mov_literal64() { Unimplemented(); return false; } - #endif // CPU_AARCH64_VM_NATIVEINST_AARCH64_HPP diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/register_aarch64.hpp --- a/src/cpu/aarch64/vm/register_aarch64.hpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/register_aarch64.hpp Fri Jul 25 08:17:44 2014 -0400 @@ -174,44 +174,6 @@ CONSTANT_REGISTER_DECLARATION(FloatRegister, v30 , (30)); CONSTANT_REGISTER_DECLARATION(FloatRegister, v31 , (31)); -// #ifndef DONT_USE_REGISTER_DEFINES -#if 0 -#define fnoreg ((FloatRegister)(fnoreg_FloatRegisterEnumValue)) -#define v0 ((FloatRegister)( v0_FloatRegisterEnumValue)) -#define v1 ((FloatRegister)( v1_FloatRegisterEnumValue)) -#define v2 ((FloatRegister)( v2_FloatRegisterEnumValue)) -#define v3 ((FloatRegister)( v3_FloatRegisterEnumValue)) -#define v4 ((FloatRegister)( v4_FloatRegisterEnumValue)) -#define v5 ((FloatRegister)( v5_FloatRegisterEnumValue)) -#define v6 ((FloatRegister)( v6_FloatRegisterEnumValue)) -#define v7 ((FloatRegister)( v7_FloatRegisterEnumValue)) -#define v8 ((FloatRegister)( v8_FloatRegisterEnumValue)) -#define v9 ((FloatRegister)( v9_FloatRegisterEnumValue)) -#define v10 ((FloatRegister)( v10_FloatRegisterEnumValue)) -#define v11 ((FloatRegister)( v11_FloatRegisterEnumValue)) -#define v12 ((FloatRegister)( v12_FloatRegisterEnumValue)) -#define v13 ((FloatRegister)( v13_FloatRegisterEnumValue)) -#define v14 ((FloatRegister)( v14_FloatRegisterEnumValue)) -#define v15 ((FloatRegister)( v15_FloatRegisterEnumValue)) -#define v16 ((FloatRegister)( v16_FloatRegisterEnumValue)) -#define v17 ((FloatRegister)( v17_FloatRegisterEnumValue)) -#define v18 ((FloatRegister)( v18_FloatRegisterEnumValue)) -#define v19 ((FloatRegister)( v19_FloatRegisterEnumValue)) -#define v20 ((FloatRegister)( v20_FloatRegisterEnumValue)) -#define v21 ((FloatRegister)( v21_FloatRegisterEnumValue)) -#define v22 ((FloatRegister)( v22_FloatRegisterEnumValue)) -#define v23 ((FloatRegister)( v23_FloatRegisterEnumValue)) -#define v24 ((FloatRegister)( v24_FloatRegisterEnumValue)) -#define v25 ((FloatRegister)( v25_FloatRegisterEnumValue)) -#define v26 ((FloatRegister)( v26_FloatRegisterEnumValue)) -#define v27 ((FloatRegister)( v27_FloatRegisterEnumValue)) -#define v28 ((FloatRegister)( v28_FloatRegisterEnumValue)) -#define v29 ((FloatRegister)( v29_FloatRegisterEnumValue)) -#define v30 ((FloatRegister)( v30_FloatRegisterEnumValue)) -#define v31 ((FloatRegister)( v31_FloatRegisterEnumValue)) -#endif // 0 -//#endif // DONT_USE_REGISTER_DEFINES - // Need to know the total number of registers of all sorts for SharedInfo. // Define a class that exports it. class ConcreteRegisterImpl : public AbstractRegisterImpl { diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp --- a/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 @@ -2580,11 +2580,6 @@ } #endif - // TODO check various assumptions here - // - // call unimplemented to make sure we actually check this later - // __ call_Unimplemented(); - assert(SimpleRuntimeFrame::framesize % 4 == 0, "sp not 16-byte aligned"); address start = __ pc(); diff -r fdcc9aef9dbb -r 4020f25a52c2 src/cpu/aarch64/vm/stubGenerator_aarch64.cpp --- a/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Tue Jul 22 11:56:07 2014 -0400 +++ b/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 @@ -67,10 +67,6 @@ // Stub Code definitions -#if 0 -static address handle_unsafe_access() { Unimplemented(); return 0; } -#endif - class StubGenerator: public StubCodeGenerator { private: @@ -592,159 +588,6 @@ return start; } - // Support for jint atomic::xchg(jint exchange_value, volatile jint* dest) - // - // Arguments : - // c_rarg0: exchange_value - // c_rarg0: dest - // - // Result: - // *dest <- ex, return (orig *dest) - - // NOTE: not sure this is actually needed but if so it looks like it - // is called from os-specific code i.e. it needs an x86 prolog - - address generate_atomic_xchg() { return 0; } - - // Support for intptr_t atomic::xchg_ptr(intptr_t exchange_value, volatile intptr_t* dest) - // - // Arguments : - // c_rarg0: exchange_value - // c_rarg1: dest - // - // Result: - // *dest <- ex, return (orig *dest) - - // NOTE: not sure this is actually needed but if so it looks like it - // is called from os-specific code i.e. it needs an x86 prolog - - address generate_atomic_xchg_ptr() { return 0; } - - // Support for jint atomic::atomic_cmpxchg(jint exchange_value, volatile jint* dest, - // jint compare_value) - // - // Arguments : - // c_rarg0: exchange_value - // c_rarg1: dest - // c_rarg2: compare_value - // - // Result: - // if ( compare_value == *dest ) { - // *dest = exchange_value - // return compare_value; - // else - // return *dest; - address generate_atomic_cmpxchg() { return 0; } - - // Support for jint atomic::atomic_cmpxchg_long(jlong exchange_value, - // volatile jlong* dest, - // jlong compare_value) - // Arguments : - // c_rarg0: exchange_value - // c_rarg1: dest - // c_rarg2: compare_value - // - // Result: - // if ( compare_value == *dest ) { - // *dest = exchange_value - // return compare_value; - // else - // return *dest; - - // NOTE: not sure this is actually needed but if so it looks like it - // is called from os-specific code i.e. it needs an x86 prolog - - address generate_atomic_cmpxchg_long() { return 0; } - - // Support for jint atomic::add(jint add_value, volatile jint* dest) - // - // Arguments : - // c_rarg0: add_value - // c_rarg1: dest - // - // Result: - // *dest += add_value - // return *dest; - - // NOTE: not sure this is actually needed but if so it looks like it - // is called from os-specific code i.e. it needs an x86 prolog - - address generate_atomic_add() { return 0; } - - // Support for intptr_t atomic::add_ptr(intptr_t add_value, volatile intptr_t* dest) - // - // Arguments : - // c_rarg0: add_value - // c_rarg1: dest - // - // Result: - // *dest += add_value - // return *dest; - - // NOTE: not sure this is actually needed but if so it looks like it - // is called from os-specific code i.e. it needs an x86 prolog - - address generate_atomic_add_ptr() { return 0; } - - // Support for intptr_t OrderAccess::fence() - // - // Arguments : - // - // Result: - - // NOTE: this is called from C code so it needs an x86 prolog - // or else we need to fiddle it with inline asm for now - - address generate_orderaccess_fence() { return 0; } - - // Support for intptr_t get_previous_fp() - // - // This routine is used to find the previous frame pointer for the - // caller (current_frame_guess). This is used as part of debugging - // ps() is seemingly lost trying to find frames. - // This code assumes that caller current_frame_guess) has a frame. - - // NOTE: this is called from C code in os_windows.cpp with AMD64. other - // builds use inline asm -- so we should be ok for aarch64 - - address generate_get_previous_fp() { return 0; } - - // Support for intptr_t get_previous_sp() - // - // This routine is used to find the previous stack pointer for the - // caller. - - // NOTE: this is called from C code in os_windows.cpp with AMD64. other - // builds use inline asm -- so we should be ok for aarch64 - - address generate_get_previous_sp() { return 0; } - - // NOTE: these fixup routines appear only to be called from the - // opto code (they are mentioned in x86_64.ad) so we can do - // without them for now on aarch64 - - address generate_f2i_fixup() { Unimplemented(); return 0; } - - address generate_f2l_fixup() { Unimplemented(); return 0; } - - address generate_d2i_fixup() { Unimplemented(); return 0; } - - address generate_d2l_fixup() { Unimplemented(); return 0; } - - // The following routine generates a subroutine to throw an - // asynchronous UnknownError when an unsafe access gets a fault that - // could not be reasonably prevented by the programmer. (Example: - // SIGBUS/OBJERR.) - - // NOTE: this is used by the signal handler code as a return address - // to re-enter Java execution so it needs an x86 prolog which will - // reenter the simulator executing the generated handler code. so - // the prolog needs to adjust the sim's restart pc to enter the - // generated code at the start position then return from native to - // simulated execution. - - address generate_handler_for_unsafe_access() { return 0; } - // Non-destructive plausibility checks for oops // // Arguments: @@ -817,29 +660,7 @@ return start; } - // - // Verify that a register contains clean 32-bits positive value - // (high 32-bits are 0) so it could be used in 64-bits shifts. - // - // Input: - // Rint - 32-bits value - // Rtmp - scratch - // - void assert_clean_int(Register Rint, Register Rtmp) { Unimplemented(); } - - // Generate overlap test for array copy stubs - // - // Input: - // c_rarg0 - from - // c_rarg1 - to - // c_rarg2 - element count - // - // Output: - // r0 - &from[element count - 1] - // - void array_overlap_test(address no_overlap_target, int sf) { Unimplemented(); } void array_overlap_test(Label& L_no_overlap, Address::sxtw sf) { __ b(L_no_overlap); } - void array_overlap_test(address no_overlap_target, Label* NOLp, int sf) { Unimplemented(); } // Generate code for an array write pre barrier // @@ -1730,23 +1551,6 @@ return start; } - // - // Generate 'unsafe' array copy stub - // Though just as safe as the other stubs, it takes an unscaled - // size_t argument instead of an element count. - // - // Input: - // c_rarg0 - source array address - // c_rarg1 - destination array address - // c_rarg2 - byte count, treated as ssize_t, can be zero - // - // Examines the alignment of the operands and dispatches - // to a long, int, short, or byte copy loop. - // - address generate_unsafe_copy(const char *name, - address byte_copy_entry, address short_copy_entry, - address int_copy_entry, address long_copy_entry) { Unimplemented(); return 0; } - // Perform range checks on the proposed arraycopy. // Kills temp, but nothing else. // Also, clean the sign bits of src_pos and dst_pos. @@ -1758,28 +1562,6 @@ Register temp, Label& L_failed) { Unimplemented(); } - // - // Generate generic array copy stubs - // - // Input: - // c_rarg0 - src oop - // c_rarg1 - src_pos (32-bits) - // c_rarg2 - dst oop - // c_rarg3 - dst_pos (32-bits) - // not Win64 - // c_rarg4 - element count (32-bits) - // Win64 - // rsp+40 - element count (32-bits) - // - // Output: - // r0 == 0 - success - // r0 == -1^K - failure, where K is partial transfer count - // - address generate_generic_copy(const char *name, - address byte_copy_entry, address short_copy_entry, - address int_copy_entry, address oop_copy_entry, - address long_copy_entry, address checkcast_copy_entry) { Unimplemented(); return 0; } - // These stubs get called from some dumb test routine. // I'll write them properly when they're called from // something that's actually doing something. @@ -1876,8 +1658,6 @@ /*dest_uninitialized*/true); } - void generate_math_stubs() { Unimplemented(); } - // Arguments: // // Inputs: @@ -2391,38 +2171,6 @@ // otherwise assume that stack unwinding will be initiated, so // caller saved registers were assumed volatile in the compiler. - // NOTE: this needs carefully checking to see where the generated - // code gets called from for each generated error - // - // WrongMethodTypeException : jumped to directly from generated method - // handle code. - // - // StackOverflowError : jumped to directly from generated code in - // cpp and template interpreter. the generated code address also - // appears to be returned from the signal handler as the re-entry - // address forJava execution to continue from. This means it needs - // to be enterable from x86 code. Hmm, we may need to expose both an - // x86 prolog and the address of the generated ARM code and clients - // will have to be mdoified to pick the correct one. - // - // AbstractMethodError : never jumped to from generated code but the - // generated code address appears to be returned from the signal - // handler as the re-entry address for Java execution to continue - // from. This means it needs to be enterable from x86 code. So, we - // will need to provide this one with an x86 prolog as per - // StackOverflowError - // - // IncompatibleClassChangeError : only appears to be jumped to - // directly from vtableStubs code - // - // NullPointerException : never jumped to from generated code but - // the generated code address appears to be returned from the signal - // handler as the re-entry address for Java execution to continue - // from. This means it needs to be enterable from x86 code. So, we - // will need to provide this one with an x86 prolog as per - // StackOverflowError - - address generate_throw_exception(const char* name, address runtime_entry, Register arg1 = noreg, @@ -2528,22 +2276,6 @@ // is referenced by megamorphic call StubRoutines::_catch_exception_entry = generate_catch_exception(); - // atomic calls - StubRoutines::_atomic_xchg_entry = generate_atomic_xchg(); - StubRoutines::_atomic_xchg_ptr_entry = generate_atomic_xchg_ptr(); - StubRoutines::_atomic_cmpxchg_entry = generate_atomic_cmpxchg(); - StubRoutines::_atomic_cmpxchg_long_entry = generate_atomic_cmpxchg_long(); - StubRoutines::_atomic_add_entry = generate_atomic_add(); - StubRoutines::_atomic_add_ptr_entry = generate_atomic_add_ptr(); - StubRoutines::_fence_entry = generate_orderaccess_fence(); - - StubRoutines::_handler_for_unsafe_access_entry = - generate_handler_for_unsafe_access(); - - // platform dependent - StubRoutines::aarch64::_get_previous_fp_entry = generate_get_previous_fp(); - StubRoutines::aarch64::_get_previous_sp_entry = generate_get_previous_sp(); - // Build this early so it's available for the interpreter. StubRoutines::_throw_StackOverflowError_entry = generate_throw_exception("StackOverflowError throw_exception", From aph at redhat.com Mon Jul 28 09:16:26 2014 From: aph at redhat.com (aph at redhat.com) Date: Mon, 28 Jul 2014 09:16:26 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: Delete dead code. Message-ID: <201407280916.s6S9GQpZ003568@aojmv0008> Changeset: 4020f25a52c2 Author: aph Date: 2014-07-25 08:17 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/4020f25a52c2 Delete dead code. ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/aarch64Test.cpp ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp - src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp ! src/cpu/aarch64/vm/c1_LinearScan_aarch64.hpp ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/cppInterpreterGenerator_aarch64.hpp ! src/cpu/aarch64/vm/interp_masm_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.inline.hpp ! src/cpu/aarch64/vm/methodHandles_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.hpp ! src/cpu/aarch64/vm/register_aarch64.hpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp From edward.nevill at linaro.org Tue Jul 29 10:09:39 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Tue, 29 Jul 2014 11:09:39 +0100 Subject: [aarch64-port-dev ] JTREG, SPECjbb2013 and Hadoop/Terasort results for OpenJDK 8 on AArch64 Message-ID: <1406628579.24655.8.camel@localhost.localdomain> This is a summary of the JTREG test results =========================================== The build and test results are cycled every 10 days. For detailed information on the test output please refer to: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/summary/2014/210/summary.html ------------------------------------------------------------------------------- client-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/18 pass: 538; fail: 19 Build 1: aarch64/2014/jun/24 pass: 538; fail: 19 Build 2: aarch64/2014/jun/25 pass: 538; fail: 19 Build 3: aarch64/2014/jun/28 pass: 536; fail: 28 Build 4: aarch64/2014/jul/03 pass: 545; fail: 19 Build 5: aarch64/2014/jul/08 pass: 545; fail: 19 Build 6: aarch64/2014/jul/09 pass: 545; fail: 19 Build 7: aarch64/2014/jul/10 pass: 545; fail: 19 Build 8: aarch64/2014/jul/23 pass: 545; fail: 19 Build 9: aarch64/2014/jul/29 pass: 545; fail: 19 ------------------------------------------------------------------------------- client-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/18 pass: 4,969; fail: 496; error: 45 Build 1: aarch64/2014/jun/24 pass: 4,970; fail: 495; error: 45 Build 2: aarch64/2014/jun/25 pass: 4,967; fail: 498; error: 45 Build 3: aarch64/2014/jun/28 pass: 4,968; fail: 497; error: 45 Build 4: aarch64/2014/jul/03 pass: 5,228; fail: 234; error: 48 Build 5: aarch64/2014/jul/08 pass: 5,242; fail: 219; error: 49 Build 6: aarch64/2014/jul/09 pass: 5,238; fail: 217; error: 55 Build 7: aarch64/2014/jul/10 pass: 5,230; fail: 234; error: 46 Build 8: aarch64/2014/jul/23 pass: 5,281; fail: 182; error: 47 Build 9: aarch64/2014/jul/29 pass: 5,267; fail: 199; error: 44 1 fatal errors were detected; please follow the link above for more detail. ------------------------------------------------------------------------------- client-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/18 pass: 2,999; error: 16 Build 1: aarch64/2014/jun/24 pass: 2,999; error: 16 Build 2: aarch64/2014/jun/25 pass: 3,000; fail: 1; error: 14 Build 3: aarch64/2014/jun/28 pass: 2,999; error: 16 Build 4: aarch64/2014/jul/03 pass: 2,999; error: 16 Build 5: aarch64/2014/jul/08 pass: 2,999; error: 16 Build 6: aarch64/2014/jul/09 pass: 3,000; error: 15 Build 7: aarch64/2014/jul/10 pass: 2,999; error: 16 Build 8: aarch64/2014/jul/23 pass: 3,000; error: 15 Build 9: aarch64/2014/jul/29 pass: 2,999; error: 16 ------------------------------------------------------------------------------- server-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/18 pass: 554; fail: 3 Build 1: aarch64/2014/jun/24 pass: 554; fail: 3 Build 2: aarch64/2014/jun/25 pass: 555; fail: 2 Build 3: aarch64/2014/jun/28 pass: 553; fail: 11 Build 4: aarch64/2014/jul/03 pass: 562; fail: 2 Build 5: aarch64/2014/jul/08 pass: 562; fail: 2 Build 6: aarch64/2014/jul/09 pass: 562; fail: 2 Build 7: aarch64/2014/jul/10 pass: 562; fail: 2 Build 8: aarch64/2014/jul/23 pass: 562; fail: 2 Build 9: aarch64/2014/jul/29 pass: 562; fail: 2 ------------------------------------------------------------------------------- server-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/18 pass: 4,974; fail: 492; error: 44 Build 1: aarch64/2014/jun/24 pass: 4,973; fail: 492; error: 45 Build 2: aarch64/2014/jun/25 pass: 4,975; fail: 491; error: 44 Build 3: aarch64/2014/jun/28 pass: 4,973; fail: 493; error: 44 Build 4: aarch64/2014/jul/03 pass: 5,239; fail: 221; error: 50 Build 5: aarch64/2014/jul/08 pass: 5,239; fail: 217; error: 54 Build 6: aarch64/2014/jul/09 pass: 5,231; fail: 231; error: 48 Build 7: aarch64/2014/jul/10 pass: 5,246; fail: 212; error: 52 Build 8: aarch64/2014/jul/23 pass: 5,291; fail: 174; error: 45 Build 9: aarch64/2014/jul/29 pass: 5,285; fail: 182; error: 43 ------------------------------------------------------------------------------- server-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/18 pass: 3,004; error: 11 Build 1: aarch64/2014/jun/24 pass: 3,004; error: 11 Build 2: aarch64/2014/jun/25 pass: 3,004; error: 11 Build 3: aarch64/2014/jun/28 pass: 3,004; error: 11 Build 4: aarch64/2014/jul/03 pass: 3,004; error: 11 Build 5: aarch64/2014/jul/08 pass: 3,004; error: 11 Build 6: aarch64/2014/jul/09 pass: 3,004; error: 11 Build 7: aarch64/2014/jul/10 pass: 3,004; error: 11 Build 8: aarch64/2014/jul/23 pass: 3,004; error: 11 Build 9: aarch64/2014/jul/29 pass: 3,004; error: 11 Previous results can be found here: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/index.html SPECjbb2013 composite regression test completed =============================================== This test measures the relative performance of the server compiler running the SPECjbb2013 composite tests and compares the performance against the baseline performance of the server compiler taken on 2014-04-01. In accordance with [1], the SPECjbb2013 tests are run on a system which is not production ready and does not meet all the requirements for publishing compliant results. The numbers below shall be treated as non-compliant (nc) and are for experimental purposes only. Relative performance: Server max-jOPS (nc): 0.96x Relative performance: Server critical-jOPS (nc): 1.02x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/SPECjbb2013-1.00-results/ [1] http://www.spec.org/fairuse.html#Academic Regression test Hadoop-Terasort completed ========================================= This test measures the performance of the server and client compilers running Hadoop sorting a 1GB file using Terasort and compares the performance against the baseline performance of the Zero interpreter and against the baseline performance of the client and server compilers on 2014-04-01. Relative performance: Zero: 1.0, Client: 49.18, Server: 81.59 Client 49.18 / Client 2014-04-01 (43.00): 1.14x Server 81.59 / Server 2014-04-01 (71.00): 1.15x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/hadoop-terasort-benchmark-results/ This is a summary of the jcstress test results ============================================== The build and test results are cycled every 10 days. 2014-06-30 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/181/results/ 2014-07-03 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/184/results/ 2014-07-04 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/185/results/ 2014-07-11 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/192/results/ 2014-07-23 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/204/results/ 2014-07-29 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/210/results/ For detailed information on the test output please refer to: http://openjdk.linaro.org/jcstress-nightly-runs/ From aph at redhat.com Tue Jul 29 10:30:41 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 29 Jul 2014 11:30:41 +0100 Subject: [aarch64-port-dev ] Fix bootstrap failure in JDK9 Message-ID: <53D777D1.7060503@redhat.com> I spent yesterday tracking down a bootstrap failure building JDK9 with JDK8. The symptom was a very odd error message about overflow when compiling some auto-generated Java source files. These Java source files are generated by the bootstrap (JDK8) compiler, The bug only seemed to occur when the bootstrap JDK8 was a release build. After a long time, I found that the bug was this line: unsigned long uimm = labs(imm); It looks reasonable, but it's actually incorrect. Here's the specification: The abs, labs, and llabs functions compute the absolute value of an integer j. If the result cannot be represented, the behavior is undefined. 256) 256) The absolute value of the most negative number cannot be represented in two?s complement. So, if the number passed to labs() is the most negative integer, you're doomed. And this means that the abs, labs, and llabs functions cannot be used safely unless you know the range of the argument. Fixed thusly. I've written some versions of abs() that do not overflow, no matter what the range of their arguments. Note that Java's Math.abs() is well-defined for all arguments. Java is thus better than C and C++. But we knew that already. :-) Andrew. # HG changeset patch # User aph # Date 1406628026 14400 # Tue Jul 29 06:00:26 2014 -0400 # Node ID 5e238903a8753fdca06994bec8b36363ae930664 # Parent 4020f25a52c21258ee7daaa878ec5196344a6b1e Define uabs(). Use it everywhere an absolute value is wanted. diff -r 4020f25a52c2 -r 5e238903a875 src/cpu/aarch64/vm/assembler_aarch64.cpp --- a/src/cpu/aarch64/vm/assembler_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 +++ b/src/cpu/aarch64/vm/assembler_aarch64.cpp Tue Jul 29 06:00:26 2014 -0400 @@ -1453,7 +1453,7 @@ bool Assembler::operand_valid_for_add_sub_immediate(long imm) { bool shift = false; - unsigned long uimm = labs(imm); + unsigned long uimm = uabs(imm); if (uimm < (1 << 12)) return true; if (uimm < (1 << 24) diff -r 4020f25a52c2 -r 5e238903a875 src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Fri Jul 25 08:17:44 2014 -0400 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Tue Jul 29 06:00:26 2014 -0400 @@ -320,6 +320,29 @@ enum operation { uxtb, uxth, uxtw, uxtx, sxtb, sxth, sxtw, sxtx }; }; +// abs methods which cannot overflow and so are well-defined across +// the entire domain of integer types. +static inline unsigned int uabs(unsigned int n) { + union { + unsigned int result; + int value; + }; + result = n; + if (value < 0) result = -result; + return result; +} +static inline unsigned long uabs(unsigned long n) { + union { + unsigned long result; + long value; + }; + result = n; + if (value < 0) result = -result; + return result; +} +static inline unsigned long uabs(long n) { return uabs((unsigned long)n); } +static inline unsigned long uabs(int n) { return uabs((unsigned int)n); } + // Addressing modes class Address VALUE_OBJ_CLASS_SPEC { public: @@ -547,7 +570,7 @@ static bool offset_ok_for_immed(long offset, int shift = 0) { unsigned mask = (1 << shift) - 1; if (offset < 0 || offset & mask) { - return (abs(offset) < (1 << (20 - 12))); // Unscaled offset + return (uabs(offset) < (1 << (20 - 12))); // Unscaled offset } else { return ((offset >> shift) < (1 << (21 - 10 + 1))); // Scaled, unsigned offset } @@ -618,6 +641,7 @@ #endif public: + enum { instruction_size = 4 }; Address adjust(Register base, int offset, bool preIncrement) { diff -r 4020f25a52c2 -r 5e238903a875 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 29 06:00:26 2014 -0400 @@ -1796,7 +1796,7 @@ if (operand_valid_for_add_sub_immediate((int)imm)) { (this->*insn1)(Rd, Rn, imm); } else { - if (labs(imm) < (1 << 24)) { + if (uabs(imm) < (1 << 24)) { (this->*insn1)(Rd, Rn, imm & -(1 << 12)); (this->*insn1)(Rd, Rd, imm & ((1 << 12)-1)); } else { @@ -3292,7 +3292,7 @@ void MacroAssembler::adrp(Register reg1, const Address &dest, unsigned long &byte_offset) { relocInfo::relocType rtype = dest.rspec().reloc()->type(); - if (labs(pc() - dest.target()) >= (1LL << 32)) { + if (uabs(pc() - dest.target()) >= (1LL << 32)) { guarantee(rtype == relocInfo::none || rtype == relocInfo::external_word_type || rtype == relocInfo::poll_type diff -r 4020f25a52c2 -r 5e238903a875 src/cpu/aarch64/vm/stubGenerator_aarch64.cpp --- a/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Fri Jul 25 08:17:44 2014 -0400 +++ b/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Tue Jul 29 06:00:26 2014 -0400 @@ -899,7 +899,7 @@ void copy_memory_small(Register s, Register d, Register count, Register tmp, int step) { bool is_backwards = step < 0; - size_t granularity = abs(step); + size_t granularity = uabs(step); int direction = is_backwards ? -1 : 1; int unit = wordSize * direction; @@ -955,7 +955,7 @@ Register count, Register tmp, int step) { copy_direction direction = step < 0 ? copy_backwards : copy_forwards; bool is_backwards = step < 0; - int granularity = abs(step); + int granularity = uabs(step); const Register t0 = r3, t1 = r4; if (is_backwards) { From aph at redhat.com Tue Jul 29 13:39:06 2014 From: aph at redhat.com (aph at redhat.com) Date: Tue, 29 Jul 2014 13:39:06 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: Define uabs(). Use it everywhere an absolute value is wanted. Message-ID: <201407291339.s6TDd6ZN019481@aojmv0008> Changeset: 5e238903a875 Author: aph Date: 2014-07-29 06:00 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/5e238903a875 Define uabs(). Use it everywhere an absolute value is wanted. ! src/cpu/aarch64/vm/assembler_aarch64.cpp ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp From edward.nevill at linaro.org Tue Jul 29 14:15:53 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Tue, 29 Jul 2014 15:15:53 +0100 Subject: [aarch64-port-dev ] RFR: jdk7: Replace hotspot jtreg test suite Message-ID: <1406643353.10948.11.camel@localhost.localdomain> Hi, The linked patch replaces the existing jtreg test suite in jtreg/hotspot, with the jtreg test suite from the jdk7u tip. I have gone through the failures and fixed tests which were obviously broken (eg. -m64 on gcc command line, incorrect options on jmap, undefined symbols on link etc). The following are the results I get now. Test results: passed: 286; failed: 2 The 2 failures are FAILED: gc/arguments/TestDynMaxHeapFreeRatio.java FAILED: gc/arguments/TestDynMinHeapFreeRatio.java Note that in order to run the tests you must specify -timeout:3 as some of the tests take longer than the standard 2 minutes (this is true on x86 as well). OK to push? Ed. Link here http://people.linaro.org/~edward.nevill/patches/jdk7u_jtreg.patch From aph at redhat.com Tue Jul 29 15:59:48 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 29 Jul 2014 16:59:48 +0100 Subject: [aarch64-port-dev ] RFR: jdk7: Replace hotspot jtreg test suite In-Reply-To: <1406643353.10948.11.camel@localhost.localdomain> References: <1406643353.10948.11.camel@localhost.localdomain> Message-ID: <53D7C4F4.3090206@redhat.com> On 07/29/2014 03:15 PM, Edward Nevill wrote: > OK to push? Yes, thanks. Andrew. From ed at camswl.com Tue Jul 29 16:04:23 2014 From: ed at camswl.com (ed at camswl.com) Date: Tue, 29 Jul 2014 16:04:23 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk7u/hotspot: Replace hotspot jtreg test suite with tests from jdk7u Message-ID: <201407291604.s6TG4OZ1011739@aojmv0008> Changeset: c05f1aa9f822 Author: Edward Nevill edward.nevill at linaro.org Date: 2014-07-29 14:57 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot/rev/c05f1aa9f822 Replace hotspot jtreg test suite with tests from jdk7u ! test/Makefile ! test/TEST.ROOT - test/TEST.groups - test/aarch64/DoubleArithTests.java - test/aarch64/DoubleCmpTests.java - test/aarch64/FloatArithTests.java - test/aarch64/FloatCmpTests.java - test/aarch64/IntArithTests.java - test/aarch64/IntCmpTests.java - test/aarch64/IntLogicTests.java - test/aarch64/IntShiftTests.java - test/aarch64/LongArithTests.java - test/aarch64/LongCmpTests.java - test/aarch64/LongLogicTests.java - test/aarch64/LongShiftTests.java ! test/compiler/5091921/Test7005594.sh ! test/compiler/6431242/Test.java ! test/compiler/6589834/Test_ia32.java ! test/compiler/6636138/Test1.java ! test/compiler/6636138/Test2.java + test/compiler/6653795/UnsafeGetAddressTest.java ! test/compiler/6795161/Test.java ! test/compiler/6857159/Test6857159.sh ! test/compiler/6859338/Test6859338.java - test/compiler/6896617/Test6896617.java - test/compiler/6934604/TestByteBoxing.java - test/compiler/6934604/TestDoubleBoxing.java - test/compiler/6934604/TestFloatBoxing.java - test/compiler/6934604/TestIntBoxing.java - test/compiler/6934604/TestLongBoxing.java - test/compiler/6934604/TestShortBoxing.java ! test/compiler/7068051/Test7068051.sh ! test/compiler/7070134/Test7070134.sh - test/compiler/7088419/CRCTest.java ! test/compiler/7116216/StackOverflow.java ! test/compiler/7141637/SpreadNullArg.java + test/compiler/7158807/Test7158807.java ! test/compiler/7200264/Test7200264.sh ! test/compiler/8000805/Test8000805.java ! test/compiler/8005419/Test8005419.java - test/compiler/8011706/Test8011706.java - test/compiler/8011771/Test8011771.java - test/compiler/8011901/Test8011901.java - test/compiler/8015436/Test8015436.java - test/compiler/ciReplay/TestSA.sh - test/compiler/ciReplay/TestVM.sh - test/compiler/ciReplay/TestVM_no_comp_level.sh - test/compiler/ciReplay/common.sh - test/compiler/codecache/CheckReservedInitialCodeCacheSizeArgOrder.java - test/compiler/codecache/CheckUpperLimit.java - test/compiler/inlining/DefaultAndConcreteMethodsCHA.java - test/compiler/inlining/InlineDefaultMethod.java - test/compiler/inlining/InlineDefaultMethod1.java + test/compiler/intrinsics/hashcode/TestHashCode.java - test/compiler/intrinsics/mathexact/AddExactICondTest.java - test/compiler/intrinsics/mathexact/AddExactIConstantTest.java - test/compiler/intrinsics/mathexact/AddExactILoadTest.java - test/compiler/intrinsics/mathexact/AddExactILoopDependentTest.java - test/compiler/intrinsics/mathexact/AddExactINonConstantTest.java - test/compiler/intrinsics/mathexact/AddExactIRepeatTest.java - test/compiler/intrinsics/mathexact/AddExactLConstantTest.java - test/compiler/intrinsics/mathexact/AddExactLNonConstantTest.java - test/compiler/intrinsics/mathexact/CompareTest.java - test/compiler/intrinsics/mathexact/DecExactITest.java - test/compiler/intrinsics/mathexact/DecExactLTest.java - test/compiler/intrinsics/mathexact/GVNTest.java - test/compiler/intrinsics/mathexact/IncExactITest.java - test/compiler/intrinsics/mathexact/IncExactLTest.java - test/compiler/intrinsics/mathexact/MulExactICondTest.java - test/compiler/intrinsics/mathexact/MulExactIConstantTest.java - test/compiler/intrinsics/mathexact/MulExactILoadTest.java - test/compiler/intrinsics/mathexact/MulExactILoopDependentTest.java - test/compiler/intrinsics/mathexact/MulExactINonConstantTest.java - test/compiler/intrinsics/mathexact/MulExactIRepeatTest.java - test/compiler/intrinsics/mathexact/MulExactLConstantTest.java - test/compiler/intrinsics/mathexact/MulExactLNonConstantTest.java - test/compiler/intrinsics/mathexact/NegExactIConstantTest.java - test/compiler/intrinsics/mathexact/NegExactILoadTest.java - test/compiler/intrinsics/mathexact/NegExactILoopDependentTest.java - test/compiler/intrinsics/mathexact/NegExactINonConstantTest.java - test/compiler/intrinsics/mathexact/NegExactLConstantTest.java - test/compiler/intrinsics/mathexact/NegExactLNonConstantTest.java - test/compiler/intrinsics/mathexact/NestedMathExactTest.java - test/compiler/intrinsics/mathexact/SplitThruPhiTest.java - test/compiler/intrinsics/mathexact/SubExactICondTest.java - test/compiler/intrinsics/mathexact/SubExactIConstantTest.java - test/compiler/intrinsics/mathexact/SubExactILoadTest.java - test/compiler/intrinsics/mathexact/SubExactILoopDependentTest.java - test/compiler/intrinsics/mathexact/SubExactINonConstantTest.java - test/compiler/intrinsics/mathexact/SubExactIRepeatTest.java - test/compiler/intrinsics/mathexact/SubExactLConstantTest.java - test/compiler/intrinsics/mathexact/SubExactLNonConstantTest.java - test/compiler/intrinsics/mathexact/Verify.java - test/compiler/intrinsics/stringequals/TestStringEqualsBadLength.java - test/compiler/jsr292/ConcurrentClassLoadingTest.java - test/compiler/jsr292/CreatesInterfaceDotEqualsCallInfo.java - test/compiler/jsr292/createsInterfaceDotEqualsCallInfo.js - test/compiler/jsr292/methodHandleExceptions/ByteClassLoader.java - test/compiler/jsr292/methodHandleExceptions/TestAMEnotNPE.java - test/compiler/jsr292/methodHandleExceptions/p/C.java - test/compiler/jsr292/methodHandleExceptions/p/Dok.java - test/compiler/jsr292/methodHandleExceptions/p/E.java - test/compiler/jsr292/methodHandleExceptions/p/F.java - test/compiler/jsr292/methodHandleExceptions/p/I.java - test/compiler/jsr292/methodHandleExceptions/p/Tdirect.java - test/compiler/jsr292/methodHandleExceptions/p/Treflect.java - test/compiler/profiling/TestUnexpectedProfilingMismatch.java - test/compiler/profiling/unloadingconflict/B.java - test/compiler/profiling/unloadingconflict/TestProfileConflictClassUnloading.java ! test/compiler/regalloc/C1ObjectSpillInLogicOp.java - test/compiler/startup/SmallCodeCacheStartup.java - test/compiler/startup/StartupOutput.java - test/compiler/tiered/CompLevelsTest.java - test/compiler/tiered/NonTieredLevelsTest.java - test/compiler/tiered/TieredLevelsTest.java - test/compiler/types/TypeSpeculation.java - test/compiler/uncommontrap/StackOverflowGuardPagesOff.java - test/compiler/uncommontrap/TestStackBangRbp.java - test/compiler/uncommontrap/UncommonTrapStackBang.java - test/compiler/unsafe/GetUnsafeObjectG1PreBarrier.java - test/compiler/whitebox/ClearMethodStateTest.java - test/compiler/whitebox/CompilerWhiteBoxTest.java - test/compiler/whitebox/DeoptimizeAllTest.java - test/compiler/whitebox/DeoptimizeMethodTest.java - test/compiler/whitebox/EnqueueMethodForCompilationTest.java - test/compiler/whitebox/IsMethodCompilableTest.java - test/compiler/whitebox/MakeMethodNotCompilableTest.java - test/compiler/whitebox/SetDontInlineMethodTest.java - test/compiler/whitebox/SetForceInlineMethodTest.java - test/gc/6941923/Test6941923.java + test/gc/6941923/test6941923.sh - test/gc/TestG1ZeroPGCTJcmdThreadPrint.java - test/gc/TestObjectAlignment.java - test/gc/TestSystemGC.java ! test/gc/TestVerifyDuringStartup.java + test/gc/TestVerifySilently.java - test/gc/arguments/TestAlignmentToUseLargePages.java - test/gc/arguments/TestCMSHeapSizeFlags.java - test/gc/arguments/TestCompressedClassFlags.java + test/gc/arguments/TestDynMaxHeapFreeRatio.java + test/gc/arguments/TestDynMinHeapFreeRatio.java - test/gc/arguments/TestG1HeapRegionSize.java - test/gc/arguments/TestG1HeapSizeFlags.java - test/gc/arguments/TestHeapFreeRatio.java - test/gc/arguments/TestInitialTenuringThreshold.java - test/gc/arguments/TestMaxHeapSizeTools.java - test/gc/arguments/TestMaxNewSize.java - test/gc/arguments/TestMinInitialErgonomics.java - test/gc/arguments/TestParallelHeapSizeFlags.java - test/gc/arguments/TestSerialHeapSizeFlags.java - test/gc/arguments/TestUnrecognizedVMOptionsHandling.java - test/gc/arguments/TestUseCompressedOopsErgo.java - test/gc/arguments/TestUseCompressedOopsErgoTools.java - test/gc/concurrentMarkSweep/CheckAllocateAndSystemGC.java - test/gc/concurrentMarkSweep/GuardShrinkWarning.java - test/gc/concurrentMarkSweep/SystemGCOnForegroundCollector.java - test/gc/g1/TestHumongousAllocInitialMark.java - test/gc/g1/TestShrinkToOneRegion.java + test/gc/heap_inspection/TestG1ConcurrentGCHeapDump.java + test/gc/heap_inspection/TestPrintClassHistogram.java + test/gc/init/TestHandleExceedingProcessSizeLimitIn32BitBuilds.java - test/gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java - test/gc/metaspace/G1AddMetaspaceDependency.java - test/gc/metaspace/TestMetaspaceMemoryPool.java - test/gc/metaspace/TestMetaspacePerfCounters.java - test/gc/metaspace/TestMetaspaceSizeFlags.java - test/gc/metaspace/TestPerfCountersAndMemoryPools.java - test/gc/parallelScavenge/AdaptiveGCBoundary.java - test/gc/startup_warnings/TestCMS.java - test/gc/startup_warnings/TestCMSForegroundFlags.java - test/gc/startup_warnings/TestCMSIncrementalMode.java - test/gc/startup_warnings/TestCMSNoIncrementalMode.java - test/gc/startup_warnings/TestDefNewCMS.java - test/gc/startup_warnings/TestDefaultMaxRAMFraction.java - test/gc/startup_warnings/TestG1.java - test/gc/startup_warnings/TestIncGC.java - test/gc/startup_warnings/TestParNewCMS.java - test/gc/startup_warnings/TestParNewSerialOld.java - test/gc/startup_warnings/TestParallelGC.java - test/gc/startup_warnings/TestParallelScavengeSerialOld.java - test/gc/startup_warnings/TestSerialGC.java ! test/runtime/6626217/Test6626217.sh + test/runtime/6878713/Test6878713.sh + test/runtime/6878713/testcase.jar ! test/runtime/6888954/vmerrors.sh ! test/runtime/6929067/Test6929067.sh + test/runtime/7020373/Test7020373.sh + test/runtime/7020373/testcase.jar ! test/runtime/7107135/Test7107135.sh ! test/runtime/7110720/Test7110720.sh + test/runtime/7158804/Test7158804.sh ! test/runtime/7162488/Test7162488.sh - test/runtime/7194254/Test7194254.java - test/runtime/8001071/Test8001071.java - test/runtime/8001071/Test8001071.sh - test/runtime/8003720/Asmator.java - test/runtime/8003720/Test8003720.java - test/runtime/8003720/Victim.java - test/runtime/8003720/VictimClassLoader.java - test/runtime/8007320/ConstMethodTest.java - test/runtime/8007475/StackMapFrameTest.java - test/runtime/8024804/RegisterNatives.java - test/runtime/8026365/InvokeSpecialAnonTest.java - test/runtime/8026394/InterfaceObjectTest.java - test/runtime/CDSCompressedKPtrs/CDSCompressedKPtrs.java - test/runtime/CDSCompressedKPtrs/CDSCompressedKPtrsError.java - test/runtime/CDSCompressedKPtrs/XShareAuto.java - test/runtime/ClassFile/JsrRewriting.java - test/runtime/ClassFile/JsrRewritingTestCase.jar - test/runtime/ClassFile/OomWhileParsingRepeatedJsr.java - test/runtime/ClassFile/testcase.jar - test/runtime/ClassUnload/KeepAliveClass.java - test/runtime/ClassUnload/KeepAliveClassLoader.java - test/runtime/ClassUnload/KeepAliveObject.java - test/runtime/ClassUnload/KeepAliveSoftReference.java - test/runtime/ClassUnload/UnloadTest.java - test/runtime/ClassUnload/classes/test/Empty.java - test/runtime/CommandLine/BooleanFlagWithInvalidValue.java - test/runtime/CommandLine/ConfigFileParsing.java - test/runtime/CommandLine/FlagWithInvalidValue.java - test/runtime/CommandLine/NonBooleanFlagWithInvalidBooleanPrefix.java - test/runtime/CommandLine/PrintGCApplicationConcurrentTime.java - test/runtime/CommandLine/UnrecognizedVMOption.java - test/runtime/CompressedOops/CompressedClassPointers.java - test/runtime/CompressedOops/CompressedKlassPointerAndOops.java - test/runtime/InitialThreadOverflow/DoOverflow.java - test/runtime/InitialThreadOverflow/invoke.cxx - test/runtime/InitialThreadOverflow/testme.sh - test/runtime/InternalApi/ThreadCpuTimesDeadlock.java - test/runtime/LoadClass/LoadClassNegative.java - test/runtime/LoadClass/TestForName.java - test/runtime/LoadClass/dummy.jar - test/runtime/Metaspace/FragmentMetaspace.java - test/runtime/Metaspace/FragmentMetaspaceSimple.java - test/runtime/Metaspace/classes/test/Empty.java ! test/runtime/NMT/ThreadedVirtualAllocTestType.java ! test/runtime/NMT/VirtualAllocTestType.java - test/runtime/RedefineObject/Agent.java - test/runtime/RedefineObject/TestRedefineObject.java - test/runtime/RedefineObject/WalkThroughInvoke.java - test/runtime/SharedArchiveFile/CdsDifferentObjectAlignment.java - test/runtime/SharedArchiveFile/CdsSameObjectAlignment.java - test/runtime/SharedArchiveFile/SharedArchiveFile.java ! test/runtime/XCheckJniJsig/XCheckJSig.java - test/runtime/contended/Basic.java - test/runtime/contended/DefaultValue.java - test/runtime/contended/HasNonStatic.java - test/runtime/contended/Inheritance1.java - test/runtime/contended/OopMaps.java - test/runtime/contended/Options.java - test/runtime/interned/SanityTest.java ! test/runtime/jsig/Test8017498.sh - test/runtime/lambda-features/PublicStaticInterfaceMethodHandling.java - test/runtime/memory/MultiAllocateNullCheck.java - test/runtime/memory/ReadFromNoaccessArea.java - test/runtime/memory/ReserveMemory.java - test/runtime/memory/RunUnitTestsConcurrently.java - test/runtime/memory/StressVirtualSpaceResize.java - test/runtime/testlibrary/ClassUnloadCommon.java - test/runtime/testlibrary/GeneratedClassLoader.java - test/sanity/ExecuteInternalVMTests.java ! test/sanity/WBApi.java - test/sanity/WhiteBox.java ! test/serviceability/ParserTest.java + test/serviceability/sa/jmap-hashcode/Test8028623.java - test/serviceability/sa/jmap-hprof/JMapHProfLargeHeapProc.java - test/serviceability/sa/jmap-hprof/JMapHProfLargeHeapTest.java - test/serviceability/threads/TestFalseDeadLock.java + test/testlibrary/com/oracle/java/testlibrary/DynamicVMOptionChecker.java + test/testlibrary/com/oracle/java/testlibrary/TestDynamicVMOption.java - test/testlibrary/ctw/Makefile - test/testlibrary/ctw/README - test/testlibrary/ctw/src/sun/hotspot/tools/ctw/ClassPathDirEntry.java - test/testlibrary/ctw/src/sun/hotspot/tools/ctw/ClassPathJarEntry.java - test/testlibrary/ctw/src/sun/hotspot/tools/ctw/ClassPathJarInDirEntry.java - test/testlibrary/ctw/src/sun/hotspot/tools/ctw/ClassesListInFile.java - test/testlibrary/ctw/src/sun/hotspot/tools/ctw/CompileTheWorld.java - test/testlibrary/ctw/src/sun/hotspot/tools/ctw/Compiler.java - test/testlibrary/ctw/src/sun/hotspot/tools/ctw/PathHandler.java - test/testlibrary/ctw/src/sun/hotspot/tools/ctw/Utils.java - test/testlibrary/ctw/test/Bar.java - test/testlibrary/ctw/test/ClassesDirTest.java - test/testlibrary/ctw/test/ClassesListTest.java - test/testlibrary/ctw/test/CtwTest.java - test/testlibrary/ctw/test/Foo.java - test/testlibrary/ctw/test/JarDirTest.java - test/testlibrary/ctw/test/JarsTest.java - test/testlibrary/ctw/test/classes.lst - test/testlibrary/whitebox/Makefile - test/testlibrary/whitebox/sun/hotspot/WhiteBox.java - test/testlibrary/whitebox/sun/hotspot/parser/DiagnosticCommand.java From aph at redhat.com Tue Jul 29 17:53:34 2014 From: aph at redhat.com (Andrew Haley) Date: Tue, 29 Jul 2014 18:53:34 +0100 Subject: [aarch64-port-dev ] JDK9: Temporary patch to disable warnings when optimization is off Message-ID: <53D7DF9E.2060602@redhat.com> JDK9 won't build right now; this just gets it going again. Waiting for a better patch from upstream, when we can pull this out. Andrew. # HG changeset patch # User aph # Date 1406652852 14400 # Tue Jul 29 12:54:12 2014 -0400 # Node ID 53b2f147e42b4eb968461ebb653880f86cf91500 # Parent d2f9c971fef82904215abb1455404604bd76feca Temporary patch to disable warnings when optimization is off. diff -r d2f9c971fef8 -r 53b2f147e42b make/linux/makefiles/gcc.make --- a/make/linux/makefiles/gcc.make Tue Jul 29 12:53:13 2014 -0400 +++ b/make/linux/makefiles/gcc.make Tue Jul 29 12:54:12 2014 -0400 @@ -231,8 +231,8 @@ CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@)) # optimization control flags (Used by fastdebug and release variants) -OPT_CFLAGS/NOOPT=-O0 -OPT_CFLAGS/DEBUG=-O0 +OPT_CFLAGS/NOOPT=-O0 -Wno-error=cpp +OPT_CFLAGS/DEBUG=-O0 -Wno-error=cpp OPT_CFLAGS/SIZE=-Os OPT_CFLAGS/SPEED=-O3 @@ -340,7 +340,7 @@ endif # Allow no optimizations. -DEBUG_CFLAGS=-O0 +DEBUG_CFLAGS=-O0 -Wno-error=cpp # DEBUG_BINARIES uses full -g debug information for all configs ifeq ($(DEBUG_BINARIES), true) From aph at redhat.com Tue Jul 29 18:01:19 2014 From: aph at redhat.com (aph at redhat.com) Date: Tue, 29 Jul 2014 18:01:19 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/hotspot: 6 new changesets Message-ID: <201407291801.s6TI1J8l029640@aojmv0008> Changeset: d54c77f1c233 Author: mduigou Date: 2014-07-09 21:56 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d54c77f1c233 8047734: Backout use of -Og Reviewed-by: iveresov ! make/bsd/makefiles/gcc.make ! make/linux/makefiles/gcc.make ! make/solaris/makefiles/gcc.make Changeset: edb991a23998 Author: aph Date: 2014-07-29 09:42 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/edb991a23998 Delete dead code. ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/aarch64Test.cpp ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp - src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp ! src/cpu/aarch64/vm/c1_LinearScan_aarch64.hpp ! src/cpu/aarch64/vm/c1_MacroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/cppInterpreterGenerator_aarch64.hpp ! src/cpu/aarch64/vm/interp_masm_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.inline.hpp ! src/cpu/aarch64/vm/methodHandles_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.cpp ! src/cpu/aarch64/vm/nativeInst_aarch64.hpp ! src/cpu/aarch64/vm/register_aarch64.hpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Changeset: aaf6ac661162 Author: aph Date: 2014-07-29 06:00 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/aaf6ac661162 Define uabs(). Use it everywhere an absolute value is wanted. ! src/cpu/aarch64/vm/assembler_aarch64.cpp ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Changeset: d2f9c971fef8 Author: aph Date: 2014-07-29 12:53 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/d2f9c971fef8 Re-add this file. + src/cpu/aarch64/vm/c1_LinearScan_aarch64.cpp Changeset: 53b2f147e42b Author: aph Date: 2014-07-29 12:54 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/53b2f147e42b Temporary patch to disable warnings when optimization is off. ! make/linux/makefiles/gcc.make Changeset: fee71cc4c9cf Author: aph Date: 2014-07-29 14:00 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/hotspot/rev/fee71cc4c9cf Merge ! src/cpu/aarch64/vm/assembler_aarch64.cpp ! src/cpu/aarch64/vm/assembler_aarch64.hpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp From edward.nevill at linaro.org Wed Jul 30 08:36:09 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Wed, 30 Jul 2014 09:36:09 +0100 Subject: [aarch64-port-dev ] JTREG, SPECjbb2013 and Hadoop/Terasort results for OpenJDK 8 on AArch64 Message-ID: <1406709369.10948.14.camel@localhost.localdomain> This is a summary of the JTREG test results =========================================== The build and test results are cycled every 10 days. For detailed information on the test output please refer to: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/summary/2014/211/summary.html ------------------------------------------------------------------------------- client-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/24 pass: 538; fail: 19 Build 1: aarch64/2014/jun/25 pass: 538; fail: 19 Build 2: aarch64/2014/jun/28 pass: 536; fail: 28 Build 3: aarch64/2014/jul/03 pass: 545; fail: 19 Build 4: aarch64/2014/jul/08 pass: 545; fail: 19 Build 5: aarch64/2014/jul/09 pass: 545; fail: 19 Build 6: aarch64/2014/jul/10 pass: 545; fail: 19 Build 7: aarch64/2014/jul/23 pass: 545; fail: 19 Build 8: aarch64/2014/jul/29 pass: 545; fail: 19 Build 9: aarch64/2014/jul/30 pass: 545; fail: 19 ------------------------------------------------------------------------------- client-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/24 pass: 4,970; fail: 495; error: 45 Build 1: aarch64/2014/jun/25 pass: 4,967; fail: 498; error: 45 Build 2: aarch64/2014/jun/28 pass: 4,968; fail: 497; error: 45 Build 3: aarch64/2014/jul/03 pass: 5,228; fail: 234; error: 48 Build 4: aarch64/2014/jul/08 pass: 5,242; fail: 219; error: 49 Build 5: aarch64/2014/jul/09 pass: 5,238; fail: 217; error: 55 Build 6: aarch64/2014/jul/10 pass: 5,230; fail: 234; error: 46 Build 7: aarch64/2014/jul/23 pass: 5,281; fail: 182; error: 47 Build 8: aarch64/2014/jul/29 pass: 5,267; fail: 199; error: 44 Build 9: aarch64/2014/jul/30 pass: 5,279; fail: 185; error: 46 ------------------------------------------------------------------------------- client-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/24 pass: 2,999; error: 16 Build 1: aarch64/2014/jun/25 pass: 3,000; fail: 1; error: 14 Build 2: aarch64/2014/jun/28 pass: 2,999; error: 16 Build 3: aarch64/2014/jul/03 pass: 2,999; error: 16 Build 4: aarch64/2014/jul/08 pass: 2,999; error: 16 Build 5: aarch64/2014/jul/09 pass: 3,000; error: 15 Build 6: aarch64/2014/jul/10 pass: 2,999; error: 16 Build 7: aarch64/2014/jul/23 pass: 3,000; error: 15 Build 8: aarch64/2014/jul/29 pass: 2,999; error: 16 Build 9: aarch64/2014/jul/30 pass: 2,999; error: 16 ------------------------------------------------------------------------------- server-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/24 pass: 554; fail: 3 Build 1: aarch64/2014/jun/25 pass: 555; fail: 2 Build 2: aarch64/2014/jun/28 pass: 553; fail: 11 Build 3: aarch64/2014/jul/03 pass: 562; fail: 2 Build 4: aarch64/2014/jul/08 pass: 562; fail: 2 Build 5: aarch64/2014/jul/09 pass: 562; fail: 2 Build 6: aarch64/2014/jul/10 pass: 562; fail: 2 Build 7: aarch64/2014/jul/23 pass: 562; fail: 2 Build 8: aarch64/2014/jul/29 pass: 562; fail: 2 Build 9: aarch64/2014/jul/30 pass: 562; fail: 2 ------------------------------------------------------------------------------- server-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/24 pass: 4,973; fail: 492; error: 45 Build 1: aarch64/2014/jun/25 pass: 4,975; fail: 491; error: 44 Build 2: aarch64/2014/jun/28 pass: 4,973; fail: 493; error: 44 Build 3: aarch64/2014/jul/03 pass: 5,239; fail: 221; error: 50 Build 4: aarch64/2014/jul/08 pass: 5,239; fail: 217; error: 54 Build 5: aarch64/2014/jul/09 pass: 5,231; fail: 231; error: 48 Build 6: aarch64/2014/jul/10 pass: 5,246; fail: 212; error: 52 Build 7: aarch64/2014/jul/23 pass: 5,291; fail: 174; error: 45 Build 8: aarch64/2014/jul/29 pass: 5,285; fail: 182; error: 43 Build 9: aarch64/2014/jul/30 pass: 5,292; fail: 172; error: 46 ------------------------------------------------------------------------------- server-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/24 pass: 3,004; error: 11 Build 1: aarch64/2014/jun/25 pass: 3,004; error: 11 Build 2: aarch64/2014/jun/28 pass: 3,004; error: 11 Build 3: aarch64/2014/jul/03 pass: 3,004; error: 11 Build 4: aarch64/2014/jul/08 pass: 3,004; error: 11 Build 5: aarch64/2014/jul/09 pass: 3,004; error: 11 Build 6: aarch64/2014/jul/10 pass: 3,004; error: 11 Build 7: aarch64/2014/jul/23 pass: 3,004; error: 11 Build 8: aarch64/2014/jul/29 pass: 3,004; error: 11 Build 9: aarch64/2014/jul/30 pass: 3,004; error: 11 Previous results can be found here: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/index.html SPECjbb2013 composite regression test completed =============================================== This test measures the relative performance of the server compiler running the SPECjbb2013 composite tests and compares the performance against the baseline performance of the server compiler taken on 2014-04-01. In accordance with [1], the SPECjbb2013 tests are run on a system which is not production ready and does not meet all the requirements for publishing compliant results. The numbers below shall be treated as non-compliant (nc) and are for experimental purposes only. Relative performance: Server max-jOPS (nc): 0.93x Relative performance: Server critical-jOPS (nc): 0.99x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/SPECjbb2013-1.00-results/ [1] http://www.spec.org/fairuse.html#Academic Regression test Hadoop-Terasort completed ========================================= This test measures the performance of the server and client compilers running Hadoop sorting a 1GB file using Terasort and compares the performance against the baseline performance of the Zero interpreter and against the baseline performance of the client and server compilers on 2014-04-01. Relative performance: Zero: 1.0, Client: 49.35, Server: 81.59 Client 49.35 / Client 2014-04-01 (43.00): 1.15x Server 81.59 / Server 2014-04-01 (71.00): 1.15x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/hadoop-terasort-benchmark-results/ This is a summary of the jcstress test results ============================================== The build and test results are cycled every 10 days. 2014-07-03 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/184/results/ 2014-07-04 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/185/results/ 2014-07-11 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/192/results/ 2014-07-23 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/204/results/ 2014-07-29 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/210/results/ 2014-07-30 pass rate: 898/898, results: http://openjdk.linaro.org/jcstress-nightly-runs/2014/211/results/ For detailed information on the test output please refer to: http://openjdk.linaro.org/jcstress-nightly-runs/ From edward.nevill at linaro.org Thu Jul 31 11:18:43 2014 From: edward.nevill at linaro.org (Edward Nevill) Date: Thu, 31 Jul 2014 12:18:43 +0100 Subject: [aarch64-port-dev ] JDK8: Add char_array_equals Message-ID: <1406805523.15691.53.camel@localhost.localdomain> Hi, This is the first of three patches. This one adds support for char_array_equals, the next two will add support for encodeISOArray and indexOf. This has taken slightly longer than expected because I got sidetracked with other issues. Also, I am on holiday tomorrow so it will be next week sometime before I can generate the other two patches. All the best, Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1406805043 -3600 # Thu Jul 31 12:10:43 2014 +0100 # Node ID a028c5a90df38cda792a68056923a0d5975e5837 # Parent 5e238903a8753fdca06994bec8b36363ae930664 Add char_array_equals intrinsic diff -r 5e238903a875 -r a028c5a90df3 src/cpu/aarch64/vm/aarch64.ad --- a/src/cpu/aarch64/vm/aarch64.ad Tue Jul 29 06:00:26 2014 -0400 +++ b/src/cpu/aarch64/vm/aarch64.ad Thu Jul 31 12:10:43 2014 +0100 @@ -11677,6 +11677,20 @@ ins_pipe(pipe_class_memory); %} +instruct array_equals(iRegP_R1 ary1, iRegP_R2 ary2, iRegI_R0 result, + iRegP_R10 tmp, rFlagsReg cr) +%{ + match(Set result (AryEq ary1 ary2)); + effect(KILL tmp, USE_KILL ary1, USE_KILL ary2, KILL cr); + + format %{ "Array Equals $ary1,ary2 -> $result // KILL $tmp" %} + ins_encode %{ + __ char_arrays_equals($ary1$$Register, $ary2$$Register, + $result$$Register, $tmp$$Register); + %} + ins_pipe(pipe_class_memory); +%} + // ============================================================================ // This name is KNOWN by the ADLC and cannot be changed. // The ADLC forces a 'TypeRawPtr::BOTTOM' output type diff -r 5e238903a875 -r a028c5a90df3 src/cpu/aarch64/vm/macroAssembler_aarch64.cpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jul 29 06:00:26 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Thu Jul 31 12:10:43 2014 +0100 @@ -3512,3 +3512,71 @@ BLOCK_COMMENT("} string_equals"); } + +// Compare char[] arrays aligned to 4 bytes +void MacroAssembler::char_arrays_equals(Register ary1, Register ary2, + Register result, Register tmp1) +{ + Register cnt1 = rscratch1; + Register cnt2 = rscratch2; + Register tmp2 = rscratch2; + + Label SAME, DIFFER, NEXT, TAIL03, TAIL01; + + int length_offset = arrayOopDesc::length_offset_in_bytes(); + int base_offset = arrayOopDesc::base_offset_in_bytes(T_CHAR); + + BLOCK_COMMENT("char_arrays_equals {"); + + // different until proven equal + mov(result, false); + + // same array? + cmp(ary1, ary2); + br(Assembler::EQ, SAME); + + // ne if either null + cbz(ary1, DIFFER); + cbz(ary2, DIFFER); + + // lengths ne? + ldrw(cnt1, Address(ary1, length_offset)); + ldrw(cnt2, Address(ary2, length_offset)); + cmp(cnt1, cnt2); + br(Assembler::NE, DIFFER); + + lea(ary1, Address(ary1, base_offset)); + lea(ary2, Address(ary2, base_offset)); + + subs(cnt1, cnt1, 4); + br(LT, TAIL03); + + BIND(NEXT); + ldr(tmp1, Address(post(ary1, 8))); + ldr(tmp2, Address(post(ary2, 8))); + subs(cnt1, cnt1, 4); + eor(tmp1, tmp1, tmp2); + cbnz(tmp1, DIFFER); + br(GE, NEXT); + + BIND(TAIL03); // 0-3 chars left, cnt1 = #chars left - 4 + tst(cnt1, 0b10); + br(EQ, TAIL01); + ldrw(tmp1, Address(post(ary1, 4))); + ldrw(tmp2, Address(post(ary2, 4))); + cmp(tmp1, tmp2); + br(NE, DIFFER); + BIND(TAIL01); // 0-1 chars left + tst(cnt1, 0b01); + br(EQ, SAME); + ldrh(tmp1, ary1); + ldrh(tmp2, ary2); + cmp(tmp1, tmp2); + br(NE, DIFFER); + + BIND(SAME); + mov(result, true); + BIND(DIFFER); // result already set + + BLOCK_COMMENT("} char_arrays_equals"); +} diff -r 5e238903a875 -r a028c5a90df3 src/cpu/aarch64/vm/macroAssembler_aarch64.hpp --- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Tue Jul 29 06:00:26 2014 -0400 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Thu Jul 31 12:10:43 2014 +0100 @@ -1085,6 +1085,8 @@ void string_equals(Register str1, Register str2, Register cnt, Register result, Register tmp1); + void char_arrays_equals(Register ary1, Register ary2, + Register result, Register tmp1); }; // Used by aarch64.ad to control code generation --- CUT HERE --- From aph at redhat.com Thu Jul 31 11:35:49 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 31 Jul 2014 12:35:49 +0100 Subject: [aarch64-port-dev ] JDK8: Add char_array_equals In-Reply-To: <1406805523.15691.53.camel@localhost.localdomain> References: <1406805523.15691.53.camel@localhost.localdomain> Message-ID: <53DA2A15.20306@redhat.com> On 07/31/2014 12:18 PM, Edward Nevill wrote: > This is the first of three patches. This one adds support for char_array_equals, the next two will add support for encodeISOArray and indexOf. OK, thanks. Andrew. From aph at redhat.com Thu Jul 31 13:53:42 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 31 Jul 2014 14:53:42 +0100 Subject: [aarch64-port-dev ] Use TLS for Thread::current() Message-ID: <53DA4A66.3070301@redhat.com> Here's a nice piece of low-hanging fruit. I did some profiling and discovered that more than 1-2% of the runtime is spent in ThreadLocalStorage::thread() ! We were using pthread_getspecific(), which is not an efficient mechanism. It doesn't matter much for Java, which keeps the current Thread in a register, but it matters a lot for the C++ runtime, which uses ThreadLocalStorage::thread() in 1667 different places. Linux's TLS (thread-local storage) mechanism keeps a pointer to a TLS thread block in system register tpidr_el0, so TLS access looks like this, first calculating the offset from the static TLS block, and then adding it to the thread pointer: adrp x0, 0x7fb7d4f000 ldr x1, [x0,#3312] add x0, x0, #0xcf0 blr x1 ldr x0, [x0,#8] ret mrs x1, tpidr_el0 ldr x20, [x1,x0] which looks pretty good. I don't think that we could do very much better than this with a custom mechanism. Andrew. changeset: 7204:5b248d10f0ae tag: tip user: aph date: Thu Jul 31 04:53:53 2014 -0400 summary: Use TLS for ThreadLocalStorage::thread() diff -r 5e238903a875 -r 5b248d10f0ae src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp --- a/src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp Tue Jul 29 06:00:26 2014 -0400 +++ b/src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp Thu Jul 31 04:53:53 2014 -0400 @@ -39,4 +39,6 @@ // Used on 64 bit platforms for UseCompressedOops base address define_pd_global(uintx,HeapBaseMinAddress, 2*G); +extern __thread Thread *aarch64_currentThread; + #endif // OS_CPU_LINUX_AARCH64_VM_GLOBALS_LINUX_AARCH64_HPP diff -r 5e238903a875 -r 5b248d10f0ae src/os_cpu/linux_aarch64/vm/threadLS_linux_aarch64.cpp --- a/src/os_cpu/linux_aarch64/vm/threadLS_linux_aarch64.cpp Tue Jul 29 06:00:26 2014 -0400 +++ b/src/os_cpu/linux_aarch64/vm/threadLS_linux_aarch64.cpp Thu Jul 31 04:53:53 2014 -0400 @@ -26,32 +26,6 @@ #include "runtime/threadLocalStorage.hpp" #include "runtime/thread.inline.hpp" -// Map stack pointer (%esp) to thread pointer for faster TLS access -// -// Here we use a flat table for better performance. Getting current thread -// is down to one memory access (read _sp_map[%esp>>12]) in generated code -// and two in runtime code (-fPIC code needs an extra load for _sp_map). -// -// This code assumes stack page is not shared by different threads. It works -// in 32-bit VM when page size is 4K (or a multiple of 4K, if that matters). -// -// Notice that _sp_map is allocated in the bss segment, which is ZFOD -// (zero-fill-on-demand). While it reserves 4M address space upfront, -// actual memory pages are committed on demand. -// -// If an application creates and destroys a lot of threads, usually the -// stack space freed by a thread will soon get reused by new thread -// (this is especially true in NPTL or LinuxThreads in fixed-stack mode). -// No memory page in _sp_map is wasted. -// -// However, it's still possible that we might end up populating & -// committing a large fraction of the 4M table over time, but the actual -// amount of live data in the table could be quite small. The max wastage -// is less than 4M bytes. If it becomes an issue, we could use madvise() -// with MADV_DONTNEED to reclaim unused (i.e. all-zero) pages in _sp_map. -// MADV_DONTNEED on Linux keeps the virtual memory mapping, but zaps the -// physical memory page (i.e. similar to MADV_FREE on Solaris). - void ThreadLocalStorage::generate_code_for_get_thread() { // nothing we can do here for user-level thread } @@ -59,6 +33,9 @@ void ThreadLocalStorage::pd_init() { } +__thread Thread *aarch64_currentThread; + void ThreadLocalStorage::pd_set_thread(Thread* thread) { os::thread_local_storage_at_put(ThreadLocalStorage::thread_index(), thread); + aarch64_currentThread = thread; } diff -r 5e238903a875 -r 5b248d10f0ae src/os_cpu/linux_aarch64/vm/threadLS_linux_aarch64.hpp --- a/src/os_cpu/linux_aarch64/vm/threadLS_linux_aarch64.hpp Tue Jul 29 06:00:26 2014 -0400 +++ b/src/os_cpu/linux_aarch64/vm/threadLS_linux_aarch64.hpp Thu Jul 31 04:53:53 2014 -0400 @@ -29,8 +29,8 @@ public: - static Thread* thread() { - return (Thread*) os::thread_local_storage_at(thread_index()); - } + static Thread *thread() { + return aarch64_currentThread; + } #endif // OS_CPU_LINUX_AARCH64_VM_THREADLS_LINUX_AARCH64_HPP From aph at redhat.com Thu Jul 31 13:55:54 2014 From: aph at redhat.com (aph at redhat.com) Date: Thu, 31 Jul 2014 13:55:54 +0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk8/hotspot: Use TLS for ThreadLocalStorage::thread() Message-ID: <201407311355.s6VDtsv0028879@aojmv0008> Changeset: 5b248d10f0ae Author: aph Date: 2014-07-31 04:53 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk8/hotspot/rev/5b248d10f0ae Use TLS for ThreadLocalStorage::thread() ! src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp ! src/os_cpu/linux_aarch64/vm/threadLS_linux_aarch64.cpp ! src/os_cpu/linux_aarch64/vm/threadLS_linux_aarch64.hpp From openjdk-testing at lab.validation.linaro.org Thu Jul 3 14:24:19 2014 From: openjdk-testing at lab.validation.linaro.org (OpenJDK Testing) Date: Thu, 03 Jul 2014 14:24:19 -0000 Subject: [aarch64-port-dev ] JTREG, SPECjbb2013 and Hadoop/Terasort results for OpenJDK 8 on AArch64 Message-ID: <20140703142416.28B941F830@ed-apm.linaro.org> This is a summary of the JTREG test results =========================================== The build and test results are cycled every 10 days. For detailed information on the test output please refer to: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/summary/2014/184/summary.html ------------------------------------------------------------------------------- client-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 434; fail: 4 Build 1: aarch64/2014/jun/05 pass: 434; fail: 4 Build 2: aarch64/2014/jun/16 pass: 545; fail: 19 Build 3: aarch64/2014/jun/18 pass: 538; fail: 19 Build 4: aarch64/2014/jun/24 pass: 538; fail: 19 Build 5: aarch64/2014/jun/25 pass: 538; fail: 19 Build 6: aarch64/2014/jun/28 pass: 536; fail: 28 Build 7: aarch64/2014/jul/03 pass: 545; fail: 19 ------------------------------------------------------------------------------- client-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/may/24 pass: 4,906; fail: 472; error: 71 Build 1: aarch64/2014/may/26 pass: 4,906; fail: 473; error: 70 Build 2: aarch64/2014/jun/03 pass: 4,932; fail: 474; error: 43 Build 3: aarch64/2014/jun/05 pass: 4,932; fail: 475; error: 45 Build 4: aarch64/2014/jun/16 pass: 4,968; fail: 498; error: 44 Build 5: aarch64/2014/jun/18 pass: 4,969; fail: 496; error: 45 Build 6: aarch64/2014/jun/24 pass: 4,970; fail: 495; error: 45 Build 7: aarch64/2014/jun/25 pass: 4,967; fail: 498; error: 45 Build 8: aarch64/2014/jun/28 pass: 4,968; fail: 497; error: 45 Build 9: aarch64/2014/jul/03 pass: 4,969; fail: 498; error: 43 ------------------------------------------------------------------------------- client-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 2,958; error: 14 Build 1: aarch64/2014/jun/05 pass: 2,958; error: 14 Build 2: aarch64/2014/jun/16 pass: 2,999; error: 16 Build 3: aarch64/2014/jun/18 pass: 2,999; error: 16 Build 4: aarch64/2014/jun/24 pass: 2,999; error: 16 Build 5: aarch64/2014/jun/25 pass: 3,000; fail: 1; error: 14 Build 6: aarch64/2014/jun/28 pass: 2,999; error: 16 Build 7: aarch64/2014/jul/03 pass: 2,999; error: 16 ------------------------------------------------------------------------------- server-release/hotspot ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 437; fail: 1 Build 1: aarch64/2014/jun/05 pass: 437; fail: 1 Build 2: aarch64/2014/jun/16 pass: 554; fail: 10 Build 3: aarch64/2014/jun/18 pass: 554; fail: 3 Build 4: aarch64/2014/jun/24 pass: 554; fail: 3 Build 5: aarch64/2014/jun/25 pass: 555; fail: 2 Build 6: aarch64/2014/jun/28 pass: 553; fail: 11 Build 7: aarch64/2014/jul/03 pass: 562; fail: 2 ------------------------------------------------------------------------------- server-release/jdk ------------------------------------------------------------------------------- Build 0: aarch64/2014/may/24 pass: 4,724; fail: 482; error: 243 Build 1: aarch64/2014/may/26 pass: 4,723; fail: 473; error: 253 Build 2: aarch64/2014/jun/03 pass: 4,934; fail: 471; error: 44 Build 3: aarch64/2014/jun/05 pass: 4,935; fail: 473; error: 44 Build 4: aarch64/2014/jun/16 pass: 4,976; fail: 491; error: 43 Build 5: aarch64/2014/jun/18 pass: 4,974; fail: 492; error: 44 Build 6: aarch64/2014/jun/24 pass: 4,973; fail: 492; error: 45 Build 7: aarch64/2014/jun/25 pass: 4,975; fail: 491; error: 44 Build 8: aarch64/2014/jun/28 pass: 4,973; fail: 493; error: 44 Build 9: aarch64/2014/jul/03 pass: 4,973; fail: 493; error: 44 ------------------------------------------------------------------------------- server-release/langtools ------------------------------------------------------------------------------- Build 0: aarch64/2014/jun/03 pass: 2,960; error: 12 Build 1: aarch64/2014/jun/05 pass: 2,960; error: 12 Build 2: aarch64/2014/jun/16 pass: 3,004; error: 11 Build 3: aarch64/2014/jun/18 pass: 3,004; error: 11 Build 4: aarch64/2014/jun/24 pass: 3,004; error: 11 Build 5: aarch64/2014/jun/25 pass: 3,004; error: 11 Build 6: aarch64/2014/jun/28 pass: 3,004; error: 11 Build 7: aarch64/2014/jul/03 pass: 3,004; error: 11 Previous results can be found here: http://openjdk.linaro.org/openjdk8-jtreg-nightly-tests/index.html SPECjbb2013 composite regression test completed =============================================== This test measures the relative performance of the server compiler running the SPECjbb2013 composite tests and compares the performance against the baseline performance of the server compiler taken on 2014-04-01. In accordance with [1], the SPECjbb2013 tests are run on a system which is not production ready and does not meet all the requirements for publishing compliant results. The numbers below shall be treated as non-compliant (nc) and are for experimental purposes only. Relative performance: Server max-jOPS (nc): 1.05x Relative performance: Server critical-jOPS (nc): 0.74x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/SPECjbb2013-1.00-results/ [1] http://www.spec.org/fairuse.html#Academic Regression test Hadoop-Terasort completed ========================================= This test measures the performance of the server and client compilers running Hadoop sorting a 1GB file using Terasort and compares the performance against the baseline performance of the Zero interpreter and against the baseline performance of the client and server compilers on 2014-04-01. Relative performance: Zero: 1.0, Client: 47.37, Server: 78.85 Client 47.37 / Client 2014-04-01 (43.00): 1.10x Server 78.85 / Server 2014-04-01 (71.00): 1.11x Details of the test setup and historical results may be found here: http://openjdk.linaro.org/hadoop-terasort-benchmark-results/ From ed at lab.validation.linaro.org Thu Jul 17 10:15:57 2014 From: ed at lab.validation.linaro.org (Edward Nevill) Date: Thu, 17 Jul 2014 10:15:57 -0000 Subject: [aarch64-port-dev ] Merge JDK8 -> JDK9 In-Reply-To: <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> References: <53C64FA2.6090406@redhat.com> <1405528496.50884.YahooMailNeo@web164601.mail.gq1.yahoo.com> <53C79D6E.3010005@redhat.com> <1405591244.12653.YahooMailNeo@web164601.mail.gq1.yahoo.com> Message-ID: <1405592152.4892.4.camel@localhost.localdomain> Hi Thu Cao, The OpenJDK build depends on many packages which must be installed before it will build. What rootfs are you using? Is it a minimal rootfs? In order to build OpenJDK you will need a fairly well populated rootfs. You can find a selection of populated rootfs at http://people.linaro.org/~edward.nevill/apm_rootfs In there are 3 rootfs fedora.ext4.gz oe_rootfs.ext4.gz ubuntu.ext4.gz All the best, Ed. On Thu, 2014-07-17 at 03:00 -0700, Cao Hoang Thu wrote: > Hi Andrew, > > When I natively compile OpenJDK7, I got some issues about libraries on my rootfs > > Regards, > Thu Cao > > > ________________________________ > From: Andrew Haley > To: Cao Hoang Thu ; "aarch64-port-dev at openjdk.java.net" > Sent: Thursday, July 17, 2014 4:54 PM > Subject: Re: [aarch64-port-dev ] Merge JDK8 -> JDK9 > > > On 07/16/2014 05:34 PM, Cao Hoang Thu wrote: > > Do I build OpenJDK9 cross-compile? Now I only built OpenJDK8 cross-compile. My system can't native compile now. > > I don't understand. Why do you not natively compile? > > > > > Andrew. From ed at lab.validation.linaro.org Mon Jul 21 09:54:02 2014 From: ed at lab.validation.linaro.org (Edward Nevill) Date: Mon, 21 Jul 2014 09:54:02 -0000 Subject: [aarch64-port-dev ] RFR: Add support for AES Intrinsics Message-ID: <1405936438.25467.5.camel@localhost.localdomain> Hi, The following patch adds support for AES Intrinsics. I have tested it with the TestAESMain test from hotspot JTreg and it shows up to 8.5x performance improvement. I have also given it a smoke test with JTreg hotspot and tested it on AES and non AES equipped HW to ensure the switching logic is corerct. OK to push? Ed. --- CUT HERE --- # HG changeset patch # User Edward Nevill edward.nevill at linaro.org # Date 1405936007 -3600 # Mon Jul 21 10:46:47 2014 +0100 # Node ID 135fb0fc41236934277396d7d0d6bb2714093ad6 # Parent c5b8254a0fe25e31a2fc4fe8c5a4854f52a6ebb0 Add support for AES Intrinsics diff -r c5b8254a0fe2 -r 135fb0fc4123 src/cpu/aarch64/vm/assembler_aarch64.hpp --- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Tue Jul 08 20:17:05 2014 +0100 +++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Mon Jul 21 10:46:47 2014 +0100 @@ -2035,6 +2035,63 @@ f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); } + void v_st1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((8 << ((int)T & 1)) == imm, "size/imm mismatch"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0111, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0111, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((16 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b1010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b1010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((24 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0110, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0110, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, int imm) { + starti; + assert((32 << ((int)T & 1)) == imm, "size/imm mismatch"); + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), f(0b11111, 20, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_st1(FloatRegister Vt, FloatRegister Vt2, FloatRegister Vt3, FloatRegister Vt4, SIMD_Arrangement T, Register Xn, Register Xm) { + starti; + assert((Vt2->encoding_nocheck()) == ((Vt->encoding_nocheck() + 1) % 32), "Invalid Vt2"); + assert((Vt3->encoding_nocheck()) == ((Vt->encoding_nocheck() + 2) % 32), "Invalid Vt3"); + assert((Vt4->encoding_nocheck()) == ((Vt->encoding_nocheck() + 3) % 32), "Invalid Vt4"); + f(0, 31), f((int)T & 1, 30), f(0b001100100, 29, 21), rf(Xm, 16), f(0b0010, 15, 12); + f((int)T >> 1, 11, 10), rf(Xn, 5), rf(Vt, 0); + } + void v_ld1r(FloatRegister Vt, SIMD_Arrangement T, Register Xn) { starti; f(0, 31), f((int)T & 1, 30), f(0b001101010000001100, 29, 12); @@ -2059,6 +2116,46 @@ rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); } + void v_orr(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn, FloatRegister Vm) { + starti; + assert(T == T8B || T == T16B, "must be T8B or T16B"); + f(0, 31), f((int)T & 1, 30), f(0b001110101, 29, 21); + rf(Vm, 16), f(0b000111, 15, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_aese(FloatRegister Vd, FloatRegister Vn) + { + starti; + f(0b0100111000101000010010, 31, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_aesd(FloatRegister Vd, FloatRegister Vn) + { + starti; + f(0b0100111000101000010110, 31, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_aesmc(FloatRegister Vd, FloatRegister Vn) + { + starti; + f(0b0100111000101000011010, 31, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_aesimc(FloatRegister Vd, FloatRegister Vn) + { + starti; + f(0b0100111000101000011110, 31, 10), rf(Vn, 5), rf(Vd, 0); + } + + void v_rev32(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn) + { + starti; + assert(T <= T8H, "must be one of T8B, T16B, T4H, T8H"); + f(0, 31), f((int)T & 1, 30), f(0b101110, 29, 24); + f(T <= T16B ? 0b00 : 0b01, 23, 22), f(0b100000000010, 21, 10); + rf(Vn, 5), rf(Vd, 0); + } + // CRC32 instructions #define INSN(NAME, sf, sz) \ void NAME(Register Rd, Register Rn, Register Rm) { \ diff -r c5b8254a0fe2 -r 135fb0fc4123 src/cpu/aarch64/vm/stubGenerator_aarch64.cpp --- a/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Tue Jul 08 20:17:05 2014 +0100 +++ b/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Mon Jul 21 10:46:47 2014 +0100 @@ -1878,6 +1878,414 @@ void generate_math_stubs() { Unimplemented(); } + // Arguments: + // + // Inputs: + // c_rarg0 - source byte array address + // c_rarg1 - destination byte array address + // c_rarg2 - K (key) in little endian int array + // + address generate_aescrypt_encryptBlock() { + __ align(CodeEntryAlignment); + StubCodeMark mark(this, "StubRoutines", "aescrypt_encryptBlock"); + + Label L_doLast; + + const Register from = c_rarg0; // source array address + const Register to = c_rarg1; // destination array address + const Register key = c_rarg2; // key array address + const Register keylen = rscratch1; + + address start = __ pc(); + __ enter(); + + __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); + + __ v_ld1(v0, __ T16B, from); // get 16 bytes of input + + __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + __ v_rev32(v3, __ T16B, v3); + __ v_rev32(v4, __ T16B, v4); + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + __ v_aesmc(v0, v0); + __ v_aese(v0, v3); + __ v_aesmc(v0, v0); + __ v_aese(v0, v4); + __ v_aesmc(v0, v0); + + __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + __ v_rev32(v3, __ T16B, v3); + __ v_rev32(v4, __ T16B, v4); + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + __ v_aesmc(v0, v0); + __ v_aese(v0, v3); + __ v_aesmc(v0, v0); + __ v_aese(v0, v4); + __ v_aesmc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ cmpw(keylen, 44); + __ br(Assembler::EQ, L_doLast); + + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + __ v_aesmc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ cmpw(keylen, 52); + __ br(Assembler::EQ, L_doLast); + + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + __ v_aesmc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ BIND(L_doLast); + + __ v_aese(v0, v1); + __ v_aesmc(v0, v0); + __ v_aese(v0, v2); + + __ v_ld1(v1, __ T16B, key); + __ v_rev32(v1, __ T16B, v1); + __ v_eor(v0, __ T16B, v0, v1); + + __ v_st1(v0, __ T16B, to); + + __ mov(r0, 0); + + __ leave(); + __ ret(lr); + + return start; + } + + // Arguments: + // + // Inputs: + // c_rarg0 - source byte array address + // c_rarg1 - destination byte array address + // c_rarg2 - K (key) in little endian int array + // + address generate_aescrypt_decryptBlock() { + assert(UseAES, "need AES instructions and misaligned SSE support"); + __ align(CodeEntryAlignment); + StubCodeMark mark(this, "StubRoutines", "aescrypt_decryptBlock"); + Label L_doLast; + + const Register from = c_rarg0; // source array address + const Register to = c_rarg1; // destination array address + const Register key = c_rarg2; // key array address + const Register keylen = rscratch1; + + address start = __ pc(); + __ enter(); // required for proper stackwalking of RuntimeStub frame + + __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); + + __ v_ld1(v0, __ T16B, from); // get 16 bytes of input + + __ v_ld1(v5, __ T16B, key, 16); + __ v_rev32(v5, __ T16B, v5); + + __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + __ v_rev32(v3, __ T16B, v3); + __ v_rev32(v4, __ T16B, v4); + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v3); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v4); + __ v_aesimc(v0, v0); + + __ v_ld1(v1, v2, v3, v4, __ T16B, key, 64); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + __ v_rev32(v3, __ T16B, v3); + __ v_rev32(v4, __ T16B, v4); + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v3); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v4); + __ v_aesimc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ cmpw(keylen, 44); + __ br(Assembler::EQ, L_doLast); + + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + __ v_aesimc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ cmpw(keylen, 52); + __ br(Assembler::EQ, L_doLast); + + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + __ v_aesimc(v0, v0); + + __ v_ld1(v1, v2, __ T16B, key, 32); + __ v_rev32(v1, __ T16B, v1); + __ v_rev32(v2, __ T16B, v2); + + __ BIND(L_doLast); + + __ v_aesd(v0, v1); + __ v_aesimc(v0, v0); + __ v_aesd(v0, v2); + + __ v_eor(v0, __ T16B, v0, v5); + + __ v_st1(v0, __ T16B, to); + + __ mov(r0, 0); + + __ leave(); + __ ret(lr); + + return start; + } + + // Arguments: + // + // Inputs: + // c_rarg0 - source byte array address + // c_rarg1 - destination byte array address + // c_rarg2 - K (key) in little endian int array + // c_rarg3 - r vector byte array address + // c_rarg4 - input length + // + // Output: + // x0 - input length + // + address generate_cipherBlockChaining_encryptAESCrypt() { + assert(UseAES, "need AES instructions and misaligned SSE support"); + __ align(CodeEntryAlignment); + StubCodeMark mark(this, "StubRoutines", "cipherBlockChaining_encryptAESCrypt"); + + Label L_loadkeys_44, L_loadkeys_52, L_aes_loop, L_rounds_44, L_rounds_52; + + const Register from = c_rarg0; // source array address + const Register to = c_rarg1; // destination array address + const Register key = c_rarg2; // key array address + const Register rvec = c_rarg3; // r byte array initialized from initvector array address + // and left with the results of the last encryption block + const Register len_reg = c_rarg4; // src len (must be multiple of blocksize 16) + const Register keylen = rscratch1; + + address start = __ pc(); + __ enter(); + + __ mov(rscratch1, len_reg); + __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); + + __ v_ld1(v0, __ T16B, rvec); + + __ cmpw(keylen, 52); + __ br(Assembler::CC, L_loadkeys_44); + __ br(Assembler::EQ, L_loadkeys_52); + + __ v_ld1(v17, v18, __ T16B, key, 32); + __ v_rev32(v17, __ T16B, v17); + __ v_rev32(v18, __ T16B, v18); + __ BIND(L_loadkeys_52); + __ v_ld1(v19, v20, __ T16B, key, 32); + __ v_rev32(v19, __ T16B, v19); + __ v_rev32(v20, __ T16B, v20); + __ BIND(L_loadkeys_44); + __ v_ld1(v21, v22, v23, v24, __ T16B, key, 64); + __ v_rev32(v21, __ T16B, v21); + __ v_rev32(v22, __ T16B, v22); + __ v_rev32(v23, __ T16B, v23); + __ v_rev32(v24, __ T16B, v24); + __ v_ld1(v25, v26, v27, v28, __ T16B, key, 64); + __ v_rev32(v25, __ T16B, v25); + __ v_rev32(v26, __ T16B, v26); + __ v_rev32(v27, __ T16B, v27); + __ v_rev32(v28, __ T16B, v28); + __ v_ld1(v29, v30, v31, __ T16B, key); + __ v_rev32(v29, __ T16B, v29); + __ v_rev32(v30, __ T16B, v30); + __ v_rev32(v31, __ T16B, v31); + + __ BIND(L_aes_loop); + __ v_ld1(v1, __ T16B, from, 16); + __ v_eor(v0, __ T16B, v0, v1); + + __ br(Assembler::CC, L_rounds_44); + __ br(Assembler::EQ, L_rounds_52); + + __ v_aese(v0, v17); __ v_aesmc(v0, v0); + __ v_aese(v0, v18); __ v_aesmc(v0, v0); + __ BIND(L_rounds_52); + __ v_aese(v0, v19); __ v_aesmc(v0, v0); + __ v_aese(v0, v20); __ v_aesmc(v0, v0); + __ BIND(L_rounds_44); + __ v_aese(v0, v21); __ v_aesmc(v0, v0); + __ v_aese(v0, v22); __ v_aesmc(v0, v0); + __ v_aese(v0, v23); __ v_aesmc(v0, v0); + __ v_aese(v0, v24); __ v_aesmc(v0, v0); + __ v_aese(v0, v25); __ v_aesmc(v0, v0); + __ v_aese(v0, v26); __ v_aesmc(v0, v0); + __ v_aese(v0, v27); __ v_aesmc(v0, v0); + __ v_aese(v0, v28); __ v_aesmc(v0, v0); + __ v_aese(v0, v29); __ v_aesmc(v0, v0); + __ v_aese(v0, v30); + __ v_eor(v0, __ T16B, v0, v31); + + __ v_st1(v0, __ T16B, to, 16); + __ sub(len_reg, len_reg, 16); + __ cbnz(len_reg, L_aes_loop); + + __ v_st1(v0, __ T16B, rvec); + + __ mov(r0, rscratch2); + + __ leave(); + __ ret(lr); + } + + // Arguments: + // + // Inputs: + // c_rarg0 - source byte array address + // c_rarg1 - destination byte array address + // c_rarg2 - K (key) in little endian int array + // c_rarg3 - r vector byte array address + // c_rarg4 - input length + // + // Output: + // rax - input length + // + address generate_cipherBlockChaining_decryptAESCrypt() { + assert(UseAES, "need AES instructions and misaligned SSE support"); + __ align(CodeEntryAlignment); + StubCodeMark mark(this, "StubRoutines", "cipherBlockChaining_decryptAESCrypt"); + + Label L_loadkeys_44, L_loadkeys_52, L_aes_loop, L_rounds_44, L_rounds_52; + + const Register from = c_rarg0; // source array address + const Register to = c_rarg1; // destination array address + const Register key = c_rarg2; // key array address + const Register rvec = c_rarg3; // r byte array initialized from initvector array address + // and left with the results of the last encryption block + const Register len_reg = c_rarg4; // src len (must be multiple of blocksize 16) + const Register keylen = rscratch1; + + address start = __ pc(); + __ enter(); + + __ mov(rscratch2, len_reg); + __ ldrw(keylen, Address(key, arrayOopDesc::length_offset_in_bytes() - arrayOopDesc::base_offset_in_bytes(T_INT))); + + __ v_ld1(v2, __ T16B, rvec); + + __ v_ld1(v31, __ T16B, key, 16); + __ v_rev32(v31, __ T16B, v31); + + __ cmpw(keylen, 52); + __ br(Assembler::CC, L_loadkeys_44); + __ br(Assembler::EQ, L_loadkeys_52); + + __ v_ld1(v17, v18, __ T16B, key, 32); + __ v_rev32(v17, __ T16B, v17); + __ v_rev32(v18, __ T16B, v18); + __ BIND(L_loadkeys_52); + __ v_ld1(v19, v20, __ T16B, key, 32); + __ v_rev32(v19, __ T16B, v19); + __ v_rev32(v20, __ T16B, v20); + __ BIND(L_loadkeys_44); + __ v_ld1(v21, v22, v23, v24, __ T16B, key, 64); + __ v_rev32(v21, __ T16B, v21); + __ v_rev32(v22, __ T16B, v22); + __ v_rev32(v23, __ T16B, v23); + __ v_rev32(v24, __ T16B, v24); + __ v_ld1(v25, v26, v27, v28, __ T16B, key, 64); + __ v_rev32(v25, __ T16B, v25); + __ v_rev32(v26, __ T16B, v26); + __ v_rev32(v27, __ T16B, v27); + __ v_rev32(v28, __ T16B, v28); + __ v_ld1(v29, v30, __ T16B, key); + __ v_rev32(v29, __ T16B, v29); + __ v_rev32(v30, __ T16B, v30); + + __ BIND(L_aes_loop); + __ v_ld1(v0, __ T16B, from, 16); + __ v_orr(v1, __ T16B, v0, v0); + + __ br(Assembler::CC, L_rounds_44); + __ br(Assembler::EQ, L_rounds_52); + + __ v_aesd(v0, v17); __ v_aesimc(v0, v0); + __ v_aesd(v0, v17); __ v_aesimc(v0, v0); + __ BIND(L_rounds_52); + __ v_aesd(v0, v19); __ v_aesimc(v0, v0); + __ v_aesd(v0, v20); __ v_aesimc(v0, v0); + __ BIND(L_rounds_44); + __ v_aesd(v0, v21); __ v_aesimc(v0, v0); + __ v_aesd(v0, v22); __ v_aesimc(v0, v0); + __ v_aesd(v0, v23); __ v_aesimc(v0, v0); + __ v_aesd(v0, v24); __ v_aesimc(v0, v0); + __ v_aesd(v0, v25); __ v_aesimc(v0, v0); + __ v_aesd(v0, v26); __ v_aesimc(v0, v0); + __ v_aesd(v0, v27); __ v_aesimc(v0, v0); + __ v_aesd(v0, v28); __ v_aesimc(v0, v0); + __ v_aesd(v0, v29); __ v_aesimc(v0, v0); + __ v_aesd(v0, v30); + __ v_eor(v0, __ T16B, v0, v31); + __ v_eor(v0, __ T16B, v0, v2); + + __ v_st1(v0, __ T16B, to, 16); + __ v_orr(v2, __ T16B, v1, v1); + + __ sub(len_reg, len_reg, 16); + __ cbnz(len_reg, L_aes_loop); + + __ v_st1(v2, __ T16B, rvec); + + __ mov(r0, rscratch2); + + __ leave(); + __ ret(lr); + + return start; + } + #ifndef BUILTIN_SIM // Safefetch stubs. void generate_safefetch(const char* name, int size, address* entry, @@ -2174,6 +2582,13 @@ generate_arraycopy_stubs(); #ifndef BUILTIN_SIM + if (UseAESIntrinsics) { + StubRoutines::_aescrypt_encryptBlock = generate_aescrypt_encryptBlock(); + StubRoutines::_aescrypt_decryptBlock = generate_aescrypt_decryptBlock(); + StubRoutines::_cipherBlockChaining_encryptAESCrypt = generate_cipherBlockChaining_encryptAESCrypt(); + StubRoutines::_cipherBlockChaining_decryptAESCrypt = generate_cipherBlockChaining_decryptAESCrypt(); + } + // Safefetch stubs. generate_safefetch("SafeFetch32", sizeof(int), &StubRoutines::_safefetch32_entry, &StubRoutines::_safefetch32_fault_pc, diff -r c5b8254a0fe2 -r 135fb0fc4123 src/cpu/aarch64/vm/vm_version_aarch64.cpp --- a/src/cpu/aarch64/vm/vm_version_aarch64.cpp Tue Jul 08 20:17:05 2014 +0100 +++ b/src/cpu/aarch64/vm/vm_version_aarch64.cpp Mon Jul 21 10:46:47 2014 +0100 @@ -39,6 +39,10 @@ #include #include +#ifndef HWCAP_AES +#define HWCAP_AES (1<<3) +#endif + #ifndef HWCAP_CRC32 #define HWCAP_CRC32 (1<<7) #endif @@ -110,6 +114,22 @@ if (UseCRC32 && (auxv & HWCAP_CRC32) == 0) { warning("UseCRC32 specified, but not supported on this CPU"); } + if (auxv & HWCAP_AES) { + UseAES = UseAES || FLAG_IS_DEFAULT(UseAES); + UseAESIntrinsics = + UseAESIntrinsics || (UseAES && FLAG_IS_DEFAULT(UseAESIntrinsics)); + if (UseAESIntrinsics && !UseAES) { + warning("UseAESIntrinsics enabled, but UseAES not, enabling"); + UseAES = true; + } + } else { + if (UseAES) { + warning("UseAES specified, but not supported on this CPU"); + } + if (UseAESIntrinsics) { + warning("UseAESIntrinsics specified, but not supported on this CPU"); + } + } #endif if (FLAG_IS_DEFAULT(UseCRC32Intrinsics)) { --- CUT HERE --- From aph at redhat.com Mon Jul 21 11:11:12 2014 From: aph at redhat.com (aph at redhat.com) Date: Mon, 21 Jul 2014 11:11:12 -0000 Subject: [aarch64-port-dev ] hg: aarch64-port/jdk9/jdk: 510 new changesets Message-ID: <201407211111.s6LBB165003263@aojmv0008> Changeset: a311c31fc622 Author: igerasim Date: 2014-04-18 18:46 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a311c31fc622 8038982: java/lang/ref/EarlyTimeout.java failed again Reviewed-by: mchung ! test/java/lang/ref/EarlyTimeout.java Changeset: 409f765373b0 Author: rriggs Date: 2014-04-18 15:37 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/409f765373b0 8038823: Missing @Test annotation and copyright in java.time tests Reviewed-by: lancea ! test/java/time/tck/java/time/chrono/CopticChronology.java ! test/java/time/tck/java/time/chrono/CopticDate.java ! test/java/time/tck/java/time/chrono/CopticEra.java ! test/java/time/tck/java/time/chrono/TCKChronoPeriod.java Changeset: 25bec8e3193e Author: bpb Date: 2014-04-18 14:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/25bec8e3193e 8027595: Enable BigInteger overflow tests in JTREG Summary: Remove space in @test tags, remove OOME catches, add @run tag for StringConstructorOverflow. Reviewed-by: mduigou ! test/java/math/BigInteger/BitLengthOverflow.java ! test/java/math/BigInteger/DivisionOverflow.java ! test/java/math/BigInteger/DoubleValueOverflow.java ! test/java/math/BigInteger/StringConstructorOverflow.java ! test/java/math/BigInteger/SymmetricRangeTests.java Changeset: a78c361a05c0 Author: lancea Date: 2014-04-18 17:37 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a78c361a05c0 8040760: Addition of new java.sql tests Reviewed-by: rriggs + test/java/sql/TEST.properties + test/java/sql/test/sql/BatchUpdateExceptionTests.java + test/java/sql/test/sql/DataTruncationTests.java + test/java/sql/test/sql/DateTests.java + test/java/sql/test/sql/DriverManagerTests.java + test/java/sql/test/sql/SQLClientInfoExceptionTests.java + test/java/sql/test/sql/SQLDataExceptionTests.java + test/java/sql/test/sql/SQLExceptionTests.java + test/java/sql/test/sql/SQLFeatureNotSupportedExceptionTests.java + test/java/sql/test/sql/SQLIntegrityConstraintViolationExceptionTests.java + test/java/sql/test/sql/SQLInvalidAuthorizationSpecExceptionTests.java + test/java/sql/test/sql/SQLNonTransientConnectionExceptionTests.java + test/java/sql/test/sql/SQLNonTransientExceptionTests.java + test/java/sql/test/sql/SQLRecoverableExceptionTests.java + test/java/sql/test/sql/SQLSyntaxErrorExceptionTests.java + test/java/sql/test/sql/SQLTimeoutExceptionTests.java + test/java/sql/test/sql/SQLTransactionRollbackExceptionTests.java + test/java/sql/test/sql/SQLTransientConnectionExceptionTests.java + test/java/sql/test/sql/SQLTransientExceptionTests.java + test/java/sql/test/sql/SQLWarningTests.java + test/java/sql/test/sql/TimeTests.java + test/java/sql/test/sql/TimestampTests.java + test/java/sql/util/DriverActionImpl.java + test/java/sql/util/SerializedBatchUpdateException.java + test/java/sql/util/StubBlob.java + test/java/sql/util/StubConnection.java + test/java/sql/util/StubDriver.java + test/java/sql/util/StubDriverDA.java Changeset: ea141745e90d Author: scolebourne Date: 2014-04-12 14:54 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ea141745e90d 8040058: IsoFields.WEEK_BASED_YEAR adjustInto incorrect and WeekFields.weekOfWeekBasedYear().range incorrect Reviewed-by: lancea, rriggs ! src/share/classes/java/time/temporal/IsoFields.java ! src/share/classes/java/time/temporal/WeekFields.java + test/java/time/test/java/time/temporal/TestIsoWeekFields.java Changeset: 4c712155f7c9 Author: weijun Date: 2014-04-21 10:25 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4c712155f7c9 8039358: com.sun.jarsigner.ContentSignerParameters.getTSAPolicyID() should be a default method Reviewed-by: vinnie ! src/share/classes/com/sun/jarsigner/ContentSignerParameters.java + test/com/sun/jarsigner/DefaultMethod.java Changeset: 3b2d261eedff Author: weijun Date: 2014-04-21 10:26 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3b2d261eedff 8038837: Add support to jarsigner for specifying timestamp hash algorithm Reviewed-by: vinnie ! src/share/classes/com/sun/jarsigner/ContentSignerParameters.java ! src/share/classes/sun/security/pkcs/PKCS7.java ! src/share/classes/sun/security/tools/jarsigner/Main.java ! src/share/classes/sun/security/tools/jarsigner/Resources.java ! src/share/classes/sun/security/tools/jarsigner/TimestampedSigner.java ! test/sun/security/tools/jarsigner/TimestampCheck.java Changeset: bf4a697e7505 Author: lfoltan Date: 2014-04-21 13:51 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bf4a697e7505 8033584: Remove java/lang/reflect/Method/invoke/TestPrivateInterfaceMethodReflect.java from exclude list. Summary: Remove java/lang/reflect/Method/invoke/TestPrivateInterfaceMethodReflect.java from ProblemList.txt, issue fixed in JDK 8. Reviewed-by: gtriantafill, hseigel, mchung ! test/ProblemList.txt Changeset: 3b50efed107a Author: shurailine Date: 2014-04-21 13:12 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3b50efed107a 8039438: Some tests depend on internal API sun.misc.IOUtils Summary: Remove dependency on sun.misc.IOUtils.readFully(InputStream, int, boolean) Reviewed-by: alanb, mchung, chegar Contributed-by: Alexandre Iline ! test/java/lang/annotation/AnnotationType/AnnotationTypeRuntimeAssumptionTest.java ! test/java/lang/invoke/lambda/LambdaClassLoaderSerialization.java ! test/java/lang/reflect/Method/InterfaceStatic/StaticInterfaceMethodInWayOfDefault.java ! test/lib/testlibrary/jdk/testlibrary/FileUtils.java + test/lib/testlibrary/jdk/testlibrary/IOUtils.java ! test/sun/security/tools/jarsigner/EntriesOrder.java Changeset: b3cc1d52ebb0 Author: shurailine Date: 2014-04-21 13:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b3cc1d52ebb0 8039816: Some tests depend on internal API sun.security.action.GetPropertyAction Summary: Replace sun.security.action.GetPropertyAction usages with lambda expressions creating java.security.PrivilegedAction. Reviewed-by: alanb, mchung, chegar Contributed-by: Alexandre Iline ! test/com/sun/nio/sctp/SctpChannel/SocketOptionTests.java ! test/com/sun/nio/sctp/SctpMultiChannel/SocketOptionTests.java ! test/java/nio/charset/Charset/NIOCharsetAvailabilityTest.java ! test/sun/security/tools/jarsigner/CertChainUnclosed.java Changeset: 3aeb306d985c Author: lancea Date: 2014-04-22 08:57 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3aeb306d985c 8041331: Cleanup files for jtreg and windows Reviewed-by: rriggs, smarks, chegar ! test/java/sql/test/sql/BatchUpdateExceptionTests.java ! test/java/sql/test/sql/DataTruncationTests.java ! test/java/sql/test/sql/SQLClientInfoExceptionTests.java ! test/java/sql/test/sql/SQLDataExceptionTests.java ! test/java/sql/test/sql/SQLExceptionTests.java ! test/java/sql/test/sql/SQLFeatureNotSupportedExceptionTests.java ! test/java/sql/test/sql/SQLIntegrityConstraintViolationExceptionTests.java ! test/java/sql/test/sql/SQLInvalidAuthorizationSpecExceptionTests.java ! test/java/sql/test/sql/SQLNonTransientConnectionExceptionTests.java ! test/java/sql/test/sql/SQLNonTransientExceptionTests.java ! test/java/sql/test/sql/SQLRecoverableExceptionTests.java ! test/java/sql/test/sql/SQLSyntaxErrorExceptionTests.java ! test/java/sql/test/sql/SQLTimeoutExceptionTests.java ! test/java/sql/test/sql/SQLTransactionRollbackExceptionTests.java ! test/java/sql/test/sql/SQLTransientConnectionExceptionTests.java ! test/java/sql/test/sql/SQLTransientExceptionTests.java ! test/java/sql/test/sql/SQLWarningTests.java + test/java/sql/util/BaseTest.java Changeset: 6c40971f251a Author: lancea Date: 2014-04-22 09:09 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6c40971f251a 8041485: Update TEST.groups for jdk/nio/zipfs Reviewed-by: chegar ! test/TEST.groups Changeset: 7703578cf570 Author: alundblad Date: 2014-04-22 16:45 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7703578cf570 8037085: The sjavac exclude option should accept valid directory identifiers Summary: Option handling code rewritten. Exclusion / inclusion patterns changed from package to directories. Reviewed-by: jfranck, erikj, ihse ! make/CompileJavaClasses.gmk Changeset: 30acbdbdb04e Author: mduigou Date: 2014-04-22 10:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/30acbdbdb04e 8040837: Avoid provoking NFEs when initializing InetAddrCachePolicy Reviewed-by: mduigou Contributed-by: bernd-2014 at eckenfels.net, claes.redestad at oracle.com ! src/share/classes/sun/net/InetAddressCachePolicy.java Changeset: 6de4be4b64e7 Author: mduigou Date: 2014-04-22 16:21 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6de4be4b64e7 8040747: Improve performance of IP address parsing Reviewed-by: mduigou, chegar Contributed-by: claes.redestad at oracle.com, bernd-2014 at eckenfels.net ! src/share/classes/sun/net/util/IPAddressUtil.java ! test/java/net/Inet4Address/textToNumericFormat.java Changeset: bc96b8cf4d4f Author: mchung Date: 2014-04-22 15:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bc96b8cf4d4f 8035807: Convert use of sun.misc.BASE64Encoder/Decoder with java.util.Base64 Reviewed-by: alanb, vinnie, sherman, msheppar ! src/share/classes/com/sun/jndi/ldap/Obj.java ! src/share/classes/sun/net/ftp/impl/FtpClient.java + test/com/sun/jndi/ldap/Base64Test.java ! test/java/lang/StringCoding/Enormous.java Changeset: d31534fb7b25 Author: chegar Date: 2014-04-23 12:26 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d31534fb7b25 8041563: More ProblemList.txt updates (4/2014) Reviewed-by: chegar Contributed-by: Michael Cui ! test/ProblemList.txt Changeset: ea0d59f39e8f Author: chegar Date: 2014-04-23 13:19 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ea0d59f39e8f 8025710: Proxied HTTPS connections reused by HttpClient can send CONNECT to the server Reviewed-by: chegar Contributed-by: Steven Lawrance , Andreas Rieber ! src/share/classes/sun/net/www/http/HttpClient.java + test/sun/net/www/http/HttpClient/B8025710.java Changeset: 2d9b707020b5 Author: michaelm Date: 2014-04-23 17:29 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2d9b707020b5 8041397: Lint regression in java.net.SocketOption Reviewed-by: rriggs ! src/share/classes/java/net/DatagramSocketImpl.java ! src/share/classes/java/net/SocketImpl.java ! src/solaris/classes/java/net/PlainDatagramSocketImpl.java ! src/solaris/classes/java/net/PlainSocketImpl.java Changeset: 47feccd164b7 Author: lana Date: 2014-04-24 16:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/47feccd164b7 Merge Changeset: 9c7285a47776 Author: katleman Date: 2014-05-01 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9c7285a47776 Added tag jdk9-b11 for changeset 47feccd164b7 ! .hgtags Changeset: df73bd78a166 Author: weijun Date: 2014-04-25 10:57 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/df73bd78a166 8040321: keytool and jarsigner tests doesn't pass though VM tools to tools Reviewed-by: alanb ! test/sun/security/mscapi/KeytoolChangeAlias.sh ! test/sun/security/mscapi/PublicKeyInterop.sh ! test/sun/security/mscapi/ShortRSAKey1024.sh ! test/sun/security/mscapi/SignUsingNONEwithRSA.sh ! test/sun/security/tools/jarsigner/AlgOptions.sh ! test/sun/security/tools/jarsigner/PercentSign.sh ! test/sun/security/tools/jarsigner/TimestampCheck.java ! test/sun/security/tools/jarsigner/checkusage.sh ! test/sun/security/tools/jarsigner/collator.sh ! test/sun/security/tools/jarsigner/concise_jarsigner.sh ! test/sun/security/tools/jarsigner/crl.sh ! test/sun/security/tools/jarsigner/diffend.sh ! test/sun/security/tools/jarsigner/ec.sh ! test/sun/security/tools/jarsigner/emptymanifest.sh ! test/sun/security/tools/jarsigner/jvindex.sh ! test/sun/security/tools/jarsigner/nameclash.sh ! test/sun/security/tools/jarsigner/newsize7.sh ! test/sun/security/tools/jarsigner/oldsig.sh ! test/sun/security/tools/jarsigner/onlymanifest.sh ! test/sun/security/tools/jarsigner/passtype.sh ! test/sun/security/tools/jarsigner/samename.sh ! test/sun/security/tools/jarsigner/ts.sh ! test/sun/security/tools/jarsigner/warnings.sh ! test/sun/security/tools/keytool/AltProviderPath.sh ! test/sun/security/tools/keytool/CloneKeyAskPassword.sh ! test/sun/security/tools/keytool/ListKeychainStore.sh ! test/sun/security/tools/keytool/NoExtNPE.sh ! test/sun/security/tools/keytool/SecretKeyKS.sh ! test/sun/security/tools/keytool/StandardAlgName.sh ! test/sun/security/tools/keytool/StorePasswordsByShell.sh ! test/sun/security/tools/keytool/emptysubject.sh ! test/sun/security/tools/keytool/file-in-help.sh ! test/sun/security/tools/keytool/importreadall.sh ! test/sun/security/tools/keytool/newhelp.sh ! test/sun/security/tools/keytool/p12importks.sh ! test/sun/security/tools/keytool/printssl.sh ! test/sun/security/tools/keytool/resource.sh ! test/sun/security/tools/keytool/selfissued.sh ! test/sun/security/tools/keytool/trystore.sh ! test/sun/security/tools/policytool/i18n.sh ! test/sun/security/validator/certreplace.sh ! test/sun/security/validator/samedn.sh Changeset: 6a12779387cb Author: sla Date: 2014-04-25 08:55 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6a12779387cb 8038947: HotSpotDiagnosticMXBean/CheckOrigin.java 'NewSize' should have origin 'ERGONOMIC' but had 'DEFAULT' Reviewed-by: mchung, jbachorik ! test/com/sun/management/HotSpotDiagnosticMXBean/CheckOrigin.java Changeset: 4ff63234c8d0 Author: sla Date: 2014-04-25 14:53 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4ff63234c8d0 8039432: demo/jvmti/mtrace/TraceJFrame.java can't connect to X11 Reviewed-by: dcubed, mgronlun ! test/demo/jvmti/mtrace/TraceJFrame.java Changeset: 2b5b8d82173e Author: sla Date: 2014-04-25 17:19 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2b5b8d82173e 8033104: sun/jvmstat/monitor/MonitoredVm/CR6672135.java failing on all platforms Reviewed-by: kamg, mgronlun ! make/mapfiles/libjava/mapfile-vers ! src/share/classes/sun/jvmstat/perfdata/monitor/protocol/local/PerfDataFile.java ! src/share/classes/sun/misc/VMSupport.java ! src/share/javavm/export/jvm.h ! src/share/native/sun/misc/VMSupport.c ! test/com/sun/tools/attach/BasicTests.java ! test/com/sun/tools/attach/RunnerUtil.java + test/com/sun/tools/attach/TempDirTest.java ! test/com/sun/tools/attach/java.policy.allow ! test/com/sun/tools/attach/java.policy.deny Changeset: 8adb41252e15 Author: sla Date: 2014-04-25 18:28 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8adb41252e15 8041948: Build broken by fix of 8033104 Reviewed-by: darcy ! make/mapfiles/libjava/mapfile-vers ! src/share/classes/sun/jvmstat/perfdata/monitor/protocol/local/PerfDataFile.java ! src/share/classes/sun/misc/VMSupport.java ! src/share/javavm/export/jvm.h ! src/share/native/sun/misc/VMSupport.c ! test/com/sun/tools/attach/BasicTests.java ! test/com/sun/tools/attach/RunnerUtil.java - test/com/sun/tools/attach/TempDirTest.java ! test/com/sun/tools/attach/java.policy.allow ! test/com/sun/tools/attach/java.policy.deny Changeset: f00efa72970e Author: naoto Date: 2014-04-25 10:30 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f00efa72970e 8035826: [parfait] JNI exception pending in src/windows/native/sun/util/locale/provider/HostLocaleProviderAdapter_md.c Reviewed-by: msheppar ! src/macosx/native/sun/util/locale/provider/HostLocaleProviderAdapter_md.c ! src/windows/native/sun/util/locale/provider/HostLocaleProviderAdapter_md.c Changeset: e8656ee2cdde Author: mduigou Date: 2014-03-12 12:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e8656ee2cdde 8035584: ArrayList(c) should avoid inflation if c is empty Reviewed-by: martin ! src/share/classes/java/util/ArrayList.java Changeset: 8b80651ce43f Author: plevart Date: 2014-04-26 11:11 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8b80651ce43f 8040892: Incorrect message in Exception thrown by Collectors.toMap(Function,Function) Summary: Use Map.putIfAbsent instead of Map.merge when collecting into map using unique keys Reviewed-by: psandoz, chegar ! src/share/classes/java/util/stream/Collectors.java Changeset: 99a5764129fb Author: michaelm Date: 2014-04-28 13:49 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/99a5764129fb 8041621: java/net/Inet4Address/textToNumericFormat.java fails on Solaris and Mac Reviewed-by: chegar + test/java/net/Inet4Address/DummyNameService.java + test/java/net/Inet4Address/DummyNameServiceDescriptor.java + test/java/net/Inet4Address/META-INF/services/sun.net.spi.nameservice.NameServiceDescriptor ! test/java/net/Inet4Address/textToNumericFormat.java Changeset: 4e7f3aac979b Author: jbachorik Date: 2014-04-29 11:15 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4e7f3aac979b 8031195: Support default and static interface methods in JDI, JDWP and JDB Reviewed-by: sla, sspitsyn, dcubed ! make/data/jdwp/jdwp.spec + src/share/back/InterfaceTypeImpl.c + src/share/back/InterfaceTypeImpl.h ! src/share/back/VirtualMachineImpl.c ! src/share/back/debugDispatch.c ! src/share/back/util.c ! src/share/classes/com/sun/jdi/ClassType.java ! src/share/classes/com/sun/jdi/InterfaceType.java ! src/share/classes/com/sun/jdi/Method.java ! src/share/classes/com/sun/jdi/ObjectReference.java ! src/share/classes/com/sun/tools/example/debug/expr/LValue.java ! src/share/classes/com/sun/tools/jdi/ClassTypeImpl.java ! src/share/classes/com/sun/tools/jdi/InterfaceTypeImpl.java + src/share/classes/com/sun/tools/jdi/InvokableTypeImpl.java ! src/share/classes/com/sun/tools/jdi/MethodImpl.java ! src/share/classes/com/sun/tools/jdi/ObjectReferenceImpl.java ! src/share/classes/com/sun/tools/jdi/VirtualMachineManagerImpl.java + test/com/sun/jdi/EvalInterfaceStatic.sh + test/com/sun/jdi/InterfaceMethodsTest.java Changeset: cda85444cad2 Author: alanb Date: 2014-04-29 13:23 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/cda85444cad2 8034057: Files.getFileStore and Files.isWritable do not work with SUBST'ed drives (win) Reviewed-by: alanb, chegar Contributed-by: pavel.rappo at oracle.com ! src/windows/classes/sun/nio/fs/WindowsConstants.java ! src/windows/classes/sun/nio/fs/WindowsFileStore.java ! src/windows/classes/sun/nio/fs/WindowsLinkSupport.java Changeset: 276c2688450d Author: jbachorik Date: 2014-04-29 14:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/276c2688450d 8042096: Backout JDK-8042091 Reviewed-by: sla ! make/data/jdwp/jdwp.spec - src/share/back/InterfaceTypeImpl.c - src/share/back/InterfaceTypeImpl.h ! src/share/back/VirtualMachineImpl.c ! src/share/back/debugDispatch.c ! src/share/back/util.c ! src/share/classes/com/sun/jdi/ClassType.java ! src/share/classes/com/sun/jdi/InterfaceType.java ! src/share/classes/com/sun/jdi/Method.java ! src/share/classes/com/sun/jdi/ObjectReference.java ! src/share/classes/com/sun/tools/example/debug/expr/LValue.java ! src/share/classes/com/sun/tools/jdi/ClassTypeImpl.java ! src/share/classes/com/sun/tools/jdi/InterfaceTypeImpl.java - src/share/classes/com/sun/tools/jdi/InvokableTypeImpl.java ! src/share/classes/com/sun/tools/jdi/MethodImpl.java ! src/share/classes/com/sun/tools/jdi/ObjectReferenceImpl.java ! src/share/classes/com/sun/tools/jdi/VirtualMachineManagerImpl.java - test/com/sun/jdi/EvalInterfaceStatic.sh - test/com/sun/jdi/InterfaceMethodsTest.java Changeset: 44fbb7e1a473 Author: bpb Date: 2014-04-29 09:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/44fbb7e1a473 8041683: Catch OutOfMemoryError in BitLengthOverflow and DoubleValueOverflow Summary: java/math/BigInteger/BitLengthOverflow.java failing with OOME Reviewed-by: alanb ! test/java/math/BigInteger/BitLengthOverflow.java ! test/java/math/BigInteger/DoubleValueOverflow.java Changeset: 8c8bc4ac31a3 Author: mduigou Date: 2014-03-11 15:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8c8bc4ac31a3 8037097: Improve diagnosability of test failures for java/util/Arrays/Correct.java Reviewed-by: mchung, alanb ! test/java/util/Arrays/Correct.java Changeset: 0336df7ba915 Author: pchelko Date: 2014-03-25 16:31 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0336df7ba915 8031001: [Parfait] warnings from b121 for jdk/src/solaris/native/sun/awt: JNI-related warnings Reviewed-by: serb, anthony ! src/solaris/native/sun/awt/CUPSfuncs.c ! src/solaris/native/sun/awt/X11Color.c ! src/solaris/native/sun/awt/awt.h ! src/solaris/native/sun/awt/awt_AWTEvent.c ! src/solaris/native/sun/awt/awt_DrawingSurface.c ! src/solaris/native/sun/awt/awt_Font.c ! src/solaris/native/sun/awt/awt_GraphicsEnv.c ! src/solaris/native/sun/awt/awt_InputMethod.c ! src/solaris/native/sun/awt/awt_Insets.c ! src/solaris/native/sun/awt/awt_LoadLibrary.c ! src/solaris/native/sun/awt/awt_Robot.c ! src/solaris/native/sun/awt/awt_UNIXToolkit.c ! src/solaris/native/sun/awt/awt_util.c ! src/solaris/native/sun/awt/fontpath.c ! src/solaris/native/sun/awt/initIDs.c ! src/solaris/native/sun/awt/multi_font.c ! src/solaris/native/sun/awt/sun_awt_X11_GtkFileDialogPeer.c Changeset: 3844d4e9fda5 Author: kshefov Date: 2014-03-25 18:23 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3844d4e9fda5 8031422: [TEST_BUG] java/awt/Paint/bug8024864.java fails on Windows 7 Reviewed-by: pchelko, azvegint ! test/java/awt/Paint/bug8024864.java Changeset: 8b206653d196 Author: prr Date: 2014-03-25 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8b206653d196 8034104: [parfait] warnings from jdk/src/macosx/native/sun/awt/CTextPipe.m Reviewed-by: serb, jgodinez ! src/macosx/native/sun/awt/CTextPipe.m Changeset: 218ba3f17a70 Author: prr Date: 2014-03-25 14:16 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/218ba3f17a70 8037910: [parfait] JNI warnings in jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp Reviewed-by: serb, jgodinez ! src/share/native/sun/java2d/opengl/OGLSurfaceData.c ! src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp Changeset: ee50ec79fa07 Author: pchelko Date: 2014-03-26 17:01 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ee50ec79fa07 8032595: [macosx] setResizable(false) makes a frame slide down Reviewed-by: serb, ddehaven, azvegint ! src/macosx/native/sun/awt/AWTWindow.m + test/java/awt/Frame/SlideNotResizableTest/SlideNotResizableTest.java Changeset: 8379313ae50e Author: alitvinov Date: 2014-03-28 14:41 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8379313ae50e 8032832: Applet/browser deadlocks, when IIS integrated authentication is used Reviewed-by: chegar, weijun ! src/share/classes/sun/net/www/protocol/http/NegotiateAuthentication.java Changeset: 16f14268c0da Author: vadim Date: 2014-03-28 14:53 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/16f14268c0da 8029628: Many graphic artifacts Reviewed-by: prr, bae ! src/windows/native/sun/java2d/d3d/D3DBadHardware.h Changeset: 07dc208840ca Author: alexsch Date: 2014-03-28 17:31 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/07dc208840ca 8036882: [macosx] Native memory leak in Java_sun_lwawt_macosx_CImage_nativeGetNSImageRepresentationSizes Reviewed-by: serb, pchelko ! src/macosx/native/sun/awt/CImage.m Changeset: 4126433e0bd2 Author: alexsch Date: 2014-03-28 18:56 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4126433e0bd2 8032667: [macosx] Components cannot be rendered in HiDPI to BufferedImage Reviewed-by: serb, pchelko ! src/macosx/classes/com/apple/laf/AquaPainter.java ! src/share/classes/sun/awt/image/MultiResolutionBufferedImage.java + test/javax/swing/JCheckBox/8032667/bug8032667.html + test/javax/swing/JCheckBox/8032667/bug8032667.java + test/javax/swing/JCheckBox/8032667/bug8032667_image_diff.java Changeset: 7c421bd2740f Author: prr Date: 2014-03-28 11:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7c421bd2740f 8037506: [javadoc] broken link in java.awt.geom.Line2D.java Reviewed-by: jgodinez ! src/share/classes/java/awt/geom/Line2D.java Changeset: 393cbd8d9525 Author: ptbrunet Date: 2014-03-28 16:40 -0500 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/393cbd8d9525 8034118: [parfait] JNI exception pending in macosx/native/sun/awt/JavaComponentAccessibility.m Summary: handle possible JNI Exceptions Reviewed-by: prr, serb Contributed-by: peter.brunet at oracle.com ! src/macosx/native/sun/awt/JavaComponentAccessibility.m Changeset: 76bc6626152d Author: ptbrunet Date: 2014-03-28 17:19 -0500 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/76bc6626152d 8034768: [parfait] JNI exception pending in jdk/src/macosx/native/sun/awt/JavaTextAccessibility.m Summary: handle possible JNI Exceptions Reviewed-by: prr, serb Contributed-by: peter.brunet at oracle.com ! src/macosx/native/sun/awt/JavaTextAccessibility.m Changeset: 7f98f7c79bc5 Author: kshefov Date: 2014-03-31 17:59 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7f98f7c79bc5 8002148: [TEST_BUG] The four lines printed are not the bold typeface. Reviewed-by: pchelko, serb + test/javax/swing/text/GlyphView/4984669/bug4984669.html + test/javax/swing/text/GlyphView/4984669/bug4984669.java Changeset: 5ca706cc04ba Author: prr Date: 2014-03-31 11:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5ca706cc04ba 8038723: Openup some PrinterJob tests Reviewed-by: jgodinez + test/java/awt/print/Dialog/DestinationTest.java + test/java/awt/print/Dialog/MediaInPrintable.java + test/java/awt/print/Dialog/PrintApplet.html + test/java/awt/print/Dialog/PrintApplet.java + test/java/awt/print/Dialog/PrintDialog.java + test/java/awt/print/Dialog/PrintDlgApp.java + test/java/awt/print/Dialog/PrintDlgPageable.java + test/java/awt/print/Dialog/RestoreActiveWindowTest/RestoreActiveWindowTest.html + test/java/awt/print/Dialog/RestoreActiveWindowTest/RestoreActiveWindowTest.java + test/java/awt/print/PageFormat/CustomPaper.java + test/java/awt/print/PageFormat/NullPaper.java + test/java/awt/print/PageFormat/Orient.java + test/java/awt/print/PageFormat/PDialogTest.java + test/java/awt/print/PageFormat/PageSetupDialog.java + test/java/awt/print/PageFormat/ReverseLandscapeTest.java + test/java/awt/print/PageFormat/SetOrient.html + test/java/awt/print/PageFormat/SetOrient.java + test/java/awt/print/PageFormat/SmallPaperPrinting.java + test/java/awt/print/PageFormat/ValidateCustom.java + test/java/awt/print/PrinterJob/Cancel/PrinterJobCancel.java + test/java/awt/print/PrinterJob/CheckAccess.java + test/java/awt/print/PrinterJob/CheckPrivilege.java + test/java/awt/print/PrinterJob/CompareImageable.java + test/java/awt/print/PrinterJob/CustomFont/A.ttf + test/java/awt/print/PrinterJob/CustomFont/CustomFont.java + test/java/awt/print/PrinterJob/DeviceScale.java + test/java/awt/print/PrinterJob/DrawImage.java + test/java/awt/print/PrinterJob/DrawStringMethods.java + test/java/awt/print/PrinterJob/EmptyFill.java + test/java/awt/print/PrinterJob/GlyphPositions.java + test/java/awt/print/PrinterJob/HeadlessPrintingTest.java + test/java/awt/print/PrinterJob/InitToBlack.java + test/java/awt/print/PrinterJob/InvalidPage.java + test/java/awt/print/PrinterJob/JobName/PrinterJobName.java + test/java/awt/print/PrinterJob/Legal/PrintTest.java + test/java/awt/print/PrinterJob/MultiThread/MultiThreadTest.java + test/java/awt/print/PrinterJob/NullGetName.java + test/java/awt/print/PrinterJob/NumCopies.java + test/java/awt/print/PrinterJob/PSQuestionMark.java + test/java/awt/print/PrinterJob/PSWindingRule.java + test/java/awt/print/PrinterJob/PageDialogTest.java + test/java/awt/print/PrinterJob/PageDlgPrnButton.java + test/java/awt/print/PrinterJob/PaintText.java + test/java/awt/print/PrinterJob/PrintAllFonts.java + test/java/awt/print/PrinterJob/PrintBadImage.java + test/java/awt/print/PrinterJob/PrintCompoundString.java + test/java/awt/print/PrinterJob/PrintDialog.java + test/java/awt/print/PrinterJob/PrintDialogCancel.java + test/java/awt/print/PrinterJob/PrintFontStyle.java + test/java/awt/print/PrinterJob/PrintImage.java + test/java/awt/print/PrinterJob/PrintNullString.java + test/java/awt/print/PrinterJob/PrintParenString.java + test/java/awt/print/PrinterJob/PrintRotatedText.java + test/java/awt/print/PrinterJob/PrintTextLayout.java + test/java/awt/print/PrinterJob/PrintTextPane.java + test/java/awt/print/PrinterJob/PrintTextTest.java + test/java/awt/print/PrinterJob/PrintTranslatedFont.java + test/java/awt/print/PrinterJob/PrintVolatileImage.java + test/java/awt/print/PrinterJob/PrinterDevice.java + test/java/awt/print/PrinterJob/PrinterDialogsModalityTest/PrinterDialogsModalityTest.html + test/java/awt/print/PrinterJob/PrinterDialogsModalityTest/PrinterDialogsModalityTest.java + test/java/awt/print/PrinterJob/PrinterJobDialogBugDemo.java + test/java/awt/print/PrinterJob/RemoveListener.java + test/java/awt/print/PrinterJob/ScaledText/ScaledText.java + test/java/awt/print/PrinterJob/SecurityDialogTest.java + test/java/awt/print/PrinterJob/SetCopies/Test.java + test/java/awt/print/PrinterJob/SwingUIText.java + test/java/awt/print/PrinterJob/ThinLines.java + test/java/awt/print/PrinterJob/XparColor.java + test/java/awt/print/PrinterJob/raster/RasterTest.java Changeset: 1c293d61d0b3 Author: serb Date: 2014-04-01 00:33 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1c293d61d0b3 8038657: javax.swing.BufferStrategyPaintManager has unused imports Reviewed-by: pchelko, malenkov ! src/share/classes/javax/swing/BufferStrategyPaintManager.java Changeset: 1e44b6d7dec5 Author: serb Date: 2014-04-01 01:03 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1e44b6d7dec5 8035736: [parfait] JNI primitive type mismatch in jdk/src/windows/native/sun/windows/awt_Component.cpp Reviewed-by: pchelko, anthony ! src/windows/native/sun/windows/awt.h ! src/windows/native/sun/windows/awt_Component.cpp Changeset: b0ff34b54008 Author: serb Date: 2014-04-01 01:59 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b0ff34b54008 8035624: [parfait] JNI exception pending, JNI primitive type mismatch in jdk/src/windows/native/sun/windows/ThemeReader.cpp Reviewed-by: pchelko, anthony ! src/windows/native/sun/windows/ThemeReader.cpp Changeset: 92601a5f04b6 Author: alexsch Date: 2014-04-01 13:56 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/92601a5f04b6 8030052: Remove reflection from JOptionPane Reviewed-by: serb, pchelko ! src/share/classes/java/awt/Container.java ! src/share/classes/javax/swing/JOptionPane.java ! src/share/classes/sun/awt/AWTAccessor.java Changeset: 4e0d9cfcde1b Author: alexsch Date: 2014-04-01 16:46 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4e0d9cfcde1b 7052708: Grammar error in EditorKit documentation Reviewed-by: serb, pchelko ! src/share/classes/javax/swing/text/EditorKit.java Changeset: dc74b3d65622 Author: prr Date: 2014-04-01 11:53 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/dc74b3d65622 Merge - src/bsd/doc/man/ja/kinit.1 - src/bsd/doc/man/ja/klist.1 - src/bsd/doc/man/ja/ktab.1 - src/share/classes/sun/misc/REException.java - src/share/classes/sun/misc/Regexp.java - src/share/classes/sun/misc/RegexpPool.java - src/share/classes/sun/misc/RegexpTarget.java Changeset: ebb3e01cace5 Author: prr Date: 2014-04-01 12:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ebb3e01cace5 8035623: [parfait] JNI warnings in jdk/src/windows/native/sun/windows/awt_Font.cpp Reviewed-by: serb, pchelko ! src/windows/native/sun/windows/awt_Font.cpp Changeset: f6ca21925713 Author: serb Date: 2014-04-02 15:23 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f6ca21925713 8029196: Focus border of JButton.buttonType=roundRect is cut off Reviewed-by: pchelko, alexsch ! src/macosx/classes/apple/laf/JRSUIConstants.java ! src/macosx/classes/com/apple/laf/AquaButtonExtendedTypes.java ! src/macosx/classes/com/apple/laf/AquaPainter.java ! src/macosx/native/com/apple/laf/JRSUIController.m Changeset: aae3193ac2df Author: pchelko Date: 2014-04-02 16:14 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/aae3193ac2df 8037560: [macosx] Cleanup CClipboard.m Reviewed-by: anthony, serb - src/macosx/native/sun/awt/CClipboard.h ! src/macosx/native/sun/awt/CClipboard.m Changeset: 22ee41633622 Author: pchelko Date: 2014-04-02 17:37 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/22ee41633622 6463901: Either generify or deprecate sun.awt.EventListenerAggregate Reviewed-by: anthony, serb ! src/share/classes/java/awt/datatransfer/Clipboard.java - src/share/classes/sun/awt/EventListenerAggregate.java ! src/share/classes/sun/awt/datatransfer/SunClipboard.java Changeset: f05f59cf3e93 Author: alexsch Date: 2014-04-02 18:34 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f05f59cf3e93 6612752: Incorrect getOpenIcon() instanceof in the DefaultTreeCellRenderer Reviewed-by: serb, pchelko ! src/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java Changeset: e83692abf6ab Author: bae Date: 2014-04-03 11:19 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e83692abf6ab 8019990: IM candidate window appears on the South-East corner of the display. Reviewed-by: bagiras, serb ! src/windows/native/sun/windows/awt_Component.cpp ! src/windows/native/sun/windows/awt_Frame.cpp ! test/java/awt/Frame/7024749/bug7024749.java Changeset: 13900e0ef37b Author: pchelko Date: 2014-04-03 13:02 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/13900e0ef37b 8038999: In Java 8 java.awt.datatransfer.DataFlavor.equals is no longer symmetric Reviewed-by: anthony, serb ! src/share/classes/java/awt/datatransfer/DataFlavor.java + test/java/awt/datatransfer/DataFlavor/EqualsHashCodeSymmetryTest/EqualsHashCodeSymmetryTest.java Changeset: bf775ab86401 Author: malenkov Date: 2014-04-04 20:12 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bf775ab86401 8038962: KSS: javax.swing.text.html[.parser].ResourceLoader Reviewed-by: alexsch, serb ! src/share/classes/javax/swing/text/html/HTMLEditorKit.java - src/share/classes/javax/swing/text/html/ResourceLoader.java ! src/share/classes/javax/swing/text/html/parser/ParserDelegator.java - src/share/classes/javax/swing/text/html/parser/ResourceLoader.java ! src/share/classes/javax/swing/text/rtf/RTFReader.java Changeset: 89c029b981d3 Author: malenkov Date: 2014-04-04 20:18 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/89c029b981d3 8039137: KSS: JTextComponent.isProcessInputMethodEventOverridden Reviewed-by: alexsch, serb ! src/share/classes/com/sun/beans/util/Cache.java ! src/share/classes/javax/swing/text/JTextComponent.java + test/java/beans/Introspector/TestCacheRecursion.java Changeset: fe18f0dfc582 Author: bagiras Date: 2014-04-04 20:26 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/fe18f0dfc582 8035737: [parfait] JNI exception pending in jdk/src/windows/native/sun/windows/awt_PrintControl.cpp Reviewed-by: serb, pchelko ! src/windows/native/sun/windows/awt_PrintControl.cpp ! src/windows/native/sun/windows/awt_PrintDialog.cpp Changeset: 06fd809d777f Author: prr Date: 2014-04-04 10:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/06fd809d777f 8035569: [parfait] JNI expection pending in jdk/src/windows/native/sun/windows/WPrinterJob.cpp Reviewed-by: serb, jgodinez ! src/windows/native/sun/windows/WPrinterJob.cpp ! src/windows/native/sun/windows/awt_new.cpp Changeset: 41406dbf8160 Author: prr Date: 2014-04-04 10:24 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/41406dbf8160 Merge ! src/share/classes/javax/swing/JOptionPane.java Changeset: 2232c28d36c2 Author: prr Date: 2014-04-04 11:18 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2232c28d36c2 8031095: [Parfait] warning from jdk/src/solaris/native/sun/awt: memory leak Reviewed-by: bae, jgodinez ! src/solaris/native/sun/awt/awt_Font.c Changeset: 879b5bacec09 Author: serb Date: 2014-04-07 15:34 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/879b5bacec09 8032219: [macosx] Scrollbars looks bad under retina in Motif and Metal L&F Reviewed-by: pchelko, flar ! src/share/classes/com/sun/java/swing/plaf/motif/MotifScrollBarUI.java ! src/share/classes/com/sun/java/swing/plaf/motif/MotifSliderUI.java ! src/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java ! src/share/classes/javax/swing/plaf/metal/MetalScrollBarUI.java ! src/share/classes/sun/swing/SwingUtilities2.java + test/javax/swing/SwingUtilities/8032219/DrawRect.java Changeset: feff13841b98 Author: alexsch Date: 2014-04-07 18:01 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/feff13841b98 6475394: Spelling mistake in doc for ComponentUI.getBaselineResizeBehaviour Reviewed-by: serb, pchelko ! src/share/classes/javax/swing/plaf/ComponentUI.java Changeset: 82ff53bbc895 Author: azvegint Date: 2014-04-07 17:41 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/82ff53bbc895 8031087: [Parfait] warnings from b121 for jdk/src/solaris/native/sun/xawt Reviewed-by: anthony, pchelko, serb ! src/solaris/native/sun/awt/awt_util.c ! src/solaris/native/sun/awt/awt_util.h ! src/solaris/native/sun/xawt/XToolkit.c ! src/solaris/native/sun/xawt/XWindow.c ! src/solaris/native/sun/xawt/XlibWrapper.c ! src/solaris/native/sun/xawt/awt_Desktop.c Changeset: de1b74b33be2 Author: azvegint Date: 2014-04-07 17:43 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/de1b74b33be2 6788138: leak in Java_sun_awt_X11_XlibWrapper_getStringBytes? Reviewed-by: pchelko, serb ! src/solaris/native/sun/xawt/XlibWrapper.c Changeset: c2fab0bedaac Author: azvegint Date: 2014-04-07 17:45 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c2fab0bedaac 8030100: java.awt.Desktop: Enable check for supported URI schemes on Linux Reviewed-by: anthony, pchelko, serb ! src/solaris/native/sun/awt/gtk2_interface.c Changeset: d8fd8c0c5ef8 Author: pchelko Date: 2014-04-08 14:02 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d8fd8c0c5ef8 6690000: Typo's in DataFlavor Javadoc Reviewed-by: serb, azvegint ! src/share/classes/java/awt/datatransfer/DataFlavor.java Changeset: b1b7cc164a69 Author: serb Date: 2014-04-09 14:38 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b1b7cc164a69 8038765: [macosx] Toolkit.sync should be implemented Reviewed-by: pchelko, anthony ! src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java ! src/macosx/native/sun/awt/LWCToolkit.m Changeset: b35c7f58d9a1 Author: pchelko Date: 2014-04-09 15:20 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b35c7f58d9a1 8039083: REGRESSION: closed/java/awt/dnd/DragSourceListenerSerializationTest/DragSourceListenerSerializationTest.html fails with NPE since 8u20 b07 on Linux Reviewed-by: serb, azvegint ! src/share/classes/java/awt/dnd/DragSourceContext.java + test/java/awt/dnd/DragSourceListenerSerializationTest/DragSourceListenerSerializationTest.java Changeset: 0d65f6942ae9 Author: yan Date: 2014-04-09 17:30 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0d65f6942ae9 8038631: Create wrapper for awt.Robot with additional functionality Reviewed-by: pchelko, alexsch Contributed-by: Dmitriy Ermashov + test/lib/testlibrary/ExtendedRobot.java Changeset: 1f6e9333a960 Author: pchelko Date: 2014-04-09 18:20 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1f6e9333a960 8039752: Regression: Clipboard couldn't be used on linux Reviewed-by: anthony, serb, azvegint ! src/share/classes/java/awt/datatransfer/Clipboard.java Changeset: b1994e5c11ad Author: pchelko Date: 2014-04-10 11:56 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b1994e5c11ad 8035734: [parfait] JNI exception pending in jdk/src/windows/native/sun/windows/awt_Choice.cpp Reviewed-by: anthony, serb ! src/windows/native/sun/windows/awt_Choice.cpp Changeset: 5d22ffb8b826 Author: pchelko Date: 2014-04-10 11:57 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5d22ffb8b826 8035739: [parfait] JNI exception pending and primitive type mismatch in jdk/src/windows/native/sun/windows/awt_List.cpp Reviewed-by: serb, azvegint ! src/windows/native/sun/windows/awt_List.cpp Changeset: 4ebe24f57e52 Author: alexsch Date: 2014-04-10 13:22 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4ebe24f57e52 8038113: [macosx] JTree icon is not rendered in high resolution on Retina Reviewed-by: serb, pchelko ! src/macosx/classes/com/apple/laf/AquaIcon.java ! src/macosx/classes/com/apple/laf/AquaInternalFrameUI.java + test/javax/swing/JTree/8038113/bug8038113.html + test/javax/swing/JTree/8038113/bug8038113.java Changeset: 752d53546d81 Author: malenkov Date: 2014-04-10 22:26 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/752d53546d81 8039750: KSS: Replace MetalLazyValue with lambda Reviewed-by: alexsch, serb ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java ! test/javax/swing/JTable/8031971/bug8031971.java + test/javax/swing/plaf/metal/MetalLookAndFeel/Test8039750.java Changeset: fec418e9db54 Author: malenkov Date: 2014-04-10 22:30 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/fec418e9db54 8039776: Introspector throws NullPointerException for subclasses' mismatched get/setter Reviewed-by: alexsch, serb ! src/share/classes/java/beans/Introspector.java + test/java/beans/Introspector/Test8039776.java Changeset: f6f2f6588851 Author: serb Date: 2014-04-11 16:18 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f6f2f6588851 8039418: [macosx] Calling JNI functions in the scope of Get/ReleasePrimitiveArrayCritical Reviewed-by: bae, prr ! src/share/native/sun/java2d/loops/TransformHelper.c Changeset: 4dc800f5c546 Author: serb Date: 2014-04-11 17:28 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4dc800f5c546 8039774: [OGL] Image painting is broken if 'sun.java2d.accthreshold' is set to 0 Reviewed-by: bae, flar ! src/share/classes/sun/java2d/pipe/DrawImage.java + test/sun/java2d/DrawCachedImageAndTransform.java Changeset: 872d3e03bbb5 Author: darcy Date: 2014-04-11 11:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/872d3e03bbb5 8039863: Fix fallthrough lint warnings in sound Reviewed-by: kalli ! src/share/classes/com/sun/media/sound/SoftEnvelopeGenerator.java Changeset: f3fe1074dcdf Author: bagiras Date: 2014-04-14 21:24 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f3fe1074dcdf 8035866: [parfait] JNI exception pending in jdk/src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.cpp Reviewed-by: serb, pchelko ! src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.cpp Changeset: 5f96ab8e69f8 Author: prr Date: 2014-04-14 12:59 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5f96ab8e69f8 Merge - src/share/classes/com/oracle/net/Sdp.java - src/share/classes/java/net/SdpSocketImpl.java - test/com/oracle/net/Sanity.java - test/com/oracle/net/sanity.sh Changeset: a8ef9ee4b5f3 Author: ngthomas Date: 2014-04-15 22:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a8ef9ee4b5f3 Merge ! src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java - src/macosx/lib/content-types.properties ! src/macosx/native/sun/awt/LWCToolkit.m ! src/share/classes/sun/awt/datatransfer/SunClipboard.java - src/share/demo/nio/zipfs/Demo.java - src/share/demo/nio/zipfs/README.txt - src/share/demo/nio/zipfs/src/META-INF/services/java.nio.file.spi.FileSystemProvider - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/JarFileSystemProvider.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipConstants.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipDirectoryStream.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributes.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileStore.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipInfo.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipPath.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipUtils.java - src/solaris/lib/content-types.properties - src/windows/lib/content-types.properties - test/demo/zipfs/Basic.java - test/demo/zipfs/PathOps.java - test/demo/zipfs/ZFSTests.java - test/demo/zipfs/ZipFSTester.java - test/demo/zipfs/basic.sh Changeset: 44b5e71b143f Author: dmarkov Date: 2014-04-16 12:51 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/44b5e71b143f 8032874: ArrayIndexOutOfBoundsException in JTable while clearing data in JTable Reviewed-by: alexp, alexsch ! src/share/classes/javax/swing/JTable.java + test/javax/swing/JTable/8032874/bug8032874.java Changeset: 6e94fbb84c5e Author: bagiras Date: 2014-04-16 16:55 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6e94fbb84c5e 8035625: [parfait] JNI exception pending in jdk/src/windows/native/sun/windows/awt_MenuItem.cpp Reviewed-by: serb, pchelko ! src/windows/native/sun/windows/awt_MenuItem.cpp Changeset: 1f09d4dcedbc Author: bagiras Date: 2014-04-16 17:01 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1f09d4dcedbc 8035745: [parfait] JNI exception pending in src/windows/native/sun/windows/awt_InputMethod.cpp Reviewed-by: serb, pchelko ! src/windows/native/sun/windows/awt_InputMethod.cpp Changeset: 9ab949f4c867 Author: asaha Date: 2014-04-15 15:28 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9ab949f4c867 8036983: JAB:Multiselection Ctrl+CursorUp/Down and ActivateDescenderPropertyChanged event Reviewed-by: pchelko, alexsch Contributed-by: vivi.an at oracle.com ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/JTree.java Changeset: 886f6d4cde9e Author: asaha Date: 2014-04-16 10:53 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/886f6d4cde9e Merge - src/macosx/lib/content-types.properties ! src/share/classes/javax/swing/JTable.java - src/share/demo/nio/zipfs/Demo.java - src/share/demo/nio/zipfs/README.txt - src/share/demo/nio/zipfs/src/META-INF/services/java.nio.file.spi.FileSystemProvider - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/JarFileSystemProvider.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipConstants.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipDirectoryStream.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributes.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileStore.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipInfo.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipPath.java - src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipUtils.java - src/solaris/lib/content-types.properties - src/windows/lib/content-types.properties - test/demo/zipfs/Basic.java - test/demo/zipfs/PathOps.java - test/demo/zipfs/ZFSTests.java - test/demo/zipfs/ZipFSTester.java - test/demo/zipfs/basic.sh Changeset: 367ba237687a Author: ngthomas Date: 2014-04-16 12:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/367ba237687a Merge Changeset: a673ffda4f64 Author: pchelko Date: 2014-04-17 16:26 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a673ffda4f64 8039926: -spash: can't be combined with -xStartOnFirstThread since JDK 7 Reviewed-by: anthony, azvegint ! src/macosx/native/sun/awt/splashscreen/splashscreen_sys.m Changeset: 095dac8cf52c Author: darcy Date: 2014-04-17 09:45 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/095dac8cf52c 8039861: Fix fallthrough lint warnings in awt Reviewed-by: pchelko ! src/share/classes/java/awt/dnd/DragSourceContext.java ! src/share/classes/sun/awt/image/GifImageDecoder.java ! src/share/classes/sun/awt/image/PixelConverter.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11/XWM.java Changeset: 75b062617601 Author: ngthomas Date: 2014-04-29 09:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/75b062617601 Merge Changeset: 6ff36c51c2bc Author: ngthomas Date: 2014-04-29 11:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6ff36c51c2bc Merge Changeset: 7ca64573d521 Author: xuelei Date: 2014-04-29 23:20 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7ca64573d521 8042178: A comment need to go in RSAClientKeyExchange.java Reviewed-by: mullan ! src/share/classes/sun/security/ssl/RSAClientKeyExchange.java Changeset: 830cc367f41b Author: jbachorik Date: 2014-04-30 11:28 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/830cc367f41b 8042123: Support default and static interface methods in JDI, JDWP and JDB Reviewed-by: sla, sspitsyn ! make/data/jdwp/jdwp.spec + src/share/back/InterfaceTypeImpl.c + src/share/back/InterfaceTypeImpl.h ! src/share/back/VirtualMachineImpl.c ! src/share/back/debugDispatch.c ! src/share/back/util.c ! src/share/classes/com/sun/jdi/ClassType.java ! src/share/classes/com/sun/jdi/InterfaceType.java ! src/share/classes/com/sun/jdi/Method.java ! src/share/classes/com/sun/jdi/ObjectReference.java ! src/share/classes/com/sun/tools/example/debug/expr/LValue.java ! src/share/classes/com/sun/tools/jdi/ClassTypeImpl.java ! src/share/classes/com/sun/tools/jdi/InterfaceTypeImpl.java + src/share/classes/com/sun/tools/jdi/InvokableTypeImpl.java ! src/share/classes/com/sun/tools/jdi/MethodImpl.java ! src/share/classes/com/sun/tools/jdi/ObjectReferenceImpl.java ! src/share/classes/com/sun/tools/jdi/VirtualMachineManagerImpl.java + test/com/sun/jdi/EvalInterfaceStatic.sh + test/com/sun/jdi/InterfaceMethodsTest.java Changeset: 045ed4e4d8bc Author: yan Date: 2014-04-30 15:02 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/045ed4e4d8bc 8029451: Tidy warnings cleanup for java.util package; minor changes in java.nio, java.sql Reviewed-by: lancea Contributed-by: Alexander Stepanov ! src/share/classes/java/nio/package.html ! src/share/classes/java/sql/package.html ! src/share/classes/java/util/ArrayList.java ! src/share/classes/java/util/Arrays.java ! src/share/classes/java/util/Locale.java ! src/share/classes/java/util/Properties.java ! src/share/classes/java/util/PropertyPermission.java ! src/share/classes/java/util/Vector.java ! src/share/classes/java/util/concurrent/locks/ReentrantReadWriteLock.java ! src/share/classes/java/util/jar/Pack200.java ! src/share/classes/java/util/jar/package.html ! src/share/classes/java/util/logging/ConsoleHandler.java ! src/share/classes/java/util/logging/FileHandler.java ! src/share/classes/java/util/logging/Formatter.java ! src/share/classes/java/util/logging/Handler.java ! src/share/classes/java/util/logging/Level.java ! src/share/classes/java/util/logging/LogManager.java ! src/share/classes/java/util/logging/Logger.java ! src/share/classes/java/util/logging/MemoryHandler.java ! src/share/classes/java/util/logging/StreamHandler.java ! src/share/classes/java/util/logging/package.html ! src/share/classes/java/util/prefs/PreferenceChangeListener.java ! src/share/classes/java/util/regex/Matcher.java ! src/share/classes/java/util/zip/package.html Changeset: ee5dc744fd7a Author: yan Date: 2014-04-30 15:13 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ee5dc744fd7a 8039488: Tidy warnings cleanup for javax.sql Reviewed-by: lancea Contributed-by: Alexander Stepanov ! src/share/classes/javax/sql/PooledConnection.java ! src/share/classes/javax/sql/StatementEvent.java ! src/share/classes/javax/sql/StatementEventListener.java ! src/share/classes/javax/sql/package.html ! src/share/classes/javax/sql/rowset/BaseRowSet.java ! src/share/classes/javax/sql/rowset/CachedRowSet.java ! src/share/classes/javax/sql/rowset/JdbcRowSet.java ! src/share/classes/javax/sql/rowset/package.html ! src/share/classes/javax/sql/rowset/serial/SQLInputImpl.java ! src/share/classes/javax/sql/rowset/serial/SerialDatalink.java ! src/share/classes/javax/sql/rowset/serial/SerialJavaObject.java ! src/share/classes/javax/sql/rowset/spi/package.html Changeset: ad8d6a1dac3e Author: erikj Date: 2014-04-30 14:46 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ad8d6a1dac3e 8042208: Build fails on Solaris using devkit when X isn't installed Reviewed-by: tbell ! make/lib/Awt2dLibraries.gmk Changeset: 9ea90ce2b8d9 Author: alanb Date: 2014-04-30 14:27 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9ea90ce2b8d9 8041772: (ch) PendingFuture.CANCELLED has backtrace that potentially keeps objects alive Reviewed-by: chegar ! src/share/classes/sun/nio/ch/PendingFuture.java Changeset: 83d9bc20973d Author: lana Date: 2014-05-01 14:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/83d9bc20973d Merge - src/macosx/native/sun/awt/CClipboard.h - src/share/classes/javax/swing/text/html/ResourceLoader.java - src/share/classes/javax/swing/text/html/parser/ResourceLoader.java - src/share/classes/sun/awt/EventListenerAggregate.java Changeset: ac1b3c46ed4d Author: katleman Date: 2014-05-08 01:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ac1b3c46ed4d Added tag jdk9-b12 for changeset 83d9bc20973d ! .hgtags Changeset: 32ef8cd730ec Author: sjiang Date: 2014-05-02 14:40 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/32ef8cd730ec 8031036: com/sun/management/OperatingSystemMXBean/GetCommittedVirtualMemorySize.java failed on 8b121 Reviewed-by: dfuchs ! test/javax/management/monitor/CounterMonitorDeadlockTest.java Changeset: d7640cee30d8 Author: mullan Date: 2014-05-02 10:01 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d7640cee30d8 8038349: Signing XML with DSA throws Exception when key is larger than 1024 bits Reviewed-by: xuelei ! src/share/classes/com/sun/org/apache/xml/internal/security/algorithms/JCEMapper.java ! src/share/classes/com/sun/org/apache/xml/internal/security/algorithms/SignatureAlgorithm.java ! src/share/classes/com/sun/org/apache/xml/internal/security/algorithms/implementations/SignatureDSA.java ! src/share/classes/com/sun/org/apache/xml/internal/security/signature/XMLSignature.java ! src/share/classes/com/sun/org/apache/xml/internal/security/utils/JavaUtils.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMSignatureMethod.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMXMLSignatureFactory.java ! test/javax/xml/crypto/dsig/GenerationTests.java ! test/javax/xml/crypto/dsig/KeySelectors.java Changeset: 94776e898d0e Author: mullan Date: 2014-05-02 10:05 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/94776e898d0e Merge - src/macosx/native/sun/awt/CClipboard.h - src/share/classes/javax/swing/text/html/ResourceLoader.java - src/share/classes/javax/swing/text/html/parser/ResourceLoader.java - src/share/classes/sun/awt/EventListenerAggregate.java Changeset: 15b5ea29bab8 Author: bpb Date: 2014-05-02 11:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/15b5ea29bab8 8032016: Optimizations of Math.next{After,Up}({float,double}) Summary: Rearrange code to handle the more common and costly case first. Reviewed-by: darcy Contributed-by: Jeff Hain ! src/share/classes/java/lang/Math.java Changeset: 0619a50c0e2b Author: ksrini Date: 2014-05-03 17:23 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0619a50c0e2b 8035782: sun/launcher/LauncherHelper$FXHelper loaded unnecessarily Reviewed-by: ddehaven, kcr, ksrini, mchung Contributed-by: neil.toda at oracle.com ! src/share/classes/sun/launcher/LauncherHelper.java ! test/tools/launcher/FXLauncherTest.java Changeset: c9e91d933770 Author: mduigou Date: 2014-05-05 09:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c9e91d933770 8020860: cluster Hashtable/Vector field updates for better transactional memory behaviour Reviewed-by: mduigou, martin, psandoz Contributed-by: sandhya.viswanathan at intel.com, mike.duigou at oracle.com ! src/share/classes/java/util/Hashtable.java ! src/share/classes/java/util/Vector.java Changeset: f3905a67a72c Author: scolebourne Date: 2014-03-06 16:51 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f3905a67a72c 8034906: Fix typos, errors and Javadoc differences in java.time Reviewed-by: psandoz ! src/share/classes/java/time/DayOfWeek.java ! src/share/classes/java/time/Duration.java ! src/share/classes/java/time/Instant.java ! src/share/classes/java/time/LocalDate.java ! src/share/classes/java/time/LocalDateTime.java ! src/share/classes/java/time/LocalTime.java ! src/share/classes/java/time/Month.java ! src/share/classes/java/time/MonthDay.java ! src/share/classes/java/time/OffsetDateTime.java ! src/share/classes/java/time/OffsetTime.java ! src/share/classes/java/time/Period.java ! src/share/classes/java/time/Year.java ! src/share/classes/java/time/YearMonth.java ! src/share/classes/java/time/ZoneId.java ! src/share/classes/java/time/ZoneOffset.java ! src/share/classes/java/time/ZonedDateTime.java ! src/share/classes/java/time/chrono/ChronoLocalDate.java ! src/share/classes/java/time/chrono/ChronoLocalDateImpl.java ! src/share/classes/java/time/chrono/ChronoLocalDateTime.java ! src/share/classes/java/time/chrono/ChronoZonedDateTime.java ! src/share/classes/java/time/chrono/Chronology.java ! src/share/classes/java/time/chrono/Era.java ! src/share/classes/java/time/chrono/HijrahChronology.java ! src/share/classes/java/time/chrono/IsoChronology.java ! src/share/classes/java/time/chrono/JapaneseChronology.java ! src/share/classes/java/time/chrono/MinguoChronology.java ! src/share/classes/java/time/chrono/ThaiBuddhistChronology.java ! src/share/classes/java/time/format/DateTimeFormatter.java ! src/share/classes/java/time/format/DateTimeFormatterBuilder.java ! src/share/classes/java/time/format/DecimalStyle.java ! src/share/classes/java/time/temporal/IsoFields.java ! src/share/classes/java/time/temporal/Temporal.java ! src/share/classes/java/time/temporal/TemporalAccessor.java ! src/share/classes/java/time/temporal/TemporalField.java ! src/share/classes/java/time/temporal/TemporalUnit.java ! src/share/classes/java/time/zone/ZoneOffsetTransition.java Changeset: 3bbb836bdf90 Author: igerasim Date: 2014-05-06 10:28 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3bbb836bdf90 8040806: BitSet.toString() can throw IndexOutOfBoundsException Reviewed-by: plevart, mduigou ! src/share/classes/java/util/BitSet.java ! test/java/util/BitSet/BSMethods.java Changeset: 60147ddadf07 Author: psandoz Date: 2014-05-06 10:29 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/60147ddadf07 8042355: stream with sorted() causes downstream ops not to be lazy Reviewed-by: mduigou ! src/share/classes/java/util/stream/SortedOps.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/SortedOpTest.java Changeset: 113db8fa2161 Author: miauno Date: 2014-05-06 10:51 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/113db8fa2161 8040748: [TESTBUG] Exclude failing (serviceability) jtreg tests Reviewed-by: sla ! test/ProblemList.txt Changeset: d062f1046081 Author: chegar Date: 2014-05-02 19:38 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d062f1046081 8039470: java.net Content Handler API incorrectly specifies implementation specific location of handler classes Reviewed-by: alanb, michaelm ! src/share/classes/java/net/ContentHandler.java ! src/share/classes/java/net/URL.java ! src/share/classes/java/net/URLConnection.java Changeset: 1ae50c4b8800 Author: chegar Date: 2014-05-06 12:20 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1ae50c4b8800 Merge Changeset: e9a7ff92a858 Author: ksrini Date: 2014-05-06 10:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e9a7ff92a858 8042266: [launcher] create test groups for launcher regression tests Reviewed-by: alanb, mduigou ! test/TEST.groups Changeset: 9a9d52c44ea8 Author: xuelei Date: 2014-05-07 02:24 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9a9d52c44ea8 8042449: Issue for negative byte major record version Summary: Convert byte to positive integer before making comparison. Also reviewed by Florian Weimer . Reviewed-by: wetmore ! src/share/classes/sun/security/ssl/ByteBufferInputStream.java ! src/share/classes/sun/security/ssl/EngineInputRecord.java ! src/share/classes/sun/security/ssl/InputRecord.java ! src/share/classes/sun/security/ssl/ProtocolVersion.java + test/javax/net/ssl/SSLEngine/IllegalRecordVersion.java Changeset: 99e0f1f9c401 Author: igerasim Date: 2014-05-07 09:43 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/99e0f1f9c401 8011537: (fs) Path.register(..) clears interrupt status of thread with no InterruptedException Reviewed-by: alanb ! src/share/classes/sun/nio/fs/AbstractPoller.java ! test/java/nio/file/WatchService/Basic.java Changeset: 43f769f86f47 Author: igerasim Date: 2014-05-07 16:50 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/43f769f86f47 8042470: (fs) Path.register doesn't throw IllegalArgumentException if multiple OVERFLOW events are specified Reviewed-by: alanb, chegar ! src/share/classes/sun/nio/fs/AbstractPoller.java ! test/java/nio/file/WatchService/Basic.java Changeset: 1811177bdbc6 Author: bpb Date: 2014-05-07 11:45 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1811177bdbc6 8026236: Add PrimeTest for BigInteger Summary: Test primality verification methods in BigInteger Reviewed-by: psandoz Contributed-by: Brian Burkhalter , Peter Levart , Paul Sandoz , Aleksey Shipilev , Florian Weimer + test/java/math/BigInteger/PrimeTest.java Changeset: 2d7287eae0ad Author: peytoia Date: 2014-05-08 08:22 +0900 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2d7287eae0ad 8042360: Subtag syntax check is incomplete in Locale.LanguageRange Reviewed-by: naoto, okutsu ! src/share/classes/java/util/Locale.java ! test/java/util/Locale/Bug7069824.java Changeset: 851b1ddcdfb2 Author: sla Date: 2014-04-25 17:19 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/851b1ddcdfb2 8041979: sun/jvmstat/monitor/MonitoredVm/CR6672135.java failing on all platforms Reviewed-by: kamg, mgronlun ! make/mapfiles/libjava/mapfile-vers ! src/share/classes/sun/jvmstat/perfdata/monitor/protocol/local/PerfDataFile.java ! src/share/classes/sun/misc/VMSupport.java ! src/share/javavm/export/jvm.h ! src/share/native/sun/misc/VMSupport.c ! test/com/sun/tools/attach/BasicTests.java ! test/com/sun/tools/attach/RunnerUtil.java + test/com/sun/tools/attach/TempDirTest.java ! test/com/sun/tools/attach/java.policy.allow ! test/com/sun/tools/attach/java.policy.deny Changeset: 690ac983ad6c Author: yan Date: 2014-05-08 13:26 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/690ac983ad6c 8042105: Fix some more doclint issues in javax.swing.text.html classes Reviewed-by: alexsch ! src/share/classes/javax/swing/text/html/CSS.java ! src/share/classes/javax/swing/text/html/FormView.java ! src/share/classes/javax/swing/text/html/HTML.java ! src/share/classes/javax/swing/text/html/HTMLDocument.java ! src/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/share/classes/javax/swing/text/html/HTMLFrameHyperlinkEvent.java Changeset: a9d59d9496c2 Author: weijun Date: 2014-05-08 22:30 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a9d59d9496c2 8040068: SolarisSystem should be @Deprecated and @jdk.Exported(false) Reviewed-by: alanb, mullan ! src/share/classes/com/sun/security/auth/module/SolarisSystem.java Changeset: 86305d35de9b Author: weijun Date: 2014-05-08 22:30 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/86305d35de9b 8039951: com.sun.security.auth.module missing classes on some platforms Reviewed-by: mullan ! make/CompileJavaClasses.gmk ! src/share/classes/com/sun/security/auth/module/NTLoginModule.java ! src/share/classes/com/sun/security/auth/module/SolarisLoginModule.java ! src/share/classes/com/sun/security/auth/module/UnixLoginModule.java ! src/share/classes/sun/security/krb5/internal/rcache/DflCache.java + test/com/sun/security/auth/module/AllPlatforms.java ! test/sun/security/krb5/auto/ReplayCacheTestProc.java Changeset: 249337ca0ce7 Author: bpb Date: 2014-05-08 16:06 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/249337ca0ce7 8042478: Include Mersenne primes in BigInteger primality testing Summary: Add testing of some of the Mersenne primes. Reviewed-by: darcy ! test/java/math/BigInteger/PrimeTest.java Changeset: b04f3a46b5d7 Author: lana Date: 2014-05-08 15:27 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b04f3a46b5d7 Merge Changeset: c7c8002d0272 Author: lana Date: 2014-05-08 17:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c7c8002d0272 Merge Changeset: b014e6e0b04d Author: katleman Date: 2014-05-15 10:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b014e6e0b04d Added tag jdk9-b13 for changeset c7c8002d0272 ! .hgtags Changeset: 0836900e58a3 Author: alanb Date: 2014-05-09 09:47 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0836900e58a3 8042816: (fs) Path.register doesn't throw IllegalArgumentException if multiple OVERFLOW events are specified, part 2 Reviewed-by: chegar ! src/share/classes/sun/nio/fs/PollingWatchService.java Changeset: 7426549b1e3b Author: sla Date: 2014-05-09 12:06 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7426549b1e3b 8039173: Propagate errors from Diagnostic Commands as exceptions in the attach framework Reviewed-by: igerasim, alanb, dsamersoff + src/share/classes/com/sun/tools/attach/AttachOperationFailedException.java ! src/share/classes/com/sun/tools/attach/VirtualMachine.java ! src/share/classes/sun/tools/attach/HotSpotVirtualMachine.java ! src/share/classes/sun/tools/jcmd/JCmd.java ! src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java ! src/solaris/classes/sun/tools/attach/LinuxVirtualMachine.java ! src/solaris/classes/sun/tools/attach/SolarisVirtualMachine.java ! src/solaris/native/sun/tools/attach/BsdVirtualMachine.c ! src/solaris/native/sun/tools/attach/LinuxVirtualMachine.c ! src/solaris/native/sun/tools/attach/SolarisVirtualMachine.c ! src/windows/classes/sun/tools/attach/WindowsVirtualMachine.java ! src/windows/native/sun/tools/attach/WindowsVirtualMachine.c ! test/sun/management/jmxremote/startstop/JMXStartStopTest.java Changeset: bb79460d72d8 Author: mchung Date: 2014-05-09 09:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bb79460d72d8 8040059: Change default policy for extensions to no permission Reviewed-by: alanb, mullan, erikj ! make/CopyFiles.gmk ! src/share/classes/jdk/nio/zipfs/ZipFileSystem.java ! src/share/lib/security/java.policy + src/windows/lib/security/java.policy ! test/TEST.groups ! test/jdk/nio/zipfs/Basic.java ! test/jdk/nio/zipfs/PathOps.java ! test/jdk/nio/zipfs/ZFSTests.java ! test/jdk/nio/zipfs/ZipFSTester.java + test/jdk/nio/zipfs/test.policy + test/jdk/nio/zipfs/test.policy.readonly ! test/lib/security/java.policy/Ext_AllPolicy.java ! test/lib/security/java.policy/Ext_AllPolicy.sh + test/lib/security/java.policy/test.policy Changeset: ad7720938e7c Author: emc Date: 2014-05-09 15:27 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ad7720938e7c 8042859: Build broken for Solaris Summary: Remove stray quotes causing build failures Reviewed-by: sla, chegar ! src/solaris/native/sun/tools/attach/SolarisVirtualMachine.c Changeset: 05e9c9216e26 Author: ykantser Date: 2014-05-09 15:24 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/05e9c9216e26 8034960: Serviceability tests using @library failing with java.lang.NoClassDefFoundError Reviewed-by: sla, alanb ! test/com/sun/management/HotSpotDiagnosticMXBean/CheckOrigin.java ! test/com/sun/tools/attach/BasicTests.java ! test/com/sun/tools/attach/PermissionTest.java ! test/com/sun/tools/attach/ProviderTest.java ! test/java/io/BufferedInputStream/LargeCopyWithMark.java ! test/java/lang/instrument/PremainClass/NoPremainAgentTest.java ! test/java/lang/instrument/PremainClass/PremainClassTest.java ! test/java/lang/instrument/PremainClass/ZeroArgPremainAgentTest.java ! test/java/lang/management/MemoryMXBean/CollectionUsageThreshold.java ! test/java/lang/management/MemoryMXBean/LowMemoryTest.java ! test/java/net/URLPermission/nstest/lookup.sh ! test/javax/management/monitor/StartStopTest.java ! test/sun/management/jmxremote/bootstrap/CustomLauncherTest.java ! test/sun/reflect/AnonymousNewInstance/ManyNewInstanceAnonTest.java ! test/sun/tools/jcmd/TestJcmdDefaults.java ! test/sun/tools/jcmd/TestJcmdSanity.java ! test/sun/tools/jmap/BasicJMapTest.java ! test/sun/tools/jstack/BasicJStackTest.java Changeset: 35bbba418241 Author: yan Date: 2014-05-12 14:12 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/35bbba418241 8030709: Tidy warnings cleanup for java.lang package; minor cleanup in java.math, javax.script Reviewed-by: lancea Contributed-by: Alexander Stepanov ! src/share/classes/java/lang/Character.java ! src/share/classes/java/lang/Math.java ! src/share/classes/java/lang/Runtime.java ! src/share/classes/java/lang/SecurityManager.java ! src/share/classes/java/lang/String.java ! src/share/classes/java/lang/System.java ! src/share/classes/java/lang/instrument/package.html ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/share/classes/java/lang/management/MemoryNotificationInfo.java ! src/share/classes/java/lang/management/ThreadInfo.java ! src/share/classes/java/lang/management/package.html ! src/share/classes/java/math/BigInteger.java ! src/share/classes/javax/script/ScriptEngineFactory.java Changeset: fa4fc23cba16 Author: yan Date: 2014-05-12 14:33 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/fa4fc23cba16 8038795: Tidy warnings cleanup for javax.management Reviewed-by: dfuchs Contributed-by: Alexander Stepanov ! src/share/classes/javax/management/MBeanPermission.java ! src/share/classes/javax/management/MBeanServerPermission.java ! src/share/classes/javax/management/modelmbean/ModelMBeanNotificationBroadcaster.java ! src/share/classes/javax/management/openmbean/CompositeType.java ! src/share/classes/javax/management/openmbean/OpenMBeanAttributeInfo.java ! src/share/classes/javax/management/openmbean/OpenMBeanConstructorInfo.java ! src/share/classes/javax/management/openmbean/OpenMBeanInfo.java ! src/share/classes/javax/management/openmbean/OpenMBeanOperationInfo.java ! src/share/classes/javax/management/openmbean/OpenMBeanParameterInfo.java ! src/share/classes/javax/management/openmbean/TabularType.java ! src/share/classes/javax/management/remote/JMXConnectorFactory.java ! src/share/classes/javax/management/remote/JMXConnectorServerFactory.java ! src/share/classes/javax/management/remote/JMXPrincipal.java ! src/share/classes/javax/management/remote/package.html ! src/share/classes/javax/management/remote/rmi/package.html Changeset: 27e0909d3fa0 Author: plevart Date: 2014-05-12 17:34 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/27e0909d3fa0 8000975: (process) Merge UNIXProcess.java.bsd & UNIXProcess.java.linux (& .solaris & .aix) Reviewed-by: alanb, rriggs, martin ! make/gensrc/GensrcMisc.gmk + src/solaris/classes/java/lang/UNIXProcess.java - src/solaris/classes/java/lang/UNIXProcess.java.aix - src/solaris/classes/java/lang/UNIXProcess.java.bsd - src/solaris/classes/java/lang/UNIXProcess.java.linux - src/solaris/classes/java/lang/UNIXProcess.java.solaris ! test/java/lang/ProcessBuilder/SecurityManagerClinit.java Changeset: 013ac43d9800 Author: mullan Date: 2014-05-12 12:35 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/013ac43d9800 6996377: shrink duplicate code in the constructor of PKIXValidator Reviewed-by: mullan, xuelei Contributed-by: jamil.j.nimeh at oracle.com ! src/share/classes/sun/security/validator/PKIXValidator.java + test/sun/security/validator/ConstructorTest.java Changeset: 97487e77f598 Author: alanb Date: 2014-05-13 11:03 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/97487e77f598 8042889: (props) Properties.loadFromXML/storeToXML should consistently use the UKit parser Reviewed-by: joehw, chegar, mchung ! make/profile-rtjar-includes.txt ! src/share/classes/java/util/Properties.java - src/share/classes/jdk/internal/util/xml/BasicXmlPropertiesProvider.java - src/share/classes/sun/util/spi/XmlPropertiesProvider.java - src/share/classes/sun/util/xml/META-INF/services/sun.util.spi.XmlPropertiesProvider - src/share/classes/sun/util/xml/PlatformXmlPropertiesProvider.java ! test/java/util/Properties/CompatibilityTest.java ! test/java/util/Properties/ConcurrentLoadAndStoreXML.java - test/java/util/Properties/CustomProvider.java ! test/java/util/Properties/LoadAndStoreXML.java ! test/java/util/Properties/LoadAndStoreXMLWithDefaults.java - test/java/util/Properties/MyXmlPropertiesProvider.java Changeset: b5fe9c840818 Author: michaelm Date: 2014-05-14 11:16 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b5fe9c840818 8034170: src/share/classes/sun/net/www/protocol/http/DigestAuthentication.java Reviewed-by: chegar ! src/share/classes/sun/net/www/protocol/http/DigestAuthentication.java + test/java/net/Authenticator/B8034170.java Changeset: d7a42bf19905 Author: alanb Date: 2014-05-14 16:40 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d7a42bf19905 8043119: (props) Properties.storeToXML closes output stream Reviewed-by: lancea ! src/share/classes/jdk/internal/util/xml/PropertiesDefaultHandler.java ! test/java/util/Properties/LoadAndStoreXML.java Changeset: 6d8b6c20a32b Author: naoto Date: 2014-05-14 10:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6d8b6c20a32b 8041791: String.toLowerCase regression - violates Unicode standard Reviewed-by: peytoia ! src/share/classes/java/lang/ConditionalSpecialCasing.java ! src/share/classes/java/lang/String.java ! test/java/lang/String/ToLowerCase.java Changeset: 14eb478a5c4c Author: aefimov Date: 2014-05-15 18:18 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/14eb478a5c4c 8043012: (tz) Support tzdata2014c Reviewed-by: okutsu, peytoia ! make/data/tzdata/VERSION ! make/data/tzdata/africa ! make/data/tzdata/asia ! make/data/tzdata/europe ! test/sun/util/calendar/zi/tzdata/VERSION ! test/sun/util/calendar/zi/tzdata/africa ! test/sun/util/calendar/zi/tzdata/asia ! test/sun/util/calendar/zi/tzdata/europe Changeset: eb6f07ec4509 Author: chegar Date: 2014-05-14 15:46 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/eb6f07ec4509 7153400: ThreadPoolExecutor's setCorePoolSize method allows corePoolSize > maxPoolSize Reviewed-by: chegar, martin, mduigou Contributed-by: Pavel Rappo ! src/share/classes/java/util/concurrent/ThreadPoolExecutor.java Changeset: 5c7a17a81afd Author: lana Date: 2014-05-15 10:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5c7a17a81afd Merge - src/share/classes/jdk/internal/util/xml/BasicXmlPropertiesProvider.java - src/share/classes/sun/util/spi/XmlPropertiesProvider.java - src/share/classes/sun/util/xml/META-INF/services/sun.util.spi.XmlPropertiesProvider - src/share/classes/sun/util/xml/PlatformXmlPropertiesProvider.java - src/solaris/classes/java/lang/UNIXProcess.java.aix - src/solaris/classes/java/lang/UNIXProcess.java.bsd - src/solaris/classes/java/lang/UNIXProcess.java.linux - src/solaris/classes/java/lang/UNIXProcess.java.solaris - test/java/util/Properties/CustomProvider.java - test/java/util/Properties/MyXmlPropertiesProvider.java Changeset: 28d1de89ff27 Author: katleman Date: 2014-05-22 12:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/28d1de89ff27 Added tag jdk9-b14 for changeset 5c7a17a81afd ! .hgtags Changeset: e2347ee6c0f2 Author: jfranck Date: 2014-05-12 14:47 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e2347ee6c0f2 8038994: AnnotatedType.getType() of a TypeVariable boundary without annotations return null Reviewed-by: psandoz ! src/share/classes/sun/reflect/annotation/TypeAnnotationParser.java + test/java/lang/annotation/TypeVariableBounds.java Changeset: 038f4771af6e Author: yan Date: 2014-05-16 17:41 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/038f4771af6e 8042120: Fix doclint warnings from javax.swing.text.html.parser Reviewed-by: alexsch Contributed-by: Alexander Stepanov ! src/share/classes/javax/swing/text/html/parser/AttributeList.java ! src/share/classes/javax/swing/text/html/parser/ContentModel.java ! src/share/classes/javax/swing/text/html/parser/DTD.java ! src/share/classes/javax/swing/text/html/parser/Element.java ! src/share/classes/javax/swing/text/html/parser/Parser.java Changeset: 320dd90143c2 Author: yan Date: 2014-05-16 17:45 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/320dd90143c2 8042089: Fix doclint warnings from javax.swing.tree and javax.swing.undo packages Reviewed-by: alexsch Contributed-by: Dmitriy Ermashov ! src/share/classes/javax/swing/tree/AbstractLayoutCache.java ! src/share/classes/javax/swing/tree/DefaultMutableTreeNode.java ! src/share/classes/javax/swing/tree/DefaultTreeCellEditor.java ! src/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java ! src/share/classes/javax/swing/tree/DefaultTreeModel.java ! src/share/classes/javax/swing/tree/DefaultTreeSelectionModel.java ! src/share/classes/javax/swing/tree/MutableTreeNode.java ! src/share/classes/javax/swing/tree/RowMapper.java ! src/share/classes/javax/swing/tree/TreeCellRenderer.java ! src/share/classes/javax/swing/tree/TreeModel.java ! src/share/classes/javax/swing/tree/TreeNode.java ! src/share/classes/javax/swing/tree/TreePath.java ! src/share/classes/javax/swing/tree/TreeSelectionModel.java ! src/share/classes/javax/swing/undo/CompoundEdit.java ! src/share/classes/javax/swing/undo/StateEditable.java ! src/share/classes/javax/swing/undo/UndoManager.java ! src/share/classes/javax/swing/undo/UndoableEditSupport.java Changeset: 2e2ffb5d33ff Author: twisti Date: 2014-05-16 09:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2e2ffb5d33ff 8032606: ClassValue.ClassValueMap.type is unused Reviewed-by: jrose, vlivanov ! src/share/classes/java/lang/ClassValue.java Changeset: 05b9fbd90083 Author: lancea Date: 2014-05-16 14:48 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/05b9fbd90083 8043278: Add initial unit tests for javax.sql.rowset.serial Reviewed-by: rriggs ! test/java/sql/util/BaseTest.java + test/javax/sql/testng/TEST.properties + test/javax/sql/testng/test/rowset/serial/SerialArrayTests.java + test/javax/sql/testng/test/rowset/serial/SerialBlobTests.java + test/javax/sql/testng/test/rowset/serial/SerialClobTests.java + test/javax/sql/testng/test/rowset/serial/SerialDataLinkTests.java + test/javax/sql/testng/test/rowset/serial/SerialExceptionTests.java + test/javax/sql/testng/test/rowset/serial/SerialJavaObjectTests.java + test/javax/sql/testng/test/rowset/serial/SerialRefTests.java + test/javax/sql/testng/test/rowset/serial/SerialStructTests.java + test/javax/sql/testng/util/BaseTest.java + test/javax/sql/testng/util/StubArray.java + test/javax/sql/testng/util/StubBlob.java + test/javax/sql/testng/util/StubClob.java + test/javax/sql/testng/util/StubRef.java + test/javax/sql/testng/util/StubStruct.java + test/javax/sql/testng/util/SuperHero.java Changeset: e7cf67ef0900 Author: sla Date: 2014-05-18 20:42 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e7cf67ef0900 8043382: TempDirTest.java times out Summary: Remove explicit timeout Reviewed-by: alanb ! test/com/sun/tools/attach/TempDirTest.java Changeset: e4af4e06bc9e Author: yan Date: 2014-05-19 10:34 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e4af4e06bc9e 8039966: Add @return and @param block tags in colorchooser and filechooser swing classes Reviewed-by: malenkov, alexsch Contributed-by: Steven Sides ! src/share/classes/javax/swing/colorchooser/AbstractColorChooserPanel.java ! src/share/classes/javax/swing/filechooser/FileFilter.java ! src/share/classes/javax/swing/filechooser/FileSystemView.java ! src/share/classes/javax/swing/filechooser/FileView.java Changeset: 4410f30150d0 Author: yan Date: 2014-05-19 10:43 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4410f30150d0 8040893: Add block tags for @return and @param to swing border classes Reviewed-by: malenkov, alexsch Contributed-by: Steven Sides ! src/share/classes/javax/swing/border/BevelBorder.java ! src/share/classes/javax/swing/border/Border.java ! src/share/classes/javax/swing/border/CompoundBorder.java ! src/share/classes/javax/swing/border/EmptyBorder.java ! src/share/classes/javax/swing/border/EtchedBorder.java ! src/share/classes/javax/swing/border/LineBorder.java ! src/share/classes/javax/swing/border/MatteBorder.java Changeset: 33a73cb00814 Author: robm Date: 2014-05-19 14:28 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/33a73cb00814 8028627: Unsynchronized code path from javax.crypto.Cipher to the WeakHashMap used by JceSecurity to store codebase mappings Reviewed-by: mullan ! src/share/classes/javax/crypto/JceSecurity.java Changeset: 5b45a5efe417 Author: igerasim Date: 2014-05-20 10:11 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5b45a5efe417 7195480: javax.smartcardio does not detect cards on Mac OS X Reviewed-by: valeriep ! src/solaris/native/sun/security/smartcardio/MUSCLE/pcsclite.h Changeset: 030dae646c6b Author: dsamersoff Date: 2014-05-20 06:11 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/030dae646c6b 8041435: Make JDWP socket connector accept only local connections by default Summary: Bind to localhost only if no address specified. Require * to bind to all available addresses Reviewed-by: dcubed, sspitsyn ! src/share/transport/socket/socketTransport.c ! test/com/sun/jdi/OptionTest.java Changeset: c4eb752f6a13 Author: kizune Date: 2014-05-20 23:17 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c4eb752f6a13 8037398: integer overflow in jdk/src/share/bin/java.c Reviewed-by: ksrini ! src/share/bin/java.c Changeset: 149f7e1e8cb7 Author: sla Date: 2014-05-21 10:22 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/149f7e1e8cb7 8043551: [TESTBUG] sun/tools/jcmd/TestJcmdSanity.java failure in nightly jdk9-dev fastdebug build Summary: Add -XX:+UsePerfData to the test Reviewed-by: dholmes ! test/sun/tools/jcmd/TestJcmdSanity.java Changeset: 9fdc6c3ea1bb Author: weijun Date: 2014-05-22 07:04 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9fdc6c3ea1bb 8043537: Changes for JDK-8039951 introduced circular dependency between Kerberos and com.sun.security.auth Reviewed-by: alanb ! make/mapfiles/libjava/mapfile-vers ! src/share/classes/sun/misc/VM.java ! src/share/classes/sun/security/krb5/internal/rcache/DflCache.java ! src/solaris/native/sun/misc/VM_md.c ! src/windows/native/sun/misc/VM_md.c ! test/sun/security/krb5/auto/ReplayCacheTestProc.java Changeset: 50e6d06f5cb6 Author: valeriep Date: 2014-05-21 23:30 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/50e6d06f5cb6 8037745: Consider re-enabling PKCS11 mechanisms previously disabled due to Solaris bug 7050617 Summary: Remove digest mechanisms from the disabled mechanisms section Reviewed-by: ascarpino, wetmore ! src/share/lib/security/sunpkcs11-solaris.cfg Changeset: 72814084db02 Author: okutsu Date: 2014-05-22 13:21 +0900 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/72814084db02 8032650: [parfait] warning from b124 for jdk/src/share/native/java/util: jni exception pending Reviewed-by: naoto ! src/share/classes/java/util/TimeZone.java ! src/share/native/java/util/TimeZone.c ! src/solaris/native/java/util/TimeZone_md.c ! src/solaris/native/java/util/TimeZone_md.h ! src/windows/native/java/util/TimeZone_md.c ! src/windows/native/java/util/TimeZone_md.h Changeset: 4ae47665ede7 Author: ykantser Date: 2014-05-22 11:05 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4ae47665ede7 8043520: Serviceability tests using @library failing with java.lang.NoClassDefFoundError Reviewed-by: sla, egahlin ! test/com/sun/jdi/BadHandshakeTest.java ! test/com/sun/jdi/ExclusiveBind.java ! test/com/sun/tools/attach/TempDirTest.java ! test/java/lang/instrument/DaemonThread/TestDaemonThread.java ! test/java/lang/management/MemoryMXBean/ResetPeakMemoryUsage.java ! test/sun/management/jdp/JdpDefaultsTest.java ! test/sun/management/jdp/JdpOffTest.java ! test/sun/management/jdp/JdpSpecificAddressTest.java ! test/sun/management/jmxremote/bootstrap/LocalManagementTest.java ! test/sun/management/jmxremote/bootstrap/PasswordFilePermissionTest.java ! test/sun/management/jmxremote/bootstrap/RmiBootstrapTest.sh ! test/sun/management/jmxremote/bootstrap/RmiRegistrySslTest.java ! test/sun/management/jmxremote/bootstrap/RmiSslBootstrapTest.sh ! test/sun/management/jmxremote/bootstrap/SSLConfigFilePermissionTest.java ! test/sun/management/jmxremote/startstop/JMXStartStopTest.java ! test/sun/tools/jstat/JStatInterval.java ! test/sun/tools/jstatd/TestJstatdDefaults.java ! test/sun/tools/jstatd/TestJstatdExternalRegistry.java ! test/sun/tools/jstatd/TestJstatdPort.java ! test/sun/tools/jstatd/TestJstatdPortAndServer.java ! test/sun/tools/jstatd/TestJstatdServer.java ! test/sun/tools/jstatd/TestJstatdUsage.java Changeset: b39e23ebc008 Author: alanb Date: 2014-05-21 14:33 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b39e23ebc008 8042887: Remove serialver -show, this tool does not need a GUI Reviewed-by: alanb, chegar Contributed-by: Pavel Rappo ! src/share/classes/sun/tools/serialver/SerialVer.java ! src/share/classes/sun/tools/serialver/resources/serialver.properties Changeset: baffcaf51b02 Author: mfang Date: 2014-05-22 08:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/baffcaf51b02 8037343: Wrong dateformat for locale es_DO Reviewed-by: okutsu Contributed-by: me at sandipan.net ! src/share/classes/sun/text/resources/es/FormatData_es_DO.java + test/sun/text/resources/Format/Bug8037343.java ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: 8ef4d3c258c0 Author: mfang Date: 2014-05-22 09:15 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8ef4d3c258c0 Merge Changeset: ae3f2b31bb3c Author: igerasim Date: 2014-05-22 20:19 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ae3f2b31bb3c 8043772: Typos in Double/Int/LongSummaryStatistics.java Reviewed-by: rriggs ! src/share/classes/java/util/DoubleSummaryStatistics.java ! src/share/classes/java/util/IntSummaryStatistics.java ! src/share/classes/java/util/LongSummaryStatistics.java Changeset: 5d191d40073f Author: dsamersoff Date: 2014-05-22 13:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5d191d40073f 8043716: JDI test com/sun/jdi/ProcessAttachTest.sh and other 3 jdi tests failed in nightly Summary: InetAddress.getLocalHost() returns configured host name instead of localhost. Reviewed-by: dcubed ! src/share/classes/com/sun/tools/jdi/SocketAttachingConnector.java ! src/share/classes/com/sun/tools/jdi/SocketTransportService.java ! src/share/transport/socket/socketTransport.c ! test/com/sun/jdi/BadHandshakeTest.java ! test/com/sun/jdi/RunToExit.java Changeset: af9c7dccd0f6 Author: lana Date: 2014-05-22 14:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/af9c7dccd0f6 Merge Changeset: 1dc8226a83ed Author: igerasim Date: 2014-05-23 07:07 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1dc8226a83ed 8043507: javax.smartcardio.CardTerminals.list() fails on MacOSX Reviewed-by: valeriep ! src/share/native/sun/security/smartcardio/pcsc.c Changeset: 022372f3db57 Author: jbachorik Date: 2014-05-23 15:07 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/022372f3db57 8043572: demo/jvmti/mtrace/TraceJFrame.java fails with AWTError: Can't connect to X11 window server using '$DISPLAY_SITE' as the value of the DISPLAY variable Reviewed-by: sla ! test/demo/jvmti/mtrace/JFrameCreateTime.java ! test/demo/jvmti/mtrace/TraceJFrame.java Changeset: 7eac6175f210 Author: mkos Date: 2014-05-23 16:35 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7eac6175f210 8043129: JAF initialisation in SAAJ clashing with the one in javax.mail Reviewed-by: chegar + test/javax/xml/ws/8043129/MailTest.java + test/javax/xml/ws/8043129/javax.mail.jar Changeset: 474739f38cb3 Author: robm Date: 2014-05-23 16:24 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/474739f38cb3 8042857: 14 stuck threads waiting for notification on LDAPRequest Reviewed-by: vinnie ! src/share/classes/com/sun/jndi/ldap/Connection.java ! test/com/sun/jndi/ldap/LdapTimeoutTest.java Changeset: 525b6c4aded7 Author: pchelko Date: 2014-04-18 10:47 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/525b6c4aded7 8035169: Move ThreadGroupUtils from the sun.misc package Reviewed-by: anthony, serb, azvegint ! src/macosx/classes/sun/font/CFontManager.java ! src/macosx/classes/sun/lwawt/LWToolkit.java ! src/macosx/native/sun/awt/awt.m ! src/share/classes/sun/awt/AWTAutoShutdown.java + src/share/classes/sun/awt/util/ThreadGroupUtils.java ! src/share/classes/sun/font/CreatedFontTracker.java ! src/share/classes/sun/font/SunFontManager.java ! src/share/classes/sun/java2d/Disposer.java ! src/share/classes/sun/java2d/opengl/OGLRenderQueue.java - src/share/classes/sun/misc/ThreadGroupUtils.java ! src/solaris/classes/sun/awt/X11/XToolkit.java ! src/solaris/classes/sun/awt/X11GraphicsDevice.java ! src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java ! src/windows/classes/sun/awt/windows/WToolkit.java ! src/windows/classes/sun/java2d/d3d/D3DScreenUpdateManager.java Changeset: 87168e781129 Author: serb Date: 2014-04-18 20:10 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/87168e781129 8026252: [macosx] Change AWT_DEBUG_BUG_REPORT_MESSAGE for macosx platform Reviewed-by: azvegint, pchelko ! src/macosx/native/sun/osxapp/AWT_debug.h Changeset: 7c3ea6969f1a Author: henryjen Date: 2014-04-18 09:56 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7c3ea6969f1a 8038644: Fix raw and unchecked warnings in sun.java2d.* Reviewed-by: darcy, prr ! src/share/classes/sun/java2d/Spans.java ! src/share/classes/sun/java2d/SunGraphics2D.java ! src/share/classes/sun/java2d/SunGraphicsEnvironment.java ! src/share/classes/sun/java2d/cmm/lcms/LCMS.java ! src/share/classes/sun/java2d/loops/Blit.java ! src/share/classes/sun/java2d/loops/CustomComponent.java ! src/share/classes/sun/java2d/loops/GeneralRenderer.java ! src/share/classes/sun/java2d/loops/GraphicsPrimitive.java ! src/share/classes/sun/java2d/loops/GraphicsPrimitiveMgr.java ! src/share/classes/sun/java2d/loops/GraphicsPrimitiveProxy.java ! src/share/classes/sun/java2d/loops/MaskBlit.java ! src/share/classes/sun/java2d/opengl/OGLBlitLoops.java ! src/share/classes/sun/java2d/pipe/AlphaPaintPipe.java ! src/share/classes/sun/java2d/pipe/RenderQueue.java ! src/share/classes/sun/java2d/pipe/SpanClipRenderer.java ! src/solaris/classes/sun/java2d/x11/X11SurfaceData.java Changeset: e128f966866a Author: pchelko Date: 2014-04-21 11:00 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e128f966866a 8037477: Reproducible hang of JAWS and webstart application with JAB 2.0.4 Reviewed-by: anthony, serb ! src/share/classes/javax/accessibility/AccessibleContext.java ! src/share/classes/sun/awt/AWTAccessor.java Changeset: c904d2c4425d Author: yan Date: 2014-04-21 14:35 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c904d2c4425d 8039279: Move awt tests to openjdk repository Reviewed-by: pchelko, alexsch Contributed-by: Dmitriy Ermashov + test/java/awt/Frame/SetMaximizedBounds/SetMaximizedBounds.java + test/java/awt/GridLayout/ChangeGridSize/ChangeGridSize.java + test/java/awt/GridLayout/ComponentPreferredSize/ComponentPreferredSize.java + test/java/awt/Robot/ModifierRobotKey/ModifierRobotKeyTest.java + test/java/awt/Toolkit/LockingKeyStateTest/LockingKeyStateTest.java Changeset: 85b7ff7d0ba7 Author: alitvinov Date: 2014-04-21 16:32 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/85b7ff7d0ba7 8024061: Exception thrown when drag and drop between two components is executed quickly Reviewed-by: pchelko, serb Contributed-by: alexey.ivanov at oracle.com ! src/share/classes/sun/awt/dnd/SunDropTargetContextPeer.java + test/sun/awt/dnd/8024061/bug8024061.java Changeset: a8ca8e71ce49 Author: malenkov Date: 2014-04-21 20:59 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a8ca8e71ce49 8040656: Classes with overriden methods with covariant returns return random read methods Reviewed-by: alexsch, serb ! src/share/classes/java/beans/MethodDescriptor.java + test/java/beans/Introspector/Test8040656.java Changeset: ef1c998c0233 Author: darcy Date: 2014-04-21 23:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ef1c998c0233 8039862: Fix fallthrough lint warnings in 2d Reviewed-by: flar ! src/share/classes/sun/font/SunFontManager.java ! src/share/classes/sun/font/TrueTypeGlyphMapper.java ! src/solaris/classes/sun/java2d/x11/X11SurfaceData.java Changeset: ae68e97bb4c6 Author: darcy Date: 2014-04-22 17:55 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ae68e97bb4c6 8039860: Fix fallthrough lint warnings in swing Reviewed-by: malenkov ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKLookAndFeel.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsTableHeaderUI.java ! src/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java ! src/share/classes/javax/swing/text/JTextComponent.java ! src/share/classes/javax/swing/text/html/StyleSheet.java ! src/share/classes/javax/swing/text/html/parser/ContentModelState.java ! src/share/classes/javax/swing/text/html/parser/Parser.java ! src/share/classes/javax/swing/text/rtf/RTFGenerator.java ! src/share/classes/javax/swing/text/rtf/RTFParser.java Changeset: a56aca1ce81b Author: pchelko Date: 2014-04-23 17:56 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a56aca1ce81b 8027148: SystemFlavorMap.getNativesForFlavor returns list of native formats in incorrect order Reviewed-by: anthony, serb ! src/share/classes/java/awt/datatransfer/SystemFlavorMap.java ! src/share/classes/sun/awt/datatransfer/DataTransferer.java ! src/solaris/classes/sun/awt/X11/XDataTransferer.java + test/java/awt/datatransfer/MappingGenerationTest/MappingGenerationTest.java Changeset: 91d3e34bf1e6 Author: pchelko Date: 2014-04-23 18:07 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/91d3e34bf1e6 8039567: Duplicated code in DataTransferer Reviewed-by: serb, azvegint ! src/macosx/classes/sun/lwawt/macosx/CDataTransferer.java ! src/share/classes/sun/awt/datatransfer/DataTransferer.java ! src/solaris/classes/sun/awt/X11/XDataTransferer.java ! src/windows/classes/sun/awt/windows/WDataTransferer.java Changeset: bd2c6062791f Author: malenkov Date: 2014-04-23 21:11 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bd2c6062791f 8039464: The scrollbar in JScrollPane has no right border if used WindowsLookAndFeel Reviewed-by: alexsch, serb ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsScrollBarUI.java + test/javax/swing/JScrollBar/8039464/Test8039464.html + test/javax/swing/JScrollBar/8039464/Test8039464.java Changeset: 2723947e6d31 Author: alexsch Date: 2014-04-24 16:15 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2723947e6d31 8040279: [macosx] Do not use the base image in the MultiResolutionBufferedImage Reviewed-by: serb, pchelko ! src/macosx/classes/com/apple/laf/AquaImageFactory.java ! src/macosx/classes/com/apple/laf/AquaPainter.java ! src/macosx/classes/com/apple/laf/AquaUtils.java ! src/macosx/classes/sun/lwawt/macosx/CImage.java + src/share/classes/sun/awt/image/AbstractMultiResolutionImage.java - src/share/classes/sun/awt/image/MultiResolutionBufferedImage.java + src/share/classes/sun/awt/image/MultiResolutionCachedImage.java ! test/javax/swing/JMenuItem/8031573/bug8031573.java ! test/javax/swing/JOptionPane/8024926/bug8024926.java Changeset: 03da9ca135ac Author: pchelko Date: 2014-04-24 20:22 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/03da9ca135ac 7124250: [macosx] JOptionPane dialogs show wrong icons Reviewed-by: serb, leonidr ! src/macosx/classes/com/apple/laf/AquaImageFactory.java Changeset: 63e1be3350fa Author: pchelko Date: 2014-04-25 16:27 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/63e1be3350fa 8041572: [macosx] huge native memory leak in AWTWindow.m Reviewed-by: serb, anthony ! src/macosx/native/sun/awt/AWTWindow.m ! src/macosx/native/sun/awt/CGraphicsDevice.m Changeset: 015dda6cfc53 Author: pchelko Date: 2014-04-25 16:39 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/015dda6cfc53 8041490: PIT: [macosx] Crash in system tray functionality check test Reviewed-by: anthony, serb ! src/macosx/classes/sun/lwawt/macosx/CWarningWindow.java + test/java/awt/security/WarningWindowDisposeTest/WarningWindowDisposeCrashTest.java Changeset: 4fc46640afa1 Author: pchelko Date: 2014-04-28 16:45 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4fc46640afa1 8041987: [macosx] setDisplayMode crashes Reviewed-by: anthony, serb ! src/macosx/native/sun/awt/CGraphicsDevice.m + test/java/awt/FullScreen/DisplayChangeVITest/DisplayChangeVITest.java Changeset: 40e611441867 Author: asaha Date: 2014-04-28 11:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/40e611441867 8036819: JAB: mneumonics not read for textboxes Reviewed-by: alexsch Contributed-by: vivi.an at oracle.com ! src/share/classes/javax/swing/JComponent.java + test/javax/swing/JTextField/8036819/bug8036819.java Changeset: cca9b752e5f6 Author: henryjen Date: 2014-04-28 19:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/cca9b752e5f6 8039642: Fix raw and unchecked warnings in sun.awt.* Reviewed-by: darcy, prr, flar ! src/share/classes/java/awt/Menu.java ! src/share/classes/sun/awt/AWTAccessor.java ! src/share/classes/sun/awt/AppContext.java ! src/share/classes/sun/awt/FontConfiguration.java ! src/share/classes/sun/awt/HToolkit.java ! src/share/classes/sun/awt/HeadlessToolkit.java ! src/share/classes/sun/awt/PlatformFont.java ! src/share/classes/sun/awt/SunToolkit.java ! src/share/classes/sun/awt/datatransfer/DataTransferer.java ! src/share/classes/sun/awt/datatransfer/SunClipboard.java ! src/share/classes/sun/awt/datatransfer/TransferableProxy.java ! src/share/classes/sun/awt/dnd/SunDragSourceContextPeer.java ! src/share/classes/sun/awt/dnd/SunDropTargetContextPeer.java ! src/share/classes/sun/awt/geom/AreaOp.java ! src/share/classes/sun/awt/geom/Crossings.java ! src/share/classes/sun/awt/geom/Curve.java ! src/share/classes/sun/awt/geom/Order2.java ! src/share/classes/sun/awt/geom/Order3.java ! src/share/classes/sun/awt/image/BufImgSurfaceData.java ! src/share/classes/sun/awt/image/GifImageDecoder.java ! src/share/classes/sun/awt/image/ImageDecoder.java ! src/share/classes/sun/awt/image/ImageFetcher.java ! src/share/classes/sun/awt/image/ImageRepresentation.java ! src/share/classes/sun/awt/image/ImagingLib.java ! src/share/classes/sun/awt/image/JPEGImageDecoder.java ! src/share/classes/sun/awt/image/OffScreenImageSource.java ! src/share/classes/sun/awt/image/PNGImageDecoder.java ! src/share/classes/sun/awt/image/ToolkitImage.java ! src/share/classes/sun/awt/shell/ShellFolder.java ! src/share/classes/sun/awt/shell/ShellFolderColumnInfo.java ! src/share/classes/sun/awt/util/IdentityArrayList.java ! src/share/classes/sun/awt/util/IdentityLinkedList.java ! src/solaris/classes/sun/awt/X11/InfoWindow.java ! src/solaris/classes/sun/awt/X11/ListHelper.java ! src/solaris/classes/sun/awt/X11/MotifDnDDragSourceProtocol.java ! src/solaris/classes/sun/awt/X11/Native.java ! src/solaris/classes/sun/awt/X11/XAWTXSettings.java ! src/solaris/classes/sun/awt/X11/XAtomList.java ! src/solaris/classes/sun/awt/X11/XAwtState.java ! src/solaris/classes/sun/awt/X11/XBaseMenuWindow.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11/XCreateWindowParams.java ! src/solaris/classes/sun/awt/X11/XDataTransferer.java ! src/solaris/classes/sun/awt/X11/XDnDDragSourceProtocol.java ! src/solaris/classes/sun/awt/X11/XDragAndDropProtocols.java ! src/solaris/classes/sun/awt/X11/XDragSourceContextPeer.java ! src/solaris/classes/sun/awt/X11/XDragSourceProtocol.java ! src/solaris/classes/sun/awt/X11/XDropTargetContextPeer.java ! src/solaris/classes/sun/awt/X11/XDropTargetEventProcessor.java ! src/solaris/classes/sun/awt/X11/XDropTargetProtocol.java ! src/solaris/classes/sun/awt/X11/XDropTargetRegistry.java ! src/solaris/classes/sun/awt/X11/XEmbeddingContainer.java ! src/solaris/classes/sun/awt/X11/XFileDialogPeer.java ! src/solaris/classes/sun/awt/X11/XListPeer.java ! src/solaris/classes/sun/awt/X11/XMSelection.java ! src/solaris/classes/sun/awt/X11/XMenuBarPeer.java ! src/solaris/classes/sun/awt/X11/XMenuPeer.java ! src/solaris/classes/sun/awt/X11/XMenuWindow.java ! src/solaris/classes/sun/awt/X11/XPopupMenuPeer.java ! src/solaris/classes/sun/awt/X11/XSelection.java ! src/solaris/classes/sun/awt/X11/XToolkit.java ! src/solaris/classes/sun/awt/X11/XTrayIconPeer.java ! src/solaris/classes/sun/awt/X11/XWM.java ! src/solaris/classes/sun/awt/X11/XWindow.java ! src/solaris/classes/sun/awt/X11/XWindowPeer.java ! src/solaris/classes/sun/awt/X11CustomCursor.java ! src/solaris/classes/sun/awt/X11FontManager.java ! src/solaris/classes/sun/awt/X11GraphicsDevice.java ! src/solaris/classes/sun/awt/X11GraphicsEnvironment.java ! src/solaris/classes/sun/awt/X11InputMethod.java ! src/solaris/classes/sun/awt/XSettings.java ! src/solaris/classes/sun/awt/motif/MFontConfiguration.java Changeset: b3bd0f3320b6 Author: yan Date: 2014-04-29 14:32 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b3bd0f3320b6 8041592: [TEST_BUG] Move 42 AWT hw/lw mixing tests to jdk Reviewed-by: anthony, pchelko + test/java/awt/Mixing/AWT_Mixing/FrameBorderCounter.java + test/java/awt/Mixing/AWT_Mixing/GlassPaneOverlappingTestBase.java + test/java/awt/Mixing/AWT_Mixing/HierarchyBoundsListenerMixingTest.java + test/java/awt/Mixing/AWT_Mixing/JButtonInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JButtonOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JColorChooserOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JComboBoxOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JEditorPaneInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JEditorPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JGlassPaneInternalFrameOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JGlassPaneMoveOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JInternalFrameMoveOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JInternalFrameOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JLabelInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JLabelOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JListInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JListOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JMenuBarOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JPanelInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JPanelOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JPopupMenuOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JProgressBarInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JProgressBarOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JScrollBarInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JScrollBarOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JScrollPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JSliderInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JSliderOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JSpinnerInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JSpinnerOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JSplitPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JTableInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JTableOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JTextAreaInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JTextAreaOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JTextFieldInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JTextFieldOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JToggleButtonInGlassPaneOverlapping.java + test/java/awt/Mixing/AWT_Mixing/JToggleButtonOverlapping.java + test/java/awt/Mixing/AWT_Mixing/MixingFrameResizing.java + test/java/awt/Mixing/AWT_Mixing/MixingPanelsResizing.java + test/java/awt/Mixing/AWT_Mixing/OpaqueOverlapping.java + test/java/awt/Mixing/AWT_Mixing/OpaqueOverlappingChoice.java + test/java/awt/Mixing/AWT_Mixing/OverlappingTestBase.java + test/java/awt/Mixing/AWT_Mixing/SimpleOverlappingTestBase.java + test/java/awt/Mixing/AWT_Mixing/Util.java + test/java/awt/Mixing/AWT_Mixing/ViewportOverlapping.java Changeset: bcf64fb3407f Author: omajid Date: 2014-04-29 15:46 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bcf64fb3407f 8042159: Allow using a system-installed lcms2 Reviewed-by: andrew, ihse, prr ! make/lib/Awt2dLibraries.gmk ! src/share/native/sun/java2d/cmm/lcms/LCMS.c Changeset: c0192683fb63 Author: ngthomas Date: 2014-04-29 14:40 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c0192683fb63 Merge Changeset: 69ca0ba20534 Author: pchelko Date: 2014-04-30 12:41 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/69ca0ba20534 8042087: [macosx] LWCToolkit.inokeAndWait is calling EventQueue.invokeLater Reviewed-by: anthony, serb ! src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java Changeset: 1047241ab94b Author: simonis Date: 2014-04-30 11:29 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1047241ab94b 8042090: Fix invalid variable names sun/java2d/loops/ProcessPath.c Reviewed-by: prr ! src/share/native/sun/java2d/loops/ProcessPath.c Changeset: b04dc2c5b9b9 Author: malenkov Date: 2014-04-30 19:28 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b04dc2c5b9b9 8041917: unexcepted behavior of LineBorder while using Boolean variable true Reviewed-by: alexsch, serb ! src/share/classes/javax/swing/border/LineBorder.java ! test/javax/swing/border/Test4252164.java Changeset: 8a32763ec0b1 Author: serb Date: 2014-05-05 19:42 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8a32763ec0b1 8042212: [macosx] Toolkit.getScreenResolution() can return incorrect resolution Reviewed-by: anthony, pchelko ! src/macosx/native/sun/awt/CGraphicsDevice.m Changeset: d01841fda7a8 Author: prr Date: 2014-05-05 09:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d01841fda7a8 8038838: Totally remove all vestiges of com.sun.image.codec.jpeg from JDK 9 Reviewed-by: bae, vadim ! make/mapfiles/libjpeg/mapfile-vers-closed Changeset: de42513e996d Author: prr Date: 2014-05-05 12:49 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/de42513e996d Merge ! make/lib/Awt2dLibraries.gmk Changeset: d41dba23eca9 Author: darcy Date: 2014-05-05 23:19 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d41dba23eca9 8042256: Fix raw and unchecked lint warnings in com.sun.media.sound Reviewed-by: prr ! src/share/classes/com/sun/media/sound/AbstractLine.java ! src/share/classes/com/sun/media/sound/AbstractMidiDevice.java ! src/share/classes/com/sun/media/sound/AbstractMixer.java ! src/share/classes/com/sun/media/sound/AlawCodec.java ! src/share/classes/com/sun/media/sound/AudioSynthesizerPropertyInfo.java ! src/share/classes/com/sun/media/sound/DirectAudioDevice.java ! src/share/classes/com/sun/media/sound/EventDispatcher.java ! src/share/classes/com/sun/media/sound/JDK13Services.java ! src/share/classes/com/sun/media/sound/MidiInDeviceProvider.java ! src/share/classes/com/sun/media/sound/MidiOutDeviceProvider.java ! src/share/classes/com/sun/media/sound/MidiUtils.java ! src/share/classes/com/sun/media/sound/PCMtoPCMCodec.java ! src/share/classes/com/sun/media/sound/PortMixer.java ! src/share/classes/com/sun/media/sound/RealTimeSequencer.java ! src/share/classes/com/sun/media/sound/SoftSynthesizer.java ! src/share/classes/com/sun/media/sound/UlawCodec.java Changeset: 16471134008a Author: darcy Date: 2014-05-05 23:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/16471134008a 8039109: Fix unchecked and raw lint warnings in java.awt Reviewed-by: pchelko, forax, flar, prr ! src/share/classes/java/awt/AWTKeyStroke.java ! src/share/classes/java/awt/CardLayout.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/GraphicsEnvironment.java ! src/share/classes/java/awt/KeyboardFocusManager.java ! src/share/classes/java/awt/SystemTray.java ! src/share/classes/java/awt/datatransfer/MimeTypeParameterList.java ! src/share/classes/java/awt/dnd/DragGestureEvent.java ! src/share/classes/java/awt/geom/Area.java ! src/share/classes/java/awt/image/BufferedImage.java ! src/share/classes/java/awt/image/CropImageFilter.java ! src/share/classes/java/awt/image/FilteredImageSource.java ! src/share/classes/java/awt/image/ImageFilter.java ! src/share/classes/java/awt/image/MemoryImageSource.java ! src/share/classes/java/awt/image/ReplicateScaleFilter.java ! src/share/classes/java/awt/image/renderable/ParameterBlock.java ! src/share/classes/java/awt/image/renderable/RenderableImageOp.java ! src/share/classes/java/awt/image/renderable/RenderableImageProducer.java ! src/share/classes/java/awt/print/Book.java ! src/share/classes/java/awt/print/PrinterJob.java Changeset: eff56d740e3d Author: pchelko Date: 2014-05-07 19:40 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/eff56d740e3d 8042585: [macosx] Unused code in LWCToolkit.m Reviewed-by: serb, azvegint ! src/macosx/native/sun/awt/LWCToolkit.m Changeset: ddb31ed7121b Author: pchelko Date: 2014-05-07 19:47 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ddb31ed7121b 8042219: [macosx] LWComponentPeer should not reference classes from sun.lwawt.macosx Reviewed-by: serb, azvegint ! src/macosx/classes/sun/lwawt/LWComponentPeer.java ! src/macosx/classes/sun/lwawt/LWToolkit.java + src/macosx/classes/sun/lwawt/PlatformDropTarget.java ! src/macosx/classes/sun/lwawt/macosx/CDropTarget.java ! src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java ! src/macosx/native/sun/awt/CDropTarget.h ! src/macosx/native/sun/awt/CDropTarget.m Changeset: 75206fa5a43e Author: ddehaven Date: 2014-05-05 23:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/75206fa5a43e 8042440: awt_Plugin no longer needed Reviewed-by: serb, pchelko Contributed-by: David DeHaven ! make/lib/Awt2dLibraries.gmk ! make/mapfiles/libawt/mapfile-mawt-vers ! make/mapfiles/libawt/mapfile-vers ! make/mapfiles/libawt/mapfile-vers-linux ! make/mapfiles/libawt_xawt/mapfile-vers ! src/solaris/native/sun/awt/awt_LoadLibrary.c - src/solaris/native/sun/awt/awt_Plugin.c - src/solaris/native/sun/awt/awt_Plugin.h Changeset: 6f660f46f0f2 Author: simonis Date: 2014-05-08 11:46 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6f660f46f0f2 8042416: X11GraphicsEnvironment.isDisplayLocal() throws NoSuchElementException if DISPLAY host has more IP addresses than a local interface Reviewed-by: anthony, azvegint Contributed-by: matthia.braun at sap.com ! src/solaris/classes/sun/awt/X11GraphicsEnvironment.java Changeset: 415e14c14558 Author: pchelko Date: 2014-05-08 16:50 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/415e14c14558 8036917: [macosx] Native memory leaks. Reviewed-by: serb, azvegint ! src/macosx/native/sun/awt/CImage.m Changeset: 9c6ff56dfe00 Author: pchelko Date: 2014-05-08 18:37 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9c6ff56dfe00 8042752: [macosx] NSEvent instances leak throw JNI local references Reviewed-by: serb, azvegint ! src/macosx/native/sun/awt/AWTView.m ! src/macosx/native/sun/awt/CTrayIcon.m Changeset: 28b9b1940ff3 Author: prr Date: 2014-05-08 15:17 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/28b9b1940ff3 8038875: Remove use of ServiceLoader in finding class implementing sun.java2d.pipe. RenderingEngine Reviewed-by: flar, mchung ! make/CopyIntoClasses.gmk ! make/profile-rtjar-includes.txt - src/share/classes/sun/dc/META-INF/services/sun.java2d.pipe.RenderingEngine ! src/share/classes/sun/java2d/pipe/RenderingEngine.java - src/share/classes/sun/java2d/pisces/META-INF/services/sun.java2d.pipe.RenderingEngine - src/solaris/classes/sun/java2d/pisces/META-INF/services/sun.java2d.pipe.RenderingEngine Changeset: 8b9bbe3b2e83 Author: omajid Date: 2014-05-08 19:27 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8b9bbe3b2e83 8042806: Splashscreen uses libjpeg-internal macros Reviewed-by: anthony, prr ! src/share/native/sun/awt/splashscreen/splashscreen_jpeg.c Changeset: e343eef24517 Author: anashaty Date: 2014-05-12 18:21 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e343eef24517 8024932: [TEST_BUG] [macosx] javax/swing/text/StyledEditorKit/8016833/bug8016833.java failed Reviewed-by: serb, alexsch ! test/javax/swing/text/StyledEditorKit/8016833/bug8016833.java Changeset: 1a6c78863ead Author: prr Date: 2014-05-12 09:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1a6c78863ead 8038876: Remove use of ServiceLoader in finding class implementing sun.java2d.cmm.CMMServiceProvider Reviewed-by: bae, mchung ! make/CopyIntoClasses.gmk ! make/profile-rtjar-includes.txt ! src/share/classes/sun/java2d/cmm/CMSManager.java - src/share/classes/sun/java2d/cmm/lcms/META-INF/services/sun.java2d.cmm.CMMServiceProvider Changeset: a0fcf95f8143 Author: prr Date: 2014-05-12 09:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a0fcf95f8143 Merge - src/solaris/classes/java/lang/UNIXProcess.java.aix - src/solaris/classes/java/lang/UNIXProcess.java.bsd - src/solaris/classes/java/lang/UNIXProcess.java.linux - src/solaris/classes/java/lang/UNIXProcess.java.solaris Changeset: 30544a627823 Author: serb Date: 2014-05-13 16:06 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/30544a627823 8042007: Javadoc cleanup of javax.sound.sampled.spi package Reviewed-by: pchelko, bagiras ! src/share/classes/javax/sound/sampled/spi/AudioFileReader.java ! src/share/classes/javax/sound/sampled/spi/AudioFileWriter.java ! src/share/classes/javax/sound/sampled/spi/FormatConversionProvider.java ! src/share/classes/javax/sound/sampled/spi/MixerProvider.java Changeset: 335a1e9fce6f Author: bae Date: 2014-05-14 18:19 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/335a1e9fce6f 6945174: IndexOutOfBoundsException calling ImageIO.read() on malformed PNG Reviewed-by: prr, serb ! src/share/classes/com/sun/imageio/plugins/png/PNGImageReader.java + test/javax/imageio/plugins/png/ReadMalformedPngTest.java Changeset: 6f3559938123 Author: bagiras Date: 2014-05-15 20:09 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6f3559938123 8014755: [TEST_BUG] frames didn't closed after execution some awt/dnd/ tests Reviewed-by: serb, pchelko + test/java/awt/dnd/DragInterceptorAppletTest/DragInterceptorAppletTest.html + test/java/awt/dnd/DragInterceptorAppletTest/DragInterceptorAppletTest.java + test/java/awt/dnd/DragInterceptorAppletTest/DragInterceptorFrame.java + test/java/awt/dnd/DragInterceptorAppletTest/InterprocessMessages.java + test/java/awt/dnd/DragInterceptorAppletTest/SourceFrame.java + test/java/awt/dnd/InterJVMGetDropSuccessTest/InterJVMGetDropSuccessTest.html + test/java/awt/dnd/InterJVMGetDropSuccessTest/InterJVMGetDropSuccessTest.java + test/java/awt/dnd/NoFormatsCrashTest/NoFormatsCrashTest.html + test/java/awt/dnd/NoFormatsCrashTest/NoFormatsCrashTest.java ! test/java/awt/regtesthelpers/process/ProcessCommunicator.java Changeset: ba159a52edcc Author: alitvinov Date: 2014-05-15 20:21 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ba159a52edcc 8041725: Nimbus JList selection colors persist across L&F changes Reviewed-by: alexsch, alexp ! src/share/classes/javax/swing/plaf/nimbus/skin.laf + test/javax/swing/plaf/nimbus/8041725/bug8041725.java Changeset: c793ef08dc08 Author: azvegint Date: 2014-05-15 20:24 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c793ef08dc08 8041896: Test closed/java/awt/Choice/RemoveAllShrinkTest/RemoveAllShrinkTest fails with java.awt.IllegalComponentStateException Reviewed-by: pchelko, serb ! src/macosx/classes/com/apple/laf/AquaComboBoxPopup.java ! src/macosx/classes/sun/lwawt/LWChoicePeer.java + test/java/awt/Choice/RemoveAllShrinkTest/RemoveAllShrinkTest.java Changeset: 56024e323104 Author: ddehaven Date: 2014-05-13 10:29 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/56024e323104 8003900: X11 dependencies should be removed from Mac OS X build. Reviewed-by: anthony, art, pchelko Contributed-by: David DeHaven ! make/lib/Awt2dLibraries.gmk ! src/solaris/native/sun/awt/awt.h ! src/solaris/native/sun/awt/color.h ! src/solaris/native/sun/awt/img_util_md.h ! src/solaris/native/sun/awt/utility/rect.h Changeset: f142c0938978 Author: prr Date: 2014-05-23 09:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f142c0938978 Merge ! make/profile-rtjar-includes.txt ! src/share/classes/javax/swing/border/LineBorder.java ! src/share/classes/javax/swing/text/html/parser/Parser.java - src/share/classes/jdk/internal/util/xml/BasicXmlPropertiesProvider.java - src/share/classes/sun/util/spi/XmlPropertiesProvider.java - src/share/classes/sun/util/xml/META-INF/services/sun.util.spi.XmlPropertiesProvider - src/share/classes/sun/util/xml/PlatformXmlPropertiesProvider.java - test/java/util/Properties/CustomProvider.java - test/java/util/Properties/MyXmlPropertiesProvider.java Changeset: e48e3e902f4c Author: robm Date: 2014-05-23 19:42 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e48e3e902f4c 8041451: com.sun.jndi.ldap.Connection:ReadTimeout should abandon ldap request Reviewed-by: vinnie ! src/share/classes/com/sun/jndi/ldap/Connection.java Changeset: bff46681a3f8 Author: sla Date: 2014-05-25 09:37 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bff46681a3f8 8041923: Command line output is missing from jinfo Reviewed-by: dcubed, allwin, jbachorik ! src/share/classes/sun/tools/jinfo/JInfo.java Changeset: 461d8801b05a Author: alanb Date: 2014-05-26 15:52 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/461d8801b05a 8043958: Remove unused com.sun.pept classes from jdk repository Reviewed-by: lancea ! make/CompileJavaClasses.gmk - src/share/classes/com/sun/pept/Delegate.java - src/share/classes/com/sun/pept/encoding/Decoder.java - src/share/classes/com/sun/pept/encoding/Encoder.java - src/share/classes/com/sun/pept/ept/Acceptor.java - src/share/classes/com/sun/pept/ept/ContactInfo.java - src/share/classes/com/sun/pept/ept/ContactInfoList.java - src/share/classes/com/sun/pept/ept/ContactInfoListIterator.java - src/share/classes/com/sun/pept/ept/EPTFactory.java - src/share/classes/com/sun/pept/ept/MessageInfo.java - src/share/classes/com/sun/pept/presentation/MessageStruct.java - src/share/classes/com/sun/pept/presentation/Stub.java - src/share/classes/com/sun/pept/presentation/TargetFinder.java - src/share/classes/com/sun/pept/presentation/Tie.java - src/share/classes/com/sun/pept/protocol/Interceptors.java - src/share/classes/com/sun/pept/protocol/MessageDispatcher.java - src/share/classes/com/sun/pept/transport/Connection.java Changeset: c33989af5014 Author: igerasim Date: 2014-05-26 19:59 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c33989af5014 8043476: java/util/BitSet/BSMethods.java failed with: java.lang.OutOfMemoryError: Java heap space Reviewed-by: alanb ! test/java/util/BitSet/BSMethods.java Changeset: 7d144f6951bc Author: vlivanov Date: 2014-02-24 18:11 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7d144f6951bc 8037210: Get rid of char-based descriptions 'J' of basic types Reviewed-by: jrose, psandoz, twisti ! src/share/classes/java/lang/invoke/BoundMethodHandle.java ! src/share/classes/java/lang/invoke/DirectMethodHandle.java ! src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java ! src/share/classes/java/lang/invoke/LambdaForm.java ! src/share/classes/java/lang/invoke/MethodHandle.java ! src/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/share/classes/java/lang/invoke/MethodHandleNatives.java ! src/share/classes/java/lang/invoke/MethodHandleStatics.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/share/classes/java/lang/invoke/SimpleMethodHandle.java + test/java/lang/invoke/LambdaFormTest.java Changeset: dabb44358772 Author: kvn Date: 2014-05-26 18:34 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/dabb44358772 8035974: Refactor DigestBase.engineUpdate() method for better code generation by JIT compiler Summary: Move the lopp from DigestBase.engineUpdate() to new private method implCompressMultiBlock() which can be intrinsified. Reviewed-by: psandoz, ascarpino, forax Contributed-by: james.cheng at oracle.com ! src/share/classes/sun/security/provider/DigestBase.java Changeset: d6585e6b53fe Author: okutsu Date: 2014-05-27 16:20 +0900 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d6585e6b53fe 8033627: UTC+02:00 time zones are not detected correctly on Windows Reviewed-by: peytoia ! src/windows/lib/tzmappings Changeset: 6ec1e03985cc Author: luchsh Date: 2014-05-27 17:56 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6ec1e03985cc 8043495: Add native FileChannelImpl.transferTo0() implementation for AIX Reviewed-by: alanb ! src/solaris/native/sun/nio/ch/FileChannelImpl.c Changeset: e998d3c9cb08 Author: mchung Date: 2014-05-27 12:15 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e998d3c9cb08 8044034: Remove unused com/sun/tools/hat files Reviewed-by: sla - src/share/classes/com/sun/tools/hat/MANIFEST.mf - src/share/classes/com/sun/tools/hat/README.txt - src/share/classes/com/sun/tools/hat/build.xml Changeset: c2cb6fbb149e Author: rriggs Date: 2014-05-27 16:05 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c2cb6fbb149e 8003488: (process) Provide Process.getPid() Summary: Add Process.getPid Reviewed-by: alanb, martin, igerasim ! src/share/classes/java/lang/Process.java ! src/solaris/classes/java/lang/UNIXProcess.java ! src/windows/classes/java/lang/ProcessImpl.java ! src/windows/native/java/lang/ProcessImpl_md.c ! test/java/lang/ProcessBuilder/Basic.java Changeset: 069b9bde2729 Author: wetmore Date: 2014-05-22 20:24 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/069b9bde2729 8043342: Replace uses of StringBuffer with StringBuilder within crypto code Summary: JCE components of 8041679 here due to code signing process. Reviewed-by: xuelei, wetmore Contributed-by: otaviopolianasantana at gmail.com ! src/share/classes/com/sun/crypto/provider/DHParameters.java ! src/share/classes/com/sun/crypto/provider/DHPublicKey.java ! src/share/classes/com/sun/crypto/provider/OAEPParameters.java ! src/share/classes/sun/security/pkcs11/P11Util.java Changeset: 73e09a1f1f3f Author: wetmore Date: 2014-05-23 23:55 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/73e09a1f1f3f Merge - src/share/classes/sun/awt/image/MultiResolutionBufferedImage.java - src/share/classes/sun/dc/META-INF/services/sun.java2d.pipe.RenderingEngine - src/share/classes/sun/java2d/cmm/lcms/META-INF/services/sun.java2d.cmm.CMMServiceProvider - src/share/classes/sun/java2d/pisces/META-INF/services/sun.java2d.pipe.RenderingEngine - src/share/classes/sun/misc/ThreadGroupUtils.java - src/solaris/classes/sun/java2d/pisces/META-INF/services/sun.java2d.pipe.RenderingEngine - src/solaris/native/sun/awt/awt_Plugin.c - src/solaris/native/sun/awt/awt_Plugin.h Changeset: 182b5d527267 Author: wetmore Date: 2014-05-27 17:06 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/182b5d527267 Merge - src/share/classes/com/sun/pept/Delegate.java - src/share/classes/com/sun/pept/encoding/Decoder.java - src/share/classes/com/sun/pept/encoding/Encoder.java - src/share/classes/com/sun/pept/ept/Acceptor.java - src/share/classes/com/sun/pept/ept/ContactInfo.java - src/share/classes/com/sun/pept/ept/ContactInfoList.java - src/share/classes/com/sun/pept/ept/ContactInfoListIterator.java - src/share/classes/com/sun/pept/ept/EPTFactory.java - src/share/classes/com/sun/pept/ept/MessageInfo.java - src/share/classes/com/sun/pept/presentation/MessageStruct.java - src/share/classes/com/sun/pept/presentation/Stub.java - src/share/classes/com/sun/pept/presentation/TargetFinder.java - src/share/classes/com/sun/pept/presentation/Tie.java - src/share/classes/com/sun/pept/protocol/Interceptors.java - src/share/classes/com/sun/pept/protocol/MessageDispatcher.java - src/share/classes/com/sun/pept/transport/Connection.java Changeset: 4537360f09fe Author: wetmore Date: 2014-05-27 21:29 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4537360f09fe Merge - src/share/classes/com/sun/tools/hat/MANIFEST.mf - src/share/classes/com/sun/tools/hat/README.txt - src/share/classes/com/sun/tools/hat/build.xml Changeset: a02731d3f739 Author: katleman Date: 2014-05-29 22:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a02731d3f739 Added tag jdk9-b15 for changeset 4537360f09fe ! .hgtags Changeset: 6bdb138b48f9 Author: joehw Date: 2014-05-27 17:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6bdb138b48f9 8043592: The basic XML parser based on UKit fails to read XML files encoded in UTF-16BE or LE Reviewed-by: sherman, lancea ! src/share/classes/jdk/internal/util/xml/impl/Parser.java ! test/java/util/Properties/LoadAndStoreXML.java Changeset: 8a5bc1286b23 Author: igerasim Date: 2014-05-28 11:41 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8a5bc1286b23 8039319: (smartcardio) Card.transmitControlCommand() does not work on Mac OS X Reviewed-by: valeriep ! src/solaris/native/sun/security/smartcardio/pcsc_md.c Changeset: acda974a4986 Author: prappo Date: 2014-05-27 10:27 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/acda974a4986 8024832: ServerSocketChannel.socket().accept() throws IllegalBlockingModeException if not bound Reviewed-by: chegar, michaelm, alanb, mr ! src/share/classes/sun/nio/ch/ServerSocketAdaptor.java + test/sun/nio/ch/ServerSocketAdaptorTest.java Changeset: d96a0380fcee Author: igerasim Date: 2014-05-29 01:50 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d96a0380fcee 7047033: (smartcardio) Card.disconnect(boolean reset) does not reset when reset is true Reviewed-by: valeriep ! src/share/classes/sun/security/smartcardio/CardImpl.java Changeset: d1978cf32bc1 Author: weijun Date: 2014-05-29 10:36 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d1978cf32bc1 8036709: Java 7 jarsigner displays warning about cert policy tree Reviewed-by: mullan ! src/share/classes/sun/security/tools/jarsigner/Main.java + test/sun/security/tools/jarsigner/certpolicy.sh Changeset: 385577452761 Author: darcy Date: 2014-05-28 23:08 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/385577452761 8043916: Fix fallthrough lint warnings in java/lang/UNIXProcess.java Reviewed-by: lancea, alanb ! src/solaris/classes/java/lang/UNIXProcess.java Changeset: 47a74d7aff59 Author: igerasim Date: 2014-05-29 10:17 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/47a74d7aff59 8043720: (smartcardio) Native memory should be handled more accurately Reviewed-by: valeriep ! src/share/native/sun/security/smartcardio/pcsc.c Changeset: 0d9f2bdf6dc9 Author: vlivanov Date: 2014-05-29 13:27 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0d9f2bdf6dc9 8035186: j2se_jdk/jdk/test/java/lang/invoke/lambda/LogGeneratedClassesTest.java - assertion error Reviewed-by: psandoz ! test/java/lang/invoke/lambda/LogGeneratedClassesTest.java Changeset: 79a6703ab839 Author: vinnie Date: 2014-05-29 15:50 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/79a6703ab839 8044038: Security tests fail on 32 bit linux platform Reviewed-by: xuelei, weijun ! test/sun/security/pkcs11/PKCS11Test.java ! test/sun/security/tools/keytool/autotest.sh Changeset: 62d3355b444e Author: igerasim Date: 2014-05-30 02:33 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/62d3355b444e 8044342: build failure on Windows noticed with recent smartcardio fix Reviewed-by: valeriep ! src/share/native/sun/security/smartcardio/pcsc.c Changeset: 36a62e89532e Author: weijun Date: 2014-05-30 14:37 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/36a62e89532e 8036779: sun.security.krb5.KdcComm interprets kdc_timeout as msec instead of sec Reviewed-by: xuelei ! src/share/classes/sun/security/krb5/KdcComm.java ! test/sun/security/krb5/auto/KDC.java ! test/sun/security/krb5/auto/UdpTcp.java Changeset: 5a9976e5f0ca Author: alanb Date: 2014-05-30 14:32 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5a9976e5f0ca 8044027: Remove unused XML Signature schema and dtd files from source Reviewed-by: mullan ! make/CopyIntoClasses.gmk - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/etsi.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.dtd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.xsd Changeset: 6cfe32e4e51e Author: lana Date: 2014-05-30 09:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6cfe32e4e51e Merge - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/etsi.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.dtd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.xsd Changeset: ab7d2c565b0d Author: sla Date: 2014-05-30 19:09 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ab7d2c565b0d 8044418: Add com/sun/jdi/JdbReadTwiceTest.sh to ProblemList.txt Reviewed-by: alanb, allwin ! test/ProblemList.txt Changeset: 2ba52b552a17 Author: katleman Date: 2014-06-04 20:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2ba52b552a17 Added tag jdk9-b16 for changeset ab7d2c565b0d ! .hgtags Changeset: 7063484f2d5d Author: rriggs Date: 2014-05-30 15:46 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7063484f2d5d 8044461: Cleanup new Boolean and single character strings Reviewed-by: rriggs, alanb, lancea Contributed-by: otaviopolianasantana at gmail.com ! src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java ! src/share/classes/com/sun/jndi/cosnaming/CorbanameUrl.java ! src/share/classes/com/sun/jndi/rmi/registry/RegistryContext.java ! src/share/classes/com/sun/jndi/toolkit/url/GenericURLContext.java ! src/share/classes/com/sun/rmi/rmid/ExecOptionPermission.java ! src/share/classes/com/sun/rowset/CachedRowSetImpl.java ! src/share/classes/com/sun/rowset/JoinRowSetImpl.java ! src/share/classes/com/sun/rowset/internal/WebRowSetXmlWriter.java ! src/share/classes/com/sun/rowset/internal/XmlReaderContentHandler.java ! src/share/classes/com/sun/rowset/internal/XmlResolver.java ! src/share/classes/com/sun/security/auth/module/JndiLoginModule.java ! src/share/classes/com/sun/security/auth/module/LdapLoginModule.java ! src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java ! src/share/classes/com/sun/tools/example/debug/tty/Commands.java ! src/share/classes/com/sun/tools/hat/internal/server/AllClassesQuery.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/ClassLoader.java ! src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java ! src/share/classes/java/net/CookieManager.java ! src/share/classes/java/net/InetAddress.java ! src/share/classes/java/net/Socket.java ! src/share/classes/java/net/SocketPermission.java ! src/share/classes/java/net/SocksSocketImpl.java ! src/share/classes/java/net/URI.java ! src/share/classes/java/security/BasicPermission.java ! src/share/classes/java/security/Provider.java ! src/share/classes/java/security/Security.java ! src/share/classes/java/util/PropertyPermission.java ! src/share/classes/java/util/jar/JarVerifier.java ! src/share/classes/java/util/logging/LogManager.java ! src/share/classes/java/util/logging/XMLFormatter.java ! src/share/classes/javax/management/MBeanPermission.java ! src/share/classes/javax/management/modelmbean/DescriptorSupport.java ! src/share/classes/javax/management/modelmbean/RequiredModelMBean.java ! src/share/classes/javax/security/auth/PrivateCredentialPermission.java ! src/share/classes/javax/security/sasl/Sasl.java ! src/share/classes/sun/jvmstat/monitor/AbstractMonitor.java ! src/share/classes/sun/jvmstat/monitor/HostIdentifier.java ! src/share/classes/sun/management/StackTraceElementCompositeData.java ! src/share/classes/sun/management/ThreadInfoCompositeData.java ! src/share/classes/sun/management/VMOptionCompositeData.java ! src/share/classes/sun/management/snmp/jvminstr/NotificationTargetImpl.java ! src/share/classes/sun/misc/ExtensionInfo.java ! src/share/classes/sun/misc/JarIndex.java ! src/share/classes/sun/misc/URLClassPath.java ! src/share/classes/sun/net/ftp/impl/FtpClient.java ! src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java ! src/share/classes/sun/net/util/IPAddressUtil.java ! src/share/classes/sun/net/www/ParseUtil.java ! src/share/classes/sun/reflect/misc/ReflectUtil.java ! src/share/classes/sun/rmi/runtime/Log.java ! src/share/classes/sun/rmi/transport/proxy/CGIHandler.java ! src/share/classes/sun/security/jgss/GSSManagerImpl.java ! src/share/classes/sun/security/jgss/wrapper/Krb5Util.java ! src/share/classes/sun/security/provider/PolicyFile.java ! src/share/classes/sun/security/ssl/SunX509KeyManagerImpl.java ! src/share/classes/sun/security/ssl/X509KeyManagerImpl.java ! src/share/classes/sun/security/util/HostnameChecker.java ! src/share/classes/sun/security/util/SignatureFileVerifier.java ! src/share/classes/sun/security/x509/CRLExtensions.java ! src/share/classes/sun/tools/jconsole/ConnectDialog.java ! src/share/classes/sun/tools/jconsole/inspector/Utils.java ! src/share/classes/sun/tools/jconsole/inspector/XOperations.java ! src/share/classes/sun/tools/jconsole/inspector/XTree.java Changeset: c89a6c0f54fc Author: mikael Date: 2014-05-30 09:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c89a6c0f54fc 8044363: Remove special build options for unpack200 executable Reviewed-by: ksrini ! make/CompileLaunchers.gmk Changeset: e95072225d17 Author: ksrini Date: 2014-05-30 13:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e95072225d17 8044046: [asm] refresh internal ASM version to v5.0.3 Reviewed-by: psandoz, sundar ! src/share/classes/jdk/internal/org/objectweb/asm/ClassWriter.java ! src/share/classes/jdk/internal/org/objectweb/asm/Frame.java ! src/share/classes/jdk/internal/org/objectweb/asm/Item.java ! src/share/classes/jdk/internal/org/objectweb/asm/Label.java ! src/share/classes/jdk/internal/org/objectweb/asm/MethodWriter.java ! src/share/classes/jdk/internal/org/objectweb/asm/Type.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/InstructionAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/Method.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/Remapper.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/SerialVersionUIDAdder.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/MethodNode.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/analysis/AnalyzerException.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/analysis/Frame.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/ASMifier.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/CheckClassAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/Textifier.java ! src/share/classes/jdk/internal/org/objectweb/asm/version.txt Changeset: c5c3515cb526 Author: darcy Date: 2014-05-30 16:41 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c5c3515cb526 8044477: Fix fallthrough lint warning in ASM Reviewed-by: lancea ! src/share/classes/jdk/internal/org/objectweb/asm/Item.java Changeset: b561412cd668 Author: darcy Date: 2014-05-30 16:45 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b561412cd668 8039865: Add fallthrough lint warning to build of jdk repository Reviewed-by: erikj ! make/Setup.gmk Changeset: 5cab03c4e5f9 Author: omajid Date: 2014-06-01 11:54 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5cab03c4e5f9 8044235: src.zip should include all sources Reviewed-by: andrew, dholmes ! make/CreateJars.gmk Changeset: e0cd39b72ac5 Author: alanb Date: 2014-06-02 09:19 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e0cd39b72ac5 8043753: Drop javax.transaction from compact2 and compact3 Reviewed-by: dholmes ! make/profile-rtjar-includes.txt Changeset: cb15bc14c26a Author: igerasim Date: 2014-06-02 19:49 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/cb15bc14c26a 8037866: Replace the Fun class in tests with lambdas Reviewed-by: martin ! test/java/lang/ProcessBuilder/Basic.java ! test/java/nio/charset/StandardCharsets/Standard.java ! test/java/util/Collection/BiggernYours.java ! test/java/util/Collection/IteratorAtEnd.java ! test/java/util/Collection/MOAT.java ! test/java/util/Collections/AsLifoQueue.java ! test/java/util/NavigableMap/LockStep.java ! test/java/util/PriorityQueue/ForgetMeNot.java ! test/java/util/concurrent/BlockingQueue/Interrupt.java ! test/java/util/concurrent/CyclicBarrier/Basic.java ! test/java/util/concurrent/Executors/Throws.java ! test/java/util/concurrent/FutureTask/Customized.java ! test/java/util/concurrent/ThreadPoolExecutor/ConfigChanges.java ! test/java/util/concurrent/ThreadPoolExecutor/ShutdownNowExecuteRace.java ! test/sun/nio/cs/FindOneCharEncoderBugs.java Changeset: 259d5726632f Author: ascarpino Date: 2014-06-02 17:08 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/259d5726632f 8041142: Re-enabling CBC_PAD PKCS11 mechanisms for Solaris Reviewed-by: valeriep ! src/share/lib/security/sunpkcs11-solaris.cfg Changeset: 17b50862c27d Author: ascarpino Date: 2014-06-02 17:14 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/17b50862c27d 8037742: Re-enabling PKCS11 HMAC mechanisms in Solaris Reviewed-by: valeriep ! src/share/lib/security/sunpkcs11-solaris.cfg Changeset: 9d59a8937c0b Author: yan Date: 2014-06-03 12:52 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9d59a8937c0b 8032527: fix a couple doclint errors in java/awt/geom/Path2D Reviewed-by: prr Contributed-by: Steven Sides ! src/share/classes/java/awt/geom/Path2D.java Changeset: 13c3451f3587 Author: thartmann Date: 2014-06-03 14:58 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/13c3451f3587 8005873: JRuby test_respond_to.rb asserts with: MT-unsafe modification of inline cache Reviewed-by: vlivanov, jrose, psandoz ! src/share/classes/java/lang/invoke/LambdaForm.java ! src/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/share/classes/java/lang/invoke/MethodTypeForm.java Changeset: b96d2940e35b Author: mullan Date: 2014-06-03 07:34 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b96d2940e35b 8036841: Reuse no-perms AccessControlContext object when performing isAuthorized check Reviewed-by: wetmore ! src/share/classes/java/security/AccessController.java Changeset: 49f58f07e360 Author: mullan Date: 2014-06-03 07:35 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/49f58f07e360 Merge - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/etsi.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.dtd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.xsd Changeset: 21dc97b6aa48 Author: erikj Date: 2014-06-03 10:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/21dc97b6aa48 8043160: JDK 9 Build failure in accessbridge Reviewed-by: prr, tbell ! make/CompileJavaClasses.gmk ! make/lib/PlatformLibraries.gmk Changeset: 77703793fd36 Author: erikj Date: 2014-06-03 10:55 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/77703793fd36 8044480: JDK image target overwrites lib/server/libjsig.dylib symlink with a copy of lib/libjsig.dylib Reviewed-by: dcubed, tbell, dholmes ! make/Bundles.gmk Changeset: adaf3b7e6150 Author: yan Date: 2014-06-03 17:55 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/adaf3b7e6150 8040081: Tidy warnings cleanup for java.applet Reviewed-by: pchelko Contributed-by: Alexander Stepanov ! src/share/classes/java/applet/Applet.java ! src/share/classes/java/applet/AppletContext.java Changeset: b84c163b9598 Author: kizune Date: 2014-06-03 18:31 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b84c163b9598 8044206: LambdaMetafactory.altMetafactory javadoc refers to wrong method Reviewed-by: briangoetz, jjg ! src/share/classes/java/lang/invoke/LambdaMetafactory.java Changeset: b84aa47bbe0e Author: sundar Date: 2014-06-03 21:21 +0530 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b84aa47bbe0e 8044647: sun/tools/jrunscript/jrunscriptTest.sh start failing: Output of jrunscript -l nashorn differ from expected output Reviewed-by: jlaskey, lagergren, ksrini ! test/sun/tools/jrunscript/jrunscriptTest.sh Changeset: a63eb531f049 Author: xuelei Date: 2014-06-04 09:48 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a63eb531f049 8044771: PKIXValidator indent cleanup Reviewed-by: weijun ! src/share/classes/sun/security/validator/PKIXValidator.java Changeset: 46d876900ffe Author: miauno Date: 2014-06-02 17:59 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/46d876900ffe 8044495: Remove test demo/jvmti/mtrace/TraceJFrame.java Reviewed-by: sla, sspitsyn - test/demo/jvmti/mtrace/JFrameCreateTime.java - test/demo/jvmti/mtrace/TraceJFrame.java Changeset: d23c0eb930f7 Author: aefimov Date: 2014-06-04 16:26 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d23c0eb930f7 8032901: WaitForMultipleObjects() return value not handled appropriately Reviewed-by: dholmes, sla ! src/windows/transport/shmem/shmem_md.c Changeset: c5a2fc3ec942 Author: mtobiass Date: 2014-06-04 13:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c5a2fc3ec942 8036006: [TESTBUG] sun/tools/native2ascii/NativeErrors.java fails: Process exit code was 0, but error was expected. Summary: Ignore read-only test if file is not read-only. This will happen when test is run as root. Reviewed-by: sla, dholmes ! test/sun/tools/native2ascii/NativeErrors.java Changeset: da62865b6478 Author: chegar Date: 2014-06-04 13:37 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/da62865b6478 8044590: Broken links in jre.api.net.socketoptions Reviewed-by: michaelm ! src/share/classes/jdk/net/Sockets.java Changeset: a4138f3a3432 Author: jfranck Date: 2014-06-04 14:42 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a4138f3a3432 8039916: AnnotatedType.getType() of a Executable parameters may return wrong type Reviewed-by: psandoz ! src/share/classes/java/lang/reflect/Executable.java + test/java/lang/annotation/typeAnnotations/TestExecutableGetAnnotatedType.java Changeset: 6aaad55171e7 Author: sherman Date: 2014-06-04 11:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6aaad55171e7 8044725: Bug in zlib 1.2.5 prevents inflation of some gzipped files Summary: to upgrade zlib version from 1.2.5 to 1.2.8 Reviewed-by: alanb, iris ! make/CompileLaunchers.gmk ! make/lib/Awt2dLibraries.gmk ! make/lib/CoreLibraries.gmk - src/share/native/java/util/zip/zlib-1.2.5/ChangeLog - src/share/native/java/util/zip/zlib-1.2.5/README - src/share/native/java/util/zip/zlib-1.2.5/compress.c - src/share/native/java/util/zip/zlib-1.2.5/crc32.h - src/share/native/java/util/zip/zlib-1.2.5/deflate.c - src/share/native/java/util/zip/zlib-1.2.5/deflate.h - src/share/native/java/util/zip/zlib-1.2.5/gzclose.c - src/share/native/java/util/zip/zlib-1.2.5/gzguts.h - src/share/native/java/util/zip/zlib-1.2.5/gzlib.c - src/share/native/java/util/zip/zlib-1.2.5/gzread.c - src/share/native/java/util/zip/zlib-1.2.5/gzwrite.c - src/share/native/java/util/zip/zlib-1.2.5/infback.c - src/share/native/java/util/zip/zlib-1.2.5/inffast.c - src/share/native/java/util/zip/zlib-1.2.5/inffast.h - src/share/native/java/util/zip/zlib-1.2.5/inffixed.h - src/share/native/java/util/zip/zlib-1.2.5/inflate.c - src/share/native/java/util/zip/zlib-1.2.5/inflate.h - src/share/native/java/util/zip/zlib-1.2.5/inftrees.c - src/share/native/java/util/zip/zlib-1.2.5/inftrees.h - src/share/native/java/util/zip/zlib-1.2.5/patches/ChangeLog_java - src/share/native/java/util/zip/zlib-1.2.5/trees.c - src/share/native/java/util/zip/zlib-1.2.5/trees.h - src/share/native/java/util/zip/zlib-1.2.5/uncompr.c - src/share/native/java/util/zip/zlib-1.2.5/zadler32.c - src/share/native/java/util/zip/zlib-1.2.5/zconf.h - src/share/native/java/util/zip/zlib-1.2.5/zcrc32.c - src/share/native/java/util/zip/zlib-1.2.5/zlib.h - src/share/native/java/util/zip/zlib-1.2.5/zutil.c - src/share/native/java/util/zip/zlib-1.2.5/zutil.h + src/share/native/java/util/zip/zlib-1.2.8/ChangeLog + src/share/native/java/util/zip/zlib-1.2.8/README + src/share/native/java/util/zip/zlib-1.2.8/compress.c + src/share/native/java/util/zip/zlib-1.2.8/crc32.h + src/share/native/java/util/zip/zlib-1.2.8/deflate.c + src/share/native/java/util/zip/zlib-1.2.8/deflate.h + src/share/native/java/util/zip/zlib-1.2.8/gzclose.c + src/share/native/java/util/zip/zlib-1.2.8/gzguts.h + src/share/native/java/util/zip/zlib-1.2.8/gzlib.c + src/share/native/java/util/zip/zlib-1.2.8/gzread.c + src/share/native/java/util/zip/zlib-1.2.8/gzwrite.c + src/share/native/java/util/zip/zlib-1.2.8/infback.c + src/share/native/java/util/zip/zlib-1.2.8/inffast.c + src/share/native/java/util/zip/zlib-1.2.8/inffast.h + src/share/native/java/util/zip/zlib-1.2.8/inffixed.h + src/share/native/java/util/zip/zlib-1.2.8/inflate.c + src/share/native/java/util/zip/zlib-1.2.8/inflate.h + src/share/native/java/util/zip/zlib-1.2.8/inftrees.c + src/share/native/java/util/zip/zlib-1.2.8/inftrees.h + src/share/native/java/util/zip/zlib-1.2.8/patches/ChangeLog_java + src/share/native/java/util/zip/zlib-1.2.8/trees.c + src/share/native/java/util/zip/zlib-1.2.8/trees.h + src/share/native/java/util/zip/zlib-1.2.8/uncompr.c + src/share/native/java/util/zip/zlib-1.2.8/zadler32.c + src/share/native/java/util/zip/zlib-1.2.8/zconf.h + src/share/native/java/util/zip/zlib-1.2.8/zcrc32.c + src/share/native/java/util/zip/zlib-1.2.8/zlib.h + src/share/native/java/util/zip/zlib-1.2.8/zutil.c + src/share/native/java/util/zip/zlib-1.2.8/zutil.h Changeset: df4935532ab7 Author: sherman Date: 2014-06-04 14:00 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/df4935532ab7 8044727: Problem reading the contents of some zip files Summary: zis.readLOC() should not interpret ZIP64 data in extra field, if not necessary Reviewed-by: alanb ! src/share/classes/java/util/zip/ZipInputStream.java Changeset: a8012caa6ced Author: weijun Date: 2014-06-05 15:27 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a8012caa6ced 8044755: Add a test for algorithm constraints check in jarsigner Reviewed-by: xuelei + test/sun/security/tools/keytool/weaksize.sh Changeset: 9e8cddf3312e Author: michaelm Date: 2014-06-05 12:13 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9e8cddf3312e 8044766: New jdk.net classes have @since 1.9 tags in 8u20 Reviewed-by: chegar ! src/share/classes/jdk/net/ExtendedSocketOptions.java ! src/share/classes/jdk/net/NetworkPermission.java ! src/share/classes/jdk/net/SocketFlow.java ! src/share/classes/jdk/net/package-info.java Changeset: fd8e675f141b Author: lana Date: 2014-06-05 19:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/fd8e675f141b Merge - src/share/native/java/util/zip/zlib-1.2.5/ChangeLog - src/share/native/java/util/zip/zlib-1.2.5/README - src/share/native/java/util/zip/zlib-1.2.5/compress.c - src/share/native/java/util/zip/zlib-1.2.5/crc32.h - src/share/native/java/util/zip/zlib-1.2.5/deflate.c - src/share/native/java/util/zip/zlib-1.2.5/deflate.h - src/share/native/java/util/zip/zlib-1.2.5/gzclose.c - src/share/native/java/util/zip/zlib-1.2.5/gzguts.h - src/share/native/java/util/zip/zlib-1.2.5/gzlib.c - src/share/native/java/util/zip/zlib-1.2.5/gzread.c - src/share/native/java/util/zip/zlib-1.2.5/gzwrite.c - src/share/native/java/util/zip/zlib-1.2.5/infback.c - src/share/native/java/util/zip/zlib-1.2.5/inffast.c - src/share/native/java/util/zip/zlib-1.2.5/inffast.h - src/share/native/java/util/zip/zlib-1.2.5/inffixed.h - src/share/native/java/util/zip/zlib-1.2.5/inflate.c - src/share/native/java/util/zip/zlib-1.2.5/inflate.h - src/share/native/java/util/zip/zlib-1.2.5/inftrees.c - src/share/native/java/util/zip/zlib-1.2.5/inftrees.h - src/share/native/java/util/zip/zlib-1.2.5/patches/ChangeLog_java - src/share/native/java/util/zip/zlib-1.2.5/trees.c - src/share/native/java/util/zip/zlib-1.2.5/trees.h - src/share/native/java/util/zip/zlib-1.2.5/uncompr.c - src/share/native/java/util/zip/zlib-1.2.5/zadler32.c - src/share/native/java/util/zip/zlib-1.2.5/zconf.h - src/share/native/java/util/zip/zlib-1.2.5/zcrc32.c - src/share/native/java/util/zip/zlib-1.2.5/zlib.h - src/share/native/java/util/zip/zlib-1.2.5/zutil.c - src/share/native/java/util/zip/zlib-1.2.5/zutil.h - test/demo/jvmti/mtrace/JFrameCreateTime.java - test/demo/jvmti/mtrace/TraceJFrame.java Changeset: 6ad17b31f0d3 Author: katleman Date: 2014-06-12 10:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6ad17b31f0d3 Added tag jdk9-b17 for changeset fd8e675f141b ! .hgtags Changeset: d02b062bc827 Author: katleman Date: 2014-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d02b062bc827 Added tag jdk9-b18 for changeset 6ad17b31f0d3 ! .hgtags Changeset: de669b57f334 Author: chegar Date: 2014-06-06 10:47 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/de669b57f334 8043613: Update .properties files for serialver tool Reviewed-by: mfang ! src/share/classes/sun/tools/serialver/resources/serialver_ja.properties ! src/share/classes/sun/tools/serialver/resources/serialver_zh_CN.properties Changeset: a50ec15ca037 Author: weijun Date: 2014-06-06 22:31 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a50ec15ca037 8044747: [TESTBUG] Test sun/security/tools/policytool/i18n.sh fails after clicking 'Done' button in test frame Reviewed-by: xuelei ! test/sun/security/tools/policytool/i18n.sh Changeset: f0ae8bebfb14 Author: luchsh Date: 2014-06-07 00:17 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f0ae8bebfb14 8043954: Add async connect() support to NET_Connect() for AIX platform Reviewed-by: alanb ! src/aix/native/java/net/aix_close.c Changeset: c9fe43f1cddb Author: mduigou Date: 2014-06-06 14:23 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c9fe43f1cddb 8046085: inserting null key into HashMap treebin fails. Reviewed-by: dl, mduigou, alanb, chegar Contributed-by: paul.sandoz at oracle.com, mike.duigou at oracle.com ! src/share/classes/java/util/HashMap.java + test/java/util/HashMap/PutNullKey.java Changeset: 56b7e029b7b6 Author: vlivanov Date: 2014-06-09 15:40 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/56b7e029b7b6 8032400: JSR292: invokeSpecial: InternalError attempting to lookup a method Reviewed-by: psandoz, jrose ! src/share/classes/java/lang/invoke/MethodHandles.java + test/java/lang/invoke/lookup/SpecialStatic.java Changeset: c2969f4cd5e4 Author: vinnie Date: 2014-06-10 15:49 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c2969f4cd5e4 8040812: Uninitialised memory in jdk/src/share/native/sun/security/ec/impl/mpi.c Reviewed-by: mullan ! src/share/native/sun/security/ec/impl/mpi.c Changeset: 11d618c585c0 Author: martin Date: 2014-06-10 08:07 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/11d618c585c0 8004807: java/util/Timer/Args.java failing intermittently in HS testing Summary: update test to improve reliability Reviewed-by: rriggs, ewang ! test/java/util/Timer/Args.java Changeset: 7b404a7be697 Author: ascarpino Date: 2014-06-10 12:04 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7b404a7be697 8039212: SecretKeyBasic.sh needs to avoid NSS libnss3 and libsoftokn3 version mismatches Reviewed-by: vinnie ! test/sun/security/pkcs11/KeyStore/SecretKeysBasic.java ! test/sun/security/pkcs11/PKCS11Test.java Changeset: e313c083fbb6 Author: ascarpino Date: 2014-06-10 14:17 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e313c083fbb6 8046368: Code cleanup in SeedGenerator.java Reviewed-by: mullan Contributed-by: Jamil Nimeh ! src/share/classes/sun/security/provider/SeedGenerator.java Changeset: aa7632edb50c Author: henryjen Date: 2014-06-10 16:18 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/aa7632edb50c 8044740: Convert all JDK versions used in @since tag to 1.n[.n] in jdk repo Reviewed-by: mduigou, lancea, alanb, mullan ! src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java ! src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java ! src/share/classes/com/sun/java/util/jar/pack/package.html ! src/share/classes/com/sun/management/DiagnosticCommandMBean.java ! src/share/classes/com/sun/rowset/CachedRowSetImpl.java ! src/share/classes/com/sun/rowset/JdbcRowSetImpl.java ! src/share/classes/java/applet/Applet.java ! src/share/classes/java/applet/AppletContext.java ! src/share/classes/java/applet/AppletStub.java ! src/share/classes/java/applet/AudioClip.java ! src/share/classes/java/applet/package.html ! src/share/classes/java/awt/AWTError.java ! src/share/classes/java/awt/AWTException.java ! src/share/classes/java/awt/BorderLayout.java ! src/share/classes/java/awt/Button.java ! src/share/classes/java/awt/Canvas.java ! src/share/classes/java/awt/CardLayout.java ! src/share/classes/java/awt/Checkbox.java ! src/share/classes/java/awt/CheckboxGroup.java ! src/share/classes/java/awt/CheckboxMenuItem.java ! src/share/classes/java/awt/Choice.java ! src/share/classes/java/awt/Color.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/Container.java ! src/share/classes/java/awt/Dialog.java ! src/share/classes/java/awt/Event.java ! src/share/classes/java/awt/FileDialog.java ! src/share/classes/java/awt/FlowLayout.java ! src/share/classes/java/awt/Font.java ! src/share/classes/java/awt/FontMetrics.java ! src/share/classes/java/awt/Frame.java ! src/share/classes/java/awt/Graphics.java ! src/share/classes/java/awt/Graphics2D.java ! src/share/classes/java/awt/GridBagConstraints.java ! src/share/classes/java/awt/GridBagLayout.java ! src/share/classes/java/awt/GridBagLayoutInfo.java ! src/share/classes/java/awt/GridLayout.java ! src/share/classes/java/awt/Image.java ! src/share/classes/java/awt/Insets.java ! src/share/classes/java/awt/Label.java ! src/share/classes/java/awt/List.java ! src/share/classes/java/awt/MediaTracker.java ! src/share/classes/java/awt/Menu.java ! src/share/classes/java/awt/MenuBar.java ! src/share/classes/java/awt/MenuComponent.java ! src/share/classes/java/awt/MenuItem.java ! src/share/classes/java/awt/MenuShortcut.java ! src/share/classes/java/awt/Panel.java ! src/share/classes/java/awt/ScrollPaneAdjustable.java ! src/share/classes/java/awt/Scrollbar.java ! src/share/classes/java/awt/TextArea.java ! src/share/classes/java/awt/TextComponent.java ! src/share/classes/java/awt/TextField.java ! src/share/classes/java/awt/Toolkit.java ! src/share/classes/java/awt/Window.java ! src/share/classes/java/awt/datatransfer/package.html ! src/share/classes/java/awt/event/InputEvent.java ! src/share/classes/java/awt/event/WindowEvent.java ! src/share/classes/java/awt/event/package.html ! src/share/classes/java/awt/im/spi/package.html ! src/share/classes/java/awt/image/package.html ! src/share/classes/java/awt/package.html ! src/share/classes/java/io/BufferedInputStream.java ! src/share/classes/java/io/BufferedOutputStream.java ! src/share/classes/java/io/BufferedReader.java ! src/share/classes/java/io/BufferedWriter.java ! src/share/classes/java/io/ByteArrayInputStream.java ! src/share/classes/java/io/ByteArrayOutputStream.java ! src/share/classes/java/io/CharArrayReader.java ! src/share/classes/java/io/CharArrayWriter.java ! src/share/classes/java/io/CharConversionException.java ! src/share/classes/java/io/DataInput.java ! src/share/classes/java/io/DataInputStream.java ! src/share/classes/java/io/DataOutput.java ! src/share/classes/java/io/DataOutputStream.java ! src/share/classes/java/io/EOFException.java ! src/share/classes/java/io/Externalizable.java ! src/share/classes/java/io/File.java ! src/share/classes/java/io/FileInputStream.java ! src/share/classes/java/io/FileNotFoundException.java ! src/share/classes/java/io/FileOutputStream.java ! src/share/classes/java/io/FileReader.java ! src/share/classes/java/io/FileWriter.java ! src/share/classes/java/io/FilenameFilter.java ! src/share/classes/java/io/FilterInputStream.java ! src/share/classes/java/io/FilterOutputStream.java ! src/share/classes/java/io/FilterReader.java ! src/share/classes/java/io/FilterWriter.java ! src/share/classes/java/io/IOException.java ! src/share/classes/java/io/InputStream.java ! src/share/classes/java/io/InputStreamReader.java ! src/share/classes/java/io/InterruptedIOException.java ! src/share/classes/java/io/InvalidClassException.java ! src/share/classes/java/io/InvalidObjectException.java ! src/share/classes/java/io/LineNumberInputStream.java ! src/share/classes/java/io/LineNumberReader.java ! src/share/classes/java/io/NotActiveException.java ! src/share/classes/java/io/NotSerializableException.java ! src/share/classes/java/io/ObjectInput.java ! src/share/classes/java/io/ObjectInputStream.java ! src/share/classes/java/io/ObjectInputValidation.java ! src/share/classes/java/io/ObjectOutput.java ! src/share/classes/java/io/ObjectOutputStream.java ! src/share/classes/java/io/ObjectStreamClass.java ! src/share/classes/java/io/ObjectStreamConstants.java ! src/share/classes/java/io/ObjectStreamException.java ! src/share/classes/java/io/OptionalDataException.java ! src/share/classes/java/io/OutputStream.java ! src/share/classes/java/io/OutputStreamWriter.java ! src/share/classes/java/io/PipedInputStream.java ! src/share/classes/java/io/PipedOutputStream.java ! src/share/classes/java/io/PipedReader.java ! src/share/classes/java/io/PipedWriter.java ! src/share/classes/java/io/PrintStream.java ! src/share/classes/java/io/PrintWriter.java ! src/share/classes/java/io/PushbackInputStream.java ! src/share/classes/java/io/PushbackReader.java ! src/share/classes/java/io/RandomAccessFile.java ! src/share/classes/java/io/Reader.java ! src/share/classes/java/io/SequenceInputStream.java ! src/share/classes/java/io/Serializable.java ! src/share/classes/java/io/StreamCorruptedException.java ! src/share/classes/java/io/StreamTokenizer.java ! src/share/classes/java/io/StringBufferInputStream.java ! src/share/classes/java/io/StringReader.java ! src/share/classes/java/io/StringWriter.java ! src/share/classes/java/io/SyncFailedException.java ! src/share/classes/java/io/UTFDataFormatException.java ! src/share/classes/java/io/UnsupportedEncodingException.java ! src/share/classes/java/io/WriteAbortedException.java ! src/share/classes/java/io/Writer.java ! src/share/classes/java/io/package.html ! src/share/classes/java/lang/AbstractMethodError.java ! src/share/classes/java/lang/ArithmeticException.java ! src/share/classes/java/lang/ArrayIndexOutOfBoundsException.java ! src/share/classes/java/lang/ArrayStoreException.java ! src/share/classes/java/lang/Boolean.java ! src/share/classes/java/lang/Byte.java ! src/share/classes/java/lang/Character.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/ClassCastException.java ! src/share/classes/java/lang/ClassCircularityError.java ! src/share/classes/java/lang/ClassFormatError.java ! src/share/classes/java/lang/ClassNotFoundException.java ! src/share/classes/java/lang/CloneNotSupportedException.java ! src/share/classes/java/lang/Cloneable.java ! src/share/classes/java/lang/Compiler.java ! src/share/classes/java/lang/Double.java ! src/share/classes/java/lang/Error.java ! src/share/classes/java/lang/Exception.java ! src/share/classes/java/lang/ExceptionInInitializerError.java ! src/share/classes/java/lang/Float.java ! src/share/classes/java/lang/IllegalAccessError.java ! src/share/classes/java/lang/IllegalAccessException.java ! src/share/classes/java/lang/IllegalArgumentException.java ! src/share/classes/java/lang/IllegalMonitorStateException.java ! src/share/classes/java/lang/IllegalStateException.java ! src/share/classes/java/lang/IllegalThreadStateException.java ! src/share/classes/java/lang/IncompatibleClassChangeError.java ! src/share/classes/java/lang/IndexOutOfBoundsException.java ! src/share/classes/java/lang/InstantiationError.java ! src/share/classes/java/lang/InstantiationException.java ! src/share/classes/java/lang/Integer.java ! src/share/classes/java/lang/InternalError.java ! src/share/classes/java/lang/InterruptedException.java ! src/share/classes/java/lang/LinkageError.java ! src/share/classes/java/lang/Long.java ! src/share/classes/java/lang/Math.java ! src/share/classes/java/lang/NegativeArraySizeException.java ! src/share/classes/java/lang/NoClassDefFoundError.java ! src/share/classes/java/lang/NoSuchFieldError.java ! src/share/classes/java/lang/NoSuchFieldException.java ! src/share/classes/java/lang/NoSuchMethodError.java ! src/share/classes/java/lang/NoSuchMethodException.java ! src/share/classes/java/lang/NullPointerException.java ! src/share/classes/java/lang/Number.java ! src/share/classes/java/lang/NumberFormatException.java ! src/share/classes/java/lang/Object.java ! src/share/classes/java/lang/OutOfMemoryError.java ! src/share/classes/java/lang/Process.java ! src/share/classes/java/lang/Runnable.java ! src/share/classes/java/lang/Runtime.java ! src/share/classes/java/lang/RuntimeException.java ! src/share/classes/java/lang/SecurityException.java ! src/share/classes/java/lang/SecurityManager.java ! src/share/classes/java/lang/Short.java ! src/share/classes/java/lang/StackOverflowError.java ! src/share/classes/java/lang/String.java ! src/share/classes/java/lang/StringBuffer.java ! src/share/classes/java/lang/StringIndexOutOfBoundsException.java ! src/share/classes/java/lang/System.java ! src/share/classes/java/lang/Thread.java ! src/share/classes/java/lang/ThreadDeath.java ! src/share/classes/java/lang/ThreadGroup.java ! src/share/classes/java/lang/Throwable.java ! src/share/classes/java/lang/UnknownError.java ! src/share/classes/java/lang/UnsatisfiedLinkError.java ! src/share/classes/java/lang/VerifyError.java ! src/share/classes/java/lang/VirtualMachineError.java ! src/share/classes/java/lang/Void.java ! src/share/classes/java/lang/instrument/package.html ! src/share/classes/java/lang/package-info.java ! src/share/classes/java/lang/reflect/package-info.java ! src/share/classes/java/math/BigInteger.java ! src/share/classes/java/math/package-info.java ! src/share/classes/java/net/BindException.java ! src/share/classes/java/net/ConnectException.java ! src/share/classes/java/net/ContentHandler.java ! src/share/classes/java/net/ContentHandlerFactory.java ! src/share/classes/java/net/DatagramPacket.java ! src/share/classes/java/net/DatagramSocket.java ! src/share/classes/java/net/DatagramSocketImpl.java ! src/share/classes/java/net/FileNameMap.java ! src/share/classes/java/net/HttpURLConnection.java ! src/share/classes/java/net/Inet4Address.java ! src/share/classes/java/net/Inet6Address.java ! src/share/classes/java/net/InetAddress.java ! src/share/classes/java/net/MalformedURLException.java ! src/share/classes/java/net/MulticastSocket.java ! src/share/classes/java/net/NoRouteToHostException.java ! src/share/classes/java/net/ProtocolException.java ! src/share/classes/java/net/ServerSocket.java ! src/share/classes/java/net/Socket.java ! src/share/classes/java/net/SocketException.java ! src/share/classes/java/net/SocketImpl.java ! src/share/classes/java/net/SocketImplFactory.java ! src/share/classes/java/net/URL.java ! src/share/classes/java/net/URLConnection.java ! src/share/classes/java/net/URLEncoder.java ! src/share/classes/java/net/URLStreamHandler.java ! src/share/classes/java/net/URLStreamHandlerFactory.java ! src/share/classes/java/net/UnknownHostException.java ! src/share/classes/java/net/UnknownServiceException.java ! src/share/classes/java/net/package-info.java ! src/share/classes/java/rmi/AccessException.java ! src/share/classes/java/rmi/AlreadyBoundException.java ! src/share/classes/java/rmi/ConnectException.java ! src/share/classes/java/rmi/ConnectIOException.java ! src/share/classes/java/rmi/MarshalException.java ! src/share/classes/java/rmi/Naming.java ! src/share/classes/java/rmi/NoSuchObjectException.java ! src/share/classes/java/rmi/NotBoundException.java ! src/share/classes/java/rmi/RMISecurityException.java ! src/share/classes/java/rmi/RMISecurityManager.java ! src/share/classes/java/rmi/Remote.java ! src/share/classes/java/rmi/RemoteException.java ! src/share/classes/java/rmi/ServerError.java ! src/share/classes/java/rmi/ServerException.java ! src/share/classes/java/rmi/ServerRuntimeException.java ! src/share/classes/java/rmi/StubNotFoundException.java ! src/share/classes/java/rmi/UnexpectedException.java ! src/share/classes/java/rmi/UnknownHostException.java ! src/share/classes/java/rmi/UnmarshalException.java ! src/share/classes/java/rmi/dgc/package.html ! src/share/classes/java/rmi/package.html ! src/share/classes/java/rmi/registry/LocateRegistry.java ! src/share/classes/java/rmi/registry/Registry.java ! src/share/classes/java/rmi/registry/RegistryHandler.java ! src/share/classes/java/rmi/registry/package.html ! src/share/classes/java/rmi/server/ExportException.java ! src/share/classes/java/rmi/server/LoaderHandler.java ! src/share/classes/java/rmi/server/LogStream.java ! src/share/classes/java/rmi/server/ObjID.java ! src/share/classes/java/rmi/server/Operation.java ! src/share/classes/java/rmi/server/RMIClassLoader.java ! src/share/classes/java/rmi/server/RMIFailureHandler.java ! src/share/classes/java/rmi/server/RMISocketFactory.java ! src/share/classes/java/rmi/server/RemoteCall.java ! src/share/classes/java/rmi/server/RemoteObject.java ! src/share/classes/java/rmi/server/RemoteRef.java ! src/share/classes/java/rmi/server/RemoteServer.java ! src/share/classes/java/rmi/server/RemoteStub.java ! src/share/classes/java/rmi/server/ServerCloneException.java ! src/share/classes/java/rmi/server/ServerNotActiveException.java ! src/share/classes/java/rmi/server/ServerRef.java ! src/share/classes/java/rmi/server/Skeleton.java ! src/share/classes/java/rmi/server/SkeletonMismatchException.java ! src/share/classes/java/rmi/server/SkeletonNotFoundException.java ! src/share/classes/java/rmi/server/SocketSecurityException.java ! src/share/classes/java/rmi/server/UID.java ! src/share/classes/java/rmi/server/UnicastRemoteObject.java ! src/share/classes/java/rmi/server/Unreferenced.java ! src/share/classes/java/rmi/server/package.html ! src/share/classes/java/security/acl/package-info.java ! src/share/classes/java/security/interfaces/package-info.java ! src/share/classes/java/security/spec/DSAGenParameterSpec.java ! src/share/classes/java/text/DecimalFormatSymbols.java ! src/share/classes/java/text/SimpleDateFormat.java ! src/share/classes/java/text/package.html ! src/share/classes/java/time/chrono/package-info.java ! src/share/classes/java/time/format/TextStyle.java ! src/share/classes/java/time/format/package-info.java ! src/share/classes/java/time/package-info.java ! src/share/classes/java/time/temporal/package-info.java ! src/share/classes/java/time/zone/package-info.java ! src/share/classes/java/util/BitSet.java ! src/share/classes/java/util/Calendar.java ! src/share/classes/java/util/Date.java ! src/share/classes/java/util/Dictionary.java ! src/share/classes/java/util/EmptyStackException.java ! src/share/classes/java/util/Enumeration.java ! src/share/classes/java/util/EventListener.java ! src/share/classes/java/util/EventObject.java ! src/share/classes/java/util/GregorianCalendar.java ! src/share/classes/java/util/Hashtable.java ! src/share/classes/java/util/ListResourceBundle.java ! src/share/classes/java/util/MissingResourceException.java ! src/share/classes/java/util/NoSuchElementException.java ! src/share/classes/java/util/Observable.java ! src/share/classes/java/util/Observer.java ! src/share/classes/java/util/Properties.java ! src/share/classes/java/util/PropertyResourceBundle.java ! src/share/classes/java/util/ResourceBundle.java ! src/share/classes/java/util/Stack.java ! src/share/classes/java/util/StringTokenizer.java ! src/share/classes/java/util/TimeZone.java ! src/share/classes/java/util/TooManyListenersException.java ! src/share/classes/java/util/Vector.java ! src/share/classes/java/util/package.html ! src/share/classes/java/util/prefs/package.html ! src/share/classes/java/util/zip/ZipException.java ! src/share/classes/java/util/zip/package.html ! src/share/classes/javax/security/auth/callback/package-info.java ! src/share/classes/javax/security/auth/kerberos/package-info.java ! src/share/classes/javax/security/auth/package-info.java ! src/share/classes/javax/security/auth/spi/package-info.java ! src/share/classes/javax/security/auth/x500/package-info.java ! src/share/classes/javax/swing/plaf/nimbus/DerivedColor.java ! src/share/classes/javax/swing/text/ComponentView.java ! src/share/classes/javax/swing/text/StyleContext.java ! src/share/classes/jdk/internal/util/xml/PropertiesDefaultHandler.java ! src/share/classes/sun/applet/AppletClassLoader.java ! src/share/classes/sun/applet/AppletSecurity.java ! src/share/classes/sun/applet/AppletThreadGroup.java ! src/share/classes/sun/awt/AWTSecurityManager.java ! src/share/classes/sun/awt/dnd/SunDragSourceContextPeer.java ! src/share/classes/sun/awt/dnd/SunDropTargetContextPeer.java ! src/share/classes/sun/awt/image/MultiResolutionImage.java ! src/share/classes/sun/management/DiagnosticCommandArgumentInfo.java ! src/share/classes/sun/management/DiagnosticCommandImpl.java ! src/share/classes/sun/management/DiagnosticCommandInfo.java ! src/share/classes/sun/print/PSPathGraphics.java ! src/share/classes/sun/print/PathGraphics.java ! src/share/classes/sun/print/PeekGraphics.java ! src/share/classes/sun/print/ProxyGraphics.java ! src/share/classes/sun/print/ProxyGraphics2D.java ! src/share/classes/sun/security/provider/certpath/URICertStore.java ! src/share/classes/sun/security/ssl/BaseSSLSocketImpl.java ! src/solaris/classes/java/io/FileDescriptor.java ! src/solaris/classes/sun/awt/X11/XAtom.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11InputMethodDescriptor.java ! src/solaris/classes/sun/net/www/protocol/jar/JarFileFactory.java ! src/solaris/demo/jni/Poller/Poller.java ! src/windows/classes/java/io/FileDescriptor.java ! src/windows/classes/sun/awt/windows/WClipboard.java ! src/windows/classes/sun/awt/windows/WDragSourceContextPeer.java ! src/windows/classes/sun/awt/windows/WInputMethodDescriptor.java ! src/windows/classes/sun/awt/windows/WPathGraphics.java ! src/windows/classes/sun/awt/windows/WPrinterJob.java ! src/windows/classes/sun/net/www/protocol/jar/JarFileFactory.java Changeset: d17b50fb8757 Author: weijun Date: 2014-06-11 16:33 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d17b50fb8757 8046499: nativecache.c prints to stdout in debug build Reviewed-by: xuelei ! src/share/native/sun/security/krb5/nativeccache.c Changeset: 54c00ca2035e Author: jfranck Date: 2014-06-10 14:40 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/54c00ca2035e 8029674: (reflect) getMethods returns default methods that are not members of the class Summary: Filter out methods that have a more specific default method from result Reviewed-by: darcy, dlsmith ! src/share/classes/java/lang/Class.java + test/java/lang/reflect/DefaultMethodMembers/FilterNotMostSpecific.java Changeset: ec36591a88ca Author: weijun Date: 2014-06-11 18:27 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ec36591a88ca 8023197: Pre-configured command line options for keytool and jarsigner Reviewed-by: xuelei ! src/share/classes/sun/security/tools/KeyStoreUtil.java ! src/share/classes/sun/security/tools/jarsigner/Main.java ! src/share/classes/sun/security/tools/jarsigner/Resources.java ! src/share/classes/sun/security/tools/keytool/Main.java ! src/share/classes/sun/security/tools/keytool/Resources.java + test/sun/security/tools/keytool/default_options.sh Changeset: 476d56ab6377 Author: prappo Date: 2014-06-10 11:15 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/476d56ab6377 8027308: HttpURLConnection should better handle URLs with literal IPv6 addresses Reviewed-by: chegar, alanb, michaelm ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java + test/sun/net/www/protocol/http/ZoneId.java Changeset: 2526a330bc8d Author: sla Date: 2014-06-11 15:47 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2526a330bc8d 8044135: Add API to start JMX agent from attach framework Reviewed-by: alanb ! src/share/classes/com/sun/tools/attach/VirtualMachine.java ! src/share/classes/sun/tools/attach/HotSpotVirtualMachine.java ! src/share/classes/sun/tools/jconsole/LocalVirtualMachine.java ! test/com/sun/tools/attach/SimpleProvider.java + test/com/sun/tools/attach/StartManagementAgent.java ! test/sun/management/jmxremote/bootstrap/JvmstatCountersTest.java ! test/sun/management/jmxremote/bootstrap/LocalManagementTest.java ! test/sun/management/jmxremote/bootstrap/TestManager.java ! test/sun/management/jmxremote/startstop/JMXStartStopTest.java Changeset: 81e22723ba57 Author: sjiang Date: 2014-06-12 10:32 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/81e22723ba57 8044865: Fix raw and unchecked lint warnings in management-related code Reviewed-by: darcy, sla, egahlin, dfuchs ! src/share/classes/com/sun/jmx/mbeanserver/Introspector.java ! src/share/classes/com/sun/jmx/mbeanserver/MBeanInstantiator.java ! src/share/classes/com/sun/jmx/remote/internal/ClientNotifForwarder.java ! src/share/classes/com/sun/jmx/remote/security/MBeanServerFileAccessController.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpRequestTree.java ! src/share/classes/javax/management/modelmbean/RequiredModelMBean.java ! src/share/classes/javax/management/remote/rmi/RMIConnector.java ! src/share/classes/sun/tools/jconsole/ProxyClient.java ! src/share/classes/sun/tools/jconsole/TimeComboBox.java ! src/share/classes/sun/tools/jconsole/inspector/OperationEntry.java ! src/share/classes/sun/tools/jconsole/inspector/TableSorter.java ! src/share/classes/sun/tools/jmap/JMap.java ! src/share/classes/sun/tools/jstack/JStack.java ! src/share/classes/sun/tools/jstat/Alignment.java ! src/share/classes/sun/tools/jstat/ColumnFormat.java ! src/share/classes/sun/tools/jstat/Jstat.java ! src/share/classes/sun/tools/jstat/Operator.java ! src/share/classes/sun/tools/jstat/OptionFormat.java ! src/share/classes/sun/tools/jstat/Parser.java ! src/share/classes/sun/tools/jstat/RawOutputFormatter.java ! src/share/classes/sun/tools/jstat/Scale.java ! src/share/classes/sun/tools/jstat/SyntaxException.java Changeset: 805e088a54a6 Author: lana Date: 2014-06-12 15:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/805e088a54a6 Merge Changeset: 0565d7821fa5 Author: weijun Date: 2014-06-13 08:25 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0565d7821fa5 8046702: default_options.sh test failure on Solaris Reviewed-by: xuelei ! test/sun/security/tools/keytool/default_options.sh Changeset: 27561aede285 Author: lana Date: 2014-06-18 10:09 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/27561aede285 Merge Changeset: 95e589d99134 Author: katleman Date: 2014-06-19 11:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/95e589d99134 Added tag jdk9-b19 for changeset 27561aede285 ! .hgtags Changeset: 431cce1509b5 Author: michaelm Date: 2014-06-13 14:30 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/431cce1509b5 8046588: test for SO_FLOW_SLA availability does not check for EACCESS Reviewed-by: alanb, chegar ! src/solaris/native/java/net/ExtendedOptionsImpl.c ! test/jdk/net/Sockets/Test.java Changeset: 22fd62cbfe82 Author: michaelm Date: 2014-06-13 14:32 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/22fd62cbfe82 Merge Changeset: c1164d1adb76 Author: ykantser Date: 2014-06-16 11:03 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c1164d1adb76 6545295: TEST BUG: The test HatHeapDump1Test uses wrong path in exec call. Reviewed-by: sla ! test/sun/tools/jhat/HatHeapDump1Test.java - test/sun/tools/jhat/HatRun.java Changeset: 38f576159c1a Author: sla Date: 2014-06-16 13:52 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/38f576159c1a 8043939: Remove management-agent.jar Reviewed-by: alanb ! make/CreateJars.gmk ! make/profile-includes.txt ! make/src/classes/build/tools/buildmetaindex/BuildMetaIndex.java - src/share/classes/sun/management/manifest Changeset: 7790a9e0f168 Author: vinnie Date: 2014-06-16 13:40 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7790a9e0f168 8036613: [parfait] JNI exception pending in jdk/src/windows/native/sun/security/provider/WinCAPISeedGenerator.c Reviewed-by: mullan ! src/windows/native/sun/security/provider/WinCAPISeedGenerator.c Changeset: b2023f11a0e5 Author: dsamersoff Date: 2014-06-16 07:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b2023f11a0e5 8041498: Remove npt library Summary: Get rid of npt library and move utf-related code to share/backend Reviewed-by: sla ! make/CompileDemos.gmk ! make/lib/CoreLibraries.gmk ! make/lib/ServiceabilityLibraries.gmk - make/mapfiles/libnpt/mapfile-vers ! make/profile-includes.txt ! src/share/back/debugInit.c ! src/share/back/error_messages.c ! src/share/back/inStream.c ! src/share/back/outStream.c ! src/share/back/transport.c + src/share/back/utf_util.c + src/share/back/utf_util.h ! src/share/back/util.h ! src/share/demo/jvmti/hprof/hprof.h ! src/share/demo/jvmti/hprof/hprof_init.c - src/share/npt/README.txt - src/share/npt/npt.c - src/share/npt/npt.h - src/share/npt/utf.c - src/share/npt/utf.h - src/solaris/npt/npt_md.h - src/solaris/npt/utf_md.c - src/solaris/npt/utf_md.h - src/windows/npt/npt_md.h - src/windows/npt/utf_md.c - src/windows/npt/utf_md.h Changeset: c5e7ba8e1d4b Author: henryjen Date: 2014-06-16 08:09 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c5e7ba8e1d4b 8046389: Add missing @since tag under javax.sql.** Reviewed-by: lancea ! src/share/classes/javax/sql/CommonDataSource.java ! src/share/classes/javax/sql/rowset/BaseRowSet.java ! src/share/classes/javax/sql/rowset/CachedRowSet.java ! src/share/classes/javax/sql/rowset/FilteredRowSet.java ! src/share/classes/javax/sql/rowset/JdbcRowSet.java ! src/share/classes/javax/sql/rowset/JoinRowSet.java ! src/share/classes/javax/sql/rowset/Joinable.java ! src/share/classes/javax/sql/rowset/Predicate.java ! src/share/classes/javax/sql/rowset/RowSetMetaDataImpl.java ! src/share/classes/javax/sql/rowset/RowSetWarning.java ! src/share/classes/javax/sql/rowset/WebRowSet.java ! src/share/classes/javax/sql/rowset/serial/SQLOutputImpl.java ! src/share/classes/javax/sql/rowset/serial/SerialArray.java ! src/share/classes/javax/sql/rowset/serial/SerialBlob.java ! src/share/classes/javax/sql/rowset/serial/SerialClob.java ! src/share/classes/javax/sql/rowset/serial/SerialDatalink.java ! src/share/classes/javax/sql/rowset/serial/SerialException.java ! src/share/classes/javax/sql/rowset/serial/SerialJavaObject.java ! src/share/classes/javax/sql/rowset/serial/SerialRef.java ! src/share/classes/javax/sql/rowset/serial/SerialStruct.java ! src/share/classes/javax/sql/rowset/spi/SyncFactory.java ! src/share/classes/javax/sql/rowset/spi/SyncFactoryException.java ! src/share/classes/javax/sql/rowset/spi/SyncProvider.java ! src/share/classes/javax/sql/rowset/spi/SyncProviderException.java ! src/share/classes/javax/sql/rowset/spi/SyncResolver.java ! src/share/classes/javax/sql/rowset/spi/TransactionalWriter.java ! src/share/classes/javax/sql/rowset/spi/XmlReader.java ! src/share/classes/javax/sql/rowset/spi/XmlWriter.java Changeset: 319f26fadef4 Author: psandoz Date: 2014-06-16 17:45 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/319f26fadef4 8041679: Replace uses of StringBuffer with StringBuilder within core library classes Reviewed-by: psandoz, alanb, xuelei, dfuchs, jfranck, prr, serb, chegar Contributed-by: otaviopolianasantana at gmail.com ! src/share/classes/com/sun/imageio/plugins/gif/GIFImageReader.java ! src/share/classes/com/sun/imageio/plugins/png/PNGMetadata.java ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKFileChooserUI.java ! src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ! src/share/classes/com/sun/java/swing/plaf/motif/MotifFileChooserUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsFileChooserUI.java ! src/share/classes/com/sun/java/util/jar/pack/BandStructure.java ! src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java ! src/share/classes/com/sun/jmx/snmp/IPAcl/NetMaskImpl.java ! src/share/classes/com/sun/jmx/snmp/IPAcl/ParseException.java ! src/share/classes/com/sun/jmx/snmp/IPAcl/SnmpAcl.java ! src/share/classes/com/sun/jmx/snmp/IPAcl/TokenMgrError.java ! src/share/classes/com/sun/jmx/snmp/SnmpMessage.java ! src/share/classes/com/sun/jmx/snmp/SnmpMsg.java ! src/share/classes/com/sun/jmx/snmp/SnmpOpaque.java ! src/share/classes/com/sun/jmx/snmp/SnmpV3Message.java ! src/share/classes/com/sun/jndi/cosnaming/CNNameParser.java ! src/share/classes/com/sun/jndi/dns/DnsContextFactory.java ! src/share/classes/com/sun/jndi/dns/DnsName.java ! src/share/classes/com/sun/jndi/dns/ResourceRecord.java ! src/share/classes/com/sun/jndi/ldap/ClientId.java ! src/share/classes/com/sun/jndi/ldap/DigestClientId.java ! src/share/classes/com/sun/jndi/ldap/LdapSchemaParser.java ! src/share/classes/com/sun/jndi/ldap/ServiceLocator.java ! src/share/classes/com/sun/jndi/ldap/sasl/DefaultCallbackHandler.java ! src/share/classes/com/sun/jndi/toolkit/dir/SearchFilter.java ! src/share/classes/com/sun/media/sound/SoftPerformer.java ! src/share/classes/com/sun/media/sound/WaveExtensibleFileReader.java ! src/share/classes/com/sun/org/apache/xml/internal/security/utils/Base64.java ! src/share/classes/com/sun/security/sasl/CramMD5Base.java ! src/share/classes/com/sun/security/sasl/CramMD5Server.java ! src/share/classes/com/sun/security/sasl/digest/DigestMD5Base.java ! src/share/classes/com/sun/security/sasl/digest/DigestMD5Server.java ! src/share/classes/com/sun/security/sasl/util/AbstractSaslImpl.java ! src/share/classes/com/sun/tools/example/debug/bdi/ExceptionSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java ! src/share/classes/com/sun/tools/example/debug/expr/ExpressionParser.java ! src/share/classes/com/sun/tools/example/debug/expr/ParseException.java ! src/share/classes/com/sun/tools/example/debug/expr/TokenMgrError.java ! src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java ! src/share/classes/com/sun/tools/example/debug/gui/ContextManager.java ! src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java ! src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java ! src/share/classes/com/sun/tools/example/debug/tty/Commands.java ! src/share/classes/com/sun/tools/example/debug/tty/Env.java ! src/share/classes/com/sun/tools/example/debug/tty/TTY.java ! src/share/classes/com/sun/tools/example/trace/Trace.java ! src/share/classes/com/sun/tools/hat/internal/util/Misc.java ! src/share/classes/com/sun/tools/jdi/FieldImpl.java ! src/share/classes/com/sun/tools/jdi/JNITypeParser.java ! src/share/classes/com/sun/tools/jdi/MethodImpl.java ! src/share/classes/com/sun/tools/jdi/ReferenceTypeImpl.java ! src/share/classes/com/sun/tools/jdi/SDE.java ! src/share/classes/com/sun/tools/jdi/TargetVM.java ! src/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java ! src/share/classes/java/beans/Introspector.java ! src/share/classes/java/beans/Statement.java ! src/share/classes/java/io/RandomAccessFile.java ! src/share/classes/java/net/IDN.java ! src/share/classes/java/net/SocketPermission.java ! src/share/classes/java/net/URI.java ! src/share/classes/java/net/URISyntaxException.java ! src/share/classes/java/net/URLDecoder.java ! src/share/classes/java/net/URLEncoder.java ! src/share/classes/java/net/URLStreamHandler.java ! src/share/classes/java/nio/file/InvalidPathException.java ! src/share/classes/java/rmi/dgc/VMID.java ! src/share/classes/java/security/CodeSigner.java ! src/share/classes/java/security/Timestamp.java ! src/share/classes/java/security/cert/CertPath.java ! src/share/classes/java/security/cert/CollectionCertStoreParameters.java ! src/share/classes/java/security/cert/LDAPCertStoreParameters.java ! src/share/classes/java/security/cert/PKIXBuilderParameters.java ! src/share/classes/java/security/cert/PKIXCertPathBuilderResult.java ! src/share/classes/java/security/cert/PKIXCertPathValidatorResult.java ! src/share/classes/java/security/cert/PKIXParameters.java ! src/share/classes/java/security/cert/PolicyQualifierInfo.java ! src/share/classes/java/security/cert/TrustAnchor.java ! src/share/classes/java/security/cert/X509CRLSelector.java ! src/share/classes/java/security/cert/X509CertSelector.java ! src/share/classes/java/text/AttributedString.java ! src/share/classes/java/text/ChoiceFormat.java ! src/share/classes/java/util/Properties.java ! src/share/classes/java/util/prefs/Base64.java ! src/share/classes/java/util/regex/PatternSyntaxException.java ! src/share/classes/javax/imageio/stream/ImageInputStreamImpl.java ! src/share/classes/javax/naming/BinaryRefAddr.java ! src/share/classes/javax/naming/NameImpl.java ! src/share/classes/javax/naming/RefAddr.java ! src/share/classes/javax/naming/Reference.java ! src/share/classes/javax/naming/directory/BasicAttribute.java ! src/share/classes/javax/print/MimeType.java ! src/share/classes/javax/print/attribute/ResolutionSyntax.java ! src/share/classes/javax/print/attribute/SetOfIntegerSyntax.java ! src/share/classes/javax/print/attribute/Size2DSyntax.java ! src/share/classes/javax/security/auth/kerberos/KerberosTicket.java ! src/share/classes/javax/sound/sampled/CompoundControl.java ! src/share/classes/javax/sound/sampled/DataLine.java ! src/share/classes/javax/swing/JColorChooser.java ! src/share/classes/javax/swing/MultiUIDefaults.java ! src/share/classes/javax/swing/RepaintManager.java ! src/share/classes/javax/swing/event/TreeModelEvent.java ! src/share/classes/javax/swing/plaf/basic/BasicFileChooserUI.java ! src/share/classes/javax/swing/plaf/basic/BasicListUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTableUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTreeUI.java ! src/share/classes/javax/swing/plaf/metal/MetalFileChooserUI.java ! src/share/classes/javax/swing/plaf/nimbus/State.java ! src/share/classes/javax/swing/plaf/synth/ParsedSynthStyle.java ! src/share/classes/javax/swing/tree/DefaultTreeSelectionModel.java ! src/share/classes/javax/swing/tree/TreePath.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMExcC14NMethod.java ! src/share/classes/sun/applet/AppletViewer.java ! src/share/classes/sun/font/Decoration.java ! src/share/classes/sun/font/ExtendedTextSourceLabel.java ! src/share/classes/sun/font/StandardTextSource.java ! src/share/classes/sun/font/Type1Font.java ! src/share/classes/sun/java2d/opengl/OGLContext.java ! src/share/classes/sun/java2d/pipe/Region.java ! src/share/classes/sun/java2d/pipe/hw/ContextCapabilities.java ! src/share/classes/sun/jvmstat/monitor/HostIdentifier.java ! src/share/classes/sun/jvmstat/monitor/MonitoredHost.java ! src/share/classes/sun/jvmstat/monitor/VmIdentifier.java ! src/share/classes/sun/management/Agent.java ! src/share/classes/sun/management/snmp/jvminstr/JvmThreadInstanceEntryImpl.java ! src/share/classes/sun/misc/MessageUtils.java ! src/share/classes/sun/misc/UUDecoder.java ! src/share/classes/sun/net/TransferProtocolClient.java ! src/share/classes/sun/net/ftp/impl/FtpClient.java ! src/share/classes/sun/net/www/MimeEntry.java ! src/share/classes/sun/net/www/http/HttpClient.java ! src/share/classes/sun/net/www/protocol/file/FileURLConnection.java ! src/share/classes/sun/net/www/protocol/http/DigestAuthentication.java ! src/share/classes/sun/nio/ch/ServerSocketChannelImpl.java ! src/share/classes/sun/nio/ch/SocketChannelImpl.java ! src/share/classes/sun/print/PSPrinterJob.java ! src/share/classes/sun/reflect/MethodAccessorGenerator.java ! src/share/classes/sun/rmi/server/Activation.java ! src/share/classes/sun/rmi/server/LoaderHandler.java ! src/share/classes/sun/rmi/server/Util.java ! src/share/classes/sun/security/acl/AclImpl.java ! src/share/classes/sun/security/jgss/GSSCredentialImpl.java ! src/share/classes/sun/security/jgss/GSSHeader.java ! src/share/classes/sun/security/jgss/GSSToken.java ! src/share/classes/sun/security/jgss/ProviderList.java ! src/share/classes/sun/security/jgss/TokenTracker.java ! src/share/classes/sun/security/jgss/krb5/InitialToken.java ! src/share/classes/sun/security/jgss/krb5/Krb5Context.java ! src/share/classes/sun/security/jgss/wrapper/Krb5Util.java ! src/share/classes/sun/security/jgss/wrapper/NativeGSSContext.java ! src/share/classes/sun/security/krb5/Credentials.java ! src/share/classes/sun/security/krb5/KrbException.java ! src/share/classes/sun/security/krb5/PrincipalName.java ! src/share/classes/sun/security/krb5/internal/EncTicketPart.java ! src/share/classes/sun/security/krb5/internal/TicketFlags.java ! src/share/classes/sun/security/krb5/internal/crypto/EType.java ! src/share/classes/sun/security/krb5/internal/crypto/dk/DkCrypto.java ! src/share/classes/sun/security/krb5/internal/ktab/KeyTabEntry.java ! src/share/classes/sun/security/pkcs/PKCS9Attribute.java ! src/share/classes/sun/security/pkcs/PKCS9Attributes.java ! src/share/classes/sun/security/pkcs/SigningCertificateInfo.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_AES_CTR_PARAMS.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_DATE.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_ECDH1_DERIVE_PARAMS.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_ECDH2_DERIVE_PARAMS.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_INFO.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_MECHANISM.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_MECHANISM_INFO.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_PBE_PARAMS.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_PKCS5_PBKD2_PARAMS.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_RSA_PKCS_OAEP_PARAMS.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_RSA_PKCS_PSS_PARAMS.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_SESSION_INFO.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_SLOT_INFO.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_TOKEN_INFO.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_X9_42_DH1_DERIVE_PARAMS.java ! src/share/classes/sun/security/pkcs11/wrapper/CK_X9_42_DH2_DERIVE_PARAMS.java ! src/share/classes/sun/security/pkcs11/wrapper/Functions.java ! src/share/classes/sun/security/provider/AuthPolicyFile.java ! src/share/classes/sun/security/provider/X509Factory.java ! src/share/classes/sun/security/smartcardio/PCSC.java ! src/share/classes/sun/security/ssl/HandshakeMessage.java ! src/share/classes/sun/security/ssl/SSLSocketImpl.java ! src/share/classes/sun/security/ssl/ServerNameExtension.java ! src/share/classes/sun/security/ssl/SessionId.java ! src/share/classes/sun/security/ssl/SignatureAlgorithmsExtension.java ! src/share/classes/sun/security/tools/jarsigner/Main.java ! src/share/classes/sun/security/tools/keytool/Main.java ! src/share/classes/sun/security/tools/policytool/PolicyTool.java ! src/share/classes/sun/security/util/Debug.java ! src/share/classes/sun/security/util/ManifestEntryVerifier.java ! src/share/classes/sun/security/util/ObjectIdentifier.java ! src/share/classes/sun/security/util/PropertyExpander.java ! src/share/classes/sun/security/util/SignatureFileVerifier.java ! src/share/classes/sun/security/x509/X509CRLImpl.java ! src/share/classes/sun/swing/SwingUtilities2.java ! src/share/classes/sun/swing/plaf/synth/DefaultSynthStyle.java ! src/share/classes/sun/swing/plaf/synth/SynthFileChooserUIImpl.java ! src/share/classes/sun/text/normalizer/UTF16.java ! src/share/classes/sun/tools/java/MemberDefinition.java ! src/share/classes/sun/tools/java/MethodSet.java ! src/share/classes/sun/tools/java/MethodType.java ! src/share/classes/sun/tools/java/Parser.java ! src/share/classes/sun/tools/java/Type.java ! src/share/classes/sun/tools/jconsole/Formatter.java ! src/share/classes/sun/tools/jstatd/RemoteHostImpl.java ! src/share/classes/sun/tools/native2ascii/N2AFilter.java ! src/share/classes/sun/tools/serialver/SerialVer.java ! src/share/classes/sun/tools/tree/FieldExpression.java ! src/share/classes/sun/tools/tree/Vset.java ! src/share/classes/sun/tracing/PrintStreamProviderFactory.java Changeset: 7d6154df328c Author: mullan Date: 2014-06-16 13:47 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7d6154df328c 8046044: Fix raw and unchecked lint warnings in XML Signature Impl Reviewed-by: darcy ! src/share/classes/org/jcp/xml/dsig/internal/dom/ApacheNodeSetData.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMKeyInfo.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMKeyValue.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMManifest.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMPGPData.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMReference.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMRetrievalMethod.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMSignatureProperties.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMSignatureProperty.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMSignedInfo.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMSubTreeData.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMURIDereferencer.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMX509Data.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMXMLObject.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMXMLSignature.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMXMLSignatureFactory.java Changeset: ade4491b571e Author: mullan Date: 2014-06-16 13:48 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ade4491b571e Merge - make/mapfiles/libnpt/mapfile-vers - src/share/classes/sun/management/manifest - src/share/npt/README.txt - src/share/npt/npt.c - src/share/npt/npt.h - src/share/npt/utf.c - src/share/npt/utf.h - src/solaris/npt/npt_md.h - src/solaris/npt/utf_md.c - src/solaris/npt/utf_md.h - src/windows/npt/npt_md.h - src/windows/npt/utf_md.c - src/windows/npt/utf_md.h - test/sun/tools/jhat/HatRun.java Changeset: 71012e1b8534 Author: smarks Date: 2014-06-16 17:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/71012e1b8534 8044730: small errors in ConcurrentHashMap and LongAdder docs Reviewed-by: martin ! src/share/classes/java/util/concurrent/ConcurrentHashMap.java ! src/share/classes/java/util/concurrent/atomic/LongAdder.java Changeset: 056cd206a147 Author: sla Date: 2014-06-17 10:01 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/056cd206a147 6622468: TEST_BUG: Time to retire the @debuggeeVMOptions mechanism used in the com.sun.jdi infrastructure Summary: Use jtreg "@run driver" for the JDI tests Reviewed-by: sspitsyn, dholmes ! test/com/sun/jdi/AccessSpecifierTest.java ! test/com/sun/jdi/AfterThreadDeathTest.java ! test/com/sun/jdi/AllLineLocations.java ! test/com/sun/jdi/AnyDebuggeeTest.java ! test/com/sun/jdi/ArgumentValuesTest.java ! test/com/sun/jdi/ArrayRangeTest.java ! test/com/sun/jdi/BacktraceFieldTest.java ! test/com/sun/jdi/BadHandshakeTest.java ! test/com/sun/jdi/BreakpointTest.java ! test/com/sun/jdi/ClassLoaderClassesTest.java ! test/com/sun/jdi/ClassesByName.java ! test/com/sun/jdi/ClassesByName2Test.java ! test/com/sun/jdi/ConnectedVMs.java ! test/com/sun/jdi/ConstantPoolInfo.java ! test/com/sun/jdi/CountEvent.java ! test/com/sun/jdi/CountFilterTest.java ! test/com/sun/jdi/DataModelTest.java ! test/com/sun/jdi/DebuggerThreadTest.java ! test/com/sun/jdi/DeleteAllBkptsTest.java ! test/com/sun/jdi/DeleteEventRequestsTest.java ! test/com/sun/jdi/DoubleAgentTest.java ! test/com/sun/jdi/EarlyReturnNegativeTest.java ! test/com/sun/jdi/EarlyReturnTest.java ! test/com/sun/jdi/EnumTest.java ! test/com/sun/jdi/EventQueueDisconnectTest.java ! test/com/sun/jdi/ExceptionEvents.java ! test/com/sun/jdi/ExclusiveBind.java ! test/com/sun/jdi/ExpiredRequestDeletionTest.java ! test/com/sun/jdi/FetchLocals.java ! test/com/sun/jdi/FieldWatchpoints.java ! test/com/sun/jdi/FilterMatch.java ! test/com/sun/jdi/FilterNoMatch.java ! test/com/sun/jdi/FinalLocalsTest.java ! test/com/sun/jdi/FinalizerTest.java ! test/com/sun/jdi/FramesTest.java ! test/com/sun/jdi/GenericsTest.java ! test/com/sun/jdi/GetLocalVariables.java ! test/com/sun/jdi/GetLocalVariables2Test.java ! test/com/sun/jdi/GetSetLocalTest.java ! test/com/sun/jdi/GetUninitializedStringValue.java ! test/com/sun/jdi/HomeTest.java ! test/com/sun/jdi/InstanceFilter.java ! test/com/sun/jdi/InstancesTest.java ! test/com/sun/jdi/InterfaceMethodsTest.java ! test/com/sun/jdi/InterruptHangTest.java ! test/com/sun/jdi/InvokeHangTest.java ! test/com/sun/jdi/InvokeTest.java ! test/com/sun/jdi/JITDebug.java ! test/com/sun/jdi/Java_gTest.java ! test/com/sun/jdi/LambdaBreakpointTest.java ! test/com/sun/jdi/LambdaStepTest.java ! test/com/sun/jdi/LaunchCommandLine.java ! test/com/sun/jdi/LineNumberInfo.java ! test/com/sun/jdi/LineNumberOnBraceTest.java ! test/com/sun/jdi/LocalVariableEqual.java ! test/com/sun/jdi/LocationTest.java ! test/com/sun/jdi/MethodEntryExitEvents.java ! test/com/sun/jdi/MethodExitReturnValuesTest.java ! test/com/sun/jdi/ModificationWatchpoints.java ! test/com/sun/jdi/MonitorEventTest.java ! test/com/sun/jdi/MonitorFrameInfo.java ! test/com/sun/jdi/MultiBreakpointsTest.java ! test/com/sun/jdi/NativeInstanceFilter.java ! test/com/sun/jdi/NewInstanceTest.java ! test/com/sun/jdi/NoLaunchOptionTest.java ! test/com/sun/jdi/NoLocInfoTest.java ! test/com/sun/jdi/NullThreadGroupNameTest.java ! test/com/sun/jdi/OnThrowTest.java ! test/com/sun/jdi/OptionTest.java ! test/com/sun/jdi/PopAndInvokeTest.java ! test/com/sun/jdi/PopAndStepTest.java ! test/com/sun/jdi/PopAsynchronousTest.java ! test/com/sun/jdi/PopSynchronousTest.java ! test/com/sun/jdi/RedefineCrossEvent.java ! test/com/sun/jdi/RedefineCrossStart.java ! test/com/sun/jdi/ReferrersTest.java ! test/com/sun/jdi/RepStep.java ! test/com/sun/jdi/RequestReflectionTest.java ! test/com/sun/jdi/ResumeOneThreadTest.java ! test/com/sun/jdi/RunToExit.java ! test/com/sun/jdi/SDENullTest.java ! test/com/sun/jdi/SimulResumerTest.java ! test/com/sun/jdi/SourceNameFilterTest.java ! test/com/sun/jdi/StepTest.java ! test/com/sun/jdi/SuspendThreadTest.java ! test/com/sun/jdi/TemplateTest.java ! test/com/sun/jdi/ThreadGroupTest.java ! test/com/sun/jdi/TwoThreadsTest.java ! test/com/sun/jdi/UTF8Test.java ! test/com/sun/jdi/UnpreparedByName.java ! test/com/sun/jdi/UnpreparedClasses.java ! test/com/sun/jdi/VMConnection.java ! test/com/sun/jdi/VMDeathLastTest.java ! test/com/sun/jdi/VMDeathRequestTest.java ! test/com/sun/jdi/VarargsTest.java ! test/com/sun/jdi/Vars.java ! test/com/sun/jdi/VisibleMethods.java ! test/com/sun/jdi/redefine/RedefineTest.java ! test/com/sun/jdi/redefineMethod/RedefineTest.java ! test/com/sun/jdi/sde/FilterMangleTest.java ! test/com/sun/jdi/sde/MangleStepTest.java ! test/com/sun/jdi/sde/MangleTest.java ! test/com/sun/jdi/sde/SourceDebugExtensionTest.java ! test/com/sun/jdi/sde/TemperatureTableTest.java Changeset: 9ffe170f236f Author: vlivanov Date: 2014-06-17 13:06 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9ffe170f236f 8046903: VM anonymous class members can't be statically invocable Reviewed-by: jrose ! src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java + test/java/lang/invoke/VMAnonymousClass.java Changeset: d0f127c7dd66 Author: sla Date: 2014-06-13 11:58 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d0f127c7dd66 8046348: com/sun/jdi/OptionTest.java should be quarantined Reviewed-by: sla Contributed-by: alex.schenkman at oracle.com ! test/ProblemList.txt Changeset: 89fd67d5a657 Author: sla Date: 2014-06-09 17:04 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/89fd67d5a657 8046351: com/sun/management/GarbageCollectorMXBean/GarbageCollectionNotification[Content]Test.java should be quarantined Reviewed-by: sla Contributed-by: alex.schenkman at oracle.com ! test/ProblemList.txt Changeset: 65633f150a27 Author: sla Date: 2014-06-09 17:12 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/65633f150a27 8046352: com/sun/tools/attach/TempDirTest.java should be quarantined Reviewed-by: sla Contributed-by: alex.schenkman at oracle.com ! test/ProblemList.txt Changeset: 50a88262ca95 Author: sla Date: 2014-06-09 17:18 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/50a88262ca95 8046355: sun/tools/jstatd/TestJstatdExternalRegistry.java should be quarantined Reviewed-by: sla Contributed-by: alex.schenkman at oracle.com ! test/ProblemList.txt Changeset: 34722d62436d Author: chegar Date: 2014-06-17 10:47 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/34722d62436d 8046902: Remove sun.misc.Timer Reviewed-by: rriggs, mduigou, iris - src/share/classes/sun/misc/Timeable.java - src/share/classes/sun/misc/Timer.java Changeset: 881c1fcf342a Author: sla Date: 2014-06-18 09:04 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/881c1fcf342a 8046778: Better error messages when starting JMX agent via attach or jcmd Reviewed-by: dholmes ! src/share/classes/sun/management/Agent.java ! src/share/classes/sun/management/resources/agent.properties ! test/com/sun/tools/attach/StartManagementAgent.java Changeset: 5e7143c1abc1 Author: dsamersoff Date: 2014-06-18 03:29 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5e7143c1abc1 8044762: com/sun/jdi/OptionTest.java test time out Summary: gdata could be NULL in debugInit_exit Reviewed-by: dcubed ! src/share/back/debugInit.c ! test/ProblemList.txt Changeset: 4b7e8552b328 Author: yan Date: 2014-06-18 17:31 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4b7e8552b328 8046595: fix doclint issues in swing classes, part 2 of 4 Reviewed-by: pchelko Contributed-by: Andrei Eremeev ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/Action.java ! src/share/classes/javax/swing/FocusManager.java ! src/share/classes/javax/swing/JComboBox.java ! src/share/classes/javax/swing/JProgressBar.java ! src/share/classes/javax/swing/JRadioButton.java ! src/share/classes/javax/swing/JToolBar.java ! src/share/classes/javax/swing/SwingUtilities.java Changeset: bb18a27ea6de Author: yan Date: 2014-06-18 17:34 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bb18a27ea6de 8046596: fix doclint issues in swing classes, part 3 of 4 Reviewed-by: pchelko Contributed-by: Andrei Eremeev ! src/share/classes/javax/swing/AbstractSpinnerModel.java ! src/share/classes/javax/swing/ActionMap.java ! src/share/classes/javax/swing/ButtonGroup.java ! src/share/classes/javax/swing/ComboBoxEditor.java ! src/share/classes/javax/swing/ComponentInputMap.java ! src/share/classes/javax/swing/DefaultButtonModel.java ! src/share/classes/javax/swing/GroupLayout.java ! src/share/classes/javax/swing/JOptionPane.java ! src/share/classes/javax/swing/JRadioButtonMenuItem.java ! src/share/classes/javax/swing/JScrollBar.java ! src/share/classes/javax/swing/JToggleButton.java ! src/share/classes/javax/swing/JTree.java ! src/share/classes/javax/swing/ListSelectionModel.java ! src/share/classes/javax/swing/RepaintManager.java ! src/share/classes/javax/swing/RootPaneContainer.java ! src/share/classes/javax/swing/ScrollPaneLayout.java Changeset: cb2679a40db3 Author: vinnie Date: 2014-06-18 15:05 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/cb2679a40db3 8047085: PKCS11/NSS tests failing intermittently on Windows Reviewed-by: mullan ! THIRD_PARTY_README ! test/sun/security/pkcs11/nss/lib/windows-amd64/freebl3.chk ! test/sun/security/pkcs11/nss/lib/windows-amd64/freebl3.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/libnspr4.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/libnspr4.lib ! test/sun/security/pkcs11/nss/lib/windows-amd64/libplc4.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/libplc4.lib ! test/sun/security/pkcs11/nss/lib/windows-amd64/libplds4.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/libplds4.lib ! test/sun/security/pkcs11/nss/lib/windows-amd64/nss3.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/nss3.lib ! test/sun/security/pkcs11/nss/lib/windows-amd64/nssckbi.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/nssdbm3.chk ! test/sun/security/pkcs11/nss/lib/windows-amd64/nssdbm3.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/nssutil3.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/nssutil3.lib ! test/sun/security/pkcs11/nss/lib/windows-amd64/softokn3.chk ! test/sun/security/pkcs11/nss/lib/windows-amd64/softokn3.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/sqlite3.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/ssl3.dll ! test/sun/security/pkcs11/nss/lib/windows-amd64/ssl3.lib ! test/sun/security/pkcs11/nss/lib/windows-i586/freebl3.chk ! test/sun/security/pkcs11/nss/lib/windows-i586/freebl3.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.lib ! test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.lib ! test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.lib ! test/sun/security/pkcs11/nss/lib/windows-i586/nss3.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/nss3.lib ! test/sun/security/pkcs11/nss/lib/windows-i586/nssckbi.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/nssdbm3.chk ! test/sun/security/pkcs11/nss/lib/windows-i586/nssdbm3.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/nssutil3.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/nssutil3.lib ! test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.chk ! test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/sqlite3.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/ssl3.dll ! test/sun/security/pkcs11/nss/lib/windows-i586/ssl3.lib - test/sun/security/pkcs11/nss/src/MD5SUMS - test/sun/security/pkcs11/nss/src/SHA1SUMS - test/sun/security/pkcs11/nss/src/nss-3.13.1.tar.gz + test/sun/security/pkcs11/nss/src/nss-3.16_nspr-4.10_src.tar.gz + test/sun/security/pkcs11/nss/src/nss-3.16_nspr-4.10_src.tar.gz.sha256 Changeset: 99d16469a830 Author: scolebourne Date: 2014-06-12 00:31 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/99d16469a830 8046707: Performance of java.time could be better Summary: Optimise performance Reviewed-by: rriggs ! src/share/classes/java/time/Instant.java ! src/share/classes/java/time/OffsetDateTime.java ! src/share/classes/java/time/ZonedDateTime.java ! src/share/classes/java/time/format/Parsed.java Changeset: fc467102b0b2 Author: scolebourne Date: 2014-06-11 08:25 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/fc467102b0b2 8046416: Unable to parse an Instant from fields Summary: Fix Instant parsing Reviewed-by: rriggs ! src/share/classes/java/time/Instant.java ! src/share/classes/java/time/format/DateTimeFormatterBuilder.java ! src/share/classes/java/time/format/Parsed.java ! test/java/time/tck/java/time/format/TCKDateTimeParseResolver.java + test/java/time/test/java/time/format/TestDateTimeParsing.java Changeset: 2f3a16f9d8c7 Author: lana Date: 2014-06-18 10:55 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2f3a16f9d8c7 Merge - make/mapfiles/libnpt/mapfile-vers - src/share/classes/sun/management/manifest - src/share/classes/sun/misc/Timeable.java - src/share/classes/sun/misc/Timer.java - src/share/npt/README.txt - src/share/npt/npt.c - src/share/npt/npt.h - src/share/npt/utf.c - src/share/npt/utf.h - src/solaris/npt/npt_md.h - src/solaris/npt/utf_md.c - src/solaris/npt/utf_md.h - src/windows/npt/npt_md.h - src/windows/npt/utf_md.c - src/windows/npt/utf_md.h - test/sun/security/pkcs11/nss/src/MD5SUMS - test/sun/security/pkcs11/nss/src/SHA1SUMS - test/sun/security/pkcs11/nss/src/nss-3.13.1.tar.gz - test/sun/tools/jhat/HatRun.java Changeset: f87c5be90e01 Author: lana Date: 2014-06-20 10:15 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f87c5be90e01 Merge - make/mapfiles/libnpt/mapfile-vers - src/share/classes/sun/management/manifest - src/share/classes/sun/misc/Timeable.java - src/share/classes/sun/misc/Timer.java - src/share/npt/README.txt - src/share/npt/npt.c - src/share/npt/npt.h - src/share/npt/utf.c - src/share/npt/utf.h - src/solaris/npt/npt_md.h - src/solaris/npt/utf_md.c - src/solaris/npt/utf_md.h - src/windows/npt/npt_md.h - src/windows/npt/utf_md.c - src/windows/npt/utf_md.h - test/sun/security/pkcs11/nss/src/MD5SUMS - test/sun/security/pkcs11/nss/src/SHA1SUMS - test/sun/security/pkcs11/nss/src/nss-3.13.1.tar.gz - test/sun/tools/jhat/HatRun.java Changeset: 2df45ac1bf49 Author: katleman Date: 2014-06-26 12:51 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2df45ac1bf49 Added tag jdk9-b20 for changeset f87c5be90e01 ! .hgtags Changeset: da87d706723b Author: katleman Date: 2014-07-03 11:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/da87d706723b Added tag jdk9-b21 for changeset 2df45ac1bf49 ! .hgtags Changeset: 1c46b7122aa4 Author: ddehaven Date: 2014-06-18 12:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1c46b7122aa4 8043340: [macosx] Fix hard-wired paths to JavaVM.framework Summary: Build system tweaks to allow building with Xcode 5 and on OS X 10.9 and later Reviewed-by: erikj, henryjen, dholmes ! make/lib/Awt2dLibraries.gmk ! make/lib/CoreLibraries.gmk ! make/lib/PlatformLibraries.gmk ! make/lib/SecurityLibraries.gmk Changeset: afacf96b1a88 Author: malenkov Date: 2014-05-16 15:46 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/afacf96b1a88 8043151: KSS: javax.swing.plaf.nimbus.AbstractRegionPainter#getComponentColor Reviewed-by: alexsch, serb ! src/share/classes/javax/swing/plaf/nimbus/AbstractRegionPainter.java Changeset: 188150b29476 Author: malenkov Date: 2014-05-16 15:51 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/188150b29476 8043152: KSS: javax.swing.plaf.synth.SynthContext Reviewed-by: alexsch, serb ! src/share/classes/javax/swing/plaf/synth/SynthContext.java Changeset: 265803091731 Author: malenkov Date: 2014-05-16 15:57 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/265803091731 8043153: KSS: javax.swing.plaf.synth.SynthParser#startColor Reviewed-by: alexsch, serb ! src/share/classes/javax/swing/plaf/synth/SynthParser.java Changeset: 46170b8aaccc Author: anashaty Date: 2014-05-19 16:48 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/46170b8aaccc 8038000: java.awt.image.RasterFormatException: Incorrect scanline stride Reviewed-by: bae, serb ! src/share/classes/sun/awt/image/ByteBandedRaster.java ! src/share/classes/sun/awt/image/ByteComponentRaster.java ! src/share/classes/sun/awt/image/BytePackedRaster.java ! src/share/classes/sun/awt/image/IntegerComponentRaster.java ! src/share/classes/sun/awt/image/ShortBandedRaster.java ! src/share/classes/sun/awt/image/ShortComponentRaster.java + test/sun/awt/image/bug8038000.java Changeset: 706c54018d1c Author: darcy Date: 2014-05-19 10:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/706c54018d1c 8042871: Fix raw and unchecked warnings in sun.audio Reviewed-by: serb ! src/share/classes/sun/audio/AudioDevice.java ! src/share/classes/sun/audio/AudioPlayer.java ! src/share/classes/sun/audio/AudioStreamSequence.java Changeset: b5f284a0059b Author: ddehaven Date: 2014-05-19 23:21 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b5f284a0059b 8026385: [macosx] (awt) setjmp/longjmp changes the process signal mask on OS X Summary: Use _setjmp/_longjmp instead Reviewed-by: prr, anthony Contributed-by: David DeHaven ! src/share/native/sun/awt/image/jpeg/imageioJPEG.c ! src/share/native/sun/awt/image/jpeg/jpegdecoder.c ! src/share/native/sun/awt/splashscreen/splashscreen_jpeg.c ! src/share/native/sun/awt/splashscreen/splashscreen_png.c Changeset: 6a2c3105351c Author: darcy Date: 2014-05-20 09:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6a2c3105351c 8042864: Fix raw and unchecked warnings in javax.print Reviewed-by: prr, henryjen ! src/share/classes/javax/print/AttributeException.java ! src/share/classes/javax/print/DocFlavor.java ! src/share/classes/javax/print/MimeType.java ! src/share/classes/javax/print/PrintServiceLookup.java ! src/share/classes/javax/print/ServiceUI.java ! src/share/classes/javax/print/SimpleDoc.java ! src/share/classes/javax/print/StreamPrintServiceFactory.java ! src/share/classes/javax/print/attribute/AttributeSetUtilities.java ! src/share/classes/javax/print/attribute/HashAttributeSet.java ! src/share/classes/javax/print/attribute/SetOfIntegerSyntax.java ! src/share/classes/javax/print/attribute/standard/DialogTypeSelection.java ! src/share/classes/javax/print/attribute/standard/MediaSize.java ! src/share/classes/javax/print/attribute/standard/PrinterStateReasons.java Changeset: 65bb2dabe4d9 Author: alexsch Date: 2014-05-21 14:07 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/65bb2dabe4d9 8036110: In TextField can only select text visible or to the left of the cursor Reviewed-by: serb, pchelko ! src/windows/native/sun/windows/awt_TextField.cpp + test/java/awt/TextField/SelectionInvisibleTest/SelectionInvisibleTest.java Changeset: a1635cd4bdb5 Author: alexsch Date: 2014-05-21 14:13 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a1635cd4bdb5 8041561: Inconsistent opacity behaviour between JCheckBox and JRadioButton Reviewed-by: malenkov ! src/share/classes/javax/swing/plaf/metal/MetalIconFactory.java + test/javax/swing/JRadioButton/8041561/bug8041561.java Changeset: 62b09e94b2b6 Author: malenkov Date: 2014-05-21 16:48 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/62b09e94b2b6 8043456: KSS: javax.swing.plaf.basic.BasicInternalFrameTitlePane#postClosingEvent Reviewed-by: alexsch, serb ! src/share/classes/javax/swing/plaf/basic/BasicInternalFrameTitlePane.java Changeset: 3d7eaa4dbdec Author: prr Date: 2014-05-21 10:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3d7eaa4dbdec 8016451: Scary messages emitted by build.tools.generatenimbus.PainterGenerator during build Reviewed-by: alexsch, anthony ! make/src/classes/build/tools/generatenimbus/PainterGenerator.java Changeset: 823387e2bf42 Author: prr Date: 2014-05-21 11:12 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/823387e2bf42 8039394: Compiler warnings about C++ exceptions in windows printing code Reviewed-by: bae, jgodinez ! src/windows/native/sun/windows/awt_PrintJob.cpp Changeset: 06f6160721da Author: pchelko Date: 2014-05-22 15:46 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/06f6160721da 8043646: libosxapp.dylib fails to build on Mac OS 10.9 with clang Reviewed-by: anthony, serb ! src/macosx/native/sun/osxapp/ThreadUtilities.m Changeset: 6d828581eaee Author: malenkov Date: 2014-05-22 21:05 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6d828581eaee 8043627: NPE in SynthContext in plugin mode Reviewed-by: alexsch, serb, pchelko ! src/share/classes/javax/swing/plaf/synth/SynthButtonUI.java ! src/share/classes/javax/swing/plaf/synth/SynthColorChooserUI.java ! src/share/classes/javax/swing/plaf/synth/SynthComboBoxUI.java ! src/share/classes/javax/swing/plaf/synth/SynthContext.java ! src/share/classes/javax/swing/plaf/synth/SynthDesktopIconUI.java ! src/share/classes/javax/swing/plaf/synth/SynthDesktopPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthEditorPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthInternalFrameTitlePane.java ! src/share/classes/javax/swing/plaf/synth/SynthInternalFrameUI.java ! src/share/classes/javax/swing/plaf/synth/SynthLabelUI.java ! src/share/classes/javax/swing/plaf/synth/SynthListUI.java ! src/share/classes/javax/swing/plaf/synth/SynthMenuBarUI.java ! src/share/classes/javax/swing/plaf/synth/SynthMenuItemUI.java ! src/share/classes/javax/swing/plaf/synth/SynthMenuUI.java ! src/share/classes/javax/swing/plaf/synth/SynthOptionPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthPanelUI.java ! src/share/classes/javax/swing/plaf/synth/SynthPopupMenuUI.java ! src/share/classes/javax/swing/plaf/synth/SynthProgressBarUI.java ! src/share/classes/javax/swing/plaf/synth/SynthRootPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthScrollBarUI.java ! src/share/classes/javax/swing/plaf/synth/SynthScrollPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthSeparatorUI.java ! src/share/classes/javax/swing/plaf/synth/SynthSliderUI.java ! src/share/classes/javax/swing/plaf/synth/SynthSpinnerUI.java ! src/share/classes/javax/swing/plaf/synth/SynthSplitPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTabbedPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTableHeaderUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTableUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTextAreaUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTextFieldUI.java ! src/share/classes/javax/swing/plaf/synth/SynthToolBarUI.java ! src/share/classes/javax/swing/plaf/synth/SynthToolTipUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTreeUI.java ! src/share/classes/javax/swing/plaf/synth/SynthViewportUI.java + test/javax/swing/plaf/synth/Test8043627.java Changeset: 006f772bbc7e Author: prr Date: 2014-05-22 13:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/006f772bbc7e 8042855: [parfait] Potential null pointer dereference in IndicLayoutEngine.cpp Reviewed-by: bae, srl ! src/share/native/sun/font/layout/IndicLayoutEngine.cpp ! src/share/native/sun/font/layout/IndicReordering.cpp ! src/share/native/sun/font/layout/IndicReordering.h Changeset: be332c33c5a0 Author: prr Date: 2014-05-22 13:54 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/be332c33c5a0 8042850: [parfait]: Extra unused entries in ICU ScriptCodes enum Reviewed-by: bae, srl ! src/share/native/sun/font/layout/LEScripts.h Changeset: 320743f0b4fc Author: omajid Date: 2014-05-23 11:04 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/320743f0b4fc 8043805: Allow using a system-installed libjpeg Reviewed-by: andrew, anthony, prr ! make/lib/Awt2dLibraries.gmk ! src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java ! src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java ! src/share/classes/sun/awt/image/JPEGImageDecoder.java ! src/share/native/sun/awt/image/jpeg/imageioJPEG.c Changeset: 604abecf62c2 Author: pchelko Date: 2014-05-23 19:43 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/604abecf62c2 8043610: Sorting columns in JFileChooser fails with AppContext NPE Reviewed-by: anthony, alexsch ! src/share/classes/com/sun/java/swing/SwingUtilities3.java ! src/share/classes/java/awt/Component.java ! src/share/classes/javax/swing/JComponent.java + test/javax/swing/JComponent/8043610/bug8043610.java Changeset: 6882a3975eab Author: pchelko Date: 2014-05-23 19:48 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6882a3975eab 8031485: [macosx] Combo box consuming escape key events Reviewed-by: serb, alexsch ! src/macosx/classes/com/apple/laf/AquaComboBoxUI.java + test/javax/swing/JComboBox/ConsumedEscTest/ConsumedEscTest.java Changeset: 4aff7bf822f6 Author: prr Date: 2014-05-23 11:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4aff7bf822f6 Merge - src/share/classes/jdk/internal/util/xml/BasicXmlPropertiesProvider.java - src/share/classes/sun/util/spi/XmlPropertiesProvider.java - src/share/classes/sun/util/xml/META-INF/services/sun.util.spi.XmlPropertiesProvider - src/share/classes/sun/util/xml/PlatformXmlPropertiesProvider.java - test/java/util/Properties/CustomProvider.java - test/java/util/Properties/MyXmlPropertiesProvider.java Changeset: d5730650ff48 Author: alexsch Date: 2014-05-26 14:33 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d5730650ff48 8040291: [macosx] Http-Images are not fully loaded when using ImageIcon Reviewed-by: serb, pchelko ! src/share/classes/java/awt/MediaTracker.java ! src/share/classes/sun/awt/SunToolkit.java ! src/share/classes/sun/awt/image/MultiResolutionToolkitImage.java + test/java/awt/image/multiresolution/MultiResolutionToolkitImageTest.java Changeset: c35d0a40b6e1 Author: yan Date: 2014-05-26 15:50 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c35d0a40b6e1 8041915: Move 8 awt tests to OpenJDK regression tests tree Reviewed-by: pchelko, alexsch Contributed-by: Dmitriy Ermashov + test/java/awt/EventQueue/InvocationEventTest/InvocationEventTest.java + test/java/awt/Frame/DecoratedExceptions/DecoratedExceptions.java + test/java/awt/Window/ShapedAndTranslucentWindows/Common.java + test/java/awt/Window/ShapedAndTranslucentWindows/FocusAWTTest.java + test/java/awt/Window/ShapedAndTranslucentWindows/Shaped.java + test/java/awt/Window/ShapedAndTranslucentWindows/ShapedByAPI.java + test/java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucent.java + test/java/awt/Window/ShapedAndTranslucentWindows/StaticallyShaped.java + test/java/awt/Window/ShapedAndTranslucentWindows/Translucent.java ! test/lib/testlibrary/ExtendedRobot.java Changeset: 4ac8cec7ff40 Author: serb Date: 2014-05-26 16:37 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4ac8cec7ff40 8009883: REGRESSION: test/closed/javax/swing/AbstractButton/4246045/bug4246045.java fails Summary: remove redundant focus handler that was causing a second focus event Reviewed-by: alexsch, pchelko Contributed-by: peter.brunet at oracle.com ! src/share/classes/javax/swing/JComponent.java Changeset: e86678f580ae Author: malenkov Date: 2014-05-26 18:01 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e86678f580ae 8019180: Use JComboBox as it's own ActionListener leads to unexpected behaviour Reviewed-by: alexsch, serb ! src/share/classes/javax/swing/JComboBox.java + test/javax/swing/JComboBox/8019180/Test8019180.java Changeset: 3e4ea5d1fce5 Author: prr Date: 2014-05-27 12:50 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3e4ea5d1fce5 8035301: Eliminate dependency on sun.text from font code Reviewed-by: mchung, jgodinez ! src/share/classes/java/awt/font/StyledParagraph.java ! src/share/classes/java/awt/font/TextLayout.java ! src/share/classes/java/awt/font/TextLine.java + src/share/classes/sun/font/CodePointIterator.java ! src/share/classes/sun/font/FontResolver.java - src/share/classes/sun/text/CodePointIterator.java Changeset: 1b6271809b4f Author: prr Date: 2014-05-27 13:58 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1b6271809b4f Merge - src/share/classes/com/sun/pept/Delegate.java - src/share/classes/com/sun/pept/encoding/Decoder.java - src/share/classes/com/sun/pept/encoding/Encoder.java - src/share/classes/com/sun/pept/ept/Acceptor.java - src/share/classes/com/sun/pept/ept/ContactInfo.java - src/share/classes/com/sun/pept/ept/ContactInfoList.java - src/share/classes/com/sun/pept/ept/ContactInfoListIterator.java - src/share/classes/com/sun/pept/ept/EPTFactory.java - src/share/classes/com/sun/pept/ept/MessageInfo.java - src/share/classes/com/sun/pept/presentation/MessageStruct.java - src/share/classes/com/sun/pept/presentation/Stub.java - src/share/classes/com/sun/pept/presentation/TargetFinder.java - src/share/classes/com/sun/pept/presentation/Tie.java - src/share/classes/com/sun/pept/protocol/Interceptors.java - src/share/classes/com/sun/pept/protocol/MessageDispatcher.java - src/share/classes/com/sun/pept/transport/Connection.java - src/share/classes/com/sun/tools/hat/MANIFEST.mf - src/share/classes/com/sun/tools/hat/README.txt - src/share/classes/com/sun/tools/hat/build.xml Changeset: 8a31f8981bfb Author: alexsch Date: 2014-05-28 15:36 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8a31f8981bfb 8043705: Can't exit color chooser dialog when running as an applet Reviewed-by: serb, pchelko ! src/windows/classes/sun/awt/windows/WWindowPeer.java ! src/windows/native/sun/windows/awt_Dialog.cpp + test/java/awt/Dialog/CloseDialog/CloseDialogTest.java Changeset: 15d846fe8ee3 Author: anashaty Date: 2014-05-29 17:31 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/15d846fe8ee3 8028617: Dvorak keyboard mapping not honored when ctrl key pressed Reviewed-by: pchelko, anthony ! src/macosx/classes/sun/lwawt/macosx/CEmbeddedFrame.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformResponder.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformView.java ! src/macosx/classes/sun/lwawt/macosx/NSEvent.java ! src/macosx/native/sun/awt/AWTView.m Changeset: 3112aa051345 Author: anashaty Date: 2014-05-30 11:20 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3112aa051345 8032788: ImageIcon constructor throws an NPE and hangs when passed a null String parameter Reviewed-by: pchelko, serb ! src/share/classes/sun/awt/image/FileImageSource.java + test/java/awt/image/ImageIconHang.java Changeset: 0b3012072c00 Author: serb Date: 2014-05-30 14:06 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0b3012072c00 8040113: File not initialized in src/share/native/sun/awt/giflib/dgif_lib.c Reviewed-by: pchelko, prr ! src/share/native/sun/awt/giflib/dgif_lib.c Changeset: bfa8f331374a Author: yan Date: 2014-05-30 14:23 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bfa8f331374a 8044172: [TEST_BUG] Move regtests for 4523758 and AltPlusNumberKeyCombinationsTest to jdk Reviewed-by: pchelko + test/java/awt/keyboard/AltPlusNumberKeyCombinationsTest/AltPlusNumberKeyCombinationsTest.java + test/javax/swing/JComboBox/4523758/bug4523758.java Changeset: 39d72d463c71 Author: malenkov Date: 2014-05-30 15:24 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/39d72d463c71 8007563: When checking the default behaviour for a scroll tab layout and checking the 'opaque' checkbox, the area behind tabs is not red. Reviewed-by: alexsch, serb ! src/share/classes/javax/swing/plaf/metal/MetalTabbedPaneUI.java + test/javax/swing/JTabbedPane/8007563/Test8007563.java Changeset: 425330483e3e Author: azvegint Date: 2014-05-30 13:16 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/425330483e3e 8031471: Test closed/java/awt/dnd/FileDialogDropTargetTest/FileDialogDropTargetTest.java fails on Solaris zones virtual hosts Reviewed-by: anthony, serb ! src/solaris/classes/sun/awt/X11/XErrorHandlerUtil.java Changeset: 25f07ac917f2 Author: dmarkov Date: 2014-06-02 14:20 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/25f07ac917f2 8042465: Applet menus not rendering when browser is full screen on Mac Reviewed-by: anthony, pchelko ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java ! src/macosx/native/sun/awt/AWTWindow.m ! src/share/classes/javax/swing/PopupFactory.java Changeset: 535f335f0a7d Author: pchelko Date: 2014-06-02 15:25 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/535f335f0a7d 8043807: Incorrect StackTrace in IOException thrown from ClipboardTransferable Reviewed-by: anthony, serb ! src/share/classes/sun/awt/datatransfer/ClipboardTransferable.java Changeset: b481f0ea5200 Author: rriggs Date: 2014-06-03 11:18 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b481f0ea5200 8044460: Cleanup new Boolean and single character strings Reviewed-by: pchelko, serb, rriggs Contributed-by: otaviopolianasantana at gmail.com ! src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ! src/share/classes/javax/swing/JEditorPane.java ! src/share/classes/javax/swing/plaf/nimbus/NimbusStyle.java ! src/share/classes/sun/applet/AppletClassLoader.java ! src/share/classes/sun/awt/FontConfiguration.java ! src/share/classes/sun/font/SunFontManager.java ! src/share/classes/sun/font/Type1Font.java Changeset: 6d4b3a9ca33d Author: darcy Date: 2014-06-03 09:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6d4b3a9ca33d 8042860: Fix raw and unchecked warnings in java.beans Reviewed-by: malenkov, alanb, mduigou ! src/share/classes/java/beans/EventHandler.java ! src/share/classes/java/beans/EventSetDescriptor.java ! src/share/classes/java/beans/IndexedPropertyDescriptor.java ! src/share/classes/java/beans/Introspector.java ! src/share/classes/java/beans/MetaData.java ! src/share/classes/java/beans/PropertyDescriptor.java ! src/share/classes/java/beans/beancontext/BeanContextServiceAvailableEvent.java ! src/share/classes/java/beans/beancontext/BeanContextServiceProvider.java ! src/share/classes/java/beans/beancontext/BeanContextServiceRevokedEvent.java ! src/share/classes/java/beans/beancontext/BeanContextServices.java ! src/share/classes/java/beans/beancontext/BeanContextServicesSupport.java ! src/share/classes/java/beans/beancontext/BeanContextSupport.java Changeset: 6aeb30341aa3 Author: malenkov Date: 2014-06-03 21:03 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6aeb30341aa3 7084904: Introspector returns isX() from base package-private class that throws exception Reviewed-by: serb + test/java/beans/Introspector/7084904/Test7084904.java + test/java/beans/Introspector/7084904/bean/Base.java + test/java/beans/Introspector/7084904/bean/Derived.java Changeset: a1876e945cda Author: darcy Date: 2014-06-03 12:32 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a1876e945cda 8044694: Fix finally lint warnings in sun.print Reviewed-by: prr ! src/share/classes/sun/print/PSPrinterJob.java ! src/solaris/classes/sun/print/UnixPrintJob.java Changeset: 78d196f24646 Author: darcy Date: 2014-06-03 17:03 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/78d196f24646 8044698: Fix finally lint warnings in javax.swing Reviewed-by: prr, henryjen ! src/share/classes/javax/swing/JEditorPane.java Changeset: 294d463c7747 Author: serb Date: 2014-06-04 16:55 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/294d463c7747 8041129: [OGL] surface->sw blit is extremely slow 8017626: [OGL] Translucent VolatileImages don't paint correctly Reviewed-by: bae, flar ! src/share/classes/sun/java2d/opengl/OGLBlitLoops.java ! src/share/native/sun/java2d/opengl/OGLBlitLoops.c + test/java/awt/image/DrawImage/IncorrectAlphaSurface2SW.java + test/java/awt/image/DrawImage/IncorrectDestinationOffset.java + test/java/awt/image/DrawImage/IncorrectSourceOffset.java Changeset: c33c87250ccf Author: serb Date: 2014-06-04 17:14 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c33c87250ccf 8043979: Javadoc cleanup of javax.sound.sampled package Reviewed-by: pchelko, azvegint ! src/share/classes/javax/sound/sampled/AudioFileFormat.java ! src/share/classes/javax/sound/sampled/AudioFormat.java ! src/share/classes/javax/sound/sampled/AudioInputStream.java ! src/share/classes/javax/sound/sampled/AudioPermission.java ! src/share/classes/javax/sound/sampled/AudioSystem.java ! src/share/classes/javax/sound/sampled/BooleanControl.java ! src/share/classes/javax/sound/sampled/Clip.java ! src/share/classes/javax/sound/sampled/CompoundControl.java ! src/share/classes/javax/sound/sampled/Control.java ! src/share/classes/javax/sound/sampled/DataLine.java ! src/share/classes/javax/sound/sampled/EnumControl.java ! src/share/classes/javax/sound/sampled/FloatControl.java ! src/share/classes/javax/sound/sampled/Line.java ! src/share/classes/javax/sound/sampled/LineEvent.java ! src/share/classes/javax/sound/sampled/LineListener.java ! src/share/classes/javax/sound/sampled/LineUnavailableException.java ! src/share/classes/javax/sound/sampled/Mixer.java ! src/share/classes/javax/sound/sampled/Port.java ! src/share/classes/javax/sound/sampled/ReverbType.java ! src/share/classes/javax/sound/sampled/SourceDataLine.java ! src/share/classes/javax/sound/sampled/TargetDataLine.java ! src/share/classes/javax/sound/sampled/UnsupportedAudioFileException.java ! src/share/classes/javax/sound/sampled/spi/AudioFileReader.java ! src/share/classes/javax/sound/sampled/spi/FormatConversionProvider.java Changeset: c8cef5910723 Author: yan Date: 2014-06-04 17:24 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c8cef5910723 8044157: [TEST_BUG] Improve recently submitted AWT_Mixing tests Reviewed-by: pchelko ! test/java/awt/Mixing/AWT_Mixing/FrameBorderCounter.java ! test/java/awt/Mixing/AWT_Mixing/GlassPaneOverlappingTestBase.java ! test/java/awt/Mixing/AWT_Mixing/HierarchyBoundsListenerMixingTest.java ! test/java/awt/Mixing/AWT_Mixing/JButtonInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JButtonOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JColorChooserOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JComboBoxOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JEditorPaneInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JEditorPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JGlassPaneInternalFrameOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JGlassPaneMoveOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JInternalFrameMoveOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JInternalFrameOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JLabelInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JLabelOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JListInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JListOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JMenuBarOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JPanelInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JPanelOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JPopupMenuOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JProgressBarInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JProgressBarOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JScrollBarInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JScrollBarOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JScrollPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JSliderInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JSliderOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JSpinnerInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JSpinnerOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JSplitPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JTableInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JTableOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JTextAreaInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JTextAreaOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JTextFieldInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JTextFieldOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JToggleButtonInGlassPaneOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/JToggleButtonOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/MixingFrameResizing.java ! test/java/awt/Mixing/AWT_Mixing/MixingPanelsResizing.java ! test/java/awt/Mixing/AWT_Mixing/OpaqueOverlapping.java ! test/java/awt/Mixing/AWT_Mixing/OpaqueOverlappingChoice.java ! test/java/awt/Mixing/AWT_Mixing/OverlappingTestBase.java ! test/java/awt/Mixing/AWT_Mixing/SimpleOverlappingTestBase.java ! test/java/awt/Mixing/AWT_Mixing/ViewportOverlapping.java Changeset: 4abd457e1fe6 Author: henryjen Date: 2014-06-05 10:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4abd457e1fe6 8044855: Add missing @since tag under java.beans.* Reviewed-by: prr, malenkov ! src/share/classes/java/beans/BeanDescriptor.java ! src/share/classes/java/beans/BeanInfo.java ! src/share/classes/java/beans/Beans.java ! src/share/classes/java/beans/Customizer.java ! src/share/classes/java/beans/EventSetDescriptor.java ! src/share/classes/java/beans/FeatureDescriptor.java ! src/share/classes/java/beans/IndexedPropertyDescriptor.java ! src/share/classes/java/beans/IntrospectionException.java ! src/share/classes/java/beans/Introspector.java ! src/share/classes/java/beans/MethodDescriptor.java ! src/share/classes/java/beans/ParameterDescriptor.java ! src/share/classes/java/beans/PropertyChangeEvent.java ! src/share/classes/java/beans/PropertyChangeListener.java ! src/share/classes/java/beans/PropertyChangeSupport.java ! src/share/classes/java/beans/PropertyDescriptor.java ! src/share/classes/java/beans/PropertyEditor.java ! src/share/classes/java/beans/PropertyEditorManager.java ! src/share/classes/java/beans/PropertyEditorSupport.java ! src/share/classes/java/beans/PropertyVetoException.java ! src/share/classes/java/beans/SimpleBeanInfo.java ! src/share/classes/java/beans/VetoableChangeListener.java ! src/share/classes/java/beans/VetoableChangeSupport.java ! src/share/classes/java/beans/Visibility.java Changeset: 717cad3f30fe Author: darcy Date: 2014-06-05 23:17 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/717cad3f30fe 8044553: Fix raw and unchecked lint warnings in javax.sound.* Reviewed-by: prr ! src/share/classes/javax/sound/midi/MidiFileFormat.java ! src/share/classes/javax/sound/midi/MidiSystem.java ! src/share/classes/javax/sound/midi/SoundbankResource.java ! src/share/classes/javax/sound/midi/Track.java ! src/share/classes/javax/sound/sampled/AudioFileFormat.java ! src/share/classes/javax/sound/sampled/AudioFormat.java ! src/share/classes/javax/sound/sampled/AudioSystem.java ! src/share/classes/javax/sound/sampled/Line.java Changeset: 22c03cad580f Author: pchelko Date: 2014-06-06 13:52 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/22c03cad580f 8044516: [macosx] ScreenPopupFactory uses native method that could be avoided Reviewed-by: anthony, serb ! src/macosx/classes/com/apple/laf/ScreenPopupFactory.java - src/macosx/native/com/apple/laf/ScreenPopupFactory.m ! src/share/classes/javax/swing/PopupFactory.java ! src/share/classes/sun/swing/SwingAccessor.java Changeset: 5cab75dd1bbd Author: pchelko Date: 2014-06-06 14:52 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5cab75dd1bbd 8041990: [macosx] Language specific keys does not work in applets when opened outside the browser Reviewed-by: alexsch, serb ! src/share/classes/java/awt/EventQueue.java ! src/share/classes/java/awt/event/InputMethodEvent.java ! src/share/classes/sun/awt/AWTAccessor.java + test/java/awt/im/8041990/bug8041990.java Changeset: 7611e3486264 Author: pchelko Date: 2014-06-06 14:58 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7611e3486264 8041464: [TEST_BUG] CustomClassLoaderTransferTest does not support OS X Reviewed-by: azvegint, serb + test/java/awt/datatransfer/CustomClassLoaderTransferTest/AnotherInterface.java + test/java/awt/datatransfer/CustomClassLoaderTransferTest/CustomClassLoaderTransferTest.java + test/java/awt/datatransfer/CustomClassLoaderTransferTest/TransferableList.java ! test/java/awt/regtesthelpers/CopyClassFile.java Changeset: 3170baa4ab3c Author: aivanov Date: 2014-06-06 17:51 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3170baa4ab3c 8039383: NPE when changing Windows theme Reviewed-by: pchelko, anthony ! src/share/classes/com/sun/java/swing/plaf/windows/AnimationController.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsComboBoxUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsGraphicsUtils.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsIconFactory.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsInternalFrameTitlePane.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsMenuBarUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsMenuItemUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsPopupMenuSeparatorUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsPopupMenuUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsProgressBarUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsSliderUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsSpinnerUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsTableHeaderUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/XPStyle.java ! src/windows/classes/sun/awt/windows/ThemeReader.java ! src/windows/classes/sun/awt/windows/WToolkit.java Changeset: 1d2849bfb7f8 Author: serb Date: 2014-06-09 13:03 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1d2849bfb7f8 8046245: JDK 9 client build failure on Solaris Reviewed-by: prr ! make/mapfiles/libawt/mapfile-vers Changeset: f51d560f6190 Author: yan Date: 2014-06-09 14:59 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f51d560f6190 8044765: Move functional tests AWT_SystemTray/Automated to openjdk repository Reviewed-by: pchelko Contributed-by: Dmitriy Ermashov + test/java/awt/TrayIcon/ActionCommand/ActionCommand.java + test/java/awt/TrayIcon/ActionEventMask/ActionEventMask.java + test/java/awt/TrayIcon/GetTrayIconsTest/GetTrayIcons.java + test/java/awt/TrayIcon/InterJVMTest/InterJVM.java + test/java/awt/TrayIcon/ModalityTest/ModalityTest.java + test/java/awt/TrayIcon/MouseEventMask/MouseEventMaskTest.java + test/java/awt/TrayIcon/MouseMovedTest/MouseMovedTest.java + test/java/awt/TrayIcon/PropertyChangeListenerTest.java + test/java/awt/TrayIcon/SecurityCheck/FunctionalityCheck/FunctionalityCheck.java + test/java/awt/TrayIcon/SecurityCheck/FunctionalityCheck/tray.policy + test/java/awt/TrayIcon/SecurityCheck/NoPermissionTest/NoPermissionTest.java + test/java/awt/TrayIcon/SecurityCheck/PermissionTest/PermissionTest.java + test/java/awt/TrayIcon/SecurityCheck/PermissionTest/tray.policy + test/java/awt/TrayIcon/SystemTrayIconHelper.java + test/java/awt/TrayIcon/SystemTrayInstance/SystemTrayInstanceTest.java + test/java/awt/TrayIcon/TrayIconAddTest/TrayIconAddTest.java + test/java/awt/TrayIcon/TrayIconEventModifiers/TrayIconEventModifiersTest.java + test/java/awt/TrayIcon/TrayIconEvents/TrayIconEventsTest.java + test/java/awt/TrayIcon/TrayIconMethodsTest/TrayIconMethodsTest.java + test/java/awt/TrayIcon/TrayIconMouseTest/TrayIconMouseTest.java + test/java/awt/TrayIcon/TrayIconPopup/TrayIconPopupTest.java + test/java/awt/TrayIcon/TrayIconRemoveTest/TrayIconRemoveTest.java + test/java/awt/TrayIcon/TrayIconSizeTest/TrayIconSizeTest.java Changeset: 5553ba6d75a2 Author: aivanov Date: 2014-06-09 18:10 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5553ba6d75a2 8046239: Build failure in 9-client on all non-Windows platforms Reviewed-by: anthony, serb, alexp ! src/share/classes/com/sun/java/swing/plaf/windows/XPStyle.java ! src/solaris/classes/sun/awt/windows/ThemeReader.java Changeset: 749dca473202 Author: serb Date: 2014-06-09 20:23 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/749dca473202 8039901: jdk/src/share/classes/com/sun/media/sound/services/ appear not to be used Reviewed-by: amenkov, azvegint - src/share/classes/com/sun/media/sound/services/linux-i586/javax.sound.sampled.spi.MixerProvider - src/share/classes/com/sun/media/sound/services/windows-i586/javax.sound.sampled.spi.MixerProvider - src/share/classes/com/sun/media/sound/services/windows-ia64/javax.sound.sampled.spi.MixerProvider Changeset: 4d1878cc5565 Author: darcy Date: 2014-06-09 11:47 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4d1878cc5565 8042870: Fix raw and unchecked warnings in sun.print Reviewed-by: prr ! src/share/classes/sun/print/CustomMediaSizeName.java ! src/share/classes/sun/print/CustomMediaTray.java ! src/share/classes/sun/print/DialogOwner.java ! src/share/classes/sun/print/PSPrinterJob.java ! src/share/classes/sun/print/PSStreamPrintJob.java ! src/share/classes/sun/print/PSStreamPrintService.java ! src/share/classes/sun/print/PrintJob2D.java ! src/share/classes/sun/print/PrintJobAttributeException.java ! src/share/classes/sun/print/PrinterJobWrapper.java ! src/share/classes/sun/print/RasterPrinterJob.java ! src/share/classes/sun/print/ServiceDialog.java ! src/share/classes/sun/print/ServiceNotifier.java ! src/share/classes/sun/print/SunAlternateMedia.java ! src/share/classes/sun/print/SunMinMaxPage.java ! src/share/classes/sun/print/SunPageSelection.java ! src/share/classes/sun/print/SunPrinterJobService.java ! src/solaris/classes/sun/print/CUPSPrinter.java ! src/solaris/classes/sun/print/IPPPrintService.java ! src/solaris/classes/sun/print/UnixPrintJob.java ! src/solaris/classes/sun/print/UnixPrintService.java ! src/solaris/classes/sun/print/UnixPrintServiceLookup.java ! src/windows/classes/sun/print/Win32MediaTray.java ! src/windows/classes/sun/print/Win32PrintJob.java ! src/windows/classes/sun/print/Win32PrintService.java ! src/windows/classes/sun/print/Win32PrintServiceLookup.java Changeset: 4562d7d53933 Author: prr Date: 2014-06-09 11:58 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4562d7d53933 Merge ! make/lib/Awt2dLibraries.gmk - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/etsi.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.dtd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.xsd - src/share/native/java/util/zip/zlib-1.2.5/ChangeLog - src/share/native/java/util/zip/zlib-1.2.5/README - src/share/native/java/util/zip/zlib-1.2.5/compress.c - src/share/native/java/util/zip/zlib-1.2.5/crc32.h - src/share/native/java/util/zip/zlib-1.2.5/deflate.c - src/share/native/java/util/zip/zlib-1.2.5/deflate.h - src/share/native/java/util/zip/zlib-1.2.5/gzclose.c - src/share/native/java/util/zip/zlib-1.2.5/gzguts.h - src/share/native/java/util/zip/zlib-1.2.5/gzlib.c - src/share/native/java/util/zip/zlib-1.2.5/gzread.c - src/share/native/java/util/zip/zlib-1.2.5/gzwrite.c - src/share/native/java/util/zip/zlib-1.2.5/infback.c - src/share/native/java/util/zip/zlib-1.2.5/inffast.c - src/share/native/java/util/zip/zlib-1.2.5/inffast.h - src/share/native/java/util/zip/zlib-1.2.5/inffixed.h - src/share/native/java/util/zip/zlib-1.2.5/inflate.c - src/share/native/java/util/zip/zlib-1.2.5/inflate.h - src/share/native/java/util/zip/zlib-1.2.5/inftrees.c - src/share/native/java/util/zip/zlib-1.2.5/inftrees.h - src/share/native/java/util/zip/zlib-1.2.5/patches/ChangeLog_java - src/share/native/java/util/zip/zlib-1.2.5/trees.c - src/share/native/java/util/zip/zlib-1.2.5/trees.h - src/share/native/java/util/zip/zlib-1.2.5/uncompr.c - src/share/native/java/util/zip/zlib-1.2.5/zadler32.c - src/share/native/java/util/zip/zlib-1.2.5/zconf.h - src/share/native/java/util/zip/zlib-1.2.5/zcrc32.c - src/share/native/java/util/zip/zlib-1.2.5/zlib.h - src/share/native/java/util/zip/zlib-1.2.5/zutil.c - src/share/native/java/util/zip/zlib-1.2.5/zutil.h - test/demo/jvmti/mtrace/JFrameCreateTime.java - test/demo/jvmti/mtrace/TraceJFrame.java Changeset: b7ef5e2d252c Author: darcy Date: 2014-06-09 16:24 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b7ef5e2d252c 8046271: Fix overrides lint warnings in Apple laf code Reviewed-by: alanb, prr ! src/macosx/classes/com/apple/laf/AquaFileSystemModel.java Changeset: 8769d70bec49 Author: aivanov Date: 2014-06-11 10:53 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8769d70bec49 8046391: Hang displaying JFileChooser with Windows L&F Reviewed-by: anthony, serb ! src/share/classes/com/sun/java/swing/plaf/windows/AnimationController.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsComboBoxUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsGraphicsUtils.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsIconFactory.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsInternalFrameTitlePane.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsMenuBarUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsMenuItemUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsPopupMenuSeparatorUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsPopupMenuUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsProgressBarUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsSliderUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsSpinnerUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsTableHeaderUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/XPStyle.java ! src/solaris/classes/sun/awt/windows/ThemeReader.java ! src/windows/classes/sun/awt/windows/ThemeReader.java ! src/windows/classes/sun/awt/windows/WToolkit.java Changeset: 5a37efc5ca43 Author: prr Date: 2014-06-18 13:14 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5a37efc5ca43 Merge ! make/lib/Awt2dLibraries.gmk - make/mapfiles/libnpt/mapfile-vers ! src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/MediaTracker.java ! src/share/classes/java/beans/Introspector.java ! src/share/classes/javax/print/MimeType.java ! src/share/classes/javax/print/attribute/SetOfIntegerSyntax.java ! src/share/classes/javax/sound/sampled/CompoundControl.java ! src/share/classes/javax/sound/sampled/DataLine.java ! src/share/classes/javax/swing/JComboBox.java ! src/share/classes/sun/applet/AppletClassLoader.java ! src/share/classes/sun/font/Type1Font.java - src/share/classes/sun/management/manifest - src/share/classes/sun/misc/Timeable.java - src/share/classes/sun/misc/Timer.java ! src/share/classes/sun/print/PSPrinterJob.java - src/share/npt/README.txt - src/share/npt/npt.c - src/share/npt/npt.h - src/share/npt/utf.c - src/share/npt/utf.h - src/solaris/npt/npt_md.h - src/solaris/npt/utf_md.c - src/solaris/npt/utf_md.h - src/windows/npt/npt_md.h - src/windows/npt/utf_md.c - src/windows/npt/utf_md.h - test/sun/security/pkcs11/nss/src/MD5SUMS - test/sun/security/pkcs11/nss/src/SHA1SUMS - test/sun/security/pkcs11/nss/src/nss-3.13.1.tar.gz - test/sun/tools/jhat/HatRun.java Changeset: 3b602ffe5fe5 Author: darcy Date: 2014-06-18 18:27 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3b602ffe5fe5 8044715: Add finally lint warning to build of jdk repository Reviewed-by: henryjen, tbell ! make/Setup.gmk Changeset: d9ed5f9c4bb9 Author: sla Date: 2014-06-19 12:56 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d9ed5f9c4bb9 8046024: JDI shared memory transport failed with "Observed abandoned IP mutex" Reviewed-by: alanb ! src/windows/transport/shmem/shmem_md.c Changeset: 964aedefc63c Author: yan Date: 2014-06-19 16:54 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/964aedefc63c 8046895: Fix doclint warnings in javax.swing.text.html.parser package Reviewed-by: pchelko Contributed-by: Andrei Eremeev ! src/share/classes/javax/swing/text/html/parser/AttributeList.java ! src/share/classes/javax/swing/text/html/parser/ContentModel.java ! src/share/classes/javax/swing/text/html/parser/DTD.java ! src/share/classes/javax/swing/text/html/parser/DTDConstants.java ! src/share/classes/javax/swing/text/html/parser/DocumentParser.java ! src/share/classes/javax/swing/text/html/parser/Element.java ! src/share/classes/javax/swing/text/html/parser/Entity.java ! src/share/classes/javax/swing/text/html/parser/Parser.java ! src/share/classes/javax/swing/text/html/parser/ParserDelegator.java ! src/share/classes/javax/swing/text/html/parser/TagElement.java Changeset: da94137883d5 Author: yan Date: 2014-06-19 16:57 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/da94137883d5 8046446: Fix doclint warnings in javax.swing.text.html package Reviewed-by: pchelko Contributed-by: Andrei Eremeev ! src/share/classes/javax/swing/text/html/BlockView.java ! src/share/classes/javax/swing/text/html/CSS.java ! src/share/classes/javax/swing/text/html/FormSubmitEvent.java ! src/share/classes/javax/swing/text/html/HTML.java ! src/share/classes/javax/swing/text/html/HTMLDocument.java ! src/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/share/classes/javax/swing/text/html/HTMLWriter.java ! src/share/classes/javax/swing/text/html/ImageView.java ! src/share/classes/javax/swing/text/html/InlineView.java ! src/share/classes/javax/swing/text/html/MinimalHTMLWriter.java ! src/share/classes/javax/swing/text/html/Option.java ! src/share/classes/javax/swing/text/html/ParagraphView.java ! src/share/classes/javax/swing/text/html/StyleSheet.java Changeset: 870471ae555c Author: kizune Date: 2014-06-19 18:07 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/870471ae555c 8000650: unpack200.exe should check gzip crc Reviewed-by: ksrini ! src/share/native/com/sun/java/util/jar/pack/main.cpp ! src/share/native/com/sun/java/util/jar/pack/unpack.h ! src/share/native/com/sun/java/util/jar/pack/zip.cpp + test/tools/pack200/PackChecksum.java Changeset: 191fc3116f8c Author: mchung Date: 2014-06-19 13:12 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/191fc3116f8c 8047387: Generate different version of java.policy file for windows 32-bit and 64-bit Reviewed-by: erikj, tbell ! make/CopyFiles.gmk Changeset: 59bdc84dea50 Author: weijun Date: 2014-06-20 10:27 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/59bdc84dea50 8029994: Support "include" and "includedir" in krb5.conf Reviewed-by: mullan ! src/share/classes/sun/security/krb5/Config.java ! test/sun/security/krb5/auto/HttpNegotiateServer.java ! test/sun/security/krb5/config/Duplicates.java + test/sun/security/krb5/config/Include.java ! test/sun/security/krb5/config/k1.conf Changeset: bf9518ed804f Author: yan Date: 2014-06-20 19:03 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bf9518ed804f 8046445: Fix doclint warnings for javax.swing.plaf.multi Reviewed-by: alexsch Contributed-by: Alexander Stepanov ! src/share/classes/javax/swing/plaf/multi/MultiButtonUI.java ! src/share/classes/javax/swing/plaf/multi/MultiColorChooserUI.java ! src/share/classes/javax/swing/plaf/multi/MultiComboBoxUI.java ! src/share/classes/javax/swing/plaf/multi/MultiDesktopIconUI.java ! src/share/classes/javax/swing/plaf/multi/MultiDesktopPaneUI.java ! src/share/classes/javax/swing/plaf/multi/MultiFileChooserUI.java ! src/share/classes/javax/swing/plaf/multi/MultiInternalFrameUI.java ! src/share/classes/javax/swing/plaf/multi/MultiLabelUI.java ! src/share/classes/javax/swing/plaf/multi/MultiListUI.java ! src/share/classes/javax/swing/plaf/multi/MultiMenuBarUI.java ! src/share/classes/javax/swing/plaf/multi/MultiMenuItemUI.java ! src/share/classes/javax/swing/plaf/multi/MultiOptionPaneUI.java ! src/share/classes/javax/swing/plaf/multi/MultiPanelUI.java ! src/share/classes/javax/swing/plaf/multi/MultiPopupMenuUI.java ! src/share/classes/javax/swing/plaf/multi/MultiProgressBarUI.java ! src/share/classes/javax/swing/plaf/multi/MultiRootPaneUI.java ! src/share/classes/javax/swing/plaf/multi/MultiScrollBarUI.java ! src/share/classes/javax/swing/plaf/multi/MultiScrollPaneUI.java ! src/share/classes/javax/swing/plaf/multi/MultiSeparatorUI.java ! src/share/classes/javax/swing/plaf/multi/MultiSliderUI.java ! src/share/classes/javax/swing/plaf/multi/MultiSpinnerUI.java ! src/share/classes/javax/swing/plaf/multi/MultiSplitPaneUI.java ! src/share/classes/javax/swing/plaf/multi/MultiTabbedPaneUI.java ! src/share/classes/javax/swing/plaf/multi/MultiTableHeaderUI.java ! src/share/classes/javax/swing/plaf/multi/MultiTableUI.java ! src/share/classes/javax/swing/plaf/multi/MultiTextUI.java ! src/share/classes/javax/swing/plaf/multi/MultiToolBarUI.java ! src/share/classes/javax/swing/plaf/multi/MultiToolTipUI.java ! src/share/classes/javax/swing/plaf/multi/MultiTreeUI.java ! src/share/classes/javax/swing/plaf/multi/MultiViewportUI.java Changeset: 08319e8e76ce Author: ksrini Date: 2014-06-20 10:10 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/08319e8e76ce 8044866: Fix raw and unchecked lint warnings in asm Reviewed-by: darcy ! src/share/classes/jdk/internal/org/objectweb/asm/tree/InsnList.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/MethodNode.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/analysis/Analyzer.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/analysis/Frame.java ! src/share/classes/jdk/internal/org/objectweb/asm/version.txt Changeset: 509c5f65b2f6 Author: yan Date: 2014-06-23 10:57 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/509c5f65b2f6 8040901: fix doclint block tag issues in swing event classes Reviewed-by: alexsch Contributed-by: Steven Sides ! src/share/classes/javax/swing/event/AncestorEvent.java ! src/share/classes/javax/swing/event/AncestorListener.java ! src/share/classes/javax/swing/event/CellEditorListener.java ! src/share/classes/javax/swing/event/EventListenerList.java ! src/share/classes/javax/swing/event/HyperlinkEvent.java ! src/share/classes/javax/swing/event/InternalFrameListener.java ! src/share/classes/javax/swing/event/ListSelectionEvent.java ! src/share/classes/javax/swing/event/MenuKeyListener.java ! src/share/classes/javax/swing/event/PopupMenuEvent.java ! src/share/classes/javax/swing/event/PopupMenuListener.java ! src/share/classes/javax/swing/event/TableColumnModelEvent.java ! src/share/classes/javax/swing/event/TableColumnModelListener.java ! src/share/classes/javax/swing/event/TableModelEvent.java ! src/share/classes/javax/swing/event/TableModelListener.java ! src/share/classes/javax/swing/event/TreeExpansionEvent.java ! src/share/classes/javax/swing/event/TreeExpansionListener.java ! src/share/classes/javax/swing/event/TreeModelListener.java ! src/share/classes/javax/swing/event/TreeSelectionEvent.java ! src/share/classes/javax/swing/event/TreeWillExpandListener.java ! src/share/classes/javax/swing/event/UndoableEditListener.java ! src/share/classes/javax/swing/tree/ExpandVetoException.java Changeset: 84065ccf6446 Author: sla Date: 2014-06-23 15:51 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/84065ccf6446 8044772: TempDirTest.java still times out with -Xcomp Reviewed-by: dholmes ! test/ProblemList.txt ! test/com/sun/tools/attach/RunnerUtil.java ! test/com/sun/tools/attach/TempDirTest.java Changeset: 24e1bcc1c836 Author: kizune Date: 2014-06-23 18:09 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/24e1bcc1c836 8046337: Test closed/tools/pack200/MemoryAllocatorTest.java fails on windows-i586 Reviewed-by: ksrini ! src/share/native/com/sun/java/util/jar/pack/zip.cpp Changeset: f9f0b70f7891 Author: joehw Date: 2014-06-23 10:40 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f9f0b70f7891 5077522: Duration.compare incorrect for some values Reviewed-by: lancea, dfuchs + test/javax/xml/jaxp/datatype/5077522/DurationComparison.java Changeset: 6c26f18d9bc0 Author: sherman Date: 2014-06-23 12:12 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6c26f18d9bc0 8042369: Remove duplicated java.time classes in build.tools.tzdb Summary: removed duplicated classes in builder Reviewed-by: rriggs - make/src/classes/build/tools/tzdb/ChronoField.java - make/src/classes/build/tools/tzdb/DateTimeException.java - make/src/classes/build/tools/tzdb/LocalDate.java - make/src/classes/build/tools/tzdb/LocalDateTime.java - make/src/classes/build/tools/tzdb/LocalTime.java - make/src/classes/build/tools/tzdb/TimeDefinition.java ! make/src/classes/build/tools/tzdb/TzdbZoneRulesCompiler.java + make/src/classes/build/tools/tzdb/TzdbZoneRulesProvider.java - make/src/classes/build/tools/tzdb/Utils.java - make/src/classes/build/tools/tzdb/ZoneOffset.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransition.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransitionRule.java ! make/src/classes/build/tools/tzdb/ZoneRules.java - make/src/classes/build/tools/tzdb/ZoneRulesBuilder.java Changeset: 4a24b00c9b15 Author: yan Date: 2014-06-24 10:47 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4a24b00c9b15 8044256: Fix doclint warnings (missing javadoc tags) in javax.swing.plaf.nimbus Reviewed-by: alexsch Contributed-by: Rocky Sloan ! src/share/classes/javax/swing/plaf/nimbus/AbstractRegionPainter.java Changeset: 22949288db09 Author: sjiang Date: 2014-06-24 11:09 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/22949288db09 8038321: RMIConnector_NPETest.java can't start rmid if running on fastdebug or Solaris-sparc Reviewed-by: sla, jbachorik ! test/javax/management/remote/mandatory/connection/RMIConnector_NPETest.java Changeset: 394fde15bca6 Author: chegar Date: 2014-06-24 10:25 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/394fde15bca6 8047674: java/net/URLPermission/nstest/lookup.sh NoClassDefFoundError when run in concurrent mode Reviewed-by: alanb ! test/java/net/URLPermission/nstest/lookup.sh Changeset: 0b9b525d97bf Author: yan Date: 2014-06-24 16:57 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0b9b525d97bf 8043967: Fix doclint warnings for java.awt Reviewed-by: pchelko Contributed-by: Alexander Stepanov ! src/share/classes/java/awt/AWTEvent.java ! src/share/classes/java/awt/AWTEventMulticaster.java ! src/share/classes/java/awt/AWTKeyStroke.java ! src/share/classes/java/awt/AlphaComposite.java ! src/share/classes/java/awt/BorderLayout.java ! src/share/classes/java/awt/Button.java ! src/share/classes/java/awt/Checkbox.java ! src/share/classes/java/awt/CheckboxGroup.java ! src/share/classes/java/awt/Choice.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/ComponentOrientation.java ! src/share/classes/java/awt/Container.java ! src/share/classes/java/awt/Cursor.java ! src/share/classes/java/awt/DisplayMode.java ! src/share/classes/java/awt/EventQueue.java ! src/share/classes/java/awt/Frame.java ! src/share/classes/java/awt/GraphicsEnvironment.java ! src/share/classes/java/awt/GridBagLayout.java ! src/share/classes/java/awt/HeadlessException.java ! src/share/classes/java/awt/ItemSelectable.java ! src/share/classes/java/awt/KeyboardFocusManager.java ! src/share/classes/java/awt/Label.java ! src/share/classes/java/awt/LayoutManager.java ! src/share/classes/java/awt/LayoutManager2.java ! src/share/classes/java/awt/List.java ! src/share/classes/java/awt/MediaTracker.java ! src/share/classes/java/awt/Menu.java ! src/share/classes/java/awt/MenuBar.java ! src/share/classes/java/awt/MenuComponent.java ! src/share/classes/java/awt/MenuContainer.java ! src/share/classes/java/awt/MenuItem.java ! src/share/classes/java/awt/PrintGraphics.java ! src/share/classes/java/awt/PrintJob.java ! src/share/classes/java/awt/Robot.java ! src/share/classes/java/awt/ScrollPane.java ! src/share/classes/java/awt/Scrollbar.java ! src/share/classes/java/awt/TextArea.java ! src/share/classes/java/awt/TextComponent.java ! src/share/classes/java/awt/TextField.java ! src/share/classes/java/awt/Toolkit.java ! src/share/classes/java/awt/Window.java Changeset: 07eb3be7e64b Author: darcy Date: 2014-06-24 10:46 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/07eb3be7e64b 8048014: Update java.lang.SafeVararags for private methods Reviewed-by: lancea, abuckley ! src/share/classes/java/lang/SafeVarargs.java Changeset: 82be07eba22b Author: jbachorik Date: 2014-06-24 19:58 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/82be07eba22b 8047073: Some javax/management/ fails with JFR Reviewed-by: egahlin, dfuchs ! test/javax/management/MBeanServer/MBeanFallbackTest.java ! test/javax/management/ObjectName/SerialCompatTest.java ! test/javax/management/mxbean/MXBeanFallbackTest.java ! test/javax/management/proxy/JMXProxyFallbackTest.java Changeset: c84527dd35be Author: jbachorik Date: 2014-06-24 19:59 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c84527dd35be 8048005: Add test timing information to JMXStartStopTest Reviewed-by: egahlin, dfuchs ! test/sun/management/jmxremote/startstop/JMXStartStopTest.java Changeset: 60a73f4ccbe8 Author: darcy Date: 2014-06-24 14:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/60a73f4ccbe8 8046273: Add overrides lint warning to build of jdk repository Reviewed-by: tbell ! make/Setup.gmk Changeset: 3de4322b3387 Author: mchung Date: 2014-06-24 16:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3de4322b3387 8047904: Runtime.loadLibrary throws SecurityException when security manager is installed Reviewed-by: alanb, psandoz ! src/share/classes/java/lang/ClassLoader.java ! src/share/classes/sun/misc/Launcher.java Changeset: fa193c3cae5b Author: jbachorik Date: 2014-06-25 09:43 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/fa193c3cae5b 8038826: sun/management/jmxremote/startstop/JMXStartStopTest.java fails with "should report port in use" Reviewed-by: sla ! test/sun/management/jmxremote/startstop/JMXStartStopTest.java Changeset: 2e1a51eb4152 Author: weijun Date: 2014-06-25 18:49 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2e1a51eb4152 8048073: Cannot read ccache entry with a realm-less service name Reviewed-by: xuelei ! src/share/classes/sun/security/krb5/internal/ccache/CCacheInputStream.java + test/sun/security/krb5/ccache/EmptyRealmCC.java ! test/sun/security/krb5/ccache/TimeInCCache.java Changeset: 7f880ac2c195 Author: michaelm Date: 2014-06-25 15:55 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7f880ac2c195 8029607: Type of Service (TOS) cannot be set in IPv6 header Reviewed-by: alanb ! make/src/native/genconstants/ch/genSocketOptionRegistry.c ! src/share/classes/sun/nio/ch/DatagramChannelImpl.java ! src/share/classes/sun/nio/ch/Net.java ! src/share/classes/sun/nio/ch/ServerSocketChannelImpl.java ! src/share/classes/sun/nio/ch/SocketChannelImpl.java ! src/solaris/native/java/net/net_util_md.c ! src/solaris/native/sun/nio/ch/Net.c ! src/windows/native/sun/nio/ch/Net.c Changeset: f1187a0de1e9 Author: mduigou Date: 2014-06-25 12:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f1187a0de1e9 8047795: Collections.checkedList checking bypassed by List.replaceAll Reviewed-by: psandoz, chegar ! src/share/classes/java/util/Collections.java + test/java/util/Collections/CheckedListReplaceAll.java + test/java/util/Collections/CheckedMapReplaceAll.java Changeset: dd298b83fa66 Author: yan Date: 2014-06-26 15:58 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/dd298b83fa66 8044281: Fix doclint warnings (missing javadoc tags) in javax.swing.table Reviewed-by: alexsch Contributed-by: Rocky Sloan ! src/share/classes/javax/swing/table/DefaultTableColumnModel.java ! src/share/classes/javax/swing/table/DefaultTableModel.java ! src/share/classes/javax/swing/table/JTableHeader.java ! src/share/classes/javax/swing/table/TableCellRenderer.java ! src/share/classes/javax/swing/table/TableColumn.java ! src/share/classes/javax/swing/table/TableColumnModel.java Changeset: 0c3f5f579a3b Author: yan Date: 2014-06-26 15:59 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0c3f5f579a3b 8044276: Fix doclint warnings (missing javadoc tags) in javax.swing.plaf.synth Reviewed-by: alexsch Contributed-by: Rocky Sloan ! src/share/classes/javax/swing/plaf/synth/SynthButtonUI.java ! src/share/classes/javax/swing/plaf/synth/SynthGraphicsUtils.java ! src/share/classes/javax/swing/plaf/synth/SynthSeparatorUI.java Changeset: 8070aad1c879 Author: naoto Date: 2014-06-26 10:48 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8070aad1c879 8039317: Read currency.data as a resource Reviewed-by: alanb, chegar ! make/GenerateData.gmk ! make/profile-includes.txt ! src/share/classes/java/util/Currency.java ! test/java/util/Currency/CheckDataVersion.java ! test/java/util/Currency/CurrencyTest.java ! test/java/util/Currency/ValidateISO4217.java Changeset: 45592d253efe Author: igerasim Date: 2014-06-27 08:03 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/45592d253efe 8048080: (smartcardio) javax.smartcardio.Card.openLogicalChannel() dosn't work on MacOSX Reviewed-by: valeriep ! src/solaris/native/sun/security/smartcardio/MUSCLE/pcsclite.h Changeset: 733594e9ed15 Author: henryjen Date: 2014-06-16 09:44 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/733594e9ed15 8047721: @since should have JDK version Reviewed-by: darcy, wetmore ! src/share/classes/java/lang/Package.java ! src/share/classes/javax/crypto/CipherInputStream.java ! src/share/classes/javax/crypto/CipherOutputStream.java ! src/share/classes/javax/naming/InitialContext.java Changeset: c5481aa40b6f Author: mduigou Date: 2014-06-27 10:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c5481aa40b6f 8048207: Collections.checkedQueue.offer() calls add on wrapped queue Reviewed-by: psandoz ! src/share/classes/java/util/Collections.java ! test/java/util/Collections/CheckedQueue.java Changeset: bea6c6fff7fa Author: yan Date: 2014-06-30 16:32 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bea6c6fff7fa 8046434: Fix doclint warnings from javax.swing.plaf.metal package Reviewed-by: alexsch Contributed-by: Andrei Eremeev ! src/share/classes/javax/swing/plaf/metal/MetalBorders.java ! src/share/classes/javax/swing/plaf/metal/MetalButtonUI.java ! src/share/classes/javax/swing/plaf/metal/MetalCheckBoxIcon.java ! src/share/classes/javax/swing/plaf/metal/MetalCheckBoxUI.java ! src/share/classes/javax/swing/plaf/metal/MetalComboBoxButton.java ! src/share/classes/javax/swing/plaf/metal/MetalComboBoxEditor.java ! src/share/classes/javax/swing/plaf/metal/MetalComboBoxUI.java ! src/share/classes/javax/swing/plaf/metal/MetalDesktopIconUI.java ! src/share/classes/javax/swing/plaf/metal/MetalFileChooserUI.java ! src/share/classes/javax/swing/plaf/metal/MetalIconFactory.java ! src/share/classes/javax/swing/plaf/metal/MetalInternalFrameTitlePane.java ! src/share/classes/javax/swing/plaf/metal/MetalInternalFrameUI.java ! src/share/classes/javax/swing/plaf/metal/MetalLabelUI.java ! src/share/classes/javax/swing/plaf/metal/MetalPopupMenuSeparatorUI.java ! src/share/classes/javax/swing/plaf/metal/MetalProgressBarUI.java ! src/share/classes/javax/swing/plaf/metal/MetalRadioButtonUI.java ! src/share/classes/javax/swing/plaf/metal/MetalScrollBarUI.java ! src/share/classes/javax/swing/plaf/metal/MetalScrollButton.java ! src/share/classes/javax/swing/plaf/metal/MetalScrollPaneUI.java ! src/share/classes/javax/swing/plaf/metal/MetalSeparatorUI.java ! src/share/classes/javax/swing/plaf/metal/MetalSliderUI.java ! src/share/classes/javax/swing/plaf/metal/MetalSplitPaneUI.java ! src/share/classes/javax/swing/plaf/metal/MetalTabbedPaneUI.java ! src/share/classes/javax/swing/plaf/metal/MetalTextFieldUI.java ! src/share/classes/javax/swing/plaf/metal/MetalToggleButtonUI.java ! src/share/classes/javax/swing/plaf/metal/MetalToolBarUI.java ! src/share/classes/javax/swing/plaf/metal/MetalToolTipUI.java ! src/share/classes/javax/swing/plaf/metal/MetalTreeUI.java Changeset: 78290d029b4d Author: darcy Date: 2014-06-30 18:17 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/78290d029b4d 8048839: Reverse sense of -Xlint options in build of jdk repo Reviewed-by: tbell, mikael ! make/Setup.gmk Changeset: 7b662a967f74 Author: sla Date: 2014-07-01 10:40 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7b662a967f74 8048687: [TESTBUG] com/sun/jdi/ExclusiveBind.java "Could not find or load main class" Reviewed-by: jbachorik, egahlin, dholmes ! test/com/sun/jdi/ExclusiveBind.java ! test/com/sun/jdi/VMConnection.java Changeset: 4f11e558f9ee Author: jbachorik Date: 2014-07-01 11:47 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4f11e558f9ee 8038794: java/lang/management/ThreadMXBean/SynchronizationStatistics.java fails intermittently Reviewed-by: sla ! test/java/lang/management/ThreadMXBean/SynchronizationStatistics.java Changeset: f5c0ab598b7c Author: jbachorik Date: 2014-07-01 15:00 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f5c0ab598b7c 8048193: [tests] Replace JPS and stdout based PID retrieval by Process.getPid() Reviewed-by: sla ! test/com/sun/tools/attach/Application.java ! test/com/sun/tools/attach/BasicTests.java ! test/com/sun/tools/attach/PermissionTest.java ! test/com/sun/tools/attach/RunnerUtil.java - test/com/sun/tools/attach/Shutdown.java ! test/com/sun/tools/attach/StartManagementAgent.java ! test/com/sun/tools/attach/TempDirTest.java ! test/lib/testlibrary/jdk/testlibrary/ProcessThread.java ! test/sun/management/jmxremote/bootstrap/CustomLauncherTest.java ! test/sun/management/jmxremote/bootstrap/LocalManagementTest.java ! test/sun/management/jmxremote/bootstrap/TestApplication.java ! test/sun/management/jmxremote/startstop/JMXStartStopDoSomething.java ! test/sun/management/jmxremote/startstop/JMXStartStopTest.java ! test/sun/tools/jstat/JStatInterval.java ! test/sun/tools/jstatd/JstatdTest.java Changeset: 50ac02f81c69 Author: sla Date: 2014-07-01 16:08 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/50ac02f81c69 8048710: Use ServiceLoader for the jvmstat protocols Reviewed-by: alanb + src/share/classes/sun/jvmstat/monitor/BufferedMonitoredVm.java + src/share/classes/sun/jvmstat/monitor/META-INF/services/sun.jvmstat.monitor.MonitoredHostService ! src/share/classes/sun/jvmstat/monitor/MonitoredHost.java + src/share/classes/sun/jvmstat/monitor/MonitoredHostService.java - src/share/classes/sun/jvmstat/monitor/remote/BufferedMonitoredVm.java + src/share/classes/sun/jvmstat/perfdata/monitor/protocol/file/MonitoredHostFileService.java + src/share/classes/sun/jvmstat/perfdata/monitor/protocol/local/MonitoredHostLocalService.java + src/share/classes/sun/jvmstat/perfdata/monitor/protocol/rmi/MonitoredHostRmiService.java ! test/lib/testlibrary/jdk/testlibrary/ProcessTools.java Changeset: 5534edfe96ae Author: coffeys Date: 2014-07-01 16:51 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5534edfe96ae 7095856: OutputStreamHook doesn't handle null values Reviewed-by: lancea, msheppar + test/com/sun/corba/se/impl/io/CustomOutputStream.java + test/com/sun/corba/se/impl/io/HookPutFieldsTest.java Changeset: 35658ba76000 Author: jbachorik Date: 2014-07-01 17:58 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/35658ba76000 8044427: [test] sun/management/jmxremote/startstop/JMXStartStopTest times out intermittently on Solaris/Sparcv9 Reviewed-by: sla ! test/sun/management/jmxremote/startstop/JMXStartStopTest.java Changeset: 98de615b57e4 Author: prappo Date: 2014-07-01 15:12 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/98de615b57e4 8048267: Replace uses of 'new Long()' with appropriate alternative across core classes Reviewed-by: chegar, psandoz, prappo Contributed-by: Otavio Santana ! src/macosx/classes/sun/font/CStrike.java ! src/share/classes/com/sun/imageio/plugins/gif/GIFImageReader.java ! src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java ! src/share/classes/com/sun/jmx/snmp/SnmpCounter64.java ! src/share/classes/com/sun/jmx/snmp/SnmpInt.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpMibGroup.java ! src/share/classes/com/sun/jmx/snmp/daemon/SnmpAdaptorServer.java ! src/share/classes/com/sun/jndi/ldap/LdapPoolManager.java ! src/share/classes/com/sun/jndi/ldap/NamingEventNotifier.java ! src/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java ! src/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java ! src/share/classes/com/sun/security/auth/UnixNumericGroupPrincipal.java ! src/share/classes/com/sun/security/auth/UnixNumericUserPrincipal.java ! src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java ! src/share/classes/com/sun/tools/example/debug/tty/Commands.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaLazyReadObject.java ! src/share/classes/com/sun/tools/hat/internal/model/Snapshot.java ! src/share/classes/com/sun/tools/hat/internal/parser/HprofReader.java ! src/share/classes/com/sun/tools/hat/internal/server/RefsByTypeQuery.java ! src/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java ! src/share/classes/java/awt/image/renderable/ParameterBlock.java ! src/share/classes/java/text/DecimalFormat.java ! src/share/classes/javax/management/loading/MLet.java ! src/share/classes/javax/management/modelmbean/RequiredModelMBean.java ! src/share/classes/javax/swing/plaf/basic/BasicLookAndFeel.java ! src/share/classes/sun/jvmstat/perfdata/monitor/PerfLongMonitor.java ! src/share/classes/sun/management/GcInfoCompositeData.java ! src/share/classes/sun/management/HotspotThread.java ! src/share/classes/sun/management/MemoryNotifInfoCompositeData.java ! src/share/classes/sun/management/MemoryUsageCompositeData.java ! src/share/classes/sun/management/ThreadInfoCompositeData.java ! src/share/classes/sun/management/counter/perf/LongCounterSnapshot.java ! src/share/classes/sun/management/counter/perf/PerfLongCounter.java ! src/share/classes/sun/management/snmp/jvminstr/JvmClassLoadingImpl.java ! src/share/classes/sun/management/snmp/jvminstr/JvmCompilationImpl.java ! src/share/classes/sun/management/snmp/jvminstr/JvmMemGCEntryImpl.java ! src/share/classes/sun/management/snmp/jvminstr/JvmMemPoolEntryImpl.java ! src/share/classes/sun/management/snmp/jvminstr/JvmMemoryImpl.java ! src/share/classes/sun/management/snmp/jvminstr/JvmRuntimeImpl.java ! src/share/classes/sun/management/snmp/jvminstr/JvmThreadInstanceEntryImpl.java ! src/share/classes/sun/management/snmp/jvminstr/JvmThreadingImpl.java ! src/share/classes/sun/nio/ch/Util.java ! src/share/classes/sun/security/action/GetLongAction.java ! src/share/classes/sun/security/jgss/wrapper/GSSNameElement.java ! src/share/classes/sun/security/krb5/internal/KerberosTime.java ! src/share/classes/sun/security/tools/keytool/Main.java ! src/share/classes/sun/tools/java/BinaryConstantPool.java ! src/share/classes/sun/tools/jconsole/MemoryPoolProxy.java ! src/share/classes/sun/tools/tree/BitNotExpression.java ! src/share/classes/sun/tools/tree/IncDecExpression.java ! src/share/classes/sun/tools/tree/LongExpression.java ! src/solaris/classes/java/util/prefs/FileSystemPreferences.java ! src/solaris/classes/sun/awt/X11/XFocusProxyWindow.java Changeset: b48524553dbf Author: prappo Date: 2014-07-01 14:44 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b48524553dbf 8048874: Replace uses of 'new Byte', 'new Short' and 'new Character' with appropriate alternative across core classes Reviewed-by: chegar, psandoz, prappo Contributed-by: Otavio Santana ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java ! src/share/classes/com/sun/jmx/snmp/SnmpString.java ! src/share/classes/com/sun/jndi/toolkit/dir/SearchFilter.java ! src/share/classes/com/sun/security/sasl/digest/DigestMD5Base.java ! src/share/classes/com/sun/security/sasl/gsskerb/GssKrb5Client.java ! src/share/classes/com/sun/security/sasl/gsskerb/GssKrb5Server.java ! src/share/classes/com/sun/security/sasl/util/AbstractSaslImpl.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/image/renderable/ParameterBlock.java ! src/share/classes/java/beans/Statement.java ! src/share/classes/javax/management/loading/MLet.java ! src/share/classes/sun/management/snmp/jvminstr/JvmThreadInstanceEntryImpl.java ! src/share/classes/sun/misc/ProxyGenerator.java ! src/share/classes/sun/security/pkcs/PKCS9Attribute.java ! src/share/classes/sun/security/x509/AVA.java ! src/share/classes/sun/tools/jconsole/inspector/Utils.java Changeset: 36a0438a6631 Author: ascarpino Date: 2014-07-01 09:46 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/36a0438a6631 8015081: javax.security.auth.Subject.toString() throws NPE Reviewed-by: xuelei, weijun Contributed-by: Jamil Nimeh ! src/share/classes/javax/security/auth/Subject.java ! test/javax/security/auth/Subject/Generic.java ! test/javax/security/auth/Subject/Serial.java + test/javax/security/auth/Subject/Subject.java + test/javax/security/auth/Subject/SubjectNullTests.java Changeset: 4550c718ead3 Author: serb Date: 2014-06-11 14:21 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4550c718ead3 8041644: [OGL] clip is ignored during surface->sw blit Reviewed-by: bae, prr ! src/share/classes/sun/java2d/opengl/OGLBlitLoops.java + test/java/awt/image/DrawImage/IncorrectClipSurface2SW.java Changeset: 57fd6448339f Author: serb Date: 2014-06-11 14:38 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/57fd6448339f 8042103: Deserialization of empty java.awt.geom.Path2D will cause an exception Reviewed-by: bae, flar ! src/share/classes/java/awt/geom/Path2D.java + test/java/awt/geom/Path2D/EmptyCapacity.java Changeset: ca9cc86574c1 Author: yan Date: 2014-06-11 17:23 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ca9cc86574c1 8043972: Remove wrong copyright notice in jdk/test/java/awt/Frame/DecoratedExceptions/DecoratedExceptions.java Reviewed-by: anthony Contributed-by: Dmitriy Ermashov ! test/java/awt/Frame/DecoratedExceptions/DecoratedExceptions.java Changeset: e6d86a48a65c Author: henryjen Date: 2014-06-05 13:59 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e6d86a48a65c 8044551: Fix raw and unchecked lint warnings in platform-specific sun.awt files 8044396: Fix raw and unchecked lint warnings in platform-specific sun.java2d.* Reviewed-by: darcy, prr ! src/windows/classes/sun/awt/Win32FontManager.java ! src/windows/classes/sun/awt/Win32GraphicsDevice.java ! src/windows/classes/sun/awt/shell/Win32ShellFolder2.java ! src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java ! src/windows/classes/sun/awt/windows/WDragSourceContextPeer.java ! src/windows/classes/sun/awt/windows/WFontConfiguration.java ! src/windows/classes/sun/awt/windows/WFontMetrics.java ! src/windows/classes/sun/awt/windows/WInputMethod.java ! src/windows/classes/sun/awt/windows/WToolkit.java ! src/windows/classes/sun/java2d/d3d/D3DBlitLoops.java ! src/windows/classes/sun/java2d/d3d/D3DGraphicsDevice.java ! src/windows/classes/sun/java2d/windows/GDIWindowSurfaceData.java ! src/windows/classes/sun/java2d/windows/WindowsFlags.java Changeset: 9466830a9c45 Author: darcy Date: 2014-06-11 13:25 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9466830a9c45 8043549: Fix raw and unchecked lint warnings in javax.swing.text.* Reviewed-by: prr ! src/share/classes/javax/swing/text/AbstractDocument.java ! src/share/classes/javax/swing/text/AbstractWriter.java ! src/share/classes/javax/swing/text/DateFormatter.java ! src/share/classes/javax/swing/text/DefaultFormatter.java ! src/share/classes/javax/swing/text/DefaultStyledDocument.java ! src/share/classes/javax/swing/text/ElementIterator.java ! src/share/classes/javax/swing/text/GapContent.java ! src/share/classes/javax/swing/text/GlyphView.java ! src/share/classes/javax/swing/text/InternationalFormatter.java ! src/share/classes/javax/swing/text/JTextComponent.java ! src/share/classes/javax/swing/text/NumberFormatter.java ! src/share/classes/javax/swing/text/ParagraphView.java ! src/share/classes/javax/swing/text/SimpleAttributeSet.java ! src/share/classes/javax/swing/text/StringContent.java ! src/share/classes/javax/swing/text/StyleContext.java ! src/share/classes/javax/swing/text/TextAction.java ! src/share/classes/javax/swing/text/html/AccessibleHTML.java ! src/share/classes/javax/swing/text/html/CSS.java ! src/share/classes/javax/swing/text/html/FormView.java ! src/share/classes/javax/swing/text/html/HTMLDocument.java ! src/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/share/classes/javax/swing/text/html/HTMLWriter.java ! src/share/classes/javax/swing/text/html/ImageView.java ! src/share/classes/javax/swing/text/html/MinimalHTMLWriter.java ! src/share/classes/javax/swing/text/html/MuxingAttributeSet.java ! src/share/classes/javax/swing/text/html/ObjectView.java ! src/share/classes/javax/swing/text/html/OptionListModel.java ! src/share/classes/javax/swing/text/html/StyleSheet.java ! src/share/classes/javax/swing/text/html/parser/DTD.java ! src/share/classes/javax/swing/text/rtf/MockAttributeSet.java ! src/share/classes/javax/swing/text/rtf/RTFGenerator.java ! src/share/classes/javax/swing/text/rtf/RTFReader.java Changeset: d08ed3cf81da Author: serb Date: 2014-06-12 00:19 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d08ed3cf81da 8040271: Uninitialised memory in jdk/src/windows/native/sun/windows: awt_List.cpp, awt_InputMethod.cpp Reviewed-by: pchelko, prr ! src/windows/native/sun/windows/awt_InputMethod.cpp ! src/windows/native/sun/windows/awt_List.cpp Changeset: c5bcb5902a70 Author: serb Date: 2014-06-12 00:32 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c5bcb5902a70 8029455: [JLightweightFrame] support scaled painting Reviewed-by: anthony, ant ! src/macosx/classes/sun/lwawt/macosx/CPlatformLWWindow.java ! src/share/classes/sun/awt/LightweightFrame.java ! src/share/classes/sun/java2d/SunGraphics2D.java ! src/share/classes/sun/swing/JLightweightFrame.java ! src/share/classes/sun/swing/LightweightContent.java + test/java/awt/Graphics2D/ScaledCopyArea/ScaledCopyArea.java + test/javax/swing/JFrame/HangNonVolatileBuffer/HangNonVolatileBuffer.java Changeset: 8bf432a31b39 Author: serb Date: 2014-06-12 00:43 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8bf432a31b39 8033786: White flashing when opening Dialogs and Menus using Nimbus with dark background Reviewed-by: alexsch, anthony ! src/macosx/classes/sun/lwawt/LWComponentPeer.java ! src/macosx/classes/sun/lwawt/LWWindowPeer.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java ! src/macosx/classes/sun/lwawt/macosx/CWrapper.java ! src/macosx/native/sun/awt/CWrapper.m ! src/share/classes/javax/swing/JDialog.java + test/javax/swing/JDialog/WrongBackgroundColor/WrongBackgroundColor.java Changeset: 58f5e16a6f17 Author: pchelko Date: 2014-06-16 17:13 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/58f5e16a6f17 8046221: [TEST_BUG] Cleanup datatransfer tests Reviewed-by: anthony, alexsch - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/AbsoluteComponentCenterCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/DataFlavorSearcher.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/InterprocessMessages.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MyTransferable.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/NextFramePositionCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/SourcePanel.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/TargetPanel.java + test/java/awt/datatransfer/DataFlavor/DataFlavorCloneTest/DataFlavorCloneTest.java + test/java/awt/datatransfer/DataFlavor/DataFlavorEqualsNullTest.java + test/java/awt/datatransfer/DataFlavor/DataFlavorEqualsTest.java + test/java/awt/datatransfer/DataFlavor/DataFlavorFileListTest.java + test/java/awt/datatransfer/DataFlavor/DataFlavorSerializedTest.java + test/java/awt/datatransfer/DataFlavor/DefaultMatchTest.java + test/java/awt/datatransfer/DataFlavor/EqualHashCodeTest.java + test/java/awt/datatransfer/DataFlavor/ExternalizeTest.java + test/java/awt/datatransfer/DataFlavor/GetReaderForTextIAEForStringSelectionTest.java + test/java/awt/datatransfer/DataFlavor/GetReaderForTextNPETest.java + test/java/awt/datatransfer/DataFlavor/MimeTypeSerializationTest.java + test/java/awt/datatransfer/DataFlavor/NoClassParameterTest.java + test/java/awt/datatransfer/DataFlavor/NormalizeMimeTypeParameter.java + test/java/awt/datatransfer/DataFlavor/NullDataFlavorTest.java + test/java/awt/datatransfer/DataFlavor/ReaderForUnicodeText.java + test/java/awt/datatransfer/DataFlavor/SelectBestFlavorNPETest.java + test/java/awt/datatransfer/DataFlavor/SelectBestTextFlavorBadArrayTest.java + test/java/awt/datatransfer/DataFlavor/ToStringNullPointerTest.java - test/java/awt/datatransfer/DuplicatedNativesTest/DuplicatedNativesTest.java - test/java/awt/datatransfer/MappingGenerationTest/MappingGenerationTest.java + test/java/awt/datatransfer/MissedHtmlAndRtfBug/AbsoluteComponentCenterCalculator.java + test/java/awt/datatransfer/MissedHtmlAndRtfBug/DataFlavorSearcher.java + test/java/awt/datatransfer/MissedHtmlAndRtfBug/InterprocessMessages.java + test/java/awt/datatransfer/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html + test/java/awt/datatransfer/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.java + test/java/awt/datatransfer/MissedHtmlAndRtfBug/MyTransferable.java + test/java/awt/datatransfer/MissedHtmlAndRtfBug/NextFramePositionCalculator.java + test/java/awt/datatransfer/MissedHtmlAndRtfBug/SourcePanel.java + test/java/awt/datatransfer/MissedHtmlAndRtfBug/TargetPanel.java + test/java/awt/datatransfer/SystemFlavorMap/DuplicateMappingTest.java + test/java/awt/datatransfer/SystemFlavorMap/DuplicatedNativesTest.java + test/java/awt/datatransfer/SystemFlavorMap/GetNativesForFlavorTest.java + test/java/awt/datatransfer/SystemFlavorMap/MappingGenerationTest.java + test/java/awt/datatransfer/SystemFlavorMap/SetNativesForFlavorTest.java Changeset: f3cfb7259e7d Author: azvegint Date: 2014-06-17 19:05 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f3cfb7259e7d 8040007: GtkFileDialog strips user inputted filepath Reviewed-by: anthony, serb ! src/solaris/native/sun/awt/gtk2_interface.c ! src/solaris/native/sun/awt/gtk2_interface.h ! src/solaris/native/sun/awt/sun_awt_X11_GtkFileDialogPeer.c Changeset: 82159b0fd359 Author: pchelko Date: 2014-06-18 13:21 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/82159b0fd359 8047061: [macosx] Crash when setting display mode Reviewed-by: anthony, alexsch ! src/macosx/native/sun/awt/CGraphicsDevice.m + test/java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java Changeset: ebd65595aac1 Author: prr Date: 2014-06-18 14:53 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ebd65595aac1 Merge ! src/share/classes/javax/swing/text/StyleContext.java ! src/windows/classes/sun/awt/windows/WDragSourceContextPeer.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/AbsoluteComponentCenterCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/DataFlavorSearcher.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/InterprocessMessages.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MyTransferable.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/NextFramePositionCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/SourcePanel.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/TargetPanel.java - test/java/awt/datatransfer/DuplicatedNativesTest/DuplicatedNativesTest.java - test/java/awt/datatransfer/MappingGenerationTest/MappingGenerationTest.java Changeset: c1112ca5a0d0 Author: henryjen Date: 2014-06-18 09:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c1112ca5a0d0 8046485: Add missing @since tag under javax.swing.* Reviewed-by: alexsch, prr ! src/share/classes/javax/swing/AbstractAction.java ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/AbstractListModel.java ! src/share/classes/javax/swing/Action.java ! src/share/classes/javax/swing/BorderFactory.java ! src/share/classes/javax/swing/BoundedRangeModel.java ! src/share/classes/javax/swing/Box.java ! src/share/classes/javax/swing/BoxLayout.java ! src/share/classes/javax/swing/ButtonGroup.java ! src/share/classes/javax/swing/ButtonModel.java ! src/share/classes/javax/swing/CellEditor.java ! src/share/classes/javax/swing/CellRendererPane.java ! src/share/classes/javax/swing/ComboBoxEditor.java ! src/share/classes/javax/swing/ComboBoxModel.java ! src/share/classes/javax/swing/DebugGraphics.java ! src/share/classes/javax/swing/DefaultBoundedRangeModel.java ! src/share/classes/javax/swing/DefaultButtonModel.java ! src/share/classes/javax/swing/DefaultCellEditor.java ! src/share/classes/javax/swing/DefaultComboBoxModel.java ! src/share/classes/javax/swing/DefaultDesktopManager.java ! src/share/classes/javax/swing/DefaultFocusManager.java ! src/share/classes/javax/swing/DefaultListCellRenderer.java ! src/share/classes/javax/swing/DefaultListModel.java ! src/share/classes/javax/swing/DefaultListSelectionModel.java ! src/share/classes/javax/swing/DefaultSingleSelectionModel.java ! src/share/classes/javax/swing/DesktopManager.java ! src/share/classes/javax/swing/FocusManager.java ! src/share/classes/javax/swing/GrayFilter.java ! src/share/classes/javax/swing/Icon.java ! src/share/classes/javax/swing/ImageIcon.java ! src/share/classes/javax/swing/JApplet.java ! src/share/classes/javax/swing/JButton.java ! src/share/classes/javax/swing/JCheckBox.java ! src/share/classes/javax/swing/JCheckBoxMenuItem.java ! src/share/classes/javax/swing/JColorChooser.java ! src/share/classes/javax/swing/JComboBox.java ! src/share/classes/javax/swing/JComponent.java ! src/share/classes/javax/swing/JDesktopPane.java ! src/share/classes/javax/swing/JDialog.java ! src/share/classes/javax/swing/JEditorPane.java ! src/share/classes/javax/swing/JFileChooser.java ! src/share/classes/javax/swing/JFrame.java ! src/share/classes/javax/swing/JInternalFrame.java ! src/share/classes/javax/swing/JLabel.java ! src/share/classes/javax/swing/JLayeredPane.java ! src/share/classes/javax/swing/JList.java ! src/share/classes/javax/swing/JMenu.java ! src/share/classes/javax/swing/JMenuBar.java ! src/share/classes/javax/swing/JMenuItem.java ! src/share/classes/javax/swing/JOptionPane.java ! src/share/classes/javax/swing/JPanel.java ! src/share/classes/javax/swing/JPasswordField.java ! src/share/classes/javax/swing/JPopupMenu.java ! src/share/classes/javax/swing/JProgressBar.java ! src/share/classes/javax/swing/JRadioButton.java ! src/share/classes/javax/swing/JRadioButtonMenuItem.java ! src/share/classes/javax/swing/JRootPane.java ! src/share/classes/javax/swing/JScrollBar.java ! src/share/classes/javax/swing/JScrollPane.java ! src/share/classes/javax/swing/JSeparator.java ! src/share/classes/javax/swing/JSlider.java ! src/share/classes/javax/swing/JSplitPane.java ! src/share/classes/javax/swing/JTabbedPane.java ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/JTextArea.java ! src/share/classes/javax/swing/JTextField.java ! src/share/classes/javax/swing/JTextPane.java ! src/share/classes/javax/swing/JToggleButton.java ! src/share/classes/javax/swing/JToolBar.java ! src/share/classes/javax/swing/JToolTip.java ! src/share/classes/javax/swing/JTree.java ! src/share/classes/javax/swing/JViewport.java ! src/share/classes/javax/swing/JWindow.java ! src/share/classes/javax/swing/KeyStroke.java ! src/share/classes/javax/swing/ListCellRenderer.java ! src/share/classes/javax/swing/ListModel.java ! src/share/classes/javax/swing/ListSelectionModel.java ! src/share/classes/javax/swing/LookAndFeel.java ! src/share/classes/javax/swing/MenuElement.java ! src/share/classes/javax/swing/MenuSelectionManager.java ! src/share/classes/javax/swing/MutableComboBoxModel.java ! src/share/classes/javax/swing/OverlayLayout.java ! src/share/classes/javax/swing/Painter.java ! src/share/classes/javax/swing/ProgressMonitor.java ! src/share/classes/javax/swing/ProgressMonitorInputStream.java ! src/share/classes/javax/swing/Renderer.java ! src/share/classes/javax/swing/RepaintManager.java ! src/share/classes/javax/swing/RootPaneContainer.java ! src/share/classes/javax/swing/ScrollPaneConstants.java ! src/share/classes/javax/swing/ScrollPaneLayout.java ! src/share/classes/javax/swing/Scrollable.java ! src/share/classes/javax/swing/SingleSelectionModel.java ! src/share/classes/javax/swing/SizeRequirements.java ! src/share/classes/javax/swing/SwingConstants.java ! src/share/classes/javax/swing/SwingUtilities.java ! src/share/classes/javax/swing/Timer.java ! src/share/classes/javax/swing/ToolTipManager.java ! src/share/classes/javax/swing/UIDefaults.java ! src/share/classes/javax/swing/UIManager.java ! src/share/classes/javax/swing/UnsupportedLookAndFeelException.java ! src/share/classes/javax/swing/ViewportLayout.java ! src/share/classes/javax/swing/WindowConstants.java Changeset: d4aaf432298a Author: yan Date: 2014-06-19 12:44 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d4aaf432298a 8044429: move awt automated tests for AWT_Modality to OpenJDK repository Reviewed-by: pchelko Contributed-by: Alexander Stepanov + test/java/awt/Modal/ModalExclusionTests/ApplicationExcludeDialogFileTest.java + test/java/awt/Modal/ModalExclusionTests/ApplicationExcludeDialogPageSetupTest.java + test/java/awt/Modal/ModalExclusionTests/ApplicationExcludeDialogPrintSetupTest.java + test/java/awt/Modal/ModalExclusionTests/ApplicationExcludeFrameFileTest.java + test/java/awt/Modal/ModalExclusionTests/ApplicationExcludeFramePageSetupTest.java + test/java/awt/Modal/ModalExclusionTests/ApplicationExcludeFramePrintSetupTest.java + test/java/awt/Modal/ModalExclusionTests/ExcludeDialogTest.java + test/java/awt/Modal/ModalExclusionTests/ExcludeFrameTest.java + test/java/awt/Modal/ModalExclusionTests/ToolkitExcludeDialogFileTest.java + test/java/awt/Modal/ModalExclusionTests/ToolkitExcludeDialogPageSetupTest.java + test/java/awt/Modal/ModalExclusionTests/ToolkitExcludeDialogPrintSetupTest.java + test/java/awt/Modal/ModalExclusionTests/ToolkitExcludeFrameFileTest.java + test/java/awt/Modal/ModalExclusionTests/ToolkitExcludeFramePageSetupTest.java + test/java/awt/Modal/ModalExclusionTests/ToolkitExcludeFramePrintSetupTest.java + test/java/awt/Modal/helpers/Flag.java + test/java/awt/Modal/helpers/TestDialog.java + test/java/awt/Modal/helpers/TestFrame.java + test/java/awt/Modal/helpers/TestWindow.java Changeset: b2304c83a42d Author: yan Date: 2014-06-20 16:48 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/b2304c83a42d 8047180: Move functional tests AWT_Headless/Automated to OpenJDK repository Reviewed-by: pchelko, alexsch Contributed-by: Dmitriy Ermashov + test/java/awt/AlphaComposite/HeadlessAlphaComposite.java + test/java/awt/Color/HeadlessColor.java + test/java/awt/Component/Headless/HeadlessButton.java + test/java/awt/Component/Headless/HeadlessCanvas.java + test/java/awt/Component/Headless/HeadlessCheckbox.java + test/java/awt/Component/Headless/HeadlessChoice.java + test/java/awt/Component/Headless/HeadlessComponent.java + test/java/awt/Component/Headless/HeadlessContainer.java + test/java/awt/Component/Headless/HeadlessDialog.java + test/java/awt/Component/Headless/HeadlessFileDialog.java + test/java/awt/Component/Headless/HeadlessFrame.java + test/java/awt/Component/Headless/HeadlessLabel.java + test/java/awt/Component/Headless/HeadlessList.java + test/java/awt/Component/Headless/HeadlessPanel.java + test/java/awt/Component/Headless/HeadlessScrollPane.java + test/java/awt/Component/Headless/HeadlessScrollbar.java + test/java/awt/Component/Headless/HeadlessTextArea.java + test/java/awt/Component/Headless/HeadlessTextField.java + test/java/awt/Component/Headless/HeadlessWindow.java + test/java/awt/Cursor/HeadlessCursor.java + test/java/awt/EventQueue/HeadlessEventQueue.java + test/java/awt/Focus/Headless/HeadlessContainerOrderFocusTraversalPolicy.java + test/java/awt/Focus/Headless/HeadlessDefaultFocusTraversalPolicy.java + test/java/awt/Focus/Headless/HeadlessDefaultKeyboardFocusManager.java + test/java/awt/FontClass/HeadlessFont.java + test/java/awt/GradientPaint/HeadlessGradientPaint.java + test/java/awt/Graphics2D/Headless/HeadlessPoint.java + test/java/awt/Graphics2D/Headless/HeadlessPolygon.java + test/java/awt/Graphics2D/Headless/HeadlessRectangle.java + test/java/awt/GraphicsConfiguration/HeadlessGraphicsConfiguration.java + test/java/awt/GraphicsDevice/HeadlessGraphicsDevice.java + test/java/awt/GraphicsEnvironment/HeadlessGraphicsEnvironment.java + test/java/awt/Headless/HeadlessAWTEventMulticaster.java + test/java/awt/Headless/HeadlessAWTException.java + test/java/awt/Headless/HeadlessBasicStroke.java + test/java/awt/Headless/HeadlessBorderLayout.java + test/java/awt/Headless/HeadlessCardLayout.java + test/java/awt/Headless/HeadlessCheckboxGroup.java + test/java/awt/Headless/HeadlessCheckboxMenuItem.java + test/java/awt/Headless/HeadlessComponentOrientation.java + test/java/awt/Headless/HeadlessDimension.java + test/java/awt/Headless/HeadlessFlowLayout.java + test/java/awt/Headless/HeadlessMediaTracker.java + test/java/awt/Headless/HeadlessPopupMenu.java + test/java/awt/Insets/HeadlessInsets.java + test/java/awt/Menu/Headless/HeadlessMenu.java + test/java/awt/Menu/Headless/HeadlessMenuItem.java + test/java/awt/Menu/Headless/HeadlessMenuShortcut.java + test/java/awt/MenuBar/HeadlessMenuBar.java + test/java/awt/Toolkit/Headless/HeadlessToolkit.java + test/java/awt/applet/Applet/HeadlessApplet.java + test/java/awt/datatransfer/Headless/HeadlessClipboard.java + test/java/awt/datatransfer/Headless/HeadlessDataFlavor.java + test/java/awt/datatransfer/Headless/HeadlessSystemFlavorMap.java + test/java/awt/im/Headless/HeadlessInputContext.java + test/java/awt/im/Headless/HeadlessInputMethodHighlight.java + test/java/awt/image/Headless/HeadlessAffineTransformOp.java + test/java/awt/image/Headless/HeadlessAreaAveragingScaleFilter.java + test/java/awt/image/Headless/HeadlessBufferedImage.java + test/java/awt/image/Headless/HeadlessBufferedImageFilter.java + test/java/awt/image/Headless/HeadlessColorModel.java + test/java/awt/image/Headless/HeadlessCropImageFilter.java + test/java/awt/image/Headless/HeadlessImageFilter.java + test/java/awt/image/Headless/HeadlessIndexColorModel.java + test/java/awt/image/Headless/HeadlessRGBImageFilter.java + test/java/awt/image/Headless/HeadlessReplicateScaleFilter.java + test/java/awt/print/Headless/HeadlessBook.java + test/java/awt/print/Headless/HeadlessPageFormat.java + test/java/awt/print/Headless/HeadlessPaper.java + test/java/awt/print/Headless/HeadlessPrinterJob.java + test/javax/swing/Headless/HeadlessAbstractSpinnerModel.java + test/javax/swing/Headless/HeadlessBox.java + test/javax/swing/Headless/HeadlessBox_Filler.java + test/javax/swing/Headless/HeadlessCellRendererPane.java + test/javax/swing/Headless/HeadlessDefaultListCellRenderer.java + test/javax/swing/Headless/HeadlessDefaultListCellRenderer_UIResource.java + test/javax/swing/Headless/HeadlessGrayFilter.java + test/javax/swing/Headless/HeadlessJApplet.java + test/javax/swing/Headless/HeadlessJButton.java + test/javax/swing/Headless/HeadlessJCheckBox.java + test/javax/swing/Headless/HeadlessJCheckBoxMenuItem.java + test/javax/swing/Headless/HeadlessJColorChooser.java + test/javax/swing/Headless/HeadlessJComboBox.java + test/javax/swing/Headless/HeadlessJComponent.java + test/javax/swing/Headless/HeadlessJDesktopPane.java + test/javax/swing/Headless/HeadlessJDialog.java + test/javax/swing/Headless/HeadlessJEditorPane.java + test/javax/swing/Headless/HeadlessJFileChooser.java + test/javax/swing/Headless/HeadlessJFormattedTextField.java + test/javax/swing/Headless/HeadlessJFrame.java + test/javax/swing/Headless/HeadlessJInternalFrame.java + test/javax/swing/Headless/HeadlessJInternalFrame_JDesktopIcon.java + test/javax/swing/Headless/HeadlessJLabel.java + test/javax/swing/Headless/HeadlessJLayeredPane.java + test/javax/swing/Headless/HeadlessJList.java + test/javax/swing/Headless/HeadlessJMenu.java + test/javax/swing/Headless/HeadlessJMenuBar.java + test/javax/swing/Headless/HeadlessJMenuItem.java + test/javax/swing/Headless/HeadlessJOptionPane.java + test/javax/swing/Headless/HeadlessJPanel.java + test/javax/swing/Headless/HeadlessJPasswordField.java + test/javax/swing/Headless/HeadlessJPopupMenu.java + test/javax/swing/Headless/HeadlessJPopupMenu_Separator.java + test/javax/swing/Headless/HeadlessJProgressBar.java + test/javax/swing/Headless/HeadlessJRadioButton.java + test/javax/swing/Headless/HeadlessJRadioButtonMenuItem.java + test/javax/swing/Headless/HeadlessJRootPane.java + test/javax/swing/Headless/HeadlessJScrollBar.java + test/javax/swing/Headless/HeadlessJScrollPane.java + test/javax/swing/Headless/HeadlessJSeparator.java + test/javax/swing/Headless/HeadlessJSlider.java + test/javax/swing/Headless/HeadlessJSpinner.java + test/javax/swing/Headless/HeadlessJSplitPane.java + test/javax/swing/Headless/HeadlessJTabbedPane.java + test/javax/swing/Headless/HeadlessJTable.java + test/javax/swing/Headless/HeadlessJTextArea.java + test/javax/swing/Headless/HeadlessJTextField.java + test/javax/swing/Headless/HeadlessJTextPane.java + test/javax/swing/Headless/HeadlessJToggleButton.java + test/javax/swing/Headless/HeadlessJToolBar.java + test/javax/swing/Headless/HeadlessJToolBar_Separator.java + test/javax/swing/Headless/HeadlessJToolTip.java + test/javax/swing/Headless/HeadlessJTree.java + test/javax/swing/Headless/HeadlessJViewport.java + test/javax/swing/Headless/HeadlessJWindow.java + test/javax/swing/Headless/HeadlessLookAndFeel.java + test/javax/swing/Headless/HeadlessMenuSelectionManager.java + test/javax/swing/Headless/HeadlessOverlayLayout.java + test/javax/swing/Headless/HeadlessPopupFactory.java + test/javax/swing/Headless/HeadlessScrollPaneLayout.java + test/javax/swing/Headless/HeadlessSizeRequirements.java + test/javax/swing/Headless/HeadlessSizeSequence.java + test/javax/swing/Headless/HeadlessSpinnerListModel.java + test/javax/swing/Headless/HeadlessSpinnerNumberModel.java + test/javax/swing/Headless/HeadlessTimer.java Changeset: 483e0aa7e022 Author: prr Date: 2014-06-20 12:37 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/483e0aa7e022 8042098: Test sun/java2d/AcceleratedXORModeTest.java fails on Windows Reviewed-by: jgodinez ! test/sun/java2d/AcceleratedXORModeTest.java Changeset: a701cc3847a3 Author: mchung Date: 2014-06-20 13:36 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a701cc3847a3 8044063: Remove com.sun.java.browser.* from jdk repo Reviewed-by: darcy, alanb - src/share/classes/com/sun/java/browser/dom/DOMAccessException.java - src/share/classes/com/sun/java/browser/dom/DOMAccessor.java - src/share/classes/com/sun/java/browser/dom/DOMAction.java - src/share/classes/com/sun/java/browser/dom/DOMService.java - src/share/classes/com/sun/java/browser/dom/DOMServiceProvider.java - src/share/classes/com/sun/java/browser/dom/DOMUnsupportedException.java - src/share/classes/com/sun/java/browser/net/ProxyInfo.java - src/share/classes/com/sun/java/browser/net/ProxyService.java - src/share/classes/com/sun/java/browser/net/ProxyServiceProvider.java Changeset: 15c02dcf3b07 Author: pchelko Date: 2014-06-23 22:15 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/15c02dcf3b07 8047798: Remove EventQueueDelegate Reviewed-by: anthony, art ! src/share/classes/com/sun/java/swing/SwingUtilities3.java ! src/share/classes/java/awt/EventDispatchThread.java - src/share/classes/sun/awt/EventQueueDelegate.java - test/java/awt/EventQueue/6638195/bug6638195.java Changeset: a1ac608d0327 Author: prr Date: 2014-06-23 12:48 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a1ac608d0327 8043509: java.awt.Font gets initialized with the wrong font name for some Locales Reviewed-by: bae, jgodinez ! src/share/classes/sun/font/TrueTypeFont.java + test/java/awt/font/FontNames/TrueTypeFontLocaleNameTest.java Changeset: 982d48269751 Author: ddehaven Date: 2014-06-23 13:05 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/982d48269751 Merge - make/src/classes/build/tools/tzdb/ChronoField.java - make/src/classes/build/tools/tzdb/DateTimeException.java - make/src/classes/build/tools/tzdb/LocalDate.java - make/src/classes/build/tools/tzdb/LocalDateTime.java - make/src/classes/build/tools/tzdb/LocalTime.java - make/src/classes/build/tools/tzdb/TimeDefinition.java - make/src/classes/build/tools/tzdb/Utils.java - make/src/classes/build/tools/tzdb/ZoneOffset.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransition.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransitionRule.java - make/src/classes/build/tools/tzdb/ZoneRulesBuilder.java ! src/share/classes/javax/swing/text/html/CSS.java ! src/share/classes/javax/swing/text/html/HTMLDocument.java ! src/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/share/classes/javax/swing/text/html/HTMLWriter.java ! src/share/classes/javax/swing/text/html/ImageView.java ! src/share/classes/javax/swing/text/html/MinimalHTMLWriter.java ! src/share/classes/javax/swing/text/html/StyleSheet.java ! src/share/classes/javax/swing/text/html/parser/DTD.java Changeset: 325ce66dc2ab Author: azvegint Date: 2014-06-24 10:36 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/325ce66dc2ab 8042094: Test javax/swing/JFileChooser/7036025/bug7036025.java fails with java.lang.NullPointerException on Windows x86 Reviewed-by: ahgross, art, pchelko, mschoene ! src/share/classes/sun/awt/shell/ShellFolder.java ! src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java Changeset: 00551446be0e Author: yan Date: 2014-06-24 12:27 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/00551446be0e 7112454: TEST_BUG: java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html failed Reviewed-by: anthony, pchelko Contributed-by: Andrei Eremeev + test/java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html + test/java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.java Changeset: 8fb53507cc6e Author: prr Date: 2014-07-01 10:20 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8fb53507cc6e Merge - src/share/classes/sun/jvmstat/monitor/remote/BufferedMonitoredVm.java - test/com/sun/tools/attach/Shutdown.java Changeset: 121f6b3c0dde Author: lana Date: 2014-07-01 14:28 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/121f6b3c0dde Merge - make/src/classes/build/tools/tzdb/ChronoField.java - make/src/classes/build/tools/tzdb/DateTimeException.java - make/src/classes/build/tools/tzdb/LocalDate.java - make/src/classes/build/tools/tzdb/LocalDateTime.java - make/src/classes/build/tools/tzdb/LocalTime.java - make/src/classes/build/tools/tzdb/TimeDefinition.java - make/src/classes/build/tools/tzdb/Utils.java - make/src/classes/build/tools/tzdb/ZoneOffset.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransition.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransitionRule.java - make/src/classes/build/tools/tzdb/ZoneRulesBuilder.java - src/macosx/native/com/apple/laf/ScreenPopupFactory.m - src/share/classes/com/sun/java/browser/dom/DOMAccessException.java - src/share/classes/com/sun/java/browser/dom/DOMAccessor.java - src/share/classes/com/sun/java/browser/dom/DOMAction.java - src/share/classes/com/sun/java/browser/dom/DOMService.java - src/share/classes/com/sun/java/browser/dom/DOMServiceProvider.java - src/share/classes/com/sun/java/browser/dom/DOMUnsupportedException.java - src/share/classes/com/sun/java/browser/net/ProxyInfo.java - src/share/classes/com/sun/java/browser/net/ProxyService.java - src/share/classes/com/sun/java/browser/net/ProxyServiceProvider.java - src/share/classes/com/sun/media/sound/services/linux-i586/javax.sound.sampled.spi.MixerProvider - src/share/classes/com/sun/media/sound/services/windows-i586/javax.sound.sampled.spi.MixerProvider - src/share/classes/com/sun/media/sound/services/windows-ia64/javax.sound.sampled.spi.MixerProvider - src/share/classes/sun/awt/EventQueueDelegate.java - src/share/classes/sun/jvmstat/monitor/remote/BufferedMonitoredVm.java - src/share/classes/sun/text/CodePointIterator.java - test/com/sun/tools/attach/Shutdown.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/AbsoluteComponentCenterCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/DataFlavorSearcher.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/InterprocessMessages.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MyTransferable.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/NextFramePositionCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/SourcePanel.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/TargetPanel.java - test/java/awt/EventQueue/6638195/bug6638195.java - test/java/awt/datatransfer/DuplicatedNativesTest/DuplicatedNativesTest.java - test/java/awt/datatransfer/MappingGenerationTest/MappingGenerationTest.java Changeset: 44b89a35be6e Author: valeriep Date: 2014-07-01 20:35 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/44b89a35be6e 8046046: Test sun/security/pkcs11/Signature/TestDSAKeyLength.java fails intermittently on Solaris 11 in 8u40 nightly Summary: Override the upper limit to 1024 for SHA1withDSA when larger DSA key size is supported. Reviewed-by: mullan, ascarpino ! src/share/classes/sun/security/pkcs11/P11Signature.java Changeset: c2e818a8d678 Author: valeriep Date: 2014-07-01 20:35 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/c2e818a8d678 8027575: b113 causing a lot of memory allocation and regression for wls_webapp_atomics Summary: Reduce buffer allocation and do multiple cipher encryption/decryption calls. Reviewed-by: xuelei, ascarpino ! src/share/classes/com/sun/crypto/provider/CipherCore.java ! test/com/sun/crypto/provider/Cipher/AES/TestCopySafe.java Changeset: 1a5a2a5d7505 Author: valeriep Date: 2014-07-01 23:09 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/1a5a2a5d7505 Merge Changeset: a7bb41209acd Author: weijun Date: 2014-07-02 09:48 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a7bb41209acd 8048511: Uninitialised memory in jdk/src/share/native/sun/security/jgss/wrapper/GSSLibStub.c Reviewed-by: valeriep ! src/share/native/sun/security/jgss/wrapper/GSSLibStub.c Changeset: 075293ea610b Author: ykantser Date: 2014-07-01 21:23 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/075293ea610b 8048892: TEST_BUG: shell script tests need to be change to not use retired @debuggeeVMOptions mechanism Reviewed-by: sla, jbachorik ! test/com/sun/jdi/PrivateTransportTest.sh ! test/com/sun/jdi/ShellScaffold.sh + test/com/sun/jdi/SuspendNoFlagTest.java - test/com/sun/jdi/SuspendNoFlagTest.sh ! test/com/sun/jdi/VMConnection.java Changeset: 98c78397549d Author: smarks Date: 2014-07-01 23:39 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/98c78397549d 8048989: small errors in Collectors examples Reviewed-by: darcy Contributed-by: raoul at urma.com ! src/share/classes/java/util/stream/Collectors.java Changeset: 4623ea09772f Author: sla Date: 2014-07-02 08:41 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4623ea09772f 8046883: com/sun/jdi/ProcessAttachTest.sh gets "java.io.IOException: Invalid process identifier" on windows Reviewed-by: dcubed, dsamersoff, allwin - test/com/sun/jdi/ProcessAttachDebuggee.java - test/com/sun/jdi/ProcessAttachDebugger.java + test/com/sun/jdi/ProcessAttachTest.java - test/com/sun/jdi/ProcessAttachTest.sh - test/com/sun/jdi/ShutdownDebuggee.java Changeset: 6c9d15a88501 Author: weijun Date: 2014-07-02 17:03 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/6c9d15a88501 8042053: Broken links to jarsigner and keytool docs in java.security package summary Reviewed-by: xuelei ! src/share/classes/java/security/package-info.java Changeset: 08d0c4b1a48d Author: alanb Date: 2014-07-02 10:03 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/08d0c4b1a48d 8048891: Remove unused JObjC from jdk repository Reviewed-by: mchung - src/macosx/native/jobjc/JObjC.xcodeproj/default.pbxuser - src/macosx/native/jobjc/JObjC.xcodeproj/project.pbxproj - src/macosx/native/jobjc/README.txt - src/macosx/native/jobjc/TODOS - src/macosx/native/jobjc/bridgesupport.gmk - src/macosx/native/jobjc/build.xml - src/macosx/native/jobjc/extract_classes.pl - src/macosx/native/jobjc/run-and-write-if-okay - src/macosx/native/jobjc/rungen - src/macosx/native/jobjc/runjava - src/macosx/native/jobjc/src/core/PrimitiveCoder.hs - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CFType.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CIF.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Coder.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/FFIType.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Function.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/ID.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Invoke.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/JObjCRuntime.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/MacOSXFramework.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NSClass.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NativeArgumentBuffer.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NativeBuffer.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NativeObjectLifecycleManager.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Opaque.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Pointer.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/PrimitiveCoder.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/SEL.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Struct.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Subclassing.java - src/macosx/native/jobjc/src/core/native/CIF.m - src/macosx/native/jobjc/src/core/native/Coder.m - src/macosx/native/jobjc/src/core/native/FFIType.m - src/macosx/native/jobjc/src/core/native/Function.m - src/macosx/native/jobjc/src/core/native/ID.m - src/macosx/native/jobjc/src/core/native/Invoke.m - src/macosx/native/jobjc/src/core/native/JObjCRuntime.m - src/macosx/native/jobjc/src/core/native/MacOSXFramework.m - src/macosx/native/jobjc/src/core/native/NSClass.m - src/macosx/native/jobjc/src/core/native/NativeBuffer.h - src/macosx/native/jobjc/src/core/native/NativeBuffer.m - src/macosx/native/jobjc/src/core/native/NativeObjectLifecycleManager.m - src/macosx/native/jobjc/src/core/native/SEL.m - src/macosx/native/jobjc/src/core/native/Subclassing.m - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/BootClassPathMinus.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/ClassConsolidator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/ClassGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/FileCopier.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/FrameworkGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/FunctionGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/Generator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/MethodDisambiguator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/RestrictedKeywords.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/Utils.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/AbstractObjCClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CFTypeClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CategoryClassClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CategoryClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CopiedFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/FrameworkClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/GeneratedClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/JObjCClassClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/JObjCClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/MixedPrimitiveCoderClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/OpaqueClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/OutputFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/RootJObjCClass.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/StructClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Arg.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/CFType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Category.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Clazz.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Constant.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Element.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/ElementWType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Framework.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Function.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/FunctionAlias.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/InformalProtocol.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Method.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/NativeEnum.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Opaque.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/OutputFileGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Protocol.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/ReturnValue.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/StringConstant.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Struct.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/TypeElement.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/coders/CoderDescriptor.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/coders/ComplexCoderDescriptor.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/coders/PrimitiveCoderDescriptor.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/JType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/NType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/Type.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/TypeCache.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/TypeToJType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/Fp.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/JavaLang.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/NTypeMerger.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/NTypeParser.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/NTypePrinter.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/ObjectInspector.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/QA.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/StringStream.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/StructOffsetResolver.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/StructOffsetResolverBigBang.java - src/macosx/native/jobjc/src/generator/java/com/apple/jobjc/SuperClassExtractor.java - src/macosx/native/jobjc/src/generator/java/com/apple/jobjc/UnsafeRuntimeAccess.java - src/macosx/native/jobjc/src/runtime-additions/java/com/apple/jobjc/Utils.java - src/macosx/native/jobjc/src/runtime-additions/native/NativeNumber.m - src/macosx/native/jobjc/src/runtime-additions/native/NativeString.m - src/macosx/native/jobjc/src/runtime-additions/native/NativeThread.m - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BaseBench.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchFunCall.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchIDPop.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchStructCoding.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchUnsafe.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/CategoryTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/FunctionTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/GUIDemo.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/IBDemo.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/IntroTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/NSClassTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/NativeBufferTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/NativeTypeTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/PooledTestCase.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/SELTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/StructTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/SubclassingTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/TestUtils.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/UtilsTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/VarArgsTest.java - src/macosx/native/jobjc/src/tests/native/FunCallBench.m Changeset: 4ee22aef03c6 Author: martin Date: 2014-07-02 10:21 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4ee22aef03c6 8048990: ZipFile.entries() can't handle empty zip entry names Summary: getEntryBytes should never return null pointer for entry names Reviewed-by: sherman ! src/share/native/java/util/zip/ZipFile.c ! test/java/util/zip/ZipFile/Assortment.java Changeset: 48f37afb002c Author: jmanson Date: 2014-07-02 14:14 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/48f37afb002c 8048840: File.createTempFile has uninformative failure message Reviewed-by: martin, alanb ! src/share/classes/java/io/File.java ! test/java/io/File/NulFile.java Changeset: 8c061305cf30 Author: psandoz Date: 2014-07-03 09:30 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8c061305cf30 8043327: Collectors.toMap studentToGPA example uses Functions.identity() 8043328: Typo in documentation of package java.util.stream Reviewed-by: alanb, lancea ! src/share/classes/java/util/stream/Collectors.java ! src/share/classes/java/util/stream/package-info.java Changeset: 5bd902923ccc Author: egahlin Date: 2014-07-03 18:20 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/5bd902923ccc 8028474: sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.sh timeout, leaves looping process Reviewed-by: sla, jbachorik, rriggs ! test/ProblemList.txt ! test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.java - test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.sh - test/sun/jvmstat/testlibrary/JavaProcess.java Changeset: 85bcf0f99edc Author: lana Date: 2014-07-09 10:42 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/85bcf0f99edc Merge - make/src/classes/build/tools/tzdb/ChronoField.java - make/src/classes/build/tools/tzdb/DateTimeException.java - make/src/classes/build/tools/tzdb/LocalDate.java - make/src/classes/build/tools/tzdb/LocalDateTime.java - make/src/classes/build/tools/tzdb/LocalTime.java - make/src/classes/build/tools/tzdb/TimeDefinition.java - make/src/classes/build/tools/tzdb/Utils.java - make/src/classes/build/tools/tzdb/ZoneOffset.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransition.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransitionRule.java - make/src/classes/build/tools/tzdb/ZoneRulesBuilder.java - src/macosx/native/com/apple/laf/ScreenPopupFactory.m - src/macosx/native/jobjc/JObjC.xcodeproj/default.pbxuser - src/macosx/native/jobjc/JObjC.xcodeproj/project.pbxproj - src/macosx/native/jobjc/README.txt - src/macosx/native/jobjc/TODOS - src/macosx/native/jobjc/bridgesupport.gmk - src/macosx/native/jobjc/build.xml - src/macosx/native/jobjc/extract_classes.pl - src/macosx/native/jobjc/run-and-write-if-okay - src/macosx/native/jobjc/rungen - src/macosx/native/jobjc/runjava - src/macosx/native/jobjc/src/core/PrimitiveCoder.hs - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CFType.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CIF.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Coder.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/FFIType.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Function.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/ID.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Invoke.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/JObjCRuntime.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/MacOSXFramework.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NSClass.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NativeArgumentBuffer.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NativeBuffer.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NativeObjectLifecycleManager.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Opaque.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Pointer.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/PrimitiveCoder.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/SEL.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Struct.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Subclassing.java - src/macosx/native/jobjc/src/core/native/CIF.m - src/macosx/native/jobjc/src/core/native/Coder.m - src/macosx/native/jobjc/src/core/native/FFIType.m - src/macosx/native/jobjc/src/core/native/Function.m - src/macosx/native/jobjc/src/core/native/ID.m - src/macosx/native/jobjc/src/core/native/Invoke.m - src/macosx/native/jobjc/src/core/native/JObjCRuntime.m - src/macosx/native/jobjc/src/core/native/MacOSXFramework.m - src/macosx/native/jobjc/src/core/native/NSClass.m - src/macosx/native/jobjc/src/core/native/NativeBuffer.h - src/macosx/native/jobjc/src/core/native/NativeBuffer.m - src/macosx/native/jobjc/src/core/native/NativeObjectLifecycleManager.m - src/macosx/native/jobjc/src/core/native/SEL.m - src/macosx/native/jobjc/src/core/native/Subclassing.m - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/BootClassPathMinus.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/ClassConsolidator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/ClassGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/FileCopier.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/FrameworkGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/FunctionGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/Generator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/MethodDisambiguator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/RestrictedKeywords.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/Utils.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/AbstractObjCClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CFTypeClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CategoryClassClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CategoryClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CopiedFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/FrameworkClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/GeneratedClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/JObjCClassClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/JObjCClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/MixedPrimitiveCoderClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/OpaqueClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/OutputFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/RootJObjCClass.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/StructClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Arg.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/CFType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Category.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Clazz.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Constant.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Element.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/ElementWType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Framework.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Function.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/FunctionAlias.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/InformalProtocol.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Method.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/NativeEnum.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Opaque.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/OutputFileGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Protocol.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/ReturnValue.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/StringConstant.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Struct.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/TypeElement.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/coders/CoderDescriptor.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/coders/ComplexCoderDescriptor.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/coders/PrimitiveCoderDescriptor.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/JType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/NType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/Type.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/TypeCache.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/TypeToJType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/Fp.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/JavaLang.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/NTypeMerger.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/NTypeParser.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/NTypePrinter.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/ObjectInspector.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/QA.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/StringStream.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/StructOffsetResolver.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/StructOffsetResolverBigBang.java - src/macosx/native/jobjc/src/generator/java/com/apple/jobjc/SuperClassExtractor.java - src/macosx/native/jobjc/src/generator/java/com/apple/jobjc/UnsafeRuntimeAccess.java - src/macosx/native/jobjc/src/runtime-additions/java/com/apple/jobjc/Utils.java - src/macosx/native/jobjc/src/runtime-additions/native/NativeNumber.m - src/macosx/native/jobjc/src/runtime-additions/native/NativeString.m - src/macosx/native/jobjc/src/runtime-additions/native/NativeThread.m - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BaseBench.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchFunCall.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchIDPop.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchStructCoding.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchUnsafe.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/CategoryTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/FunctionTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/GUIDemo.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/IBDemo.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/IntroTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/NSClassTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/NativeBufferTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/NativeTypeTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/PooledTestCase.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/SELTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/StructTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/SubclassingTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/TestUtils.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/UtilsTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/VarArgsTest.java - src/macosx/native/jobjc/src/tests/native/FunCallBench.m - src/share/classes/com/sun/java/browser/dom/DOMAccessException.java - src/share/classes/com/sun/java/browser/dom/DOMAccessor.java - src/share/classes/com/sun/java/browser/dom/DOMAction.java - src/share/classes/com/sun/java/browser/dom/DOMService.java - src/share/classes/com/sun/java/browser/dom/DOMServiceProvider.java - src/share/classes/com/sun/java/browser/dom/DOMUnsupportedException.java - src/share/classes/com/sun/java/browser/net/ProxyInfo.java - src/share/classes/com/sun/java/browser/net/ProxyService.java - src/share/classes/com/sun/java/browser/net/ProxyServiceProvider.java - src/share/classes/com/sun/media/sound/services/linux-i586/javax.sound.sampled.spi.MixerProvider - src/share/classes/com/sun/media/sound/services/windows-i586/javax.sound.sampled.spi.MixerProvider - src/share/classes/com/sun/media/sound/services/windows-ia64/javax.sound.sampled.spi.MixerProvider - src/share/classes/sun/awt/EventQueueDelegate.java - src/share/classes/sun/jvmstat/monitor/remote/BufferedMonitoredVm.java - src/share/classes/sun/text/CodePointIterator.java - test/com/sun/jdi/ProcessAttachDebuggee.java - test/com/sun/jdi/ProcessAttachDebugger.java - test/com/sun/jdi/ProcessAttachTest.sh - test/com/sun/jdi/ShutdownDebuggee.java - test/com/sun/jdi/SuspendNoFlagTest.sh - test/com/sun/tools/attach/Shutdown.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/AbsoluteComponentCenterCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/DataFlavorSearcher.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/InterprocessMessages.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MyTransferable.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/NextFramePositionCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/SourcePanel.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/TargetPanel.java - test/java/awt/EventQueue/6638195/bug6638195.java - test/java/awt/datatransfer/DuplicatedNativesTest/DuplicatedNativesTest.java - test/java/awt/datatransfer/MappingGenerationTest/MappingGenerationTest.java - test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.sh - test/sun/jvmstat/testlibrary/JavaProcess.java Changeset: 2b88f21ec693 Author: katleman Date: 2014-07-10 12:13 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2b88f21ec693 Added tag jdk9-b22 for changeset 85bcf0f99edc ! .hgtags Changeset: 7044e9901b8f Author: naoto Date: 2014-07-03 16:19 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7044e9901b8f 8038092: Re-examine Bidi reflective dependency on java.awt.font Reviewed-by: alanb + src/share/classes/java/awt/font/JavaAWTFontAccessImpl.java ! src/share/classes/java/awt/font/NumericShaper.java ! src/share/classes/java/awt/font/TextAttribute.java + src/share/classes/sun/misc/JavaAWTFontAccess.java ! src/share/classes/sun/misc/SharedSecrets.java ! src/share/classes/sun/text/bidi/BidiBase.java ! test/java/text/Bidi/Bug7051769.java Changeset: a8aa05835ab2 Author: yan Date: 2014-07-04 12:56 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/a8aa05835ab2 8046590: fix doclint issues in swing classes, part 1 of 4 Reviewed-by: alexsch Contributed-by: Steven Sides ! src/share/classes/javax/swing/AbstractListModel.java ! src/share/classes/javax/swing/CellRendererPane.java ! src/share/classes/javax/swing/DefaultCellEditor.java ! src/share/classes/javax/swing/DefaultDesktopManager.java ! src/share/classes/javax/swing/DefaultListModel.java ! src/share/classes/javax/swing/DefaultListSelectionModel.java ! src/share/classes/javax/swing/DefaultRowSorter.java ! src/share/classes/javax/swing/InputMap.java ! src/share/classes/javax/swing/JCheckBox.java ! src/share/classes/javax/swing/JCheckBoxMenuItem.java ! src/share/classes/javax/swing/JEditorPane.java ! src/share/classes/javax/swing/JFileChooser.java ! src/share/classes/javax/swing/JFrame.java ! src/share/classes/javax/swing/JMenu.java ! src/share/classes/javax/swing/JMenuBar.java ! src/share/classes/javax/swing/JSlider.java ! src/share/classes/javax/swing/JTabbedPane.java ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/MenuElement.java ! src/share/classes/javax/swing/MenuSelectionManager.java ! src/share/classes/javax/swing/RowFilter.java ! src/share/classes/javax/swing/SortingFocusTraversalPolicy.java ! src/share/classes/javax/swing/Spring.java ! src/share/classes/javax/swing/UIManager.java Changeset: f44b1b98c288 Author: dholmes Date: 2014-07-06 20:12 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/f44b1b98c288 8049055: Tests added to the jdk/test/TEST.groups to be run on correct profiles Reviewed-by: dholmes, dfuchs Contributed-by: Evgeniya Stepanova ! test/TEST.groups Changeset: 45d8b562ddd3 Author: michaelm Date: 2014-07-07 12:42 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/45d8b562ddd3 8048212: Two tests failed with "java.net.SocketException: Bad protocol option" on Windows after 8029607 Reviewed-by: alanb ! src/windows/native/java/net/net_util_md.c ! src/windows/native/sun/nio/ch/Net.c Changeset: d41dc1f9b2d8 Author: dfuchs Date: 2014-07-07 15:31 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d41dc1f9b2d8 8048020: Regression on java.util.logging.FileHandler Summary: In some circumstances j.u.l.FileHandler can leave zombie lock files on the file system. The fix lets FileHandler reuse such zombie lock files when it sees them - as it used to do in version 1.7 of the JDK. Reviewed-by: alanb ! src/share/classes/java/util/logging/FileHandler.java + test/java/util/logging/CheckZombieLockTest.java Changeset: 7028bbbbdc6f Author: egahlin Date: 2014-07-07 15:06 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7028bbbbdc6f 8047368: Remove oracle.jrockit.jfr from open package.access list Reviewed-by: sla, mullan ! src/share/lib/security/java.security-aix ! src/share/lib/security/java.security-linux ! src/share/lib/security/java.security-macosx ! src/share/lib/security/java.security-solaris ! src/share/lib/security/java.security-windows ! test/java/lang/SecurityManager/CheckPackageAccess.java Changeset: ffef6db15d92 Author: mullan Date: 2014-07-08 14:35 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/ffef6db15d92 8049244: XML Signature performance issue caused by unbuffered signature data Reviewed-by: xuelei ! src/share/classes/org/jcp/xml/dsig/internal/dom/DOMSignedInfo.java Changeset: 48af79ee59bb Author: coleenp Date: 2014-06-24 11:23 -0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/48af79ee59bb 6642881: Improve performance of Class.getClassLoader() Summary: Add classLoader to java/lang/Class instance for fast access Reviewed-by: alanb, lfoltan, rriggs, vlivanov, twisti, mchung, jfranck, dholmes ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/reflect/AccessibleObject.java ! src/share/javavm/export/jvm.h ! src/share/native/common/check_code.c ! src/share/native/java/lang/Class.c Changeset: 74679fa59396 Author: amurillo Date: 2014-06-26 23:11 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/74679fa59396 Merge Changeset: e88a7c1fadc4 Author: amurillo Date: 2014-07-03 13:22 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/e88a7c1fadc4 Merge Changeset: 0bbcc239d9f4 Author: amurillo Date: 2014-07-08 12:38 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0bbcc239d9f4 Merge Changeset: 9d67fe48a14b Author: weijun Date: 2014-07-09 15:10 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9d67fe48a14b 7150092: NTLM authentication fail if user specified a different realm Reviewed-by: michaelm ! src/share/classes/com/sun/security/ntlm/Client.java ! src/share/classes/com/sun/security/ntlm/Server.java ! src/share/classes/com/sun/security/sasl/ntlm/NTLMClient.java ! src/share/classes/com/sun/security/sasl/ntlm/NTLMServer.java ! src/solaris/classes/sun/net/www/protocol/http/ntlm/NTLMAuthentication.java ! test/com/sun/security/sasl/ntlm/NTLMTest.java Changeset: fd7630919a9d Author: weijun Date: 2014-07-09 16:34 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/fd7630919a9d 8047765: Generate blacklist.certs in build Reviewed-by: dholmes, alanb ! make/CopyFiles.gmk ! make/GenerateData.gmk ! make/Tools.gmk + make/data/blacklistedcertsconverter/blacklisted.certs.pem + make/gendata/GendataBlacklistedCerts.gmk + make/src/classes/build/tools/blacklistedcertsconverter/BlacklistedCertsConverter.java - src/share/lib/security/BlacklistedCertsConverter.java - src/share/lib/security/blacklisted.certs - src/share/lib/security/blacklisted.certs.pem Changeset: 11e856f0c254 Author: plevart Date: 2014-07-09 12:30 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/11e856f0c254 8049220: URL.factory data race Reviewed-by: alanb, psandoz ! src/share/classes/java/net/URL.java Changeset: 3414f6e34216 Author: dfuchs Date: 2014-07-09 17:51 +0200 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/3414f6e34216 8048913: java/util/logging/LoggingDeadlock2.java times out Summary: removes the /timeout=15 parameter from the @run command line Reviewed-by: mchung, dholmes ! test/java/util/logging/LoggingDeadlock2.java Changeset: 2b7bf1d63a9c Author: naoto Date: 2014-07-09 10:02 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2b7bf1d63a9c 8048515: Read outside array bounds in jdk/src/solaris/native/java/lang/java_props_md.c Reviewed-by: okutsu ! src/share/native/java/lang/java_props.h ! src/solaris/native/java/lang/locale_str.h Changeset: 05343feb3771 Author: darcy Date: 2014-07-09 17:02 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/05343feb3771 8049794: Fix raw and unchecked warnings in jvmstat Reviewed-by: mchung ! src/share/classes/sun/jvmstat/monitor/event/MonitorStatusChangeEvent.java ! src/share/classes/sun/jvmstat/monitor/event/VmStatusChangeEvent.java ! src/share/classes/sun/jvmstat/perfdata/monitor/AbstractPerfDataBuffer.java ! src/share/classes/sun/jvmstat/perfdata/monitor/MonitorStatus.java ! src/share/classes/sun/jvmstat/perfdata/monitor/PerfDataBufferImpl.java ! src/share/classes/sun/jvmstat/perfdata/monitor/protocol/local/LocalMonitoredVm.java ! src/share/classes/sun/jvmstat/perfdata/monitor/protocol/local/MonitoredHostProvider.java ! src/share/classes/sun/jvmstat/perfdata/monitor/protocol/rmi/MonitoredHostProvider.java ! src/share/classes/sun/jvmstat/perfdata/monitor/protocol/rmi/RemoteMonitoredVm.java ! src/share/classes/sun/jvmstat/perfdata/monitor/v1_0/PerfDataBuffer.java ! src/share/classes/sun/jvmstat/perfdata/monitor/v2_0/PerfDataBuffer.java Changeset: 2c1c21d11e58 Author: juh Date: 2014-07-09 18:34 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2c1c21d11e58 7065233: To interpret case-insensitive string locale independently Reviewed-by: xuelei ! src/share/classes/com/sun/crypto/provider/JceKeyStore.java ! src/share/classes/com/sun/crypto/provider/PBEKey.java ! src/share/classes/com/sun/crypto/provider/PBEKeyFactory.java ! src/share/classes/com/sun/crypto/provider/PBKDF2KeyImpl.java ! src/share/classes/javax/crypto/spec/SecretKeySpec.java ! src/share/classes/sun/security/pkcs12/PKCS12KeyStore.java ! src/share/classes/sun/security/provider/ConfigFile.java ! src/share/classes/sun/security/provider/PolicyParser.java ! src/share/classes/sun/security/tools/keytool/Main.java Changeset: 4424a0319faa Author: weijun Date: 2014-07-10 10:44 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/4424a0319faa 8044085: Access ExtendedGSSContext.inquireSecContext() result through SASL Reviewed-by: mullan ! src/share/classes/com/sun/security/sasl/gsskerb/GssKrb5Base.java ! src/share/classes/javax/security/sasl/SaslClient.java ! src/share/classes/javax/security/sasl/SaslServer.java ! test/sun/security/krb5/auto/SaslBasic.java Changeset: 28da5b382a13 Author: rhalade Date: 2014-07-10 03:07 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/28da5b382a13 8041781: Need new regression tests for PBE keys Reviewed-by: xuelei + test/com/sun/crypto/provider/Cipher/PBE/PBESealedObject.java + test/com/sun/crypto/provider/Cipher/PBE/PBKDF2Translate.java + test/com/sun/crypto/provider/Cipher/PBE/TestCipherKeyWrapperPBEKey.java Changeset: 2acafa554d2e Author: darcy Date: 2014-07-09 21:26 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/2acafa554d2e 8049820: Fix raw and unchecked lint warnings in sun.management Reviewed-by: mchung ! src/share/classes/sun/management/DiagnosticCommandImpl.java ! src/share/classes/sun/management/GarbageCollectionNotifInfoCompositeData.java ! src/share/classes/sun/management/GcInfoBuilder.java ! src/share/classes/sun/management/GcInfoCompositeData.java ! src/share/classes/sun/management/MappedMXBeanType.java Changeset: 0083adcfd5ed Author: prappo Date: 2014-06-17 13:57 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0083adcfd5ed 8047062: Improve diagnostic output in com/sun/jndi/ldap/LdapTimeoutTest.java Reviewed-by: duke ! src/share/classes/com/sun/jndi/ldap/Connection.java ! test/com/sun/jndi/ldap/LdapTimeoutTest.java Changeset: 0c72a0ace0db Author: lana Date: 2014-07-10 12:40 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/0c72a0ace0db Merge - src/share/lib/security/BlacklistedCertsConverter.java - src/share/lib/security/blacklisted.certs - src/share/lib/security/blacklisted.certs.pem Changeset: 7f8294841146 Author: valeriep Date: 2014-07-10 22:44 +0000 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/7f8294841146 8043406: Change default policy for JCE providers to run with as few privileges as possible Summary: Provide default permissions for crypto providers Reviewed-by: mullan, vinnie ! src/share/classes/sun/security/jca/ProviderConfig.java ! src/share/lib/security/java.policy ! src/windows/lib/security/java.policy ! test/java/io/Serializable/subclassGC/security.policy ! test/java/lang/System/System.policy ! test/java/net/URLPermission/policy.1 ! test/java/net/URLPermission/policy.2 ! test/java/net/URLPermission/policy.3 ! test/java/nio/charset/spi/default-pol ! test/java/rmi/activation/Activatable/checkActivateRef/security.policy ! test/java/rmi/activation/Activatable/checkAnnotations/security.policy ! test/java/rmi/activation/Activatable/checkImplClassLoader/security.policy ! test/java/rmi/activation/Activatable/checkRegisterInLog/security.policy ! test/java/rmi/activation/Activatable/createPrivateActivable/security.policy ! test/java/rmi/activation/Activatable/downloadParameterClass/security.policy ! test/java/rmi/activation/Activatable/elucidateNoSuchMethod/security.policy ! test/java/rmi/activation/Activatable/extLoadedImpl/security.policy ! test/java/rmi/activation/Activatable/forceLogSnapshot/security.policy ! test/java/rmi/activation/Activatable/inactiveGroup/security.policy ! test/java/rmi/activation/Activatable/nestedActivate/security.policy ! test/java/rmi/activation/Activatable/nonExistentActivatable/security.policy ! test/java/rmi/activation/Activatable/restartCrashedService/security.policy ! test/java/rmi/activation/Activatable/restartLatecomer/security.policy ! test/java/rmi/activation/Activatable/restartService/security.policy ! test/java/rmi/activation/Activatable/shutdownGracefully/security.policy ! test/java/rmi/activation/Activatable/unregisterInactive/security.policy ! test/java/rmi/activation/ActivationSystem/activeGroup/security.policy ! test/java/rmi/activation/ActivationSystem/modifyDescriptor/security.policy ! test/java/rmi/activation/ActivationSystem/unregisterGroup/security.policy ! test/java/rmi/activation/CommandEnvironment/security.policy ! test/java/rmi/dgc/VMID/security.policy ! test/java/rmi/dgc/dgcImplInsulation/security.policy ! test/java/rmi/registry/classPathCodebase/security.policy ! test/java/rmi/server/RMIClassLoader/delegateToContextLoader/security.policy ! test/java/rmi/server/RMIClassLoader/downloadArrayClass/security.policy ! test/java/rmi/server/RMIClassLoader/getClassLoader/security.policy ! test/java/rmi/server/RMIClassLoader/loadProxyClasses/security.policy ! test/java/rmi/server/RMIClassLoader/spi/security.policy ! test/java/rmi/server/RMIClassLoader/useCodebaseOnly/security.policy ! test/java/rmi/server/RMIClassLoader/useGetURLs/security.policy ! test/java/rmi/server/RMISocketFactory/useSocketFactory/activatable/security.policy ! test/java/rmi/server/RMISocketFactory/useSocketFactory/registry/security.policy ! test/java/rmi/server/RMISocketFactory/useSocketFactory/unicast/security.policy ! test/java/rmi/server/RemoteServer/setLogPermission/java.policy ! test/java/rmi/server/clientStackTrace/security.policy ! test/java/rmi/server/useCustomRef/security.policy ! test/java/rmi/transport/checkLeaseInfoLeak/security.policy ! test/java/rmi/transport/dgcDeadLock/security.policy ! test/java/rmi/transport/httpSocket/security.policy ! test/java/security/KeyRep/Serial.policy ! test/java/security/KeyRep/SerialOld.policy ! test/java/security/Policy/GetInstance/GetInstance.policy ! test/java/security/Policy/GetInstance/GetInstance.policyURL ! test/java/security/Policy/GetInstance/GetInstanceSecurity.policy ! test/java/security/Security/AddProvider.policy.1 ! test/java/security/Security/AddProvider.policy.2 ! test/java/security/Security/AddProvider.policy.3 ! test/java/security/Security/removing/RemoveStaticProvider.policy ! test/javax/security/auth/login/Configuration/GetInstanceSecurity.grantedPolicy ! test/javax/security/auth/login/Configuration/GetInstanceSecurity.policy ! test/jdk/nio/zipfs/test.policy ! test/sun/net/www/http/HttpClient/IsKeepingAlive.policy ! test/sun/net/www/http/HttpClient/OpenServer.policy ! test/sun/rmi/server/MarshalOutputStream/marshalForeignStub/security.policy ! test/sun/security/pkcs11/KeyStore/Basic.policy ! test/sun/security/pkcs11/Provider/Login.policy ! test/sun/security/provider/PolicyFile/Alias.policy ! test/sun/security/provider/PolicyFile/AliasExpansion.policy ! test/sun/security/provider/PolicyFile/TrustedCert.policy Changeset: 9fd896dc6da1 Author: weijun Date: 2014-07-11 09:17 +0800 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9fd896dc6da1 8049936: Update the CheckBlacklistedCerts.java test to find new location of blacklisted.certs.pem Reviewed-by: xuelei ! test/lib/security/CheckBlacklistedCerts.java Changeset: 03745c1d7f59 Author: darcy Date: 2014-07-10 22:57 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/03745c1d7f59 8049736: Fix raw and unchecked lint warnings in sun.tracing Reviewed-by: mchung ! src/share/classes/sun/tracing/ProviderSkeleton.java ! src/share/classes/sun/tracing/dtrace/DTraceProvider.java Changeset: d5404a4e4fac Author: prappo Date: 2014-07-11 14:53 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d5404a4e4fac 8049884: Reduce possible timing noise in com/sun/jndi/ldap/LdapTimeoutTest.java Reviewed-by: vinnie ! test/com/sun/jndi/ldap/LdapTimeoutTest.java Changeset: 9d1e46cc3972 Author: darcy Date: 2014-07-11 14:06 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9d1e46cc3972 8050051: Remove unneeded/obsolete -source/-target options in shell tests Reviewed-by: alanb ! test/java/lang/Class/forName/NonJavaNames.sh ! test/tools/pack200/PackageVersionTest.java Changeset: 8ed989e71f1b Author: igerasim Date: 2014-07-12 04:15 +0400 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/8ed989e71f1b 6904367: (coll) IdentityHashMap is resized before exceeding the expected maximum size Reviewed-by: plevart, martin ! src/share/classes/java/util/IdentityHashMap.java + test/java/util/IdentityHashMap/Capacity.java Changeset: d04d8ae46ca3 Author: smarks Date: 2014-07-12 10:52 -0700 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/d04d8ae46ca3 8050105: test sun/rmi/rmic/minimizeWrapperInstances/run.sh fails Reviewed-by: lancea, mduigou, darcy ! test/sun/rmi/rmic/minimizeWrapperInstances/run.sh Changeset: 9febf9dbc0a4 Author: vinnie Date: 2014-07-13 15:24 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/9febf9dbc0a4 8050118: Windows policy file missing semicolon Reviewed-by: chegar ! src/windows/lib/security/java.policy Changeset: bf291203379e Author: aph Date: 2014-07-17 13:25 +0100 URL: http://hg.openjdk.java.net/aarch64-port/jdk9/jdk/rev/bf291203379e Merge from JDK9 - make/mapfiles/libnpt/mapfile-vers - make/src/classes/build/tools/tzdb/ChronoField.java - make/src/classes/build/tools/tzdb/DateTimeException.java - make/src/classes/build/tools/tzdb/LocalDate.java - make/src/classes/build/tools/tzdb/LocalDateTime.java - make/src/classes/build/tools/tzdb/LocalTime.java - make/src/classes/build/tools/tzdb/TimeDefinition.java - make/src/classes/build/tools/tzdb/Utils.java - make/src/classes/build/tools/tzdb/ZoneOffset.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransition.java - make/src/classes/build/tools/tzdb/ZoneOffsetTransitionRule.java - make/src/classes/build/tools/tzdb/ZoneRulesBuilder.java - src/macosx/native/com/apple/laf/ScreenPopupFactory.m - src/macosx/native/jobjc/JObjC.xcodeproj/default.pbxuser - src/macosx/native/jobjc/JObjC.xcodeproj/project.pbxproj - src/macosx/native/jobjc/README.txt - src/macosx/native/jobjc/TODOS - src/macosx/native/jobjc/bridgesupport.gmk - src/macosx/native/jobjc/build.xml - src/macosx/native/jobjc/extract_classes.pl - src/macosx/native/jobjc/run-and-write-if-okay - src/macosx/native/jobjc/rungen - src/macosx/native/jobjc/runjava - src/macosx/native/jobjc/src/core/PrimitiveCoder.hs - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CFType.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CIF.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Coder.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/FFIType.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Function.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/ID.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Invoke.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/JObjCRuntime.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/MacOSXFramework.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NSClass.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NativeArgumentBuffer.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NativeBuffer.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/NativeObjectLifecycleManager.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Opaque.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Pointer.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/PrimitiveCoder.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/SEL.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Struct.java - src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Subclassing.java - src/macosx/native/jobjc/src/core/native/CIF.m - src/macosx/native/jobjc/src/core/native/Coder.m - src/macosx/native/jobjc/src/core/native/FFIType.m - src/macosx/native/jobjc/src/core/native/Function.m - src/macosx/native/jobjc/src/core/native/ID.m - src/macosx/native/jobjc/src/core/native/Invoke.m - src/macosx/native/jobjc/src/core/native/JObjCRuntime.m - src/macosx/native/jobjc/src/core/native/MacOSXFramework.m - src/macosx/native/jobjc/src/core/native/NSClass.m - src/macosx/native/jobjc/src/core/native/NativeBuffer.h - src/macosx/native/jobjc/src/core/native/NativeBuffer.m - src/macosx/native/jobjc/src/core/native/NativeObjectLifecycleManager.m - src/macosx/native/jobjc/src/core/native/SEL.m - src/macosx/native/jobjc/src/core/native/Subclassing.m - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/BootClassPathMinus.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/ClassConsolidator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/ClassGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/FileCopier.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/FrameworkGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/FunctionGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/Generator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/MethodDisambiguator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/RestrictedKeywords.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/Utils.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/AbstractObjCClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CFTypeClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CategoryClassClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CategoryClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/CopiedFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/FrameworkClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/GeneratedClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/JObjCClassClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/JObjCClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/MixedPrimitiveCoderClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/OpaqueClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/OutputFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/RootJObjCClass.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/classes/StructClassFile.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Arg.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/CFType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Category.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Clazz.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Constant.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Element.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/ElementWType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Framework.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Function.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/FunctionAlias.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/InformalProtocol.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Method.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/NativeEnum.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Opaque.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/OutputFileGenerator.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Protocol.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/ReturnValue.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/StringConstant.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/Struct.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/TypeElement.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/coders/CoderDescriptor.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/coders/ComplexCoderDescriptor.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/coders/PrimitiveCoderDescriptor.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/JType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/NType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/Type.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/TypeCache.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/model/types/TypeToJType.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/Fp.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/JavaLang.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/NTypeMerger.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/NTypeParser.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/NTypePrinter.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/ObjectInspector.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/QA.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/StringStream.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/StructOffsetResolver.java - src/macosx/native/jobjc/src/generator/java/com/apple/internal/jobjc/generator/utils/StructOffsetResolverBigBang.java - src/macosx/native/jobjc/src/generator/java/com/apple/jobjc/SuperClassExtractor.java - src/macosx/native/jobjc/src/generator/java/com/apple/jobjc/UnsafeRuntimeAccess.java - src/macosx/native/jobjc/src/runtime-additions/java/com/apple/jobjc/Utils.java - src/macosx/native/jobjc/src/runtime-additions/native/NativeNumber.m - src/macosx/native/jobjc/src/runtime-additions/native/NativeString.m - src/macosx/native/jobjc/src/runtime-additions/native/NativeThread.m - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BaseBench.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchFunCall.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchIDPop.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchStructCoding.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/BenchUnsafe.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/CategoryTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/FunctionTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/GUIDemo.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/IBDemo.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/IntroTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/NSClassTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/NativeBufferTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/NativeTypeTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/PooledTestCase.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/SELTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/StructTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/SubclassingTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/TestUtils.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/UtilsTest.java - src/macosx/native/jobjc/src/tests/java/com/apple/jobjc/VarArgsTest.java - src/macosx/native/jobjc/src/tests/native/FunCallBench.m - src/macosx/native/sun/awt/CClipboard.h - src/share/classes/com/sun/java/browser/dom/DOMAccessException.java - src/share/classes/com/sun/java/browser/dom/DOMAccessor.java - src/share/classes/com/sun/java/browser/dom/DOMAction.java - src/share/classes/com/sun/java/browser/dom/DOMService.java - src/share/classes/com/sun/java/browser/dom/DOMServiceProvider.java - src/share/classes/com/sun/java/browser/dom/DOMUnsupportedException.java - src/share/classes/com/sun/java/browser/net/ProxyInfo.java - src/share/classes/com/sun/java/browser/net/ProxyService.java - src/share/classes/com/sun/java/browser/net/ProxyServiceProvider.java - src/share/classes/com/sun/media/sound/services/linux-i586/javax.sound.sampled.spi.MixerProvider - src/share/classes/com/sun/media/sound/services/windows-i586/javax.sound.sampled.spi.MixerProvider - src/share/classes/com/sun/media/sound/services/windows-ia64/javax.sound.sampled.spi.MixerProvider - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/etsi.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xenc-schema.xsd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.dtd - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.rng - src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/xmldsig-core-schema.xsd - src/share/classes/com/sun/pept/Delegate.java - src/share/classes/com/sun/pept/encoding/Decoder.java - src/share/classes/com/sun/pept/encoding/Encoder.java - src/share/classes/com/sun/pept/ept/Acceptor.java - src/share/classes/com/sun/pept/ept/ContactInfo.java - src/share/classes/com/sun/pept/ept/ContactInfoList.java - src/share/classes/com/sun/pept/ept/ContactInfoListIterator.java - src/share/classes/com/sun/pept/ept/EPTFactory.java - src/share/classes/com/sun/pept/ept/MessageInfo.java - src/share/classes/com/sun/pept/presentation/MessageStruct.java - src/share/classes/com/sun/pept/presentation/Stub.java - src/share/classes/com/sun/pept/presentation/TargetFinder.java - src/share/classes/com/sun/pept/presentation/Tie.java - src/share/classes/com/sun/pept/protocol/Interceptors.java - src/share/classes/com/sun/pept/protocol/MessageDispatcher.java - src/share/classes/com/sun/pept/transport/Connection.java - src/share/classes/com/sun/tools/hat/MANIFEST.mf - src/share/classes/com/sun/tools/hat/README.txt - src/share/classes/com/sun/tools/hat/build.xml - src/share/classes/javax/swing/text/html/ResourceLoader.java - src/share/classes/javax/swing/text/html/parser/ResourceLoader.java - src/share/classes/jdk/internal/util/xml/BasicXmlPropertiesProvider.java - src/share/classes/sun/awt/EventListenerAggregate.java - src/share/classes/sun/awt/EventQueueDelegate.java - src/share/classes/sun/awt/image/MultiResolutionBufferedImage.java - src/share/classes/sun/dc/META-INF/services/sun.java2d.pipe.RenderingEngine - src/share/classes/sun/java2d/cmm/lcms/META-INF/services/sun.java2d.cmm.CMMServiceProvider - src/share/classes/sun/java2d/pisces/META-INF/services/sun.java2d.pipe.RenderingEngine - src/share/classes/sun/jvmstat/monitor/remote/BufferedMonitoredVm.java - src/share/classes/sun/management/manifest - src/share/classes/sun/misc/ThreadGroupUtils.java - src/share/classes/sun/misc/Timeable.java - src/share/classes/sun/misc/Timer.java - src/share/classes/sun/text/CodePointIterator.java - src/share/classes/sun/util/spi/XmlPropertiesProvider.java - src/share/classes/sun/util/xml/META-INF/services/sun.util.spi.XmlPropertiesProvider - src/share/classes/sun/util/xml/PlatformXmlPropertiesProvider.java - src/share/lib/security/BlacklistedCertsConverter.java - src/share/lib/security/blacklisted.certs - src/share/lib/security/blacklisted.certs.pem - src/share/native/java/util/zip/zlib-1.2.5/ChangeLog - src/share/native/java/util/zip/zlib-1.2.5/README - src/share/native/java/util/zip/zlib-1.2.5/compress.c - src/share/native/java/util/zip/zlib-1.2.5/crc32.h - src/share/native/java/util/zip/zlib-1.2.5/deflate.c - src/share/native/java/util/zip/zlib-1.2.5/deflate.h - src/share/native/java/util/zip/zlib-1.2.5/gzclose.c - src/share/native/java/util/zip/zlib-1.2.5/gzguts.h - src/share/native/java/util/zip/zlib-1.2.5/gzlib.c - src/share/native/java/util/zip/zlib-1.2.5/gzread.c - src/share/native/java/util/zip/zlib-1.2.5/gzwrite.c - src/share/native/java/util/zip/zlib-1.2.5/infback.c - src/share/native/java/util/zip/zlib-1.2.5/inffast.c - src/share/native/java/util/zip/zlib-1.2.5/inffast.h - src/share/native/java/util/zip/zlib-1.2.5/inffixed.h - src/share/native/java/util/zip/zlib-1.2.5/inflate.c - src/share/native/java/util/zip/zlib-1.2.5/inflate.h - src/share/native/java/util/zip/zlib-1.2.5/inftrees.c - src/share/native/java/util/zip/zlib-1.2.5/inftrees.h - src/share/native/java/util/zip/zlib-1.2.5/patches/ChangeLog_java - src/share/native/java/util/zip/zlib-1.2.5/trees.c - src/share/native/java/util/zip/zlib-1.2.5/trees.h - src/share/native/java/util/zip/zlib-1.2.5/uncompr.c - src/share/native/java/util/zip/zlib-1.2.5/zadler32.c - src/share/native/java/util/zip/zlib-1.2.5/zconf.h - src/share/native/java/util/zip/zlib-1.2.5/zcrc32.c - src/share/native/java/util/zip/zlib-1.2.5/zlib.h - src/share/native/java/util/zip/zlib-1.2.5/zutil.c - src/share/native/java/util/zip/zlib-1.2.5/zutil.h - src/share/npt/README.txt - src/share/npt/npt.c - src/share/npt/npt.h - src/share/npt/utf.c - src/share/npt/utf.h - src/solaris/classes/java/lang/UNIXProcess.java.aix - src/solaris/classes/java/lang/UNIXProcess.java.bsd - src/solaris/classes/java/lang/UNIXProcess.java.linux - src/solaris/classes/java/lang/UNIXProcess.java.solaris - src/solaris/classes/sun/java2d/pisces/META-INF/services/sun.java2d.pipe.RenderingEngine - src/solaris/native/sun/awt/awt_Plugin.c - src/solaris/native/sun/awt/awt_Plugin.h - src/solaris/npt/npt_md.h - src/solaris/npt/utf_md.c - src/solaris/npt/utf_md.h - src/windows/npt/npt_md.h - src/windows/npt/utf_md.c - src/windows/npt/utf_md.h - test/com/sun/jdi/ProcessAttachDebuggee.java - test/com/sun/jdi/ProcessAttachDebugger.java - test/com/sun/jdi/ProcessAttachTest.sh - test/com/sun/jdi/ShutdownDebuggee.java - test/com/sun/jdi/SuspendNoFlagTest.sh - test/com/sun/tools/attach/Shutdown.java - test/demo/jvmti/mtrace/JFrameCreateTime.java - test/demo/jvmti/mtrace/TraceJFrame.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/AbsoluteComponentCenterCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/DataFlavorSearcher.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/InterprocessMessages.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MyTransferable.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/NextFramePositionCalculator.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/SourcePanel.java - test/java/awt/DataFlavor/MissedHtmlAndRtfBug/TargetPanel.java - test/java/awt/EventQueue/6638195/bug6638195.java - test/java/awt/datatransfer/DuplicatedNativesTest/DuplicatedNativesTest.java - test/java/util/Properties/CustomProvider.java - test/java/util/Properties/MyXmlPropertiesProvider.java - test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.sh - test/sun/jvmstat/testlibrary/JavaProcess.java - test/sun/security/pkcs11/nss/src/MD5SUMS - test/sun/security/pkcs11/nss/src/SHA1SUMS - test/sun/security/pkcs11/nss/src/nss-3.13.1.tar.gz - test/sun/tools/jhat/HatRun.java From ed at lab.validation.linaro.org Thu Jul 24 08:59:05 2014 From: ed at lab.validation.linaro.org (Edward Nevill) Date: Thu, 24 Jul 2014 08:59:05 -0000 Subject: [aarch64-port-dev ] JTreg failures in aarch64 jdk7u Message-ID: <1406192342.29221.23.camel@localhost.localdomain> Hi, I have been looking at the jtreg hotspot failures in aarch64 jdk7. There are a large number of failures because many of the jtreg hotspot tests contain code which is specific to jdk8, even though it is a jdk7 build. This is because the hotspot sub-repo came originally from jdk8 (hs 25.0-b70) instead of the standard jdk7u hotspot (hs 24.80-b07) and there are many tests which depend on jdk8, either because the tests use jdk8 source features, or because they rely on jdk8 APIs. For example, all (38) of the mathexact tests are invalid and therefore fail because mathexact does not exist on jdk7. The following is a summary of the results i get for jdk7 hotspot Test results: passed: 343; failed: 102; error: 1 For comparison, i tried running the same tests on x86 jdk7 with the following results. Test results: passed: 311; failed: 134; error: 1 I then took the jtreg test suite from the hs24 build and ran it on both aarch64 and x86 vsns of jdk7 with the following results. aarch64: Test results: passed: 279; failed: 11; error: 2 x86: Test results: passed: 286; failed: 4; error: 2 Here aarch64 still gets more failures than x86 because some of the tests make assumptions about testing hs24 vs hs25 (eg. the behaviour of various -XX: options). However the number of test failures is much smaller. So, what is the best way to resolve this? 1) Prune the existing aarch64 jtreg hotspot tree to remove any tests which are specific to jdk8 or 2) Generate an exclude list to exclude the above tests but leave them in place in the tree or 3) Replace the existing aarch64 jtreg hotspot tree (from hs25) with the one from hs24 (which gets 11 failures) and then either prune or exclude the much smaller set of tests which depend on some feature of hs24. I am happy to implement whichever solution as long as the solution works and is satisfactory to everyone. All the best, Ed.