From david.simms at oracle.com Mon Jul 3 07:59:01 2017 From: david.simms at oracle.com (David Simms) Date: Mon, 3 Jul 2017 09:59:01 +0200 Subject: RFR 8183290: [MVT] ClassInfo mangling doesn't work on DVT In-Reply-To: <86861da8-d9b5-2e7f-e713-da829426c557@oracle.com> References: <86861da8-d9b5-2e7f-e713-da829426c557@oracle.com> Message-ID: Looks good, thanks Maurizio /D On 30/06/2017 5:16 p.m., Maurizio Cimadamore wrote: > Hi, > this is a simple fix for a bug uncovered by Lois: name mangling of > ClassInfo doesn't work on DVT generation. That's because that code > doesn't use MethodHandleBuilder. > > I've consolidated the code a bit - now mangling happens in > MinimalValueTypes_1_0 (static method), and MethodHandleBuilder just > calls that. This allows for dealing with runtime properties only in > one place. > > http://cr.openjdk.java.net/~mcimadamore/8183290/ > > Cheers > Maurizio > From david.simms at oracle.com Mon Jul 3 09:17:02 2017 From: david.simms at oracle.com (David Simms) Date: Mon, 3 Jul 2017 11:17:02 +0200 Subject: RFR(S) 8182473: Optimize value type layout to max alignment of fields In-Reply-To: <1473EE93-BA1F-47ED-B610-D9F5B801265B@oracle.com> References: <885783bb-bdf2-355b-2760-113a0a2ec694@oracle.com> <1473EE93-BA1F-47ED-B610-D9F5B801265B@oracle.com> Message-ID: <678bc446-0ad3-342d-46c6-d9d2ca40e468@oracle.com> Hi Frederic, Thanks for taking a closer look at this... On 29/06/17 18:45, Frederic Parain wrote: > Mr Simms, > > I?ve run the ValueTypeCreation test with -XX:+PrintValueLayout to see the > layout of the different value types. > Here?s the output: > > java.lang.__Value: field layout > @ 16 --- instance fields start --- > @ 16 --- instance fields end --- > @ 16 --- instance ends --- > @112 --- static fields start --- > @112 --- static fields end --- > > OopMapBlocks: 0 / 0 > > runtime.valhalla.valuetypes.Point: field layout > @ 16 --- instance fields start --- > @ 16 "x" I > @ 20 "y" I > @ 24 --- instance fields end --- > @ 24 --- instance ends --- > @112 --- static fields start --- > @112 --- static fields end --- > > OopMapBlocks: 0 / 0 > > runtime.valhalla.valuetypes.Long8Value: field layout > @ 16 --- instance fields start --- > @ 16 "longField1" J > @ 24 "longField2" J > @ 32 "longField3" J > @ 40 "longField4" J > @ 48 "longField5" J > @ 56 "longField6" J > @ 64 "longField7" J > @ 72 "longField8" J > @ 80 --- instance fields end --- > @ 80 --- instance ends --- > @112 --- static fields start --- > @112 --- static fields end --- > > OopMapBlocks: 0 / 0 > > runtime.valhalla.valuetypes.Person: field layout > @ 16 --- instance fields start --- > @ 16 "id" I > @ 20 "firstName" Ljava.lang.String; > @ 24 "lastName" Ljava.lang.String; > @ 32 --- instance fields end --- > @ 32 --- instance ends --- > @112 --- static fields start --- > @112 --- static fields end --- > > OopMapBlocks: 1 / 2 > Offset: 20 - 24 Count: 2 > > runtime.valhalla.valuetypes.ValueTypeCreation$SmallEmbed: field layout > @ 16 --- instance fields start --- > @ 16 "a" B > @ 17 "b" B > @ 20 --- instance fields end --- > @ 24 --- instance ends --- > @112 --- static fields start --- > @112 --- static fields end --- > > OopMapBlocks: 0 / 0 > > runtime.valhalla.valuetypes.ValueTypeCreation$Composition: field layout > @ 16 --- instance fields start --- > @ 16 "a" S > @ 18 "se" Qruntime.valhalla.valuetypes.ValueTypeCreation$SmallEmbed; > @ 24 "long8Value" Qruntime.valhalla.valuetypes.Long8Value; > @ 88 "person" Qruntime.valhalla.valuetypes.Person; > @104 --- instance fields end --- > @104 --- instance ends --- > @112 --- static fields start --- > @112 --- static fields end --- > > OopMapBlocks: 1 / 1 > Offset: 92 - 96 Count: 2 > > runtime.valhalla.valuetypes.ValueTypeCreation$ValueHolder: field layout > @ 12 --- instance fields start --- > @ 16 "a" S > @ 12 "b" I > @ 18 "small" Qruntime.valhalla.valuetypes.ValueTypeCreation$SmallEmbed; > @ 24 "comp" Qruntime.valhalla.valuetypes.ValueTypeCreation$Composition; > @112 --- instance fields end --- > @112 --- instance ends --- > @112 --- static fields start --- > @112 --- static fields end --- > > OopMapBlocks: 1 / 1 > Offset: 100 -104 Count: 2 > > > The layout of value type runtime.valhalla.valuetypes.Person doesn?t look > optimal: it looks like there?s a gap between the end of the last field, lastName, > which has a size of 4 bytes, and the end of the instance field area. > > I don?t know of this issue comes from your changes or if it was already > there before, but as you?re working on the layout_fields() method, could > you look at this issue? > > Thank you, > > Fred There is a gap, you are correct, classFileParser.cpp:4360 still 8 byte aligns the end of values, larger than "heapOopSize". This is related to how "ValueKlass::value_store()" attempts to avoid shearing fields. "ValueKlass::raw_value_byte_size()" only returns 1, 2, 4, "align_size_up(X, 8)". In the case of "Person", we could set a new valueKlass "load/store alignment" to 4, but given flat value arrays use power of 2 addressing we won't save anything there in terms of storage space. However, for size 12 where max required alignment is 4, yes for non-flat arrays the end padding is useless and takes up space, and the "NONSTATIC_VALUETYPE" alignment will also waste 4 bytes. What do you think, is it worth adding "storage alignment" to ValueKlass, and increase the amount of logic ? Probably not right ? Consider a value with a long and an int field..."value_store" would get messy if we want to save 4 bytes there. I'm not sure that is worth it. Let me know what you think /D From maurizio.cimadamore at oracle.com Mon Jul 3 09:51:14 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Mon, 03 Jul 2017 09:51:14 +0000 Subject: hg: valhalla/valhalla/jdk: 8183290: [MVT] ClassInfo mangling doesn't work on DVT Message-ID: <201707030951.v639pF5d008893@aojmv0008.oracle.com> Changeset: c11d4bf45d4c Author: mcimadamore Date: 2017-07-03 10:48 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c11d4bf45d4c 8183290: [MVT] ClassInfo mangling doesn't work on DVT Summary: missing mangling when creating DVT from VCC Reviewed-by: psandoz, dsimms ! src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java ! src/java.base/share/classes/valhalla/shady/MinimalValueTypes_1_0.java From maurizio.cimadamore at oracle.com Mon Jul 3 10:07:28 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 11:07:28 +0100 Subject: MVT-based vectors: first stab In-Reply-To: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> Message-ID: <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> Hi Vlad, I was playing with some tests and your JDK patches seem to fix at least 2 problems I've encountered when testing: * issues with double slots in lambda forms (wrong indices being generated by LambaFormBuilder) * issues with (un)boxing of method handles leading to bogus method call results Overall, I think your patches makes the situation a lot better - what's the plan to check this code in? Do you want to make other iterations at it? Or can we start the process? Cheers Maurizio On 28/06/17 14:17, Vladimir Ivanov wrote: > Hi, > > I started playing with MVT-based vectors recently and want to share my > experience so far. > > For the first step, I decided to avoid specific treatment of > super-longs (Long2/4/8) in the JVM we have in Panama and just mark > them as VCCs for now: > @DeriveValueType > final class Long2 { public final long lo, hi; } > > As a test case I chose sum of array elements: > > long sum(QLong2[] va) { > QLong2 v = QLong2.default; // (0,0) > for (int i = 0; i < va.length; i++) { > QLong2 vi = va[i]; > v = QLong2(v.lo + vi.lo, v.hi + vi.hi); > } > return v.lo + v.hi; > } > > Here are the changes: > http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/webrev.00/ > > SUMMARY & RESULTS > > I hit some bugs along the way and had to extend the code for Q-types > in some places to get decent code shape generated. (I'll shepherd the > fixes in the repo separately.) I ended up with the following generated > code: > > http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log > > Unfortunately, there are still 2 allocations left in the generated > code (out of 5 initially). C2 can't scalarize the accumulator (v) > inside the loop and has to put updated components (lo & hi) in > allocated heap buffer on every iteration over the array (generated > code [1], C2 EA output [2]). > > > GORY DETAILS > > hotspot/src/share/vm/opto/type.cpp > > * Type::get_typeflow_type() doesn't distinguish between > TypeValueTypePtr & TypeValueType > > > jdk/src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java > > * introduced some LF intrinsics, e.g. LOOP and SELECT_ALTERNATIVE; > > * had to workaround control flow-related bugs in the bytecode > library (jdk.experimental.bytecode): broken JVM state after goto_() > (see FIXME marks in the code); > > * fixed 2-slot types support: wrong local indexes were used > > > > jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java > > * MHI.unboxResultHandle misses unboxing step for Q-types > > > jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java > jdk/src/java.base/share/classes/jdk/experimental/value/ValueType.java > > * had to add a specialization for arraylength on Q-typed array, > because C2 can't handle arraylength Object[] when Q[] instance is on > stack; > > > jdk/src/java.base/share/classes/jdk/experimental/bytecode/TypedCodeBuilder.java: > > > * changes required to workaround goto_() bug > > * fixed CP patching support > > > jdk/src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java > > > * fixed CP patching support > > > hotspot/src/share/vm/memory/metachunk.hpp > hotspot/src/share/vm/oops/method.hpp > Fix optimized JVM build. > > Best regards, > Vladimir Ivanov > > [1] > http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log > > ;; B7: # B8 <- B9 top-of-loop > > mov %r9,0x10(%rsp) > mov 0x8(%rsp),%r11d > > ;; B8: # B16 B9 <- B6 B7 Loop: B8-B7 inner > > mov %r11d,0x8(%rsp) > movabs $0x7c0060420,%rsi ; {metadata('valhalla/vector/Long2$Value')} > ... > callq 0x0000000117579820 ; {runtime_call _new_instance_Java} > > ;; B9: # B7 B10 <- B8 > > mov %rax,%r9 > mov 0x10(%rsp),%r11 > mov 0x10(%r11),%r10 > mov 0x18(%r11),%r11 > movslq %ebp,%r8 > shl $0x4,%r8 > mov (%rsp),%rcx > mov 0x18(%rcx,%r8,1),%rax > mov 0x10(%rcx,%r8,1),%r8 ;*vaload > add %r11,%rax ;*ladd > mov %rax,0x18(%r9) > add %r10,%r8 ;*ladd > mov %r8,0x10(%r9) > inc %ebp ;*iadd > cmp 0x8(%rsp),%ebp > jl ;*if_icmpge > > [2] Pruned EA output (full output in the log) > ======== Connection graph for valhalla.vector.VectorTest::sumArrayL2 > JavaObject NoEscape(NoEscape) NSR [ 1267F 1265F 756F 754F 1581F 1579F > [ 1259 1264 532 1525 ]] 1247 Allocate > LocalVar [ 1247P [ 1264 ]] 1259 Proj ... #5 > LocalVar [ 1259 1247P [ 1267b 1265b 532 1525 ]] 1264 CheckCastPP ... > #valuetype* valhalla/vector/Long2$Value:NotNull > LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... > #valuetype* valhalla/vector/Long2$Value:NotNull > LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... > #valuetype* valhalla/vector/Long2$Value:NotNull > > JavaObject NoEscape(NoEscape) [ 1154F [ 1148 1153 ]] 1136 Allocate > LocalVar [ 1136P [ 1153 ]] 1148 Proj ... #5 > LocalVar [ 1148 1136P [ 1154b ]] 1153 CheckCastPP ... #valuetype* > valhalla/vector/Long2$Value:NotNull > > JavaObject NoEscape(NoEscape) [ [ 1053 ]] 1041 Allocate > LocalVar [ 1041P [ ]] 1053 Proj ... #5 > > JavaObject NoEscape(NoEscape) [ 653F 651F [ 645 650 ]] 633 Allocate > LocalVar [ 633P [ 650 ]] 645 Proj ... #5 > LocalVar [ 645 633P [ 653b 651b ]] 650 CheckCastPP ... > #valuetype* valhalla/vector/Long2$Value:NotNull > > JavaObject NoEscape(NoEscape) NSR [ 756F 754F 1581F 1579F [ 319 324 > 532 1525 ]] 307 Allocate > LocalVar [ 307P [ 324 ]] 319 Proj ... #5 > LocalVar [ 319 307P [ 532 1525 ]] 324 CheckCastPP ... > #valuetype* valhalla/vector/Long2$Value:NotNull > LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... > #valuetype* valhalla/vector/Long2$Value:NotNull > LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... > #valuetype* valhalla/vector/Long2$Value:NotNull > > Scalar 1153 CheckCastPP ... #valuetype* > valhalla/vector/Long2$Value:NotNull > ++++ Eliminated: 1136 Allocate > Scalar 1041 Allocate ... > ++++ Eliminated: 1041 Allocate > Scalar 650 CheckCastPP ... #valuetype* > valhalla/vector/Long2$Value:NotNull > ++++ Eliminated: 633 Allocate From vladimir.x.ivanov at oracle.com Mon Jul 3 11:46:21 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Mon, 3 Jul 2017 14:46:21 +0300 Subject: MVT-based vectors: first stab In-Reply-To: <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> Message-ID: > I was playing with some tests and your JDK patches seem to fix at least > 2 problems I've encountered when testing: Glad to hear that. Thanks for testing! I assume those are corresponding bugs I filed: > * issues with double slots in lambda forms (wrong indices being > generated by LambaFormBuilder) https://bugs.openjdk.java.net/browse/JDK-8183131 core-libs/j.l.i [MVT] 2-slot type (long & double) support is broken in LambdaFormBuilder > * issues with (un)boxing of method handles leading to bogus method call > results https://bugs.openjdk.java.net/browse/JDK-8183132 core-libs/j.l.i [MVT] MHI.unboxResultHandle misses unboxing step for Q-types > Overall, I think your patches makes the situation a lot better - what's > the plan to check this code in? Do you want to make other iterations at > it? Or can we start the process? On the JDK side, the changes are pretty sound in the current shape. I planned to shepherd the fixes into the repo, but neither did extensive testing nor finalized the actual fixes. Feel free to take care of them. My near-term plans are: (1) implement missing LF intrinsics and (2) look into box elimination issues on JIT-compiler side. Best regards, Vladimir Ivanov > On 28/06/17 14:17, Vladimir Ivanov wrote: >> Hi, >> >> I started playing with MVT-based vectors recently and want to share my >> experience so far. >> >> For the first step, I decided to avoid specific treatment of >> super-longs (Long2/4/8) in the JVM we have in Panama and just mark >> them as VCCs for now: >> @DeriveValueType >> final class Long2 { public final long lo, hi; } >> >> As a test case I chose sum of array elements: >> >> long sum(QLong2[] va) { >> QLong2 v = QLong2.default; // (0,0) >> for (int i = 0; i < va.length; i++) { >> QLong2 vi = va[i]; >> v = QLong2(v.lo + vi.lo, v.hi + vi.hi); >> } >> return v.lo + v.hi; >> } >> >> Here are the changes: >> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/webrev.00/ >> >> SUMMARY & RESULTS >> >> I hit some bugs along the way and had to extend the code for Q-types >> in some places to get decent code shape generated. (I'll shepherd the >> fixes in the repo separately.) I ended up with the following generated >> code: >> >> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >> >> Unfortunately, there are still 2 allocations left in the generated >> code (out of 5 initially). C2 can't scalarize the accumulator (v) >> inside the loop and has to put updated components (lo & hi) in >> allocated heap buffer on every iteration over the array (generated >> code [1], C2 EA output [2]). >> >> >> GORY DETAILS >> >> hotspot/src/share/vm/opto/type.cpp >> >> * Type::get_typeflow_type() doesn't distinguish between >> TypeValueTypePtr & TypeValueType >> >> >> jdk/src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java >> >> * introduced some LF intrinsics, e.g. LOOP and SELECT_ALTERNATIVE; >> >> * had to workaround control flow-related bugs in the bytecode >> library (jdk.experimental.bytecode): broken JVM state after goto_() >> (see FIXME marks in the code); >> >> * fixed 2-slot types support: wrong local indexes were used >> >> >> >> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java >> >> * MHI.unboxResultHandle misses unboxing step for Q-types >> >> >> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java >> jdk/src/java.base/share/classes/jdk/experimental/value/ValueType.java >> >> * had to add a specialization for arraylength on Q-typed array, >> because C2 can't handle arraylength Object[] when Q[] instance is on >> stack; >> >> >> jdk/src/java.base/share/classes/jdk/experimental/bytecode/TypedCodeBuilder.java: >> >> >> * changes required to workaround goto_() bug >> >> * fixed CP patching support >> >> >> jdk/src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java >> >> >> * fixed CP patching support >> >> >> hotspot/src/share/vm/memory/metachunk.hpp >> hotspot/src/share/vm/oops/method.hpp >> Fix optimized JVM build. >> >> Best regards, >> Vladimir Ivanov >> >> [1] >> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >> >> ;; B7: # B8 <- B9 top-of-loop >> >> mov %r9,0x10(%rsp) >> mov 0x8(%rsp),%r11d >> >> ;; B8: # B16 B9 <- B6 B7 Loop: B8-B7 inner >> >> mov %r11d,0x8(%rsp) >> movabs $0x7c0060420,%rsi ; {metadata('valhalla/vector/Long2$Value')} >> ... >> callq 0x0000000117579820 ; {runtime_call _new_instance_Java} >> >> ;; B9: # B7 B10 <- B8 >> >> mov %rax,%r9 >> mov 0x10(%rsp),%r11 >> mov 0x10(%r11),%r10 >> mov 0x18(%r11),%r11 >> movslq %ebp,%r8 >> shl $0x4,%r8 >> mov (%rsp),%rcx >> mov 0x18(%rcx,%r8,1),%rax >> mov 0x10(%rcx,%r8,1),%r8 ;*vaload >> add %r11,%rax ;*ladd >> mov %rax,0x18(%r9) >> add %r10,%r8 ;*ladd >> mov %r8,0x10(%r9) >> inc %ebp ;*iadd >> cmp 0x8(%rsp),%ebp >> jl ;*if_icmpge >> >> [2] Pruned EA output (full output in the log) >> ======== Connection graph for valhalla.vector.VectorTest::sumArrayL2 >> JavaObject NoEscape(NoEscape) NSR [ 1267F 1265F 756F 754F 1581F 1579F >> [ 1259 1264 532 1525 ]] 1247 Allocate >> LocalVar [ 1247P [ 1264 ]] 1259 Proj ... #5 >> LocalVar [ 1259 1247P [ 1267b 1265b 532 1525 ]] 1264 CheckCastPP ... >> #valuetype* valhalla/vector/Long2$Value:NotNull >> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >> #valuetype* valhalla/vector/Long2$Value:NotNull >> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >> #valuetype* valhalla/vector/Long2$Value:NotNull >> >> JavaObject NoEscape(NoEscape) [ 1154F [ 1148 1153 ]] 1136 Allocate >> LocalVar [ 1136P [ 1153 ]] 1148 Proj ... #5 >> LocalVar [ 1148 1136P [ 1154b ]] 1153 CheckCastPP ... #valuetype* >> valhalla/vector/Long2$Value:NotNull >> >> JavaObject NoEscape(NoEscape) [ [ 1053 ]] 1041 Allocate >> LocalVar [ 1041P [ ]] 1053 Proj ... #5 >> >> JavaObject NoEscape(NoEscape) [ 653F 651F [ 645 650 ]] 633 Allocate >> LocalVar [ 633P [ 650 ]] 645 Proj ... #5 >> LocalVar [ 645 633P [ 653b 651b ]] 650 CheckCastPP ... >> #valuetype* valhalla/vector/Long2$Value:NotNull >> >> JavaObject NoEscape(NoEscape) NSR [ 756F 754F 1581F 1579F [ 319 324 >> 532 1525 ]] 307 Allocate >> LocalVar [ 307P [ 324 ]] 319 Proj ... #5 >> LocalVar [ 319 307P [ 532 1525 ]] 324 CheckCastPP ... >> #valuetype* valhalla/vector/Long2$Value:NotNull >> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >> #valuetype* valhalla/vector/Long2$Value:NotNull >> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >> #valuetype* valhalla/vector/Long2$Value:NotNull >> >> Scalar 1153 CheckCastPP ... #valuetype* >> valhalla/vector/Long2$Value:NotNull >> ++++ Eliminated: 1136 Allocate >> Scalar 1041 Allocate ... >> ++++ Eliminated: 1041 Allocate >> Scalar 650 CheckCastPP ... #valuetype* >> valhalla/vector/Long2$Value:NotNull >> ++++ Eliminated: 633 Allocate > From rwestrel at redhat.com Mon Jul 3 12:13:50 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Mon, 03 Jul 2017 14:13:50 +0200 Subject: MVT-based vectors: first stab In-Reply-To: References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> Message-ID: > My near-term plans are: (1) implement missing LF intrinsics and (2) look > into box elimination issues on JIT-compiler side. The JIT handles value types as tuples of the fields of the value, we don't allocate buffers for the value types unless it's striclty needed and we shouldn't need escape analysis. When a value is passed around through method handle calls, we pass the tuple of fields around (still no allocation) but sometimes, the JIT expects an __Value at some point in the program (because lamdba forms use __Value) and __Value can only be a pointer so we have to allocate a buffer for the value type (mostly to keep the type system happy). In that case we rely on escape analysis to remove the allocation. I suspect the extra allocations you're seeing are from those cases in LF where we allocate a buffer to hold a value type and escape analysis fails to remove the allocations. I more or less have a plan to take care of those allocations. I haven't had time to work on it yet. Roland. From maurizio.cimadamore at oracle.com Mon Jul 3 12:41:42 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 13:41:42 +0100 Subject: MVT-based vectors: first stab In-Reply-To: References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> Message-ID: Ok, I will file other issues as needed and start submitting reviews for your changes. Thanks Maurizio On 03/07/17 12:46, Vladimir Ivanov wrote: >> I was playing with some tests and your JDK patches seem to fix at >> least 2 problems I've encountered when testing: > > Glad to hear that. Thanks for testing! > > I assume those are corresponding bugs I filed: > >> * issues with double slots in lambda forms (wrong indices being >> generated by LambaFormBuilder) > > https://bugs.openjdk.java.net/browse/JDK-8183131 > core-libs/j.l.i [MVT] 2-slot type (long & double) support is broken > in LambdaFormBuilder > >> * issues with (un)boxing of method handles leading to bogus method >> call results > https://bugs.openjdk.java.net/browse/JDK-8183132 > core-libs/j.l.i [MVT] MHI.unboxResultHandle misses unboxing step for > Q-types > >> Overall, I think your patches makes the situation a lot better - >> what's the plan to check this code in? Do you want to make other >> iterations at it? Or can we start the process? > > On the JDK side, the changes are pretty sound in the current shape. I > planned to shepherd the fixes into the repo, but neither did extensive > testing nor finalized the actual fixes. Feel free to take care of them. > > My near-term plans are: (1) implement missing LF intrinsics and (2) > look into box elimination issues on JIT-compiler side. > > Best regards, > Vladimir Ivanov > >> On 28/06/17 14:17, Vladimir Ivanov wrote: >>> Hi, >>> >>> I started playing with MVT-based vectors recently and want to share >>> my experience so far. >>> >>> For the first step, I decided to avoid specific treatment of >>> super-longs (Long2/4/8) in the JVM we have in Panama and just mark >>> them as VCCs for now: >>> @DeriveValueType >>> final class Long2 { public final long lo, hi; } >>> >>> As a test case I chose sum of array elements: >>> >>> long sum(QLong2[] va) { >>> QLong2 v = QLong2.default; // (0,0) >>> for (int i = 0; i < va.length; i++) { >>> QLong2 vi = va[i]; >>> v = QLong2(v.lo + vi.lo, v.hi + vi.hi); >>> } >>> return v.lo + v.hi; >>> } >>> >>> Here are the changes: >>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/webrev.00/ >>> >>> SUMMARY & RESULTS >>> >>> I hit some bugs along the way and had to extend the code for Q-types >>> in some places to get decent code shape generated. (I'll shepherd >>> the fixes in the repo separately.) I ended up with the following >>> generated code: >>> >>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >>> >>> >>> Unfortunately, there are still 2 allocations left in the generated >>> code (out of 5 initially). C2 can't scalarize the accumulator (v) >>> inside the loop and has to put updated components (lo & hi) in >>> allocated heap buffer on every iteration over the array (generated >>> code [1], C2 EA output [2]). >>> >>> >>> GORY DETAILS >>> >>> hotspot/src/share/vm/opto/type.cpp >>> >>> * Type::get_typeflow_type() doesn't distinguish between >>> TypeValueTypePtr & TypeValueType >>> >>> >>> jdk/src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java >>> >>> * introduced some LF intrinsics, e.g. LOOP and SELECT_ALTERNATIVE; >>> >>> * had to workaround control flow-related bugs in the bytecode >>> library (jdk.experimental.bytecode): broken JVM state after goto_() >>> (see FIXME marks in the code); >>> >>> * fixed 2-slot types support: wrong local indexes were used >>> >>> >>> >>> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java >>> >>> * MHI.unboxResultHandle misses unboxing step for Q-types >>> >>> >>> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java >>> jdk/src/java.base/share/classes/jdk/experimental/value/ValueType.java >>> >>> * had to add a specialization for arraylength on Q-typed array, >>> because C2 can't handle arraylength Object[] when Q[] instance is on >>> stack; >>> >>> >>> jdk/src/java.base/share/classes/jdk/experimental/bytecode/TypedCodeBuilder.java: >>> >>> >>> * changes required to workaround goto_() bug >>> >>> * fixed CP patching support >>> >>> >>> jdk/src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java >>> >>> >>> * fixed CP patching support >>> >>> >>> hotspot/src/share/vm/memory/metachunk.hpp >>> hotspot/src/share/vm/oops/method.hpp >>> Fix optimized JVM build. >>> >>> Best regards, >>> Vladimir Ivanov >>> >>> [1] >>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >>> >>> >>> ;; B7: # B8 <- B9 top-of-loop >>> >>> mov %r9,0x10(%rsp) >>> mov 0x8(%rsp),%r11d >>> >>> ;; B8: # B16 B9 <- B6 B7 Loop: B8-B7 inner >>> >>> mov %r11d,0x8(%rsp) >>> movabs $0x7c0060420,%rsi ; {metadata('valhalla/vector/Long2$Value')} >>> ... >>> callq 0x0000000117579820 ; {runtime_call _new_instance_Java} >>> >>> ;; B9: # B7 B10 <- B8 >>> >>> mov %rax,%r9 >>> mov 0x10(%rsp),%r11 >>> mov 0x10(%r11),%r10 >>> mov 0x18(%r11),%r11 >>> movslq %ebp,%r8 >>> shl $0x4,%r8 >>> mov (%rsp),%rcx >>> mov 0x18(%rcx,%r8,1),%rax >>> mov 0x10(%rcx,%r8,1),%r8 ;*vaload >>> add %r11,%rax ;*ladd >>> mov %rax,0x18(%r9) >>> add %r10,%r8 ;*ladd >>> mov %r8,0x10(%r9) >>> inc %ebp ;*iadd >>> cmp 0x8(%rsp),%ebp >>> jl ;*if_icmpge >>> >>> [2] Pruned EA output (full output in the log) >>> ======== Connection graph for valhalla.vector.VectorTest::sumArrayL2 >>> JavaObject NoEscape(NoEscape) NSR [ 1267F 1265F 756F 754F 1581F >>> 1579F [ 1259 1264 532 1525 ]] 1247 Allocate >>> LocalVar [ 1247P [ 1264 ]] 1259 Proj ... #5 >>> LocalVar [ 1259 1247P [ 1267b 1265b 532 1525 ]] 1264 CheckCastPP >>> ... #valuetype* valhalla/vector/Long2$Value:NotNull >>> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >>> #valuetype* valhalla/vector/Long2$Value:NotNull >>> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >>> #valuetype* valhalla/vector/Long2$Value:NotNull >>> >>> JavaObject NoEscape(NoEscape) [ 1154F [ 1148 1153 ]] 1136 Allocate >>> LocalVar [ 1136P [ 1153 ]] 1148 Proj ... #5 >>> LocalVar [ 1148 1136P [ 1154b ]] 1153 CheckCastPP ... >>> #valuetype* valhalla/vector/Long2$Value:NotNull >>> >>> JavaObject NoEscape(NoEscape) [ [ 1053 ]] 1041 Allocate >>> LocalVar [ 1041P [ ]] 1053 Proj ... #5 >>> >>> JavaObject NoEscape(NoEscape) [ 653F 651F [ 645 650 ]] 633 Allocate >>> LocalVar [ 633P [ 650 ]] 645 Proj ... #5 >>> LocalVar [ 645 633P [ 653b 651b ]] 650 CheckCastPP ... >>> #valuetype* valhalla/vector/Long2$Value:NotNull >>> >>> JavaObject NoEscape(NoEscape) NSR [ 756F 754F 1581F 1579F [ 319 324 >>> 532 1525 ]] 307 Allocate >>> LocalVar [ 307P [ 324 ]] 319 Proj ... #5 >>> LocalVar [ 319 307P [ 532 1525 ]] 324 CheckCastPP ... >>> #valuetype* valhalla/vector/Long2$Value:NotNull >>> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >>> #valuetype* valhalla/vector/Long2$Value:NotNull >>> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >>> #valuetype* valhalla/vector/Long2$Value:NotNull >>> >>> Scalar 1153 CheckCastPP ... #valuetype* >>> valhalla/vector/Long2$Value:NotNull >>> ++++ Eliminated: 1136 Allocate >>> Scalar 1041 Allocate ... >>> ++++ Eliminated: 1041 Allocate >>> Scalar 650 CheckCastPP ... #valuetype* >>> valhalla/vector/Long2$Value:NotNull >>> ++++ Eliminated: 633 Allocate >> From vladimir.x.ivanov at oracle.com Mon Jul 3 12:44:42 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Mon, 3 Jul 2017 15:44:42 +0300 Subject: MVT-based vectors: first stab In-Reply-To: References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> Message-ID: >> My near-term plans are: (1) implement missing LF intrinsics and (2) look >> into box elimination issues on JIT-compiler side. > > The JIT handles value types as tuples of the fields of the value, we > don't allocate buffers for the value types unless it's striclty needed > and we shouldn't need escape analysis. When a value is passed around > through method handle calls, we pass the tuple of fields around (still > no allocation) but sometimes, the JIT expects an __Value at some point > in the program (because lamdba forms use __Value) and __Value can only > be a pointer so we have to allocate a buffer for the value type (mostly > to keep the type system happy). In that case we rely on escape analysis > to remove the allocation. Yes, the value boxes come from __Value usages in lambda forms. > I suspect the extra allocations you're seeing are from those cases in LF > where we allocate a buffer to hold a value type and escape analysis > fails to remove the allocations. I more or less have a plan to take care > of those allocations. I haven't had time to work on it yet. Glad to hear that. Considering MVT will rely on method handles, we have to either provide first class support for __Value and optimize it on JIT-compiler side well (on par with concrete value types) or avoid value type erasure to __Value in lambda forms. Best regards, Vladimir Ivanov From forax at univ-mlv.fr Mon Jul 3 13:06:00 2017 From: forax at univ-mlv.fr (Remi Forax) Date: Mon, 3 Jul 2017 15:06:00 +0200 (CEST) Subject: MVT-based vectors: first stab In-Reply-To: References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> Message-ID: <882297909.444959.1499087160450.JavaMail.zimbra@u-pem.fr> Rolad, why a __Value is not represented by two fields too ? A __Value is a value type with no statically known type so if can not be represented by two fields, it should be represented by 3 fields (2 fields + a pointer to the type). Only the conversion to an Object (box) should allocate something. regards, R?mi ----- Mail original ----- > De: "Roland Westrelin" > ?: "Vladimir Ivanov" , valhalla-dev at openjdk.java.net > Envoy?: Lundi 3 Juillet 2017 14:13:50 > Objet: Re: MVT-based vectors: first stab >> My near-term plans are: (1) implement missing LF intrinsics and (2) look >> into box elimination issues on JIT-compiler side. > > The JIT handles value types as tuples of the fields of the value, we > don't allocate buffers for the value types unless it's striclty needed > and we shouldn't need escape analysis. When a value is passed around > through method handle calls, we pass the tuple of fields around (still > no allocation) but sometimes, the JIT expects an __Value at some point > in the program (because lamdba forms use __Value) and __Value can only > be a pointer so we have to allocate a buffer for the value type (mostly > to keep the type system happy). In that case we rely on escape analysis > to remove the allocation. > > I suspect the extra allocations you're seeing are from those cases in LF > where we allocate a buffer to hold a value type and escape analysis > fails to remove the allocations. I more or less have a plan to take care > of those allocations. I haven't had time to work on it yet. > > Roland. From maurizio.cimadamore at oracle.com Mon Jul 3 14:18:04 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 15:18:04 +0100 Subject: RFR 8183138: core-libs/j.l.i Code Builder: Problems with handling complex control flow Message-ID: <660de4c6-8b93-4758-476a-d028ad640bb4@oracle.com> Hi, This patch fixes an issue with the bytecdoe API not handling liveness analysis correctly. http://cr.openjdk.java.net/~mcimadamore/8183138/ Thanks Maurizio From maurizio.cimadamore at oracle.com Mon Jul 3 14:19:52 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 15:19:52 +0100 Subject: RFR 8183131: [MVT] 2-slot type (long & double) support is broken in LambdaFormBuilder Message-ID: <6b3382ff-4add-19dc-7d73-80497737f5c4@oracle.com> Hi, This patch fixes an issue with lambda form builder not taking into account single vs. double slots indices. http://cr.openjdk.java.net/~mcimadamore/8183131/ Thanks Maurizio From maurizio.cimadamore at oracle.com Mon Jul 3 14:22:02 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 15:22:02 +0100 Subject: RFR 8183133: [MVT] Arraylength method handle on Q-typed array shouldn't use ArrayAccessor.lengthL(Object[]) Message-ID: <46a1a107-f486-a820-1630-4be507351c01@oracle.com> Hi, This patch adds an arrayLength() method handle to ValueType. This is necessary, as the standard arraylength generation strategy performed in MethodHandles doesn't work on value-typed arrays. http://cr.openjdk.java.net/~mcimadamore/8183133/ Thanks Maurizio From maurizio.cimadamore at oracle.com Mon Jul 3 14:23:43 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 15:23:43 +0100 Subject: RFR 8183132: [MVT] MHI.unboxResultHandle misses unboxing step for Q-types Message-ID: <67763159-6c6d-570a-9d3e-f1bdc1345174@oracle.com> Hi, This patch adds a missing unbox step for value-bearing method handles in MethodHandleImpl.unboxResultHandle. http://cr.openjdk.java.net/~mcimadamore/8183132/ Thanks Maurizio From maurizio.cimadamore at oracle.com Mon Jul 3 14:25:30 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 15:25:30 +0100 Subject: RFR 8183135: [MVT] Code builder doesn't fully support constant pool patching Message-ID: <278fb30d-038c-0c79-8521-ecc3b8a5c879@oracle.com> Hi, This patch fixes constant pool patching support in MethodHandleBuilder; the current support only handles a handful of types - this patch generalizes that. http://cr.openjdk.java.net/~mcimadamore/8183135/ Thanks Maurizio From maurizio.cimadamore at oracle.com Mon Jul 3 14:27:23 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 15:27:23 +0100 Subject: RFR 8183130: [MVT] Implement intrinsics for Q-typed LambdaForms Message-ID: <0d6cde67-0945-985d-9b60-d1a5acfb3ce8@oracle.com> Hi, This patch adds support for intrinsic in LambdaFormBuilder. More intrinsics to come in separate followup patches. http://cr.openjdk.java.net/~mcimadamore/8183130/ Thanks Maurizio From maurizio.cimadamore at oracle.com Mon Jul 3 14:29:11 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 15:29:11 +0100 Subject: MVT-based vectors: first stab In-Reply-To: References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> Message-ID: All reviews have been submitted - once the code is in, I plan to push the tests I have which were stressing some of the issues fixed by these patches. Cheers Maurizio On 03/07/17 13:41, Maurizio Cimadamore wrote: > Ok, > I will file other issues as needed and start submitting reviews for > your changes. > > Thanks > Maurizio > > > On 03/07/17 12:46, Vladimir Ivanov wrote: >>> I was playing with some tests and your JDK patches seem to fix at >>> least 2 problems I've encountered when testing: >> >> Glad to hear that. Thanks for testing! >> >> I assume those are corresponding bugs I filed: >> >>> * issues with double slots in lambda forms (wrong indices being >>> generated by LambaFormBuilder) >> >> https://bugs.openjdk.java.net/browse/JDK-8183131 >> core-libs/j.l.i [MVT] 2-slot type (long & double) support is broken >> in LambdaFormBuilder >> >>> * issues with (un)boxing of method handles leading to bogus method >>> call results >> https://bugs.openjdk.java.net/browse/JDK-8183132 >> core-libs/j.l.i [MVT] MHI.unboxResultHandle misses unboxing step >> for Q-types >> >>> Overall, I think your patches makes the situation a lot better - >>> what's the plan to check this code in? Do you want to make other >>> iterations at it? Or can we start the process? >> >> On the JDK side, the changes are pretty sound in the current shape. I >> planned to shepherd the fixes into the repo, but neither did >> extensive testing nor finalized the actual fixes. Feel free to take >> care of them. >> >> My near-term plans are: (1) implement missing LF intrinsics and (2) >> look into box elimination issues on JIT-compiler side. >> >> Best regards, >> Vladimir Ivanov >> >>> On 28/06/17 14:17, Vladimir Ivanov wrote: >>>> Hi, >>>> >>>> I started playing with MVT-based vectors recently and want to share >>>> my experience so far. >>>> >>>> For the first step, I decided to avoid specific treatment of >>>> super-longs (Long2/4/8) in the JVM we have in Panama and just mark >>>> them as VCCs for now: >>>> @DeriveValueType >>>> final class Long2 { public final long lo, hi; } >>>> >>>> As a test case I chose sum of array elements: >>>> >>>> long sum(QLong2[] va) { >>>> QLong2 v = QLong2.default; // (0,0) >>>> for (int i = 0; i < va.length; i++) { >>>> QLong2 vi = va[i]; >>>> v = QLong2(v.lo + vi.lo, v.hi + vi.hi); >>>> } >>>> return v.lo + v.hi; >>>> } >>>> >>>> Here are the changes: >>>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/webrev.00/ >>>> >>>> SUMMARY & RESULTS >>>> >>>> I hit some bugs along the way and had to extend the code for >>>> Q-types in some places to get decent code shape generated. (I'll >>>> shepherd the fixes in the repo separately.) I ended up with the >>>> following generated code: >>>> >>>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >>>> >>>> >>>> Unfortunately, there are still 2 allocations left in the generated >>>> code (out of 5 initially). C2 can't scalarize the accumulator (v) >>>> inside the loop and has to put updated components (lo & hi) in >>>> allocated heap buffer on every iteration over the array (generated >>>> code [1], C2 EA output [2]). >>>> >>>> >>>> GORY DETAILS >>>> >>>> hotspot/src/share/vm/opto/type.cpp >>>> >>>> * Type::get_typeflow_type() doesn't distinguish between >>>> TypeValueTypePtr & TypeValueType >>>> >>>> >>>> jdk/src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java >>>> >>>> >>>> * introduced some LF intrinsics, e.g. LOOP and SELECT_ALTERNATIVE; >>>> >>>> * had to workaround control flow-related bugs in the bytecode >>>> library (jdk.experimental.bytecode): broken JVM state after goto_() >>>> (see FIXME marks in the code); >>>> >>>> * fixed 2-slot types support: wrong local indexes were used >>>> >>>> >>>> >>>> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java >>>> >>>> * MHI.unboxResultHandle misses unboxing step for Q-types >>>> >>>> >>>> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java >>>> jdk/src/java.base/share/classes/jdk/experimental/value/ValueType.java >>>> >>>> * had to add a specialization for arraylength on Q-typed array, >>>> because C2 can't handle arraylength Object[] when Q[] instance is >>>> on stack; >>>> >>>> >>>> jdk/src/java.base/share/classes/jdk/experimental/bytecode/TypedCodeBuilder.java: >>>> >>>> >>>> * changes required to workaround goto_() bug >>>> >>>> * fixed CP patching support >>>> >>>> >>>> jdk/src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java >>>> >>>> >>>> * fixed CP patching support >>>> >>>> >>>> hotspot/src/share/vm/memory/metachunk.hpp >>>> hotspot/src/share/vm/oops/method.hpp >>>> Fix optimized JVM build. >>>> >>>> Best regards, >>>> Vladimir Ivanov >>>> >>>> [1] >>>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >>>> >>>> >>>> ;; B7: # B8 <- B9 top-of-loop >>>> >>>> mov %r9,0x10(%rsp) >>>> mov 0x8(%rsp),%r11d >>>> >>>> ;; B8: # B16 B9 <- B6 B7 Loop: B8-B7 inner >>>> >>>> mov %r11d,0x8(%rsp) >>>> movabs $0x7c0060420,%rsi ; {metadata('valhalla/vector/Long2$Value')} >>>> ... >>>> callq 0x0000000117579820 ; {runtime_call _new_instance_Java} >>>> >>>> ;; B9: # B7 B10 <- B8 >>>> >>>> mov %rax,%r9 >>>> mov 0x10(%rsp),%r11 >>>> mov 0x10(%r11),%r10 >>>> mov 0x18(%r11),%r11 >>>> movslq %ebp,%r8 >>>> shl $0x4,%r8 >>>> mov (%rsp),%rcx >>>> mov 0x18(%rcx,%r8,1),%rax >>>> mov 0x10(%rcx,%r8,1),%r8 ;*vaload >>>> add %r11,%rax ;*ladd >>>> mov %rax,0x18(%r9) >>>> add %r10,%r8 ;*ladd >>>> mov %r8,0x10(%r9) >>>> inc %ebp ;*iadd >>>> cmp 0x8(%rsp),%ebp >>>> jl ;*if_icmpge >>>> >>>> [2] Pruned EA output (full output in the log) >>>> ======== Connection graph for valhalla.vector.VectorTest::sumArrayL2 >>>> JavaObject NoEscape(NoEscape) NSR [ 1267F 1265F 756F 754F 1581F >>>> 1579F [ 1259 1264 532 1525 ]] 1247 Allocate >>>> LocalVar [ 1247P [ 1264 ]] 1259 Proj ... #5 >>>> LocalVar [ 1259 1247P [ 1267b 1265b 532 1525 ]] 1264 CheckCastPP >>>> ... #valuetype* valhalla/vector/Long2$Value:NotNull >>>> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>> >>>> JavaObject NoEscape(NoEscape) [ 1154F [ 1148 1153 ]] 1136 Allocate >>>> LocalVar [ 1136P [ 1153 ]] 1148 Proj ... #5 >>>> LocalVar [ 1148 1136P [ 1154b ]] 1153 CheckCastPP ... >>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>> >>>> JavaObject NoEscape(NoEscape) [ [ 1053 ]] 1041 Allocate >>>> LocalVar [ 1041P [ ]] 1053 Proj ... #5 >>>> >>>> JavaObject NoEscape(NoEscape) [ 653F 651F [ 645 650 ]] 633 Allocate >>>> LocalVar [ 633P [ 650 ]] 645 Proj ... #5 >>>> LocalVar [ 645 633P [ 653b 651b ]] 650 CheckCastPP ... >>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>> >>>> JavaObject NoEscape(NoEscape) NSR [ 756F 754F 1581F 1579F [ 319 324 >>>> 532 1525 ]] 307 Allocate >>>> LocalVar [ 307P [ 324 ]] 319 Proj ... #5 >>>> LocalVar [ 319 307P [ 532 1525 ]] 324 CheckCastPP ... >>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>> >>>> Scalar 1153 CheckCastPP ... #valuetype* >>>> valhalla/vector/Long2$Value:NotNull >>>> ++++ Eliminated: 1136 Allocate >>>> Scalar 1041 Allocate ... >>>> ++++ Eliminated: 1041 Allocate >>>> Scalar 650 CheckCastPP ... #valuetype* >>>> valhalla/vector/Long2$Value:NotNull >>>> ++++ Eliminated: 633 Allocate >>> > From vladimir.x.ivanov at oracle.com Mon Jul 3 20:51:10 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Mon, 3 Jul 2017 23:51:10 +0300 Subject: RFR 8183138: core-libs/j.l.i Code Builder: Problems with handling complex control flow In-Reply-To: <660de4c6-8b93-4758-476a-d028ad640bb4@oracle.com> References: <660de4c6-8b93-4758-476a-d028ad640bb4@oracle.com> Message-ID: Looks good. Best regards, Vladimir Ivanov On 7/3/17 5:18 PM, Maurizio Cimadamore wrote: > Hi, > This patch fixes an issue with the bytecdoe API not handling liveness > analysis correctly. > > http://cr.openjdk.java.net/~mcimadamore/8183138/ > > Thanks > Maurizio > > From vladimir.x.ivanov at oracle.com Mon Jul 3 20:53:58 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Mon, 3 Jul 2017 23:53:58 +0300 Subject: RFR 8183131: [MVT] 2-slot type (long & double) support is broken in LambdaFormBuilder In-Reply-To: <6b3382ff-4add-19dc-7d73-80497737f5c4@oracle.com> References: <6b3382ff-4add-19dc-7d73-80497737f5c4@oracle.com> Message-ID: Looks good. Probably, it's better to keep builder.store() wrapped in a helper method (as it is done in InvokerBytecodeGenerator) to keep localsMap[] conversion implicit. Best regards, Vladimir Ivanov On 7/3/17 5:19 PM, Maurizio Cimadamore wrote: > Hi, > This patch fixes an issue with lambda form builder not taking into > account single vs. double slots indices. > > http://cr.openjdk.java.net/~mcimadamore/8183131/ > > Thanks > Maurizio > > From vladimir.x.ivanov at oracle.com Mon Jul 3 20:57:54 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Mon, 3 Jul 2017 23:57:54 +0300 Subject: RFR 8183133: [MVT] Arraylength method handle on Q-typed array shouldn't use ArrayAccessor.lengthL(Object[]) In-Reply-To: <46a1a107-f486-a820-1630-4be507351c01@oracle.com> References: <46a1a107-f486-a820-1630-4be507351c01@oracle.com> Message-ID: Looks good. In a longer term, it's feasible to use a single implementation which relies on Unsafe.getInt((Object)array, ARRAY_LENGTH_OFFSET) to fetch array length from an array of arbitrary type. Best regards, Vladimir Ivanov On 7/3/17 5:22 PM, Maurizio Cimadamore wrote: > Hi, > This patch adds an arrayLength() method handle to ValueType. This is > necessary, as the standard arraylength generation strategy performed in > MethodHandles doesn't work on value-typed arrays. > > http://cr.openjdk.java.net/~mcimadamore/8183133/ > > Thanks > Maurizio > > From vladimir.x.ivanov at oracle.com Mon Jul 3 20:58:09 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Mon, 3 Jul 2017 23:58:09 +0300 Subject: RFR 8183132: [MVT] MHI.unboxResultHandle misses unboxing step for Q-types In-Reply-To: <67763159-6c6d-570a-9d3e-f1bdc1345174@oracle.com> References: <67763159-6c6d-570a-9d3e-f1bdc1345174@oracle.com> Message-ID: <20b0f369-d6a2-b8f4-ff6d-4d52c68d5d87@oracle.com> Looks good. Best regards, Vladimir Ivanov On 7/3/17 5:23 PM, Maurizio Cimadamore wrote: > Hi, > This patch adds a missing unbox step for value-bearing method handles in > MethodHandleImpl.unboxResultHandle. > > http://cr.openjdk.java.net/~mcimadamore/8183132/ > > Thanks > Maurizio > > From vladimir.x.ivanov at oracle.com Mon Jul 3 20:58:24 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Mon, 3 Jul 2017 23:58:24 +0300 Subject: RFR 8183135: [MVT] Code builder doesn't fully support constant pool patching In-Reply-To: <278fb30d-038c-0c79-8521-ecc3b8a5c879@oracle.com> References: <278fb30d-038c-0c79-8521-ecc3b8a5c879@oracle.com> Message-ID: <4b3c0f91-61c6-b971-4766-3cdab57c0bc6@oracle.com> Looks good. Best regards, Vladimir Ivanov On 7/3/17 5:25 PM, Maurizio Cimadamore wrote: > Hi, > This patch fixes constant pool patching support in MethodHandleBuilder; > the current support only handles a handful of types - this patch > generalizes that. > > http://cr.openjdk.java.net/~mcimadamore/8183135/ > > Thanks > Maurizio > > From vladimir.x.ivanov at oracle.com Mon Jul 3 21:00:28 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Tue, 4 Jul 2017 00:00:28 +0300 Subject: RFR 8183130: [MVT] Implement intrinsics for Q-typed LambdaForms In-Reply-To: <0d6cde67-0945-985d-9b60-d1a5acfb3ce8@oracle.com> References: <0d6cde67-0945-985d-9b60-d1a5acfb3ce8@oracle.com> Message-ID: <607d0de0-3bdc-7483-3431-3b205490a5c1@oracle.com> From correctness POV, it's perfectly fine to miss an intrinsic opportunity. So, I'd prefer to avoid throwing an error until all intrinsics are implemented: + default: { + throw newInternalError("Unknown intrinsic: "+intr); + } Otherwise, looks good. Best regards, Vladimir Ivanov On 7/3/17 5:27 PM, Maurizio Cimadamore wrote: > Hi, > This patch adds support for intrinsic in LambdaFormBuilder. More > intrinsics to come in separate followup patches. > > http://cr.openjdk.java.net/~mcimadamore/8183130/ > > Thanks > Maurizio > > From vladimir.x.ivanov at oracle.com Mon Jul 3 21:01:03 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Tue, 4 Jul 2017 00:01:03 +0300 Subject: MVT-based vectors: first stab In-Reply-To: References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> Message-ID: <41297903-7dca-c22f-9104-269846d043cd@oracle.com> Thanks a lot, Maurizio! Best regards, Vladimir Ivanov On 7/3/17 5:29 PM, Maurizio Cimadamore wrote: > All reviews have been submitted - once the code is in, I plan to push > the tests I have which were stressing some of the issues fixed by these > patches. > > Cheers > Maurizio > > > On 03/07/17 13:41, Maurizio Cimadamore wrote: >> Ok, >> I will file other issues as needed and start submitting reviews for >> your changes. >> >> Thanks >> Maurizio >> >> >> On 03/07/17 12:46, Vladimir Ivanov wrote: >>>> I was playing with some tests and your JDK patches seem to fix at >>>> least 2 problems I've encountered when testing: >>> >>> Glad to hear that. Thanks for testing! >>> >>> I assume those are corresponding bugs I filed: >>> >>>> * issues with double slots in lambda forms (wrong indices being >>>> generated by LambaFormBuilder) >>> >>> https://bugs.openjdk.java.net/browse/JDK-8183131 >>> core-libs/j.l.i [MVT] 2-slot type (long & double) support is broken >>> in LambdaFormBuilder >>> >>>> * issues with (un)boxing of method handles leading to bogus method >>>> call results >>> https://bugs.openjdk.java.net/browse/JDK-8183132 >>> core-libs/j.l.i [MVT] MHI.unboxResultHandle misses unboxing step >>> for Q-types >>> >>>> Overall, I think your patches makes the situation a lot better - >>>> what's the plan to check this code in? Do you want to make other >>>> iterations at it? Or can we start the process? >>> >>> On the JDK side, the changes are pretty sound in the current shape. I >>> planned to shepherd the fixes into the repo, but neither did >>> extensive testing nor finalized the actual fixes. Feel free to take >>> care of them. >>> >>> My near-term plans are: (1) implement missing LF intrinsics and (2) >>> look into box elimination issues on JIT-compiler side. >>> >>> Best regards, >>> Vladimir Ivanov >>> >>>> On 28/06/17 14:17, Vladimir Ivanov wrote: >>>>> Hi, >>>>> >>>>> I started playing with MVT-based vectors recently and want to share >>>>> my experience so far. >>>>> >>>>> For the first step, I decided to avoid specific treatment of >>>>> super-longs (Long2/4/8) in the JVM we have in Panama and just mark >>>>> them as VCCs for now: >>>>> @DeriveValueType >>>>> final class Long2 { public final long lo, hi; } >>>>> >>>>> As a test case I chose sum of array elements: >>>>> >>>>> long sum(QLong2[] va) { >>>>> QLong2 v = QLong2.default; // (0,0) >>>>> for (int i = 0; i < va.length; i++) { >>>>> QLong2 vi = va[i]; >>>>> v = QLong2(v.lo + vi.lo, v.hi + vi.hi); >>>>> } >>>>> return v.lo + v.hi; >>>>> } >>>>> >>>>> Here are the changes: >>>>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/webrev.00/ >>>>> >>>>> SUMMARY & RESULTS >>>>> >>>>> I hit some bugs along the way and had to extend the code for >>>>> Q-types in some places to get decent code shape generated. (I'll >>>>> shepherd the fixes in the repo separately.) I ended up with the >>>>> following generated code: >>>>> >>>>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >>>>> >>>>> >>>>> Unfortunately, there are still 2 allocations left in the generated >>>>> code (out of 5 initially). C2 can't scalarize the accumulator (v) >>>>> inside the loop and has to put updated components (lo & hi) in >>>>> allocated heap buffer on every iteration over the array (generated >>>>> code [1], C2 EA output [2]). >>>>> >>>>> >>>>> GORY DETAILS >>>>> >>>>> hotspot/src/share/vm/opto/type.cpp >>>>> >>>>> * Type::get_typeflow_type() doesn't distinguish between >>>>> TypeValueTypePtr & TypeValueType >>>>> >>>>> >>>>> jdk/src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java >>>>> >>>>> >>>>> * introduced some LF intrinsics, e.g. LOOP and SELECT_ALTERNATIVE; >>>>> >>>>> * had to workaround control flow-related bugs in the bytecode >>>>> library (jdk.experimental.bytecode): broken JVM state after goto_() >>>>> (see FIXME marks in the code); >>>>> >>>>> * fixed 2-slot types support: wrong local indexes were used >>>>> >>>>> >>>>> >>>>> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java >>>>> >>>>> * MHI.unboxResultHandle misses unboxing step for Q-types >>>>> >>>>> >>>>> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java >>>>> jdk/src/java.base/share/classes/jdk/experimental/value/ValueType.java >>>>> >>>>> * had to add a specialization for arraylength on Q-typed array, >>>>> because C2 can't handle arraylength Object[] when Q[] instance is >>>>> on stack; >>>>> >>>>> >>>>> jdk/src/java.base/share/classes/jdk/experimental/bytecode/TypedCodeBuilder.java: >>>>> >>>>> >>>>> * changes required to workaround goto_() bug >>>>> >>>>> * fixed CP patching support >>>>> >>>>> >>>>> jdk/src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java >>>>> >>>>> >>>>> * fixed CP patching support >>>>> >>>>> >>>>> hotspot/src/share/vm/memory/metachunk.hpp >>>>> hotspot/src/share/vm/oops/method.hpp >>>>> Fix optimized JVM build. >>>>> >>>>> Best regards, >>>>> Vladimir Ivanov >>>>> >>>>> [1] >>>>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >>>>> >>>>> >>>>> ;; B7: # B8 <- B9 top-of-loop >>>>> >>>>> mov %r9,0x10(%rsp) >>>>> mov 0x8(%rsp),%r11d >>>>> >>>>> ;; B8: # B16 B9 <- B6 B7 Loop: B8-B7 inner >>>>> >>>>> mov %r11d,0x8(%rsp) >>>>> movabs $0x7c0060420,%rsi ; {metadata('valhalla/vector/Long2$Value')} >>>>> ... >>>>> callq 0x0000000117579820 ; {runtime_call _new_instance_Java} >>>>> >>>>> ;; B9: # B7 B10 <- B8 >>>>> >>>>> mov %rax,%r9 >>>>> mov 0x10(%rsp),%r11 >>>>> mov 0x10(%r11),%r10 >>>>> mov 0x18(%r11),%r11 >>>>> movslq %ebp,%r8 >>>>> shl $0x4,%r8 >>>>> mov (%rsp),%rcx >>>>> mov 0x18(%rcx,%r8,1),%rax >>>>> mov 0x10(%rcx,%r8,1),%r8 ;*vaload >>>>> add %r11,%rax ;*ladd >>>>> mov %rax,0x18(%r9) >>>>> add %r10,%r8 ;*ladd >>>>> mov %r8,0x10(%r9) >>>>> inc %ebp ;*iadd >>>>> cmp 0x8(%rsp),%ebp >>>>> jl ;*if_icmpge >>>>> >>>>> [2] Pruned EA output (full output in the log) >>>>> ======== Connection graph for valhalla.vector.VectorTest::sumArrayL2 >>>>> JavaObject NoEscape(NoEscape) NSR [ 1267F 1265F 756F 754F 1581F >>>>> 1579F [ 1259 1264 532 1525 ]] 1247 Allocate >>>>> LocalVar [ 1247P [ 1264 ]] 1259 Proj ... #5 >>>>> LocalVar [ 1259 1247P [ 1267b 1265b 532 1525 ]] 1264 CheckCastPP >>>>> ... #valuetype* valhalla/vector/Long2$Value:NotNull >>>>> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>> >>>>> JavaObject NoEscape(NoEscape) [ 1154F [ 1148 1153 ]] 1136 Allocate >>>>> LocalVar [ 1136P [ 1153 ]] 1148 Proj ... #5 >>>>> LocalVar [ 1148 1136P [ 1154b ]] 1153 CheckCastPP ... >>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>> >>>>> JavaObject NoEscape(NoEscape) [ [ 1053 ]] 1041 Allocate >>>>> LocalVar [ 1041P [ ]] 1053 Proj ... #5 >>>>> >>>>> JavaObject NoEscape(NoEscape) [ 653F 651F [ 645 650 ]] 633 Allocate >>>>> LocalVar [ 633P [ 650 ]] 645 Proj ... #5 >>>>> LocalVar [ 645 633P [ 653b 651b ]] 650 CheckCastPP ... >>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>> >>>>> JavaObject NoEscape(NoEscape) NSR [ 756F 754F 1581F 1579F [ 319 324 >>>>> 532 1525 ]] 307 Allocate >>>>> LocalVar [ 307P [ 324 ]] 319 Proj ... #5 >>>>> LocalVar [ 319 307P [ 532 1525 ]] 324 CheckCastPP ... >>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>> >>>>> Scalar 1153 CheckCastPP ... #valuetype* >>>>> valhalla/vector/Long2$Value:NotNull >>>>> ++++ Eliminated: 1136 Allocate >>>>> Scalar 1041 Allocate ... >>>>> ++++ Eliminated: 1041 Allocate >>>>> Scalar 650 CheckCastPP ... #valuetype* >>>>> valhalla/vector/Long2$Value:NotNull >>>>> ++++ Eliminated: 633 Allocate >>>> >> > From maurizio.cimadamore at oracle.com Mon Jul 3 21:11:48 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 22:11:48 +0100 Subject: RFR 8183130: [MVT] Implement intrinsics for Q-typed LambdaForms In-Reply-To: <607d0de0-3bdc-7483-3431-3b205490a5c1@oracle.com> References: <0d6cde67-0945-985d-9b60-d1a5acfb3ce8@oracle.com> <607d0de0-3bdc-7483-3431-3b205490a5c1@oracle.com> Message-ID: I've missed that, sorry - I will remove the assertion Maurizio On 03/07/17 22:00, Vladimir Ivanov wrote: > From correctness POV, it's perfectly fine to miss an intrinsic > opportunity. So, I'd prefer to avoid throwing an error until all > intrinsics are implemented: > > + default: { > + throw newInternalError("Unknown intrinsic: "+intr); > + } > > Otherwise, looks good. > > Best regards, > Vladimir Ivanov > > On 7/3/17 5:27 PM, Maurizio Cimadamore wrote: >> Hi, >> This patch adds support for intrinsic in LambdaFormBuilder. More >> intrinsics to come in separate followup patches. >> >> http://cr.openjdk.java.net/~mcimadamore/8183130/ >> >> Thanks >> Maurizio >> >> From maurizio.cimadamore at oracle.com Mon Jul 3 21:13:13 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 3 Jul 2017 22:13:13 +0100 Subject: RFR 8183131: [MVT] 2-slot type (long & double) support is broken in LambdaFormBuilder In-Reply-To: References: <6b3382ff-4add-19dc-7d73-80497737f5c4@oracle.com> Message-ID: <044cc98e-8f50-4c67-e2c3-ff6ae1749597@oracle.com> I see what you mean - I will give this a try Maurizio On 03/07/17 21:53, Vladimir Ivanov wrote: > Looks good. > > Probably, it's better to keep builder.store() wrapped in a helper > method (as it is done in InvokerBytecodeGenerator) to keep localsMap[] > conversion implicit. > > Best regards, > Vladimir Ivanov > > On 7/3/17 5:19 PM, Maurizio Cimadamore wrote: >> Hi, >> This patch fixes an issue with lambda form builder not taking into >> account single vs. double slots indices. >> >> http://cr.openjdk.java.net/~mcimadamore/8183131/ >> >> Thanks >> Maurizio >> >> From tobias.hartmann at oracle.com Tue Jul 4 10:07:17 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Tue, 4 Jul 2017 12:07:17 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() Message-ID: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8183233 http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/ CompileTheWorld hits an assert during compilation when processing the __Value klass. The problem is that C->env()->___Value_klass() is NULL because __Value is not loaded in SystemDictionary::initialize_wk_klass() if !EnableMVT && !EnableValhalla. We should enable MVT if CompileTheWorld is true. Thanks, Tobias From rwestrel at redhat.com Wed Jul 5 07:33:19 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 05 Jul 2017 09:33:19 +0200 Subject: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation Message-ID: http://cr.openjdk.java.net/~roland/valhalla/vreturn-improv/webrev.00/ This patch: - reworks the verification logic in SharedRuntime::store_value_type_fields_to_buf() to address the crash that Paul encountered - changes the vreturn convention so if we return the klass pointer + fields, the klass pointer is tagged by setting its least significant bit. This way it's cheaper for the caller to detect if it's getting an oop, a buffered value or a list of fields back from the callee. (this is based on a discussion with Fred) - stores precomputed extended signature and vreturn registers in the ValueKlass to not have to compute them every time they are needed. This is also something Fred suggested. I considered initializaing those fields on first use but came to the conclusion it would make things too complicated. For instance the vreturn registers are sometimes use at a point where the thread can't safepoint making it impossible to use a metadata Array. Roland. From david.simms at oracle.com Wed Jul 5 08:04:33 2017 From: david.simms at oracle.com (David Simms) Date: Wed, 5 Jul 2017 10:04:33 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> Message-ID: Looks good /Simms On 4/07/2017 12:07 p.m., Tobias Hartmann wrote: > Hi, > > please review the following patch: > https://bugs.openjdk.java.net/browse/JDK-8183233 > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/ > > CompileTheWorld hits an assert during compilation when processing the __Value klass. The problem is that C->env()->___Value_klass() is NULL because __Value is not loaded in SystemDictionary::initialize_wk_klass() if !EnableMVT && !EnableValhalla. We should enable MVT if CompileTheWorld is true. > > Thanks, > Tobias From david.simms at oracle.com Wed Jul 5 08:10:19 2017 From: david.simms at oracle.com (David Simms) Date: Wed, 5 Jul 2017 10:10:19 +0200 Subject: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: References: Message-ID: Runtime portions look good, can't answer for the JIT specifics... /Simms On 5/07/2017 9:33 a.m., Roland Westrelin wrote: > http://cr.openjdk.java.net/~roland/valhalla/vreturn-improv/webrev.00/ > > This patch: > > - reworks the verification logic in > SharedRuntime::store_value_type_fields_to_buf() to address the crash > that Paul encountered > > - changes the vreturn convention so if we return the klass pointer + > fields, the klass pointer is tagged by setting its least significant > bit. This way it's cheaper for the caller to detect if it's getting an > oop, a buffered value or a list of fields back from the callee. (this > is based on a discussion with Fred) > > - stores precomputed extended signature and vreturn registers in the > ValueKlass to not have to compute them every time they are > needed. This is also something Fred suggested. I considered > initializaing those fields on first use but came to the conclusion it > would make things too complicated. For instance the vreturn registers > are sometimes use at a point where the thread can't safepoint making > it impossible to use a metadata Array. > > Roland. From tobias.hartmann at oracle.com Wed Jul 5 08:46:40 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 5 Jul 2017 10:46:40 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> Message-ID: <9992c868-cd7f-68d7-9030-80786bfaefdb@oracle.com> Thanks for the review! Best regards, Tobias On 05.07.2017 10:04, David Simms wrote: > > Looks good > > /Simms > > > On 4/07/2017 12:07 p.m., Tobias Hartmann wrote: >> Hi, >> >> please review the following patch: >> https://bugs.openjdk.java.net/browse/JDK-8183233 >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/ >> >> CompileTheWorld hits an assert during compilation when processing the __Value klass. The problem is that C->env()->___Value_klass() is NULL because __Value is not loaded in SystemDictionary::initialize_wk_klass() if !EnableMVT && !EnableValhalla. We should enable MVT if CompileTheWorld is true. >> >> Thanks, >> Tobias > From tobias.hartmann at oracle.com Wed Jul 5 09:05:26 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Wed, 05 Jul 2017 09:05:26 +0000 Subject: hg: valhalla/valhalla/hotspot: 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() Message-ID: <201707050905.v6595Q6Z016439@aojmv0008.oracle.com> Changeset: 0c9fe8c21f50 Author: thartmann Date: 2017-07-05 11:03 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/0c9fe8c21f50 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() Reviewed-by: dsimms ! src/share/vm/runtime/arguments.cpp From maurizio.cimadamore at oracle.com Wed Jul 5 09:52:52 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Wed, 05 Jul 2017 09:52:52 +0000 Subject: hg: valhalla/valhalla/jdk: 8183138: Code Builder: Problems with handling complex control flow Message-ID: <201707050952.v659qrda001805@aojmv0008.oracle.com> Changeset: 23f54f21c942 Author: mcimadamore Date: 2017-07-05 10:47 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/23f54f21c942 8183138: Code Builder: Problems with handling complex control flow Summary: add minimal liveness analysis to handle forward jumps in bytecode API Reviewed-by: vlivanov ! src/java.base/share/classes/jdk/experimental/bytecode/TypedCodeBuilder.java From maurizio.cimadamore at oracle.com Wed Jul 5 09:56:27 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Wed, 05 Jul 2017 09:56:27 +0000 Subject: hg: valhalla/valhalla/jdk: 8183133: [MVT] Arraylength method handle on Q-typed array shouldn't use ArrayAccessor.lengthL(Object[]) Message-ID: <201707050956.v659uRCI002691@aojmv0008.oracle.com> Changeset: 6810bb72d7d7 Author: mcimadamore Date: 2017-07-05 10:53 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6810bb72d7d7 8183133: [MVT] Arraylength method handle on Q-typed array shouldn't use ArrayAccessor.lengthL(Object[]) Summary: add new arraylenght MH builder to ValueType Reviewed-by: vlivanov Contributed-by: vladimir.x.ivanov at oracle.com ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/jdk/experimental/value/ValueType.java From maurizio.cimadamore at oracle.com Wed Jul 5 09:57:59 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Wed, 05 Jul 2017 09:57:59 +0000 Subject: hg: valhalla/valhalla/jdk: 8183132: [MVT] MHI.unboxResultHandle misses unboxing step for Q-types Message-ID: <201707050958.v659vxsW003115@aojmv0008.oracle.com> Changeset: a36747f10b78 Author: mcimadamore Date: 2017-07-05 10:55 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a36747f10b78 8183132: [MVT] MHI.unboxResultHandle misses unboxing step for Q-types Summary: missing unboxing for MH Reviewed-by: vlivanov Contributed-by: vladimir.x.ivanov at oracle.com ! src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java From maurizio.cimadamore at oracle.com Wed Jul 5 09:59:29 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Wed, 05 Jul 2017 09:59:29 +0000 Subject: hg: valhalla/valhalla/jdk: 8183135: [MVT] Code builder doesn't fully support constant pool patching Message-ID: <201707050959.v659xU9B003607@aojmv0008.oracle.com> Changeset: fdf7416816ef Author: mcimadamore Date: 2017-07-05 10:57 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/fdf7416816ef 8183135: [MVT] Code builder doesn't fully support constant pool patching Summary: add support for CP patching for remaining reference types Reviewed-by: vlivanov Contributed-by: vladimir.x.ivanov at oracle.com ! src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java From maurizio.cimadamore at oracle.com Wed Jul 5 11:08:41 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 5 Jul 2017 12:08:41 +0100 Subject: RFR 8183131: [MVT] 2-slot type (long & double) support is broken in LambdaFormBuilder In-Reply-To: <044cc98e-8f50-4c67-e2c3-ff6ae1749597@oracle.com> References: <6b3382ff-4add-19dc-7d73-80497737f5c4@oracle.com> <044cc98e-8f50-4c67-e2c3-ff6ae1749597@oracle.com> Message-ID: I did a slightly more ambitious refactoring of the lambda form builder code: * all methods concerned with code generation have been moved to LambdaFormCodeBuilder - more in the spirit of the design of the bytecode API * names of methods have been renamed - the 'emit' prefix has been dropped - to make it more builder-friendly * load/store of builders are now overrides of basic load/store - they map the index using the LF local map and they delegate to the parent method Let me know what you think http://cr.openjdk.java.net/~mcimadamore/8183131_v2/ Maurizio On 03/07/17 22:13, Maurizio Cimadamore wrote: > I see what you mean - I will give this a try > > Maurizio > > > On 03/07/17 21:53, Vladimir Ivanov wrote: >> Looks good. >> >> Probably, it's better to keep builder.store() wrapped in a helper >> method (as it is done in InvokerBytecodeGenerator) to keep >> localsMap[] conversion implicit. >> >> Best regards, >> Vladimir Ivanov >> >> On 7/3/17 5:19 PM, Maurizio Cimadamore wrote: >>> Hi, >>> This patch fixes an issue with lambda form builder not taking into >>> account single vs. double slots indices. >>> >>> http://cr.openjdk.java.net/~mcimadamore/8183131/ >>> >>> Thanks >>> Maurizio >>> >>> > From maurizio.cimadamore at oracle.com Wed Jul 5 12:19:34 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 5 Jul 2017 13:19:34 +0100 Subject: RFR 8183130: [MVT] Implement intrinsics for Q-typed LambdaForms In-Reply-To: References: <0d6cde67-0945-985d-9b60-d1a5acfb3ce8@oracle.com> <607d0de0-3bdc-7483-3431-3b205490a5c1@oracle.com> Message-ID: Hi, I've done a bigger rewriting of the patch, (and I also removed the assertion). Now the organization is such that the intrinsic code can take more advantage of the fluent style of code builders - this is particularly evident in emitSelectAlternatives (but emitLoop has improved too). http://cr.openjdk.java.net/~mcimadamore/8183130_v2 Maurizio On 03/07/17 22:11, Maurizio Cimadamore wrote: > I've missed that, sorry - I will remove the assertion > > Maurizio > > > On 03/07/17 22:00, Vladimir Ivanov wrote: >> From correctness POV, it's perfectly fine to miss an intrinsic >> opportunity. So, I'd prefer to avoid throwing an error until all >> intrinsics are implemented: >> >> + default: { >> + throw newInternalError("Unknown intrinsic: "+intr); >> + } >> >> Otherwise, looks good. >> >> Best regards, >> Vladimir Ivanov >> >> On 7/3/17 5:27 PM, Maurizio Cimadamore wrote: >>> Hi, >>> This patch adds support for intrinsic in LambdaFormBuilder. More >>> intrinsics to come in separate followup patches. >>> >>> http://cr.openjdk.java.net/~mcimadamore/8183130/ >>> >>> Thanks >>> Maurizio >>> >>> > From vladimir.x.ivanov at oracle.com Wed Jul 5 12:21:34 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 5 Jul 2017 15:21:34 +0300 Subject: RFR 8183131: [MVT] 2-slot type (long & double) support is broken in LambdaFormBuilder In-Reply-To: References: <6b3382ff-4add-19dc-7d73-80497737f5c4@oracle.com> <044cc98e-8f50-4c67-e2c3-ff6ae1749597@oracle.com> Message-ID: <0b462664-b33d-31ce-0851-258d819e40d2@oracle.com> > Let me know what you think > > http://cr.openjdk.java.net/~mcimadamore/8183131_v2/ Nice! I like how it shapes out. Best regards, Vladimir Ivanov > > Maurizio > > > On 03/07/17 22:13, Maurizio Cimadamore wrote: >> I see what you mean - I will give this a try >> >> Maurizio >> >> >> On 03/07/17 21:53, Vladimir Ivanov wrote: >>> Looks good. >>> >>> Probably, it's better to keep builder.store() wrapped in a helper >>> method (as it is done in InvokerBytecodeGenerator) to keep >>> localsMap[] conversion implicit. >>> >>> Best regards, >>> Vladimir Ivanov >>> >>> On 7/3/17 5:19 PM, Maurizio Cimadamore wrote: >>>> Hi, >>>> This patch fixes an issue with lambda form builder not taking into >>>> account single vs. double slots indices. >>>> >>>> http://cr.openjdk.java.net/~mcimadamore/8183131/ >>>> >>>> Thanks >>>> Maurizio >>>> >>>> >> > From vladimir.x.ivanov at oracle.com Wed Jul 5 12:34:00 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 5 Jul 2017 15:34:00 +0300 Subject: RFR 8183130: [MVT] Implement intrinsics for Q-typed LambdaForms In-Reply-To: References: <0d6cde67-0945-985d-9b60-d1a5acfb3ce8@oracle.com> <607d0de0-3bdc-7483-3431-3b205490a5c1@oracle.com> Message-ID: <29e03a7b-e3b2-d579-635c-2469e65a6411@oracle.com> Looks nice! One comment: + private Name emitLoop(int pos) { ... + builder.label("LOOP"); .. + .goto_("DONE") + .label("NEXT_" + c); Since lambda forms can be "extended" (see BoundMethodHandle.rebind() + BMH.editor() usages), it's possible (at least, in theory) to have multiple loop intrinsics in a single LF. I suggest to add position to LOOP, DONE, and NEXT labels to make them unique in the context of a single lambda form: "LOOP_"+pos "DONE_"+pos) "NEXT_" + pos + "_" + c (I hope string identifiers will be replaced with a dedicated Label class to make it easier to create unique label identifiers). Best regards, Vladimir Ivanov On 7/5/17 3:19 PM, Maurizio Cimadamore wrote: > Hi, > I've done a bigger rewriting of the patch, (and I also removed the > assertion). Now the organization is such that the intrinsic code can > take more advantage of the fluent style of code builders - this is > particularly evident in emitSelectAlternatives (but emitLoop has > improved too). > > http://cr.openjdk.java.net/~mcimadamore/8183130_v2 > > Maurizio > > > On 03/07/17 22:11, Maurizio Cimadamore wrote: >> I've missed that, sorry - I will remove the assertion >> >> Maurizio >> >> >> On 03/07/17 22:00, Vladimir Ivanov wrote: >>> From correctness POV, it's perfectly fine to miss an intrinsic >>> opportunity. So, I'd prefer to avoid throwing an error until all >>> intrinsics are implemented: >>> >>> + default: { >>> + throw newInternalError("Unknown intrinsic: "+intr); >>> + } >>> >>> Otherwise, looks good. >>> >>> Best regards, >>> Vladimir Ivanov >>> >>> On 7/3/17 5:27 PM, Maurizio Cimadamore wrote: >>>> Hi, >>>> This patch adds support for intrinsic in LambdaFormBuilder. More >>>> intrinsics to come in separate followup patches. >>>> >>>> http://cr.openjdk.java.net/~mcimadamore/8183130/ >>>> >>>> Thanks >>>> Maurizio >>>> >>>> >> > From rwestrel at redhat.com Wed Jul 5 12:47:01 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 05 Jul 2017 14:47:01 +0200 Subject: RFR: 8182997: [MVT] ValueTypeArray.java fails with "assert(false) failed: unexpected TypeAryPtr::_klass" Message-ID: http://cr.openjdk.java.net/~roland/8182997/webrev.00/ When a value class is unloaded, a ciInstanceKlass is created. When an array of value class is unloaded, a ciObjArrayKlass is created. In this case, [QMyValue; is unloaded. When TypeAryPtr::compute_klass() is called for that array, it creates a ciObjArrayKlass with symbol [LMyValue; because it has no way to tell the array of an unloaded instance class is an array of values. The mismatch with [QMyValue; causes the assert failure. Ideally, we would not create a ciInstanceKlass for an unloaded value class but a ciValueKlass. The problem is that it's not always possible to tell if an unloaded class is an instance or not. The fix I'm proposing rewrites the signature of the unloaded array from [QMyValue; to [LMyValue;. It's quite ugly but I don't see a better fix. Roland. From rwestrel at redhat.com Wed Jul 5 13:09:40 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 05 Jul 2017 15:09:40 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> Message-ID: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/ Looks ok to me. Roland. From rwestrel at redhat.com Wed Jul 5 13:12:56 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 05 Jul 2017 15:12:56 +0200 Subject: MVT-based vectors: first stab In-Reply-To: <882297909.444959.1499087160450.JavaMail.zimbra@u-pem.fr> References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> <882297909.444959.1499087160450.JavaMail.zimbra@u-pem.fr> Message-ID: Hi R?mi, > why a __Value is not represented by two fields too ? > > A __Value is a value type with no statically known type so if can not be represented by two fields, it should be represented by 3 fields (2 fields + a pointer to the type). Why 2 fields? For: class SomeValue { double x; double y; double z; } the JIT uses (x, y, z) as an internal representation of the value. Roland. From tobias.hartmann at oracle.com Wed Jul 5 13:18:00 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 5 Jul 2017 15:18:00 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> Message-ID: <13cb8333-27f6-a90a-2105-6858bb5d0a05@oracle.com> Thanks Roland! (I'll look at your changes as soon as possible, just very busy with other stuff atm). Best regards, Tobias On 05.07.2017 15:09, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/ > > Looks ok to me. > > Roland. > From maurizio.cimadamore at oracle.com Wed Jul 5 13:26:26 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Wed, 05 Jul 2017 13:26:26 +0000 Subject: hg: valhalla/valhalla/jdk: 8183131: [MVT] 2-slot type (long & double) support is broken in LambdaFormBuilder Message-ID: <201707051326.v65DQRTN002714@aojmv0008.oracle.com> Changeset: aac503c1ea3a Author: mcimadamore Date: 2017-07-05 14:24 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/aac503c1ea3a 8183131: [MVT] 2-slot type (long & double) support is broken in LambdaFormBuilder Summary: add support for local variable renumbering in LambdaFormBuilder Reviewed-by: vlivanov Contributed-by: vladimir.x.ivanov at oracle.com ! src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java From karen.kinnear at oracle.com Wed Jul 5 13:46:01 2017 From: karen.kinnear at oracle.com (Karen Kinnear) Date: Wed, 5 Jul 2017 09:46:01 -0400 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: <13cb8333-27f6-a90a-2105-6858bb5d0a05@oracle.com> References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> <13cb8333-27f6-a90a-2105-6858bb5d0a05@oracle.com> Message-ID: <8896C1DC-23FD-435A-B38E-6AEDF9F01574@oracle.com> Tobias, Just back from vacation so perhaps not up to speed yet - It seems wrong to me to enable MVT if CompileTheWorld is true. It makes more sense to me to explicitly disable compiling java.lang.__Value if !EnableMVT && !EnableValhalla. thoughts? Karen > On Jul 5, 2017, at 9:18 AM, Tobias Hartmann wrote: > > Thanks Roland! > > (I'll look at your changes as soon as possible, just very busy with other stuff atm). > > Best regards, > Tobias > > On 05.07.2017 15:09, Roland Westrelin wrote: >> >>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/ >> >> Looks ok to me. >> >> Roland. >> From maurizio.cimadamore at oracle.com Wed Jul 5 13:50:02 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 5 Jul 2017 14:50:02 +0100 Subject: RFR 8183130: [MVT] Implement intrinsics for Q-typed LambdaForms In-Reply-To: <29e03a7b-e3b2-d579-635c-2469e65a6411@oracle.com> References: <0d6cde67-0945-985d-9b60-d1a5acfb3ce8@oracle.com> <607d0de0-3bdc-7483-3431-3b205490a5c1@oracle.com> <29e03a7b-e3b2-d579-635c-2469e65a6411@oracle.com> Message-ID: <510503e4-5812-d702-66b3-6a8c33a73c27@oracle.com> I've uploaded a new version which adds a small helper method on the lambda form code builder which can be used to create unique labels. This avoids the problem of having string concat in client code. http://cr.openjdk.java.net/~mcimadamore/8183130_v3/ Maurizio On 05/07/17 13:34, Vladimir Ivanov wrote: > Looks nice! > > One comment: > > + private Name emitLoop(int pos) { > ... > + builder.label("LOOP"); > .. > + .goto_("DONE") > + .label("NEXT_" + c); > > Since lambda forms can be "extended" (see BoundMethodHandle.rebind() + > BMH.editor() usages), it's possible (at least, in theory) to have > multiple loop intrinsics in a single LF. > > I suggest to add position to LOOP, DONE, and NEXT labels to make them > unique in the context of a single lambda form: > "LOOP_"+pos > "DONE_"+pos) > "NEXT_" + pos + "_" + c > > (I hope string identifiers will be replaced with a dedicated Label > class to make it easier to create unique label identifiers). > > Best regards, > Vladimir Ivanov > > On 7/5/17 3:19 PM, Maurizio Cimadamore wrote: >> Hi, >> I've done a bigger rewriting of the patch, (and I also removed the >> assertion). Now the organization is such that the intrinsic code can >> take more advantage of the fluent style of code builders - this is >> particularly evident in emitSelectAlternatives (but emitLoop has >> improved too). >> >> http://cr.openjdk.java.net/~mcimadamore/8183130_v2 >> >> Maurizio >> >> >> On 03/07/17 22:11, Maurizio Cimadamore wrote: >>> I've missed that, sorry - I will remove the assertion >>> >>> Maurizio >>> >>> >>> On 03/07/17 22:00, Vladimir Ivanov wrote: >>>> From correctness POV, it's perfectly fine to miss an intrinsic >>>> opportunity. So, I'd prefer to avoid throwing an error until all >>>> intrinsics are implemented: >>>> >>>> + default: { >>>> + throw newInternalError("Unknown intrinsic: >>>> "+intr); >>>> + } >>>> >>>> Otherwise, looks good. >>>> >>>> Best regards, >>>> Vladimir Ivanov >>>> >>>> On 7/3/17 5:27 PM, Maurizio Cimadamore wrote: >>>>> Hi, >>>>> This patch adds support for intrinsic in LambdaFormBuilder. More >>>>> intrinsics to come in separate followup patches. >>>>> >>>>> http://cr.openjdk.java.net/~mcimadamore/8183130/ >>>>> >>>>> Thanks >>>>> Maurizio >>>>> >>>>> >>> >> From forax at univ-mlv.fr Wed Jul 5 13:55:07 2017 From: forax at univ-mlv.fr (forax at univ-mlv.fr) Date: Wed, 5 Jul 2017 15:55:07 +0200 (CEST) Subject: MVT-based vectors: first stab In-Reply-To: References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> <882297909.444959.1499087160450.JavaMail.zimbra@u-pem.fr> Message-ID: <300494362.1688211.1499262907912.JavaMail.zimbra@u-pem.fr> ----- Mail original ----- > De: "Roland Westrelin" > ?: "Remi Forax" > Cc: "Vladimir Ivanov" , valhalla-dev at openjdk.java.net > Envoy?: Mercredi 5 Juillet 2017 15:12:56 > Objet: Re: MVT-based vectors: first stab > Hi R?mi, > >> why a __Value is not represented by two fields too ? >> >> A __Value is a value type with no statically known type so if can not be >> represented by two fields, it should be represented by 3 fields (2 fields + a >> pointer to the type). > > Why 2 fields? > > For: > > class SomeValue { > double x; > double y; > double z; > } > > the JIT uses (x, y, z) as an internal representation of the value. > > Roland. n + 1 fields ? (x, y, z) + a field (not necessarily a header but it has the same meaning) that indicate the value klass. Note that this representation also allow to call interface methods. My point is that a __Value is not an object so it doesn't has to be represented by a reference (be boxed). R?mi From vladimir.x.ivanov at oracle.com Wed Jul 5 14:16:17 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 5 Jul 2017 17:16:17 +0300 Subject: RFR 8183130: [MVT] Implement intrinsics for Q-typed LambdaForms In-Reply-To: <510503e4-5812-d702-66b3-6a8c33a73c27@oracle.com> References: <0d6cde67-0945-985d-9b60-d1a5acfb3ce8@oracle.com> <607d0de0-3bdc-7483-3431-3b205490a5c1@oracle.com> <29e03a7b-e3b2-d579-635c-2469e65a6411@oracle.com> <510503e4-5812-d702-66b3-6a8c33a73c27@oracle.com> Message-ID: <44447910-f60f-f4fc-c4a3-c915b6b782f0@oracle.com> Even better! Best regards, Vladimir Ivanov On 7/5/17 4:50 PM, Maurizio Cimadamore wrote: > I've uploaded a new version which adds a small helper method on the > lambda form code builder which can be used to create unique labels. This > avoids the problem of having string concat in client code. > > http://cr.openjdk.java.net/~mcimadamore/8183130_v3/ > > Maurizio > > > On 05/07/17 13:34, Vladimir Ivanov wrote: >> Looks nice! >> >> One comment: >> >> + private Name emitLoop(int pos) { >> ... >> + builder.label("LOOP"); >> .. >> + .goto_("DONE") >> + .label("NEXT_" + c); >> >> Since lambda forms can be "extended" (see BoundMethodHandle.rebind() + >> BMH.editor() usages), it's possible (at least, in theory) to have >> multiple loop intrinsics in a single LF. >> >> I suggest to add position to LOOP, DONE, and NEXT labels to make them >> unique in the context of a single lambda form: >> "LOOP_"+pos >> "DONE_"+pos) >> "NEXT_" + pos + "_" + c >> >> (I hope string identifiers will be replaced with a dedicated Label >> class to make it easier to create unique label identifiers). >> >> Best regards, >> Vladimir Ivanov >> >> On 7/5/17 3:19 PM, Maurizio Cimadamore wrote: >>> Hi, >>> I've done a bigger rewriting of the patch, (and I also removed the >>> assertion). Now the organization is such that the intrinsic code can >>> take more advantage of the fluent style of code builders - this is >>> particularly evident in emitSelectAlternatives (but emitLoop has >>> improved too). >>> >>> http://cr.openjdk.java.net/~mcimadamore/8183130_v2 >>> >>> Maurizio >>> >>> >>> On 03/07/17 22:11, Maurizio Cimadamore wrote: >>>> I've missed that, sorry - I will remove the assertion >>>> >>>> Maurizio >>>> >>>> >>>> On 03/07/17 22:00, Vladimir Ivanov wrote: >>>>> From correctness POV, it's perfectly fine to miss an intrinsic >>>>> opportunity. So, I'd prefer to avoid throwing an error until all >>>>> intrinsics are implemented: >>>>> >>>>> + default: { >>>>> + throw newInternalError("Unknown intrinsic: >>>>> "+intr); >>>>> + } >>>>> >>>>> Otherwise, looks good. >>>>> >>>>> Best regards, >>>>> Vladimir Ivanov >>>>> >>>>> On 7/3/17 5:27 PM, Maurizio Cimadamore wrote: >>>>>> Hi, >>>>>> This patch adds support for intrinsic in LambdaFormBuilder. More >>>>>> intrinsics to come in separate followup patches. >>>>>> >>>>>> http://cr.openjdk.java.net/~mcimadamore/8183130/ >>>>>> >>>>>> Thanks >>>>>> Maurizio >>>>>> >>>>>> >>>> >>> > From tobias.hartmann at oracle.com Wed Jul 5 14:23:36 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 5 Jul 2017 16:23:36 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: <8896C1DC-23FD-435A-B38E-6AEDF9F01574@oracle.com> References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> <13cb8333-27f6-a90a-2105-6858bb5d0a05@oracle.com> <8896C1DC-23FD-435A-B38E-6AEDF9F01574@oracle.com> Message-ID: <15fe38a9-d2f0-fd79-c3d9-13bba1593fc2@oracle.com> Hi Karen, On 05.07.2017 15:46, Karen Kinnear wrote: > It seems wrong to me to enable MVT if CompileTheWorld is true. > It makes more sense to me to explicitly disable compiling java.lang.__Value if !EnableMVT && !EnableValhalla. Yes, that's correct but I was concerned that there are other points of friction where we may encounter __Value although MVT/Valhalla is not enabled. For example, in Class::isValueClass() we reference __Value [1]. Looking at it again, it shouldn't be a problem (it actually is the same with -Xcomp). That said, I agree that we should probably just disable compilation of __Value if CompileTheWorld is true. I'll prepare a new fix. Thanks, Tobias [1] http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8181425/revised-fix/jdk/src/java.base/share/classes/java/lang/Class.java.sdiff.html >> On Jul 5, 2017, at 9:18 AM, Tobias Hartmann wrote: >> >> Thanks Roland! >> >> (I'll look at your changes as soon as possible, just very busy with other stuff atm). >> >> Best regards, >> Tobias >> >> On 05.07.2017 15:09, Roland Westrelin wrote: >>> >>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/ >>> >>> Looks ok to me. >>> >>> Roland. >>> > From maurizio.cimadamore at oracle.com Wed Jul 5 14:38:56 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Wed, 05 Jul 2017 14:38:56 +0000 Subject: hg: valhalla/valhalla/jdk: 8183130: [MVT] Implement intrinsics for Q-typed LambdaForms Message-ID: <201707051438.v65EcvaK002847@aojmv0008.oracle.com> Changeset: bbb1f99b2c75 Author: mcimadamore Date: 2017-07-05 15:36 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/bbb1f99b2c75 8183130: [MVT] Implement intrinsics for Q-typed LambdaForms Summary: add support for some intrinsics in LambdaFormBuilder Reviewed-by: vlivanov Contributed-by: vladimir.x.ivanov at oracle.com ! src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java ! src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java From maurizio.cimadamore at oracle.com Wed Jul 5 14:39:43 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 5 Jul 2017 15:39:43 +0100 Subject: MVT-based vectors: first stab In-Reply-To: <41297903-7dca-c22f-9104-269846d043cd@oracle.com> References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> <41297903-7dca-c22f-9104-269846d043cd@oracle.com> Message-ID: All JDK changes have been reviewed and pushed - thanks for the reviews. We still need to submit changes for HS (the issue with type.cpp is preventing Vlad's test to run correctly with JIT enabled). Can somebody from the VM please look into that? Cheers Maurizio On 03/07/17 22:01, Vladimir Ivanov wrote: > Thanks a lot, Maurizio! > > Best regards, > Vladimir Ivanov > > On 7/3/17 5:29 PM, Maurizio Cimadamore wrote: >> All reviews have been submitted - once the code is in, I plan to push >> the tests I have which were stressing some of the issues fixed by >> these patches. >> >> Cheers >> Maurizio >> >> >> On 03/07/17 13:41, Maurizio Cimadamore wrote: >>> Ok, >>> I will file other issues as needed and start submitting reviews for >>> your changes. >>> >>> Thanks >>> Maurizio >>> >>> >>> On 03/07/17 12:46, Vladimir Ivanov wrote: >>>>> I was playing with some tests and your JDK patches seem to fix at >>>>> least 2 problems I've encountered when testing: >>>> >>>> Glad to hear that. Thanks for testing! >>>> >>>> I assume those are corresponding bugs I filed: >>>> >>>>> * issues with double slots in lambda forms (wrong indices being >>>>> generated by LambaFormBuilder) >>>> >>>> https://bugs.openjdk.java.net/browse/JDK-8183131 >>>> core-libs/j.l.i [MVT] 2-slot type (long & double) support is >>>> broken in LambdaFormBuilder >>>> >>>>> * issues with (un)boxing of method handles leading to bogus method >>>>> call results >>>> https://bugs.openjdk.java.net/browse/JDK-8183132 >>>> core-libs/j.l.i [MVT] MHI.unboxResultHandle misses unboxing step >>>> for Q-types >>>> >>>>> Overall, I think your patches makes the situation a lot better - >>>>> what's the plan to check this code in? Do you want to make other >>>>> iterations at it? Or can we start the process? >>>> >>>> On the JDK side, the changes are pretty sound in the current shape. >>>> I planned to shepherd the fixes into the repo, but neither did >>>> extensive testing nor finalized the actual fixes. Feel free to take >>>> care of them. >>>> >>>> My near-term plans are: (1) implement missing LF intrinsics and (2) >>>> look into box elimination issues on JIT-compiler side. >>>> >>>> Best regards, >>>> Vladimir Ivanov >>>> >>>>> On 28/06/17 14:17, Vladimir Ivanov wrote: >>>>>> Hi, >>>>>> >>>>>> I started playing with MVT-based vectors recently and want to >>>>>> share my experience so far. >>>>>> >>>>>> For the first step, I decided to avoid specific treatment of >>>>>> super-longs (Long2/4/8) in the JVM we have in Panama and just >>>>>> mark them as VCCs for now: >>>>>> @DeriveValueType >>>>>> final class Long2 { public final long lo, hi; } >>>>>> >>>>>> As a test case I chose sum of array elements: >>>>>> >>>>>> long sum(QLong2[] va) { >>>>>> QLong2 v = QLong2.default; // (0,0) >>>>>> for (int i = 0; i < va.length; i++) { >>>>>> QLong2 vi = va[i]; >>>>>> v = QLong2(v.lo + vi.lo, v.hi + vi.hi); >>>>>> } >>>>>> return v.lo + v.hi; >>>>>> } >>>>>> >>>>>> Here are the changes: >>>>>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/webrev.00/ >>>>>> >>>>>> >>>>>> SUMMARY & RESULTS >>>>>> >>>>>> I hit some bugs along the way and had to extend the code for >>>>>> Q-types in some places to get decent code shape generated. (I'll >>>>>> shepherd the fixes in the repo separately.) I ended up with the >>>>>> following generated code: >>>>>> >>>>>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >>>>>> >>>>>> >>>>>> Unfortunately, there are still 2 allocations left in the >>>>>> generated code (out of 5 initially). C2 can't scalarize the >>>>>> accumulator (v) inside the loop and has to put updated components >>>>>> (lo & hi) in allocated heap buffer on every iteration over the >>>>>> array (generated code [1], C2 EA output [2]). >>>>>> >>>>>> >>>>>> GORY DETAILS >>>>>> >>>>>> hotspot/src/share/vm/opto/type.cpp >>>>>> >>>>>> * Type::get_typeflow_type() doesn't distinguish between >>>>>> TypeValueTypePtr & TypeValueType >>>>>> >>>>>> >>>>>> jdk/src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java >>>>>> >>>>>> >>>>>> * introduced some LF intrinsics, e.g. LOOP and >>>>>> SELECT_ALTERNATIVE; >>>>>> >>>>>> * had to workaround control flow-related bugs in the bytecode >>>>>> library (jdk.experimental.bytecode): broken JVM state after >>>>>> goto_() (see FIXME marks in the code); >>>>>> >>>>>> * fixed 2-slot types support: wrong local indexes were used >>>>>> >>>>>> >>>>>> >>>>>> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java >>>>>> >>>>>> >>>>>> * MHI.unboxResultHandle misses unboxing step for Q-types >>>>>> >>>>>> >>>>>> jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java >>>>>> jdk/src/java.base/share/classes/jdk/experimental/value/ValueType.java >>>>>> >>>>>> >>>>>> * had to add a specialization for arraylength on Q-typed >>>>>> array, because C2 can't handle arraylength Object[] when Q[] >>>>>> instance is on stack; >>>>>> >>>>>> >>>>>> jdk/src/java.base/share/classes/jdk/experimental/bytecode/TypedCodeBuilder.java: >>>>>> >>>>>> >>>>>> * changes required to workaround goto_() bug >>>>>> >>>>>> * fixed CP patching support >>>>>> >>>>>> >>>>>> jdk/src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java >>>>>> >>>>>> >>>>>> * fixed CP patching support >>>>>> >>>>>> >>>>>> hotspot/src/share/vm/memory/metachunk.hpp >>>>>> hotspot/src/share/vm/oops/method.hpp >>>>>> Fix optimized JVM build. >>>>>> >>>>>> Best regards, >>>>>> Vladimir Ivanov >>>>>> >>>>>> [1] >>>>>> http://cr.openjdk.java.net/~vlivanov/valhalla/vectors.mvt/sumArrayL2.log >>>>>> >>>>>> >>>>>> ;; B7: # B8 <- B9 top-of-loop >>>>>> >>>>>> mov %r9,0x10(%rsp) >>>>>> mov 0x8(%rsp),%r11d >>>>>> >>>>>> ;; B8: # B16 B9 <- B6 B7 Loop: B8-B7 inner >>>>>> >>>>>> mov %r11d,0x8(%rsp) >>>>>> movabs $0x7c0060420,%rsi ; >>>>>> {metadata('valhalla/vector/Long2$Value')} >>>>>> ... >>>>>> callq 0x0000000117579820 ; {runtime_call _new_instance_Java} >>>>>> >>>>>> ;; B9: # B7 B10 <- B8 >>>>>> >>>>>> mov %rax,%r9 >>>>>> mov 0x10(%rsp),%r11 >>>>>> mov 0x10(%r11),%r10 >>>>>> mov 0x18(%r11),%r11 >>>>>> movslq %ebp,%r8 >>>>>> shl $0x4,%r8 >>>>>> mov (%rsp),%rcx >>>>>> mov 0x18(%rcx,%r8,1),%rax >>>>>> mov 0x10(%rcx,%r8,1),%r8 ;*vaload >>>>>> add %r11,%rax ;*ladd >>>>>> mov %rax,0x18(%r9) >>>>>> add %r10,%r8 ;*ladd >>>>>> mov %r8,0x10(%r9) >>>>>> inc %ebp ;*iadd >>>>>> cmp 0x8(%rsp),%ebp >>>>>> jl ;*if_icmpge >>>>>> >>>>>> [2] Pruned EA output (full output in the log) >>>>>> ======== Connection graph for valhalla.vector.VectorTest::sumArrayL2 >>>>>> JavaObject NoEscape(NoEscape) NSR [ 1267F 1265F 756F 754F 1581F >>>>>> 1579F [ 1259 1264 532 1525 ]] 1247 Allocate >>>>>> LocalVar [ 1247P [ 1264 ]] 1259 Proj ... #5 >>>>>> LocalVar [ 1259 1247P [ 1267b 1265b 532 1525 ]] 1264 >>>>>> CheckCastPP ... #valuetype* valhalla/vector/Long2$Value:NotNull >>>>>> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >>>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>>> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >>>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>>> >>>>>> JavaObject NoEscape(NoEscape) [ 1154F [ 1148 1153 ]] 1136 Allocate >>>>>> LocalVar [ 1136P [ 1153 ]] 1148 Proj ... #5 >>>>>> LocalVar [ 1148 1136P [ 1154b ]] 1153 CheckCastPP ... >>>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>>> >>>>>> JavaObject NoEscape(NoEscape) [ [ 1053 ]] 1041 Allocate >>>>>> LocalVar [ 1041P [ ]] 1053 Proj ... #5 >>>>>> >>>>>> JavaObject NoEscape(NoEscape) [ 653F 651F [ 645 650 ]] 633 Allocate >>>>>> LocalVar [ 633P [ 650 ]] 645 Proj ... #5 >>>>>> LocalVar [ 645 633P [ 653b 651b ]] 650 CheckCastPP ... >>>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>>> >>>>>> JavaObject NoEscape(NoEscape) NSR [ 756F 754F 1581F 1579F [ 319 >>>>>> 324 532 1525 ]] 307 Allocate >>>>>> LocalVar [ 307P [ 324 ]] 319 Proj ... #5 >>>>>> LocalVar [ 319 307P [ 532 1525 ]] 324 CheckCastPP ... >>>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>>> LocalVar [ 324 1264 1247P 307P [ 756b 754b ]] 532 Phi ... >>>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>>> LocalVar [ 1264 324 1247P 307P [ 1581b 1579b ]] 1525 Phi ... >>>>>> #valuetype* valhalla/vector/Long2$Value:NotNull >>>>>> >>>>>> Scalar 1153 CheckCastPP ... #valuetype* >>>>>> valhalla/vector/Long2$Value:NotNull >>>>>> ++++ Eliminated: 1136 Allocate >>>>>> Scalar 1041 Allocate ... >>>>>> ++++ Eliminated: 1041 Allocate >>>>>> Scalar 650 CheckCastPP ... #valuetype* >>>>>> valhalla/vector/Long2$Value:NotNull >>>>>> ++++ Eliminated: 633 Allocate >>>>> >>> >> From tobias.hartmann at oracle.com Wed Jul 5 14:42:37 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 5 Jul 2017 16:42:37 +0200 Subject: MVT-based vectors: first stab In-Reply-To: References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> <41297903-7dca-c22f-9104-269846d043cd@oracle.com> Message-ID: Hi, On 05.07.2017 16:39, Maurizio Cimadamore wrote: > We still need to submit changes for HS (the issue with type.cpp is preventing Vlad's test to run correctly with JIT enabled). Can somebody from the VM please look into that? You mean 8183129 [1], right? I'll take care of that (had to wait for 8183130 because my regression test depends on MethodHandles.guardWithTest). Best regards, Tobias [1] https://bugs.openjdk.java.net/browse/JDK-8183129 [2] https://bugs.openjdk.java.net/browse/JDK-8183130 From maurizio.cimadamore at oracle.com Wed Jul 5 14:42:32 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 5 Jul 2017 15:42:32 +0100 Subject: RFR(S): 8183129: [MVT] Type::get_typeflow_type() doesn't distinguish between TypeValueTypePtr & TypeValueType In-Reply-To: <0041569b-8fd5-c210-f9ef-a3d2cd76bd8b@oracle.com> References: <0041569b-8fd5-c210-f9ef-a3d2cd76bd8b@oracle.com> Message-ID: <0ae65ab7-6f9f-b6e3-9e18-3922304040e3@oracle.com> Has this been pushed? Maurizio On 29/06/17 13:01, Tobias Hartmann wrote: > Thanks Roland. > > Best regards, > Tobias > > On 29.06.2017 13:59, Roland Westrelin wrote: >>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.26/ >> Look good to me. >> >> Roland. >> From tobias.hartmann at oracle.com Wed Jul 5 14:50:10 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 5 Jul 2017 16:50:10 +0200 Subject: RFR(S): 8183129: [MVT] Type::get_typeflow_type() doesn't distinguish between TypeValueTypePtr & TypeValueType In-Reply-To: <0ae65ab7-6f9f-b6e3-9e18-3922304040e3@oracle.com> References: <0041569b-8fd5-c210-f9ef-a3d2cd76bd8b@oracle.com> <0ae65ab7-6f9f-b6e3-9e18-3922304040e3@oracle.com> Message-ID: On 05.07.2017 16:42, Maurizio Cimadamore wrote: > Has this been pushed? No, as I mentioned: > This depends on the SELECT_ALTERNATIVE intrinsic (GWT) being implemented in the value type LambdaFormBuilder I'll push it now that you pushed JDK-8183130. Best regards, Tobias From maurizio.cimadamore at oracle.com Wed Jul 5 14:50:07 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 5 Jul 2017 15:50:07 +0100 Subject: MVT-based vectors: first stab In-Reply-To: References: <2d2c6eef-f78a-2f68-9f82-2b4b10bb4d0b@oracle.com> <8e43ce1f-e1cd-8bec-5442-e3a109a4dce2@oracle.com> <41297903-7dca-c22f-9104-269846d043cd@oracle.com> Message-ID: <5866377f-412a-efbe-6903-e1cb83b300d9@oracle.com> On 05/07/17 15:42, Tobias Hartmann wrote: > Hi, > > On 05.07.2017 16:39, Maurizio Cimadamore wrote: >> We still need to submit changes for HS (the issue with type.cpp is preventing Vlad's test to run correctly with JIT enabled). Can somebody from the VM please look into that? > You mean 8183129 [1], right? I'll take care of that (had to wait for 8183130 because my regression test depends on MethodHandles.guardWithTest). Ah - ok, I noted the review thread , but wasn't sure as to why it had not been pushed. Thanks for the clarification. And yes, that fix is enough to get the basic vector test to pass with JIT enabled. Cheers Maurizio > > Best regards, > Tobias > > [1] https://bugs.openjdk.java.net/browse/JDK-8183129 > [2] https://bugs.openjdk.java.net/browse/JDK-8183130 From tobias.hartmann at oracle.com Wed Jul 5 14:54:42 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Wed, 05 Jul 2017 14:54:42 +0000 Subject: hg: valhalla/valhalla/hotspot: 8183129: [MVT] Type::get_typeflow_type() doesn't distinguish between TypeValueTypePtr & TypeValueType Message-ID: <201707051454.v65Eshia009584@aojmv0008.oracle.com> Changeset: afb92975d64c Author: thartmann Date: 2017-07-05 16:52 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/afb92975d64c 8183129: [MVT] Type::get_typeflow_type() doesn't distinguish between TypeValueTypePtr & TypeValueType Reviewed-by: roland, vlivanov ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/type.cpp ! test/compiler/valhalla/valuetypes/ValueTypeTestBench.java From tobias.hartmann at oracle.com Wed Jul 5 16:47:08 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 5 Jul 2017 18:47:08 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: <15fe38a9-d2f0-fd79-c3d9-13bba1593fc2@oracle.com> References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> <13cb8333-27f6-a90a-2105-6858bb5d0a05@oracle.com> <8896C1DC-23FD-435A-B38E-6AEDF9F01574@oracle.com> <15fe38a9-d2f0-fd79-c3d9-13bba1593fc2@oracle.com> Message-ID: Hi, here's the new fix: http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.28/ I had to compare the name instead of the Klass because SystemDictionary::___Value_klass() is not available. If value types are disabled, CompileTheWorld now simply skips the methods: CompileTheWorld (18361) : java/lang/__Value CompileTheWorld (18361) : Skipping method: java.lang.__Value.()V CompileTheWorld (18361) : Skipping method: java.lang.__Value.equals(Ljava/lang/Object;)Z CompileTheWorld (18361) : Skipping method: java.lang.__Value.toString()Ljava/lang/String; CompileTheWorld (18361) : Skipping method: java.lang.__Value.hashCode()I CompileTheWorld (18361) : Skipping method: java.lang.__Value.getClass()Ljava/lang/Class; Best regards, Tobias On 05.07.2017 16:23, Tobias Hartmann wrote: > Hi Karen, > > On 05.07.2017 15:46, Karen Kinnear wrote: >> It seems wrong to me to enable MVT if CompileTheWorld is true. >> It makes more sense to me to explicitly disable compiling java.lang.__Value if !EnableMVT && !EnableValhalla. > > Yes, that's correct but I was concerned that there are other points of friction where we may encounter __Value although MVT/Valhalla is not enabled. For example, in Class::isValueClass() we reference __Value [1]. Looking at it again, it shouldn't be a problem (it actually is the same with -Xcomp). > > That said, I agree that we should probably just disable compilation of __Value if CompileTheWorld is true. I'll prepare a new fix. > > Thanks, > Tobias > > [1] http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8181425/revised-fix/jdk/src/java.base/share/classes/java/lang/Class.java.sdiff.html > >>> On Jul 5, 2017, at 9:18 AM, Tobias Hartmann wrote: >>> >>> Thanks Roland! >>> >>> (I'll look at your changes as soon as possible, just very busy with other stuff atm). >>> >>> Best regards, >>> Tobias >>> >>> On 05.07.2017 15:09, Roland Westrelin wrote: >>>> >>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/ >>>> >>>> Looks ok to me. >>>> >>>> Roland. >>>> >> From paul.sandoz at oracle.com Wed Jul 5 17:51:53 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Wed, 5 Jul 2017 10:51:53 -0700 Subject: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: References: Message-ID: <1BBA7FDC-694E-4085-BE5F-CAAAA5D20CD9@oracle.com> > On 5 Jul 2017, at 00:33, Roland Westrelin wrote: > > > http://cr.openjdk.java.net/~roland/valhalla/vreturn-improv/webrev.00/ > > This patch: > > - reworks the verification logic in > SharedRuntime::store_value_type_fields_to_buf() to address the crash > that Paul encountered > Thanks. I will verify this week when i update the Unsafe methods to be in sync with Fred?s latest changes. Paul. > - changes the vreturn convention so if we return the klass pointer + > fields, the klass pointer is tagged by setting its least significant > bit. This way it's cheaper for the caller to detect if it's getting an > oop, a buffered value or a list of fields back from the callee. (this > is based on a discussion with Fred) > > - stores precomputed extended signature and vreturn registers in the > ValueKlass to not have to compute them every time they are > needed. This is also something Fred suggested. I considered > initializaing those fields on first use but came to the conclusion it > would make things too complicated. For instance the vreturn registers > are sometimes use at a point where the thread can't safepoint making > it impossible to use a metadata Array. > > Roland. From frederic.parain at oracle.com Wed Jul 5 19:11:31 2017 From: frederic.parain at oracle.com (Frederic Parain) Date: Wed, 5 Jul 2017 15:11:31 -0400 Subject: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: References: Message-ID: <2AF102DB-CBE2-4D30-8840-EFD51570A636@oracle.com> Roland, Thank you very much for improving the vreturn convention implementation. Just a minor nit: valueKlass.cpp:442: Missing message in assert? Fred > On Jul 5, 2017, at 03:33, Roland Westrelin wrote: > > > http://cr.openjdk.java.net/~roland/valhalla/vreturn-improv/webrev.00/ > > This patch: > > - reworks the verification logic in > SharedRuntime::store_value_type_fields_to_buf() to address the crash > that Paul encountered > > - changes the vreturn convention so if we return the klass pointer + > fields, the klass pointer is tagged by setting its least significant > bit. This way it's cheaper for the caller to detect if it's getting an > oop, a buffered value or a list of fields back from the callee. (this > is based on a discussion with Fred) > > - stores precomputed extended signature and vreturn registers in the > ValueKlass to not have to compute them every time they are > needed. This is also something Fred suggested. I considered > initializaing those fields on first use but came to the conclusion it > would make things too complicated. For instance the vreturn registers > are sometimes use at a point where the thread can't safepoint making > it impossible to use a metadata Array. > > Roland. From john.r.rose at oracle.com Wed Jul 5 19:31:00 2017 From: john.r.rose at oracle.com (John Rose) Date: Wed, 5 Jul 2017 12:31:00 -0700 Subject: decoupling interpreter buffers from the JIT's value processing Message-ID: TL;DR I think we need non-blocking value buffers in the JIT. This morning we discussed some details of removing buffers from optimized code. The problem is that the interpreter generates buffers for values (so it can treat them uniformly) but the JIT wants to disregard them in order to optimize fully. To do this, the JIT has to (more or less routinely) unpack the actual values from the interpreter buffers. It's important to do this in order to do value numbering optimizations on the values themselves, rather than on the addresses of the buffers that the interpreter assigns to carry the values. (One value can be carried by several buffers.) This manifests in the IR as parallel sets of IR nodes. Some are buffer addresses, artifacts of the interpreter's decisions about buffering, and some nodes represent unbuffered values (plain values, values per se), which can be register allocated, spilled to the stack, passed as spread arguments, etc. Let's call these two sets "buffered values" and "plain values". They have different types in the IR, and allocate to different sorts of registers. (A plain value allocates in general to a tuple of registers.) If there is control flow in the IR, then the phi nodes which carry control flow dependencies of value types are cloned into separate phis, some for buffered values, and some for plain values. The basic requirement for the the optimizer is that the buffered value phis never get in the way of optimization. Specifically, even if the interpreter constructs a new buffer each time through a hot loop, the JIT must be free to discard the phis which represent that buffer. There are edge cases where buffers are still needed. AFAIK, the only important edge cases are "exits" from the optimized code, either returns or deoptimizations. In those cases, an outgoing value will need to be put into a buffer so that the interpreter can receive it, either as a return value or as part of a JVM state loaded into an interpreter frame that is the product of a deoptimization event. All this is almost exactly the same as the techniques we already use to scalarize non-escaping POJOs. The POJOs are reconstructed as true heap objects in the case of (some) deoptimizations; this is implemented by a special kind of value specifier which guides the deopt. transition code to create the POJOs from scattered components, as JVM interpreter frames are populated. A key difference between the existing EA framework and the new mechanisms is that our existing infrastructure is very conservative about tracking the identity of references. This makes it hard to just throw away the phis that carry the object references, even if we have a full model of the object components in a parallel set of phis. I think a good first move for adapting our existing IR framework to the task of buffer elimination is to aggressively "split" buffers (just as we currently "split" live ranges) at all points where it makes it easier for us to cut away IR nodes that only do buffer tracking. This starts with exit points: Value returns, and debug info about JVM states containing values. But perhaps every phi that carries a buffer should also be split, carrying a virtual buffer-copying operation. This latter move would make buffer-carrying phis to immediately go dead, since each (virtual) buffer-copying operation would just pick up the value components from the corresponding value-tracking phis. It might seem that a better long-term move for adapting our IR framework would be to refuse to translate interpreter buffering operations into JIT IR, and aggressively work *only* with components. The advantage would be that buffering would appear in the IR only as an edge effect: Components are loaded from buffers on entry to the graph and are dumped into buffers (new ones, or maybe caller-specified ones?) on exit from the graph; the debug info case would encode this "dumping" in symbolic form, not executable. This strategy for never buffering will fail in some cases, notably for partially optimized code (first-tier, profiling code) which works on values of multiple types. (This doesn't appear in the MVT time frame, but will show up I think with enhanced generics.) I think we want to keep open the option that the IR can work with either buffered values (machine addresses to managed blocks) or bundles of registers containing plain values. Do we ever need both? Maybe not, but it's hard to say. I think it is reasonable to assume that we need something like what we have with the processing of compressed oops: There is IR for both encoded (compressed uint32) and decoded (uncompressed, natural intptr_t) oops. I think our IR tends to work with the decoded versions, but there are special post-passes which note when a decoded version is not needed, because it is simply the decoding of an encoded oop which is subsequently re-encoded. (I.e., graph which is E(D(E(x)) is simplified to E(x), removing real instructions.) Perhaps parallel logic can convert B(U(B(v)), where a value B(v) that is never unbuffered (U(B(v))) except to rebuffer it is never unbuffered in the first place. But all other values can be routinely unbuffered, at least as soon as we have a static type. In the future we may see code which *mandates* a mix of buffered and unbuffered values: int f(Q-Object x) { if (x intanceof IntPair) { return ((Q-IntPair)x).fst; } else return 0; } As soon as you know that x is an Q-IntPair you can (and should) treat it as a plain value. But before that point it must stay buffered. A final point: I think it is reasonable to un-pin *all* buffer allocation sites. Object allocation sites, must execute in a semi-predictable order, to preserve identity semantics that depend partially on some aspects of ordering. (Specifically, if you allocate twice, you can't reorder that by merging the allocations even if they contain the same components.) I think this is the main reason we have to pin object allocations. In any case, the case of buffer allocations is completely different. The only reason we have to pin a buffer allocation is that it might trigger a GC, which might in turn trigger a deoptimization of the blocked frame (stuff happens), which in turn requires a complete JVM state for that frame, which in turn requires control flow. (C2 can't float allocations like Graal does.) What a pain! There is a way to ease the burden on buffers: Define an IR node that creates a new buffer out of "thin air", without a control flow edge. Use this node at exit points and/or to aggressively break up phis of buffered values. There is a cost to this: The node is not allowed to block, and certainly not to GC. This is implementable I think, by using thread-local storage (on the C heap or stack) and maybe also by stealing from the GC's TLAB (when it works). Since we have thread-local heaps for values already, we can just allocate these JIT-created buffers on the thread-local heap. As a corner case, some pathological value types are marked as being "only in the heap". We would have to add yet another corner case, of allowing the JIT to allocate these guys on the thread local heap, just for JIT-created buffers. So, in brief: Let's look at giving the JIT a non-blocking hook for allocating a thread-local buffer. And teach the JIT to move these buffering operations around to the exits only. This will be a win if the JIT-created buffers are more flexible to use by the JIT than the buffers given by the interpreter, and than pure heap-based buffers. The runtime needs to accept these JIT-allocated buffers as return values and state values after deoptimization. Anyway, that's the way things look to me, from a certain distance. Comments? Corrections? ? John From frederic.parain at oracle.com Wed Jul 5 20:43:52 2017 From: frederic.parain at oracle.com (Frederic Parain) Date: Wed, 5 Jul 2017 16:43:52 -0400 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: References: Message-ID: <2B3CB1F2-EEA4-4CDB-939A-DA329EEA83DC@oracle.com> John, Just some precisions about the thread-local buffer used by the interpreter: - allocations in the thread-local buffer are not guaranteed to succeed, and the fall-back is to allocate in the Java heap - currently, thread local memory recycling is performed on frame deactivation and sometimes on back branches (based on counters), but not on failed allocation (this is something I might have to change) - values handled by the interpreter are not always buffered, if a value exists as a standalone value in the Java heap (static field, non-flatten field or array), the interpreter uses it directly instead of creating a buffered copy. This current behavior could cause issues with the usage you've described below, for instance using the thread-local buffer to avoid Java heap allocations (and by consequence GC safepoints). Some modifications are possible to ease the JIT?s work, but some don?t look feasible, like to guaranteed allocation. Having more input about JIT requirements would be useful to tweak the thread-local buffering. Regards, Fred > On Jul 5, 2017, at 15:31, John Rose wrote: > > TL;DR I think we need non-blocking value buffers in the JIT. > > This morning we discussed some details of removing buffers from optimized code. > The problem is that the interpreter generates buffers for values (so it can treat them > uniformly) but the JIT wants to disregard them in order to optimize fully. To do this, > the JIT has to (more or less routinely) unpack the actual values from the interpreter > buffers. It's important to do this in order to do value numbering optimizations on > the values themselves, rather than on the addresses of the buffers that the interpreter > assigns to carry the values. (One value can be carried by several buffers.) > > This manifests in the IR as parallel sets of IR nodes. Some are buffer addresses, > artifacts of the interpreter's decisions about buffering, and some nodes represent > unbuffered values (plain values, values per se), which can be register allocated, > spilled to the stack, passed as spread arguments, etc. Let's call these two sets > "buffered values" and "plain values". They have different types in the IR, and > allocate to different sorts of registers. (A plain value allocates in general to a > tuple of registers.) > > If there is control flow in the IR, then the phi nodes which carry control flow > dependencies of value types are cloned into separate phis, some for buffered > values, and some for plain values. The basic requirement for the the optimizer > is that the buffered value phis never get in the way of optimization. Specifically, > even if the interpreter constructs a new buffer each time through a hot loop, > the JIT must be free to discard the phis which represent that buffer. > > There are edge cases where buffers are still needed. AFAIK, the only important > edge cases are "exits" from the optimized code, either returns or deoptimizations. > In those cases, an outgoing value will need to be put into a buffer so that the > interpreter can receive it, either as a return value or as part of a JVM state > loaded into an interpreter frame that is the product of a deoptimization event. > > All this is almost exactly the same as the techniques we already use to > scalarize non-escaping POJOs. The POJOs are reconstructed as true > heap objects in the case of (some) deoptimizations; this is implemented > by a special kind of value specifier which guides the deopt. transition code > to create the POJOs from scattered components, as JVM interpreter frames > are populated. > > A key difference between the existing EA framework and the new mechanisms > is that our existing infrastructure is very conservative about tracking the identity > of references. This makes it hard to just throw away the phis that carry the > object references, even if we have a full model of the object components in > a parallel set of phis. > > I think a good first move for adapting our existing IR framework to the task of > buffer elimination is to aggressively "split" buffers (just as we currently "split" > live ranges) at all points where it makes it easier for us to cut away IR nodes > that only do buffer tracking. This starts with exit points: Value returns, and > debug info about JVM states containing values. But perhaps every phi that > carries a buffer should also be split, carrying a virtual buffer-copying operation. > This latter move would make buffer-carrying phis to immediately go dead, > since each (virtual) buffer-copying operation would just pick up the value > components from the corresponding value-tracking phis. > > It might seem that a better long-term move for adapting our IR framework > would be to refuse to translate interpreter buffering operations into JIT IR, > and aggressively work *only* with components. The advantage would be > that buffering would appear in the IR only as an edge effect: Components > are loaded from buffers on entry to the graph and are dumped into buffers > (new ones, or maybe caller-specified ones?) on exit from the graph; the > debug info case would encode this "dumping" in symbolic form, not executable. > > This strategy for never buffering will fail in some cases, notably for partially > optimized code (first-tier, profiling code) which works on values of multiple > types. (This doesn't appear in the MVT time frame, but will show up I think > with enhanced generics.) I think we want to keep open the option that the > IR can work with either buffered values (machine addresses to managed > blocks) or bundles of registers containing plain values. Do we ever need > both? Maybe not, but it's hard to say. > > I think it is reasonable to assume that we need something like what we > have with the processing of compressed oops: There is IR for both encoded > (compressed uint32) and decoded (uncompressed, natural intptr_t) oops. > I think our IR tends to work with the decoded versions, but there are special > post-passes which note when a decoded version is not needed, because > it is simply the decoding of an encoded oop which is subsequently re-encoded. > (I.e., graph which is E(D(E(x)) is simplified to E(x), removing real instructions.) > > Perhaps parallel logic can convert B(U(B(v)), where a value B(v) that is never > unbuffered (U(B(v))) except to rebuffer it is never unbuffered in the first place. > But all other values can be routinely unbuffered, at least as soon as we have > a static type. In the future we may see code which *mandates* a mix of buffered > and unbuffered values: > > int f(Q-Object x) { if (x intanceof IntPair) { return ((Q-IntPair)x).fst; } else return 0; } > > As soon as you know that x is an Q-IntPair you can (and should) treat it as a > plain value. But before that point it must stay buffered. > > A final point: I think it is reasonable to un-pin *all* buffer allocation sites. > Object allocation sites, must execute in a semi-predictable order, to preserve > identity semantics that depend partially on some aspects of ordering. > (Specifically, if you allocate twice, you can't reorder that by merging the > allocations even if they contain the same components.) I think this is > the main reason we have to pin object allocations. In any case, the case > of buffer allocations is completely different. The only reason we have to > pin a buffer allocation is that it might trigger a GC, which might in turn > trigger a deoptimization of the blocked frame (stuff happens), which in > turn requires a complete JVM state for that frame, which in turn requires > control flow. (C2 can't float allocations like Graal does.) What a pain! > > There is a way to ease the burden on buffers: Define an IR node that > creates a new buffer out of "thin air", without a control flow edge. > Use this node at exit points and/or to aggressively break up phis > of buffered values. There is a cost to this: The node is not allowed > to block, and certainly not to GC. This is implementable I think, by > using thread-local storage (on the C heap or stack) and maybe also > by stealing from the GC's TLAB (when it works). Since we have > thread-local heaps for values already, we can just allocate these > JIT-created buffers on the thread-local heap. As a corner case, > some pathological value types are marked as being "only in the heap". > We would have to add yet another corner case, of allowing the JIT > to allocate these guys on the thread local heap, just for JIT-created > buffers. > > So, in brief: Let's look at giving the JIT a non-blocking hook for > allocating a thread-local buffer. And teach the JIT to move these > buffering operations around to the exits only. This will be a win > if the JIT-created buffers are more flexible to use by the JIT than > the buffers given by the interpreter, and than pure heap-based > buffers. The runtime needs to accept these JIT-allocated buffers > as return values and state values after deoptimization. > > Anyway, that's the way things look to me, from a certain distance. > Comments? Corrections? > > ? John > From paul.sandoz at oracle.com Thu Jul 6 01:17:34 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Wed, 5 Jul 2017 18:17:34 -0700 Subject: JNI was Re: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: <1BBA7FDC-694E-4085-BE5F-CAAAA5D20CD9@oracle.com> References: <1BBA7FDC-694E-4085-BE5F-CAAAA5D20CD9@oracle.com> Message-ID: <6A0D431D-E238-44DA-8A56-C8E9719BB770@oracle.com> Unfortunately i still observe the same errors with ValueTypeReturnedAsFields being enabled or disabled for the identity JNI function e.g.: UNSAFE_ENTRY(jobject, Unsafe_GetValueIdentity(JNIEnv *env, jobject unsafe, jobject jvalue)) { oop value = JNIHandles::resolve(jvalue); assert(value->klass()->is_value(), "jvalue must be an value"); return jvalue; } UNSAFE_END When ValueTypeReturnedAsFields is enabled the error is: V [libjvm.dylib+0x102dcd4] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x5a4 V [libjvm.dylib+0x102e578] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x78 V [libjvm.dylib+0x699b9f] report_vm_error(char const*, int, char const*, char const*, ...)+0x19f V [libjvm.dylib+0xd4d63e] Monitor::check_prelock_state(Thread*)+0x9e V [libjvm.dylib+0xd4d28c] Monitor::lock(Thread*)+0x9c V [libjvm.dylib+0x4f07b4] MutexLocker::MutexLocker(Monitor*, Thread*)+0xb4 V [libjvm.dylib+0x4eff15] MutexLocker::MutexLocker(Monitor*, Thread*)+0x25 V [libjvm.dylib+0xf65082] SystemDictionary::add_loader_constraint(Symbol*, Handle, Handle, Thread*)+0x192 V [libjvm.dylib+0xf6540b] SystemDictionary::check_signature_loaders(Symbol*, Handle, Handle, bool, Thread*)+0xfb V [libjvm.dylib+0xb9cb7d] LinkResolver::check_method_loader_constraints(LinkInfo const&, methodHandle const&, char const*, Thread*)+0xcd V [libjvm.dylib+0xb9c0e9] LinkResolver::resolve_method(LinkInfo const&, Bytecodes::Code, Thread*)+0x649 V [libjvm.dylib+0xb9ba05] LinkResolver::resolve_method_statically(Bytecodes::Code, constantPoolHandle const&, int, Thread*)+0x2d5 V [libjvm.dylib+0x37497d] Bytecode_invoke::static_target(Thread*)+0x7d V [libjvm.dylib+0xeb3a28] SharedRuntime::store_value_type_fields_to_buf(JavaThread*, long)+0x218 v ~RuntimeStub::store_value_type_fields_to_buf j runtime.valhalla.valuetypes.UnsafeTest.main([Ljava/lang/String;)V+30 When ValueTypeReturnedAsFields is disabled a null value is returned. I tried detecting whether the value oop is in the heap with: Universe::heap()->is_in_reserved(value) and reallocating but it made no difference. I also started debugging HS but i don?t understand enough about how the template interpreter works to ?interpret? the behaviour and track operations on the returned object. There is something asymmetric about the handling of jobject value arguments and jobject value return. Further more, does the creation of a jobject from a value oop require that the value be allocated on the heap? I think so otherwise i get failures for assertions such as: assert(Universe::heap()->is_in_reserved(obj), "sanity check"); Paul. > On 5 Jul 2017, at 10:51, Paul Sandoz wrote: > > >> On 5 Jul 2017, at 00:33, Roland Westrelin wrote: >> >> >> http://cr.openjdk.java.net/~roland/valhalla/vreturn-improv/webrev.00/ >> >> This patch: >> >> - reworks the verification logic in >> SharedRuntime::store_value_type_fields_to_buf() to address the crash >> that Paul encountered >> > > Thanks. I will verify this week when i update the Unsafe methods to be in sync with Fred?s latest changes. > > Paul. > >> - changes the vreturn convention so if we return the klass pointer + >> fields, the klass pointer is tagged by setting its least significant >> bit. This way it's cheaper for the caller to detect if it's getting an >> oop, a buffered value or a list of fields back from the callee. (this >> is based on a discussion with Fred) >> >> - stores precomputed extended signature and vreturn registers in the >> ValueKlass to not have to compute them every time they are >> needed. This is also something Fred suggested. I considered >> initializaing those fields on first use but came to the conclusion it >> would make things too complicated. For instance the vreturn registers >> are sometimes use at a point where the thread can't safepoint making >> it impossible to use a metadata Array. >> >> Roland. > From tobias.hartmann at oracle.com Thu Jul 6 08:54:03 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 6 Jul 2017 10:54:03 +0200 Subject: RFR: 8182997: [MVT] ValueTypeArray.java fails with "assert(false) failed: unexpected TypeAryPtr::_klass" In-Reply-To: References: Message-ID: <7691daa0-ea2e-0c6a-29c1-e6488e45cdfc@oracle.com> Hi Roland, On 05.07.2017 14:47, Roland Westrelin wrote: > http://cr.openjdk.java.net/~roland/8182997/webrev.00/ > > When a value class is unloaded, a ciInstanceKlass is created. When an > array of value class is unloaded, a ciObjArrayKlass is created. In this > case, [QMyValue; is unloaded. When TypeAryPtr::compute_klass() is called > for that array, it creates a ciObjArrayKlass with symbol [LMyValue; > because it has no way to tell the array of an unloaded instance class is > an array of values. The mismatch with [QMyValue; causes the assert > failure. > > Ideally, we would not create a ciInstanceKlass for an unloaded value > class but a ciValueKlass. The problem is that it's not always possible > to tell if an unloaded class is an instance or not. Could you elaborate on why it's not always possible to determine if the unloaded class is a value type klass? Shouldn't we be able to determine this from the name? Thanks, Tobias > The fix I'm > proposing rewrites the signature of the unloaded array from [QMyValue; > to [LMyValue;. It's quite ugly but I don't see a better fix. > > Roland. > From rwestrel at redhat.com Thu Jul 6 08:59:38 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jul 2017 10:59:38 +0200 Subject: RFR: 8182997: [MVT] ValueTypeArray.java fails with "assert(false) failed: unexpected TypeAryPtr::_klass" In-Reply-To: <7691daa0-ea2e-0c6a-29c1-e6488e45cdfc@oracle.com> References: <7691daa0-ea2e-0c6a-29c1-e6488e45cdfc@oracle.com> Message-ID: > Could you elaborate on why it's not always possible to determine if > the unloaded class is a value type klass? Shouldn't we be able to > determine this from the name? AFAICT, for instance, if the byte code is anewarray, the symbol that's referenced doesn't include Q and so if it's unloaded we can't tell if it's an instance or a value class. Roland. From tobias.hartmann at oracle.com Thu Jul 6 09:24:25 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 6 Jul 2017 11:24:25 +0200 Subject: RFR: 8182997: [MVT] ValueTypeArray.java fails with "assert(false) failed: unexpected TypeAryPtr::_klass" In-Reply-To: References: <7691daa0-ea2e-0c6a-29c1-e6488e45cdfc@oracle.com> Message-ID: Hi Roland, On 06.07.2017 10:59, Roland Westrelin wrote: >> Could you elaborate on why it's not always possible to determine if >> the unloaded class is a value type klass? Shouldn't we be able to >> determine this from the name? > > AFAICT, for instance, if the byte code is anewarray, the symbol that's > referenced doesn't include Q and so if it's unloaded we can't tell if > it's an instance or a value class. Okay, that's unfortunate. I'm fine with the changes but maybe you could guard the symbol scanning code by ValueArrayFlatten or EnableValhalla/EnableMVT. Thanks, Tobias From rwestrel at redhat.com Thu Jul 6 09:30:42 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jul 2017 11:30:42 +0200 Subject: bug in "8183130: [MVT] Implement intrinsics for Q-typed LambdaForms"? Message-ID: The simple test below passes with the revision right before 8183130 and fails (detects incorrect result) with 8183130. It passes again if I change: vt.verify(test94_bool ? test94_vt1 : test94_vt2); to: vt.verify(test94_bool ? test94_vt2 : test94_vt1); which is obviously incorrect. Roland. diff --git a/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java b/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java --- a/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java +++ b/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java @@ -2422,6 +2422,14 @@ MethodType test86_mt = MethodType.fromMethodDescriptorString("(Qcompiler/valhalla/valuetypes/MyValue1;)I", ValueTypeTestBench.class.getClassLoader()); test86_mh = lookup.findVirtual(ValueTypeTestBench.class, "test86_target", test86_mt); + + MethodType test94_mt = MethodType.fromMethodDescriptorString("()Qcompiler/valhalla/valuetypes/MyValue3;", ValueTypeTestBench.class.getClassLoader()); + MethodHandle test94_mh1 = lookup.findVirtual(ValueTypeTestBench.class, "test94_target1", test94_mt); + MethodHandle test94_mh2 = lookup.findVirtual(ValueTypeTestBench.class, "test94_target2", test94_mt); + MethodType test94_mt2 = MethodType.methodType(boolean.class); + MethodHandle test94_mh_test = lookup.findVirtual(ValueTypeTestBench.class, "test94_test", test94_mt2); + test94_mh = MethodHandles.guardWithTest(test94_mh_test, test94_mh1, test94_mh2); + } catch (NoSuchMethodException|IllegalAccessException e) { throw new RuntimeException("method handle lookup fails"); } @@ -2605,6 +2613,40 @@ Asserts.assertEQ(result, 0L); } + // method handle combinators + final MyValue3 test94_vt1 = MyValue3.create(); + @ForceInline + MyValue3 test94_target1() { + return test94_vt1; + } + + final MyValue3 test94_vt2 = MyValue3.create(); + @ForceInline + MyValue3 test94_target2() { + return test94_vt2; + } + + boolean test94_bool = true; + @ForceInline + boolean test94_test() { + return test94_bool; + } + + static final MethodHandle test94_mh; + + @Test + MyValue3 test94() throws Throwable { + return (MyValue3)test94_mh.invokeExact(this); + } + + @DontCompile + public void test94_verifier(boolean warmup) throws Throwable { + test94_bool = !test94_bool; + MyValue3 vt = test94(); + vt.verify(test94_bool ? test94_vt1 : test94_vt2); + } + + // ========== Test infrastructure ========== private static final WhiteBox WHITE_BOX = WhiteBox.getWhiteBox(); @@ -2679,7 +2721,7 @@ } public static void main(String[] args) throws Throwable { - //tests.values().removeIf(p -> !p.getName().equals("test85")); // Run single test + tests.values().removeIf(p -> !p.getName().equals("test94")); // Run single test if (args.length == 0) { execute_vm("-XX:+IgnoreUnrecognizedVMOptions", "-XX:-BackgroundCompilation", "-XX:+PrintCompilation", "-XX:+PrintInlining", "-XX:+PrintIdeal", "-XX:+PrintOptoAssembly", From tobias.hartmann at oracle.com Thu Jul 6 09:37:22 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 6 Jul 2017 11:37:22 +0200 Subject: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: References: Message-ID: <660627b5-a577-6ca0-7ebb-476652c8aba1@oracle.com> Hi Roland, this looks good to me! One minor suggestion: I would prefer to use mask macros to make the "& 1" and "& ~1L" operations more explicit. Best regards, Tobias On 05.07.2017 09:33, Roland Westrelin wrote: > > http://cr.openjdk.java.net/~roland/valhalla/vreturn-improv/webrev.00/ > > This patch: > > - reworks the verification logic in > SharedRuntime::store_value_type_fields_to_buf() to address the crash > that Paul encountered > > - changes the vreturn convention so if we return the klass pointer + > fields, the klass pointer is tagged by setting its least significant > bit. This way it's cheaper for the caller to detect if it's getting an > oop, a buffered value or a list of fields back from the callee. (this > is based on a discussion with Fred) > > - stores precomputed extended signature and vreturn registers in the > ValueKlass to not have to compute them every time they are > needed. This is also something Fred suggested. I considered > initializaing those fields on first use but came to the conclusion it > would make things too complicated. For instance the vreturn registers > are sometimes use at a point where the thread can't safepoint making > it impossible to use a metadata Array. > > Roland. > From maurizio.cimadamore at oracle.com Thu Jul 6 09:45:58 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 10:45:58 +0100 Subject: bug in "8183130: [MVT] Implement intrinsics for Q-typed LambdaForms"? In-Reply-To: References: Message-ID: <7ec66afc-df01-22d3-1159-45d56986d4cb@oracle.com> I'll take a look Maurizio On 06/07/17 10:30, Roland Westrelin wrote: > The simple test below passes with the revision right before 8183130 and > fails (detects incorrect result) with 8183130. It passes again if I > change: > > vt.verify(test94_bool ? test94_vt1 : test94_vt2); > > to: > > vt.verify(test94_bool ? test94_vt2 : test94_vt1); > > which is obviously incorrect. > > Roland. > > diff --git a/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java b/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java > --- a/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java > +++ b/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java > @@ -2422,6 +2422,14 @@ > > MethodType test86_mt = MethodType.fromMethodDescriptorString("(Qcompiler/valhalla/valuetypes/MyValue1;)I", ValueTypeTestBench.class.getClassLoader()); > test86_mh = lookup.findVirtual(ValueTypeTestBench.class, "test86_target", test86_mt); > + > + MethodType test94_mt = MethodType.fromMethodDescriptorString("()Qcompiler/valhalla/valuetypes/MyValue3;", ValueTypeTestBench.class.getClassLoader()); > + MethodHandle test94_mh1 = lookup.findVirtual(ValueTypeTestBench.class, "test94_target1", test94_mt); > + MethodHandle test94_mh2 = lookup.findVirtual(ValueTypeTestBench.class, "test94_target2", test94_mt); > + MethodType test94_mt2 = MethodType.methodType(boolean.class); > + MethodHandle test94_mh_test = lookup.findVirtual(ValueTypeTestBench.class, "test94_test", test94_mt2); > + test94_mh = MethodHandles.guardWithTest(test94_mh_test, test94_mh1, test94_mh2); > + > } catch (NoSuchMethodException|IllegalAccessException e) { > throw new RuntimeException("method handle lookup fails"); > } > @@ -2605,6 +2613,40 @@ > Asserts.assertEQ(result, 0L); > } > > + // method handle combinators > + final MyValue3 test94_vt1 = MyValue3.create(); > + @ForceInline > + MyValue3 test94_target1() { > + return test94_vt1; > + } > + > + final MyValue3 test94_vt2 = MyValue3.create(); > + @ForceInline > + MyValue3 test94_target2() { > + return test94_vt2; > + } > + > + boolean test94_bool = true; > + @ForceInline > + boolean test94_test() { > + return test94_bool; > + } > + > + static final MethodHandle test94_mh; > + > + @Test > + MyValue3 test94() throws Throwable { > + return (MyValue3)test94_mh.invokeExact(this); > + } > + > + @DontCompile > + public void test94_verifier(boolean warmup) throws Throwable { > + test94_bool = !test94_bool; > + MyValue3 vt = test94(); > + vt.verify(test94_bool ? test94_vt1 : test94_vt2); > + } > + > + > // ========== Test infrastructure ========== > > private static final WhiteBox WHITE_BOX = WhiteBox.getWhiteBox(); > @@ -2679,7 +2721,7 @@ > } > > public static void main(String[] args) throws Throwable { > - //tests.values().removeIf(p -> !p.getName().equals("test85")); // Run single test > + tests.values().removeIf(p -> !p.getName().equals("test94")); // Run single test > if (args.length == 0) { > execute_vm("-XX:+IgnoreUnrecognizedVMOptions", "-XX:-BackgroundCompilation", > "-XX:+PrintCompilation", "-XX:+PrintInlining", "-XX:+PrintIdeal", "-XX:+PrintOptoAssembly", From vladimir.x.ivanov at oracle.com Thu Jul 6 11:52:03 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Thu, 6 Jul 2017 14:52:03 +0300 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: References: Message-ID: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> I hope Roland & Tobias will chime in, but I'll try to comment based on my limited understanding and brief explorations of MVT I did so far. Short summary: I believe that special representation of buffered values in C2 IR and aggressive "rebuffering" during parsing should be enough to provide reliable elimination of temporal buffer allocation for MVT purposes. First, I'd separate non-blocking allocation of value buffers and buffer allocation representation in JIT IR. I believe that proper representation should be enough to solve the task of temporal allocation elimination. Absence of non-blocking buffer allocation complicates the task, but doesn't block the solution. IMO the missing piece right now is special representation for buffered values of ValueTypePtr type in C2 IR. Taking into account that it's hard to add allocations on demand (since JVM state is required) and multi-step nature of inlining process (late inlining of method handles, see Parse::do_call() [1]), C2 does conservative buffer allocations during parsing (see ). Unfortunately, current representation doesn't differ from ordinary object allocations (see ValueTypeNode::allocate() [2]). So, in the end, the problem of buffer elimination quickly (& very early) transforms into elimination of ordinary object allocations. Though the information that it's a VT buffer isn't completely lost (the type is still there), (1) it's hard to use it and (2) buffers can leak (e.g., into debug info), which complicates EA. There's one crucial simplifying assumption about __Value usages in LFs we can make: lambda forms don't merge VT pointers of different types. So, it's either merge of opaque value buffer pointers (PHI __Value* ... __Value* #__Value*) (when compiling stand-alone lambda forms) or merging concrete VTs of the same type (PHI VT1* ... VT1* #VT1*) (when inlining through method handle chains). In other words, merges of 2 concrete VTs of different types (PHI VT1* ... VT2* #__Value*) doesn't happen in practice. How could actual representation look like? For example, ValueTypeNode::allocate() can wrap the allocated buffer in new kind of node (ValueTypePtrNode): VTP == ValueTypePtrNode # in: (buffer, f1, ..., fn), type: VT* It mimics ValueTypeNode, but has a different type: VT == ValueTypeNode # in: (buffer, f1, ..., fn), type: VT New representation should significantly simplify transformations on buffers and, considering the simplifying assumption, should match the level optimizations of concrete VT types: * load a field Load fi (VTP ... vfi ... #VT1*) => vfi * merging VTs through phi PHI (VTP1 ... VTPi) #VT1* => VTP (PHI (buf1 ... bufi) ... PHI (vfn1 ... vfni)) #VT1* * rematerialization at safepoints SafePoint ( ... VTP (_ vf1 ... vfi) #VT1* ...) => SafePoint ( ... SafePointScalarObjectNode (VT1 vf1 ... vfi) ... ) * rebuffering VTP (old_buf vfn1 ... vfni) #VT1* => VTP (new_buf vfn1 ... vfni) where new_buf = CheckCastPP #VT1* alloc alloc = Allocate (VT1) init = Initialize (alloc vfn1...vfni) * redundant buffer allocation elimination (VTP buf ... => VTP TOP ...) + subsequent EA pass With aggressive "rebuffering" (or buffer "splitting", as you called it), I believe we can get decent & reliable results optimizing away redundant buffer allocations even without non-blocking buffer allocations and ability to move allocations around. Best regards, Vladimir Ivanov [1] http://hg.openjdk.java.net/valhalla/valhalla/hotspot/file/afb92975d64c/src/share/vm/opto/doCall.cpp#l673 [2] http://hg.openjdk.java.net/valhalla/valhalla/hotspot/file/afb92975d64c/src/share/vm/opto/valuetypenode.cpp#l206 On 7/5/17 10:31 PM, John Rose wrote: > TL;DR I think we need non-blocking value buffers in the JIT. > > This morning we discussed some details of removing buffers from optimized code. > The problem is that the interpreter generates buffers for values (so it can treat them > uniformly) but the JIT wants to disregard them in order to optimize fully. To do this, > the JIT has to (more or less routinely) unpack the actual values from the interpreter > buffers. It's important to do this in order to do value numbering optimizations on > the values themselves, rather than on the addresses of the buffers that the interpreter > assigns to carry the values. (One value can be carried by several buffers.) > > This manifests in the IR as parallel sets of IR nodes. Some are buffer addresses, > artifacts of the interpreter's decisions about buffering, and some nodes represent > unbuffered values (plain values, values per se), which can be register allocated, > spilled to the stack, passed as spread arguments, etc. Let's call these two sets > "buffered values" and "plain values". They have different types in the IR, and > allocate to different sorts of registers. (A plain value allocates in general to a > tuple of registers.) > > If there is control flow in the IR, then the phi nodes which carry control flow > dependencies of value types are cloned into separate phis, some for buffered > values, and some for plain values. The basic requirement for the the optimizer > is that the buffered value phis never get in the way of optimization. Specifically, > even if the interpreter constructs a new buffer each time through a hot loop, > the JIT must be free to discard the phis which represent that buffer. > > There are edge cases where buffers are still needed. AFAIK, the only important > edge cases are "exits" from the optimized code, either returns or deoptimizations. > In those cases, an outgoing value will need to be put into a buffer so that the > interpreter can receive it, either as a return value or as part of a JVM state > loaded into an interpreter frame that is the product of a deoptimization event. > > All this is almost exactly the same as the techniques we already use to > scalarize non-escaping POJOs. The POJOs are reconstructed as true > heap objects in the case of (some) deoptimizations; this is implemented > by a special kind of value specifier which guides the deopt. transition code > to create the POJOs from scattered components, as JVM interpreter frames > are populated. > > A key difference between the existing EA framework and the new mechanisms > is that our existing infrastructure is very conservative about tracking the identity > of references. This makes it hard to just throw away the phis that carry the > object references, even if we have a full model of the object components in > a parallel set of phis. > > I think a good first move for adapting our existing IR framework to the task of > buffer elimination is to aggressively "split" buffers (just as we currently "split" > live ranges) at all points where it makes it easier for us to cut away IR nodes > that only do buffer tracking. This starts with exit points: Value returns, and > debug info about JVM states containing values. But perhaps every phi that > carries a buffer should also be split, carrying a virtual buffer-copying operation. > This latter move would make buffer-carrying phis to immediately go dead, > since each (virtual) buffer-copying operation would just pick up the value > components from the corresponding value-tracking phis. > > It might seem that a better long-term move for adapting our IR framework > would be to refuse to translate interpreter buffering operations into JIT IR, > and aggressively work *only* with components. The advantage would be > that buffering would appear in the IR only as an edge effect: Components > are loaded from buffers on entry to the graph and are dumped into buffers > (new ones, or maybe caller-specified ones?) on exit from the graph; the > debug info case would encode this "dumping" in symbolic form, not executable. > > This strategy for never buffering will fail in some cases, notably for partially > optimized code (first-tier, profiling code) which works on values of multiple > types. (This doesn't appear in the MVT time frame, but will show up I think > with enhanced generics.) I think we want to keep open the option that the > IR can work with either buffered values (machine addresses to managed > blocks) or bundles of registers containing plain values. Do we ever need > both? Maybe not, but it's hard to say. > > I think it is reasonable to assume that we need something like what we > have with the processing of compressed oops: There is IR for both encoded > (compressed uint32) and decoded (uncompressed, natural intptr_t) oops. > I think our IR tends to work with the decoded versions, but there are special > post-passes which note when a decoded version is not needed, because > it is simply the decoding of an encoded oop which is subsequently re-encoded. > (I.e., graph which is E(D(E(x)) is simplified to E(x), removing real instructions.) > > Perhaps parallel logic can convert B(U(B(v)), where a value B(v) that is never > unbuffered (U(B(v))) except to rebuffer it is never unbuffered in the first place. > But all other values can be routinely unbuffered, at least as soon as we have > a static type. In the future we may see code which *mandates* a mix of buffered > and unbuffered values: > > int f(Q-Object x) { if (x intanceof IntPair) { return ((Q-IntPair)x).fst; } else return 0; } > > As soon as you know that x is an Q-IntPair you can (and should) treat it as a > plain value. But before that point it must stay buffered. > > A final point: I think it is reasonable to un-pin *all* buffer allocation sites. > Object allocation sites, must execute in a semi-predictable order, to preserve > identity semantics that depend partially on some aspects of ordering. > (Specifically, if you allocate twice, you can't reorder that by merging the > allocations even if they contain the same components.) I think this is > the main reason we have to pin object allocations. In any case, the case > of buffer allocations is completely different. The only reason we have to > pin a buffer allocation is that it might trigger a GC, which might in turn > trigger a deoptimization of the blocked frame (stuff happens), which in > turn requires a complete JVM state for that frame, which in turn requires > control flow. (C2 can't float allocations like Graal does.) What a pain! > > There is a way to ease the burden on buffers: Define an IR node that > creates a new buffer out of "thin air", without a control flow edge. > Use this node at exit points and/or to aggressively break up phis > of buffered values. There is a cost to this: The node is not allowed > to block, and certainly not to GC. This is implementable I think, by > using thread-local storage (on the C heap or stack) and maybe also > by stealing from the GC's TLAB (when it works). Since we have > thread-local heaps for values already, we can just allocate these > JIT-created buffers on the thread-local heap. As a corner case, > some pathological value types are marked as being "only in the heap". > We would have to add yet another corner case, of allowing the JIT > to allocate these guys on the thread local heap, just for JIT-created > buffers. > > So, in brief: Let's look at giving the JIT a non-blocking hook for > allocating a thread-local buffer. And teach the JIT to move these > buffering operations around to the exits only. This will be a win > if the JIT-created buffers are more flexible to use by the JIT than > the buffers given by the interpreter, and than pure heap-based > buffers. The runtime needs to accept these JIT-allocated buffers > as return values and state values after deoptimization. > > Anyway, that's the way things look to me, from a certain distance. > Comments? Corrections? > > ? John > From maurizio.cimadamore at oracle.com Thu Jul 6 11:53:43 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 12:53:43 +0100 Subject: RFR 8183929: [MVT] Bad intrinsic for guard with test causes wrong behavior Message-ID: <3e990710-6649-33ad-d44c-233a38ec1ae7@oracle.com> This is a fix for the bug discovered by Roland. There's a bad conditional jump being generated by the selectAlternative intrinsic - the patch I pushed yesterday did a 'ifne fallback' while InvokeBytecodeGenerator does a 'ifeq fallback'. This mistake was probably caused by a bug in the IBG comment next to the intrinsic ASM line. I've also added the Point library I'm using for testing these days. There's a very basic Point class with fields 'x' and 'y' with a 'norm' method. I have tests for: * creating a factory of Point * compute the norm of a Point * compute total norm of an array of Points For each of these checks, the test has both the bytecode version (with MethodHandleBuilder) and the pure MH version (through combinators). The test checks that both results conform to what is expected (e.g. some operation on the boxed class). I've added a final test for the guardWithTest example which was indeed failing before this fix. http://cr.openjdk.java.net/~mcimadamore/8183929/ Cheers Maurizio From maurizio.cimadamore at oracle.com Thu Jul 6 11:54:16 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 12:54:16 +0100 Subject: bug in "8183130: [MVT] Implement intrinsics for Q-typed LambdaForms"? In-Reply-To: <7ec66afc-df01-22d3-1159-45d56986d4cb@oracle.com> References: <7ec66afc-df01-22d3-1159-45d56986d4cb@oracle.com> Message-ID: <5387f9cc-68b1-a254-ac3e-a5ef193b08f5@oracle.com> I've been able to reproduce and fix - see RFR for JDK-8183929 Cheers Maurizio On 06/07/17 10:45, Maurizio Cimadamore wrote: > I'll take a look > > Maurizio > > > On 06/07/17 10:30, Roland Westrelin wrote: >> The simple test below passes with the revision right before 8183130 and >> fails (detects incorrect result) with 8183130. It passes again if I >> change: >> >> vt.verify(test94_bool ? test94_vt1 : test94_vt2); >> >> to: >> >> vt.verify(test94_bool ? test94_vt2 : test94_vt1); >> >> which is obviously incorrect. >> >> Roland. >> >> diff --git >> a/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java >> b/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java >> --- a/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java >> +++ b/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java >> @@ -2422,6 +2422,14 @@ >> MethodType test86_mt = >> MethodType.fromMethodDescriptorString("(Qcompiler/valhalla/valuetypes/MyValue1;)I", >> ValueTypeTestBench.class.getClassLoader()); >> test86_mh = >> lookup.findVirtual(ValueTypeTestBench.class, "test86_target", >> test86_mt); >> + >> + MethodType test94_mt = >> MethodType.fromMethodDescriptorString("()Qcompiler/valhalla/valuetypes/MyValue3;", >> ValueTypeTestBench.class.getClassLoader()); >> + MethodHandle test94_mh1 = >> lookup.findVirtual(ValueTypeTestBench.class, "test94_target1", >> test94_mt); >> + MethodHandle test94_mh2 = >> lookup.findVirtual(ValueTypeTestBench.class, "test94_target2", >> test94_mt); >> + MethodType test94_mt2 = >> MethodType.methodType(boolean.class); >> + MethodHandle test94_mh_test = >> lookup.findVirtual(ValueTypeTestBench.class, "test94_test", test94_mt2); >> + test94_mh = MethodHandles.guardWithTest(test94_mh_test, >> test94_mh1, test94_mh2); >> + >> } catch (NoSuchMethodException|IllegalAccessException e) { >> throw new RuntimeException("method handle lookup fails"); >> } >> @@ -2605,6 +2613,40 @@ >> Asserts.assertEQ(result, 0L); >> } >> + // method handle combinators >> + final MyValue3 test94_vt1 = MyValue3.create(); >> + @ForceInline >> + MyValue3 test94_target1() { >> + return test94_vt1; >> + } >> + >> + final MyValue3 test94_vt2 = MyValue3.create(); >> + @ForceInline >> + MyValue3 test94_target2() { >> + return test94_vt2; >> + } >> + >> + boolean test94_bool = true; >> + @ForceInline >> + boolean test94_test() { >> + return test94_bool; >> + } >> + >> + static final MethodHandle test94_mh; >> + >> + @Test >> + MyValue3 test94() throws Throwable { >> + return (MyValue3)test94_mh.invokeExact(this); >> + } >> + >> + @DontCompile >> + public void test94_verifier(boolean warmup) throws Throwable { >> + test94_bool = !test94_bool; >> + MyValue3 vt = test94(); >> + vt.verify(test94_bool ? test94_vt1 : test94_vt2); >> + } >> + >> + >> // ========== Test infrastructure ========== >> private static final WhiteBox WHITE_BOX = >> WhiteBox.getWhiteBox(); >> @@ -2679,7 +2721,7 @@ >> } >> public static void main(String[] args) throws Throwable { >> - //tests.values().removeIf(p -> >> !p.getName().equals("test85")); // Run single test >> + tests.values().removeIf(p -> !p.getName().equals("test94")); >> // Run single test >> if (args.length == 0) { >> execute_vm("-XX:+IgnoreUnrecognizedVMOptions", >> "-XX:-BackgroundCompilation", >> "-XX:+PrintCompilation", "-XX:+PrintInlining", >> "-XX:+PrintIdeal", "-XX:+PrintOptoAssembly", > From rwestrel at redhat.com Thu Jul 6 11:57:46 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jul 2017 13:57:46 +0200 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> References: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> Message-ID: > For example, ValueTypeNode::allocate() can wrap the allocated buffer in > new kind of node (ValueTypePtrNode): > > VTP == ValueTypePtrNode # in: (buffer, f1, ..., fn), type: VT* > > It mimics ValueTypeNode, but has a different type: > > VT == ValueTypeNode # in: (buffer, f1, ..., fn), type: VT Looks like we came to the same conclusion. I'm in the process of implementing the ValueTypePtrNode that you describe. Works well with a guard with test simple test. Doesn't eliminate the allocations in your test yet. Roland. From vladimir.x.ivanov at oracle.com Thu Jul 6 12:10:15 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Thu, 6 Jul 2017 15:10:15 +0300 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: References: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> Message-ID: <4fb154d1-002d-8af0-059c-ad67a4b20a50@oracle.com> On 7/6/17 2:57 PM, Roland Westrelin wrote: > >> For example, ValueTypeNode::allocate() can wrap the allocated buffer in >> new kind of node (ValueTypePtrNode): >> >> VTP == ValueTypePtrNode # in: (buffer, f1, ..., fn), type: VT* >> >> It mimics ValueTypeNode, but has a different type: >> >> VT == ValueTypeNode # in: (buffer, f1, ..., fn), type: VT > > Looks like we came to the same conclusion. I'm in the process of > implementing the ValueTypePtrNode that you describe. Works well with a Awesome! Thanks a lot for prompt experiments! > guard with test simple test. Doesn't eliminate the allocations in your > test yet. By looking at IR for VectorTest::sunArrayL2 I came to the conclusion that 2 steps should be enough to eliminate remaining allocations there: (1) merge through phi; (2) rematerialization (at uncommon trap) Best regards, Vladimir Ivanov From maurizio.cimadamore at oracle.com Thu Jul 6 12:23:51 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 13:23:51 +0100 Subject: RFR 8183924: [MVT] -Djava.lang.invoke.MethodHandle.DUMP_CLASS_FILES=true fails to dump DVT Message-ID: <17d3d8b6-096a-d9be-72e7-9f3a8474fda6@oracle.com> Hi, this is a simple fix for an issue in DUMP_CLASS_FILES support - if the DVT is generated inside a package, the support fails to create the required dirs, causing an error. http://cr.openjdk.java.net/~mcimadamore/8183924/ Cheers Maurizio From vladimir.x.ivanov at oracle.com Thu Jul 6 12:40:44 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Thu, 6 Jul 2017 15:40:44 +0300 Subject: RFR 8183929: [MVT] Bad intrinsic for guard with test causes wrong behavior In-Reply-To: <3e990710-6649-33ad-d44c-233a38ec1ae7@oracle.com> References: <3e990710-6649-33ad-d44c-233a38ec1ae7@oracle.com> Message-ID: <016bfc13-727d-76a1-5fb0-60e27c18a6f2@oracle.com> Looks good. Best regards, Vladimir Ivanov On 7/6/17 2:53 PM, Maurizio Cimadamore wrote: > This is a fix for the bug discovered by Roland. There's a bad > conditional jump being generated by the selectAlternative intrinsic - > the patch I pushed yesterday did a 'ifne fallback' while > InvokeBytecodeGenerator does a 'ifeq fallback'. This mistake was > probably caused by a bug in the IBG comment next to the intrinsic ASM line. > > I've also added the Point library I'm using for testing these days. > There's a very basic Point class with fields 'x' and 'y' with a 'norm' > method. I have tests for: > > * creating a factory of Point > * compute the norm of a Point > * compute total norm of an array of Points > > For each of these checks, the test has both the bytecode version (with > MethodHandleBuilder) and the pure MH version (through combinators). The > test checks that both results conform to what is expected (e.g. some > operation on the boxed class). > > I've added a final test for the guardWithTest example which was indeed > failing before this fix. > > http://cr.openjdk.java.net/~mcimadamore/8183929/ > > > Cheers > Maurizio > From maurizio.cimadamore at oracle.com Thu Jul 6 13:02:58 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Thu, 06 Jul 2017 13:02:58 +0000 Subject: hg: valhalla/valhalla/jdk: 8183929: [MVT] Bad intrinsic for guard with test causes wrong behavior Message-ID: <201707061302.v66D2x4v018036@aojmv0008.oracle.com> Changeset: 2ccbf30800cd Author: mcimadamore Date: 2017-07-06 14:00 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2ccbf30800cd 8183929: [MVT] Bad intrinsic for guard with test causes wrong behavior Summary: emitSelectAlternatives uses IFNE instead of IFEQ Reviewed-by: vlivanov ! src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java + test/valhalla/mvt/point/Point.java + test/valhalla/mvt/point/TestPoint.java From maurizio.cimadamore at oracle.com Thu Jul 6 13:28:49 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 14:28:49 +0100 Subject: RFR 8183938: [MVT] Add test for mock vector API Message-ID: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> Hi, this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. http://cr.openjdk.java.net/~mcimadamore/8183938/ Cheers Maurizio From tobias.hartmann at oracle.com Thu Jul 6 13:40:47 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 6 Jul 2017 15:40:47 +0200 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> Message-ID: <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> Hi Maurizio, is there a reason that the test is only executed with -Xint? Thanks, Tobias On 06.07.2017 15:28, Maurizio Cimadamore wrote: > Hi, > this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. > > http://cr.openjdk.java.net/~mcimadamore/8183938/ > > Cheers > Maurizio > From paul.sandoz at oracle.com Thu Jul 6 13:46:27 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 6 Jul 2017 06:46:27 -0700 Subject: JNI was Re: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: <6A0D431D-E238-44DA-8A56-C8E9719BB770@oracle.com> References: <1BBA7FDC-694E-4085-BE5F-CAAAA5D20CD9@oracle.com> <6A0D431D-E238-44DA-8A56-C8E9719BB770@oracle.com> Message-ID: Sigh, it would help if I apply the patch! Sorry for the noise I will report back after testing with the applied patch. Paul. > On Jul 5, 2017, at 18:17, Paul Sandoz wrote: > > Unfortunately i still observe the same errors with ValueTypeReturnedAsFields being enabled or disabled for the identity JNI function e.g.: > > UNSAFE_ENTRY(jobject, Unsafe_GetValueIdentity(JNIEnv *env, jobject unsafe, jobject jvalue)) { > oop value = JNIHandles::resolve(jvalue); > assert(value->klass()->is_value(), "jvalue must be an value"); > > return jvalue; > } UNSAFE_END > > When ValueTypeReturnedAsFields is enabled the error is: > > V [libjvm.dylib+0x102dcd4] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x5a4 > V [libjvm.dylib+0x102e578] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x78 > V [libjvm.dylib+0x699b9f] report_vm_error(char const*, int, char const*, char const*, ...)+0x19f > V [libjvm.dylib+0xd4d63e] Monitor::check_prelock_state(Thread*)+0x9e > V [libjvm.dylib+0xd4d28c] Monitor::lock(Thread*)+0x9c > V [libjvm.dylib+0x4f07b4] MutexLocker::MutexLocker(Monitor*, Thread*)+0xb4 > V [libjvm.dylib+0x4eff15] MutexLocker::MutexLocker(Monitor*, Thread*)+0x25 > V [libjvm.dylib+0xf65082] SystemDictionary::add_loader_constraint(Symbol*, Handle, Handle, Thread*)+0x192 > V [libjvm.dylib+0xf6540b] SystemDictionary::check_signature_loaders(Symbol*, Handle, Handle, bool, Thread*)+0xfb > V [libjvm.dylib+0xb9cb7d] LinkResolver::check_method_loader_constraints(LinkInfo const&, methodHandle const&, char const*, Thread*)+0xcd > V [libjvm.dylib+0xb9c0e9] LinkResolver::resolve_method(LinkInfo const&, Bytecodes::Code, Thread*)+0x649 > V [libjvm.dylib+0xb9ba05] LinkResolver::resolve_method_statically(Bytecodes::Code, constantPoolHandle const&, int, Thread*)+0x2d5 > V [libjvm.dylib+0x37497d] Bytecode_invoke::static_target(Thread*)+0x7d > V [libjvm.dylib+0xeb3a28] SharedRuntime::store_value_type_fields_to_buf(JavaThread*, long)+0x218 > v ~RuntimeStub::store_value_type_fields_to_buf > j runtime.valhalla.valuetypes.UnsafeTest.main([Ljava/lang/String;)V+30 > > > When ValueTypeReturnedAsFields is disabled a null value is returned. I tried detecting whether the value oop is in the heap with: > > Universe::heap()->is_in_reserved(value) > > and reallocating but it made no difference. I also started debugging HS but i don?t understand enough about how the template interpreter works to ?interpret? the behaviour and track operations on the returned object. > > There is something asymmetric about the handling of jobject value arguments and jobject value return. > > > Further more, does the creation of a jobject from a value oop require that the value be allocated on the heap? I think so otherwise i get failures for assertions such as: > > assert(Universe::heap()->is_in_reserved(obj), "sanity check"); > > Paul. > > >> On 5 Jul 2017, at 10:51, Paul Sandoz wrote: >> >> >>> On 5 Jul 2017, at 00:33, Roland Westrelin wrote: >>> >>> >>> http://cr.openjdk.java.net/~roland/valhalla/vreturn-improv/webrev.00/ >>> >>> This patch: >>> >>> - reworks the verification logic in >>> SharedRuntime::store_value_type_fields_to_buf() to address the crash >>> that Paul encountered >>> >> >> Thanks. I will verify this week when i update the Unsafe methods to be in sync with Fred?s latest changes. >> >> Paul. >> >>> - changes the vreturn convention so if we return the klass pointer + >>> fields, the klass pointer is tagged by setting its least significant >>> bit. This way it's cheaper for the caller to detect if it's getting an >>> oop, a buffered value or a list of fields back from the callee. (this >>> is based on a discussion with Fred) >>> >>> - stores precomputed extended signature and vreturn registers in the >>> ValueKlass to not have to compute them every time they are >>> needed. This is also something Fred suggested. I considered >>> initializaing those fields on first use but came to the conclusion it >>> would make things too complicated. For instance the vreturn registers >>> are sometimes use at a point where the thread can't safepoint making >>> it impossible to use a metadata Array. >>> >>> Roland. >> > From maurizio.cimadamore at oracle.com Thu Jul 6 13:48:53 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 14:48:53 +0100 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> Message-ID: <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> Not really, that's something that came from before your fix of JDK-8183129 now it can be safely removed if preferred. I will also remove -Xint flag from the test that I've already pushed. Maurizio On 06/07/17 14:40, Tobias Hartmann wrote: > Hi Maurizio, > > is there a reason that the test is only executed with -Xint? > > Thanks, > Tobias > > On 06.07.2017 15:28, Maurizio Cimadamore wrote: >> Hi, >> this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. >> >> http://cr.openjdk.java.net/~mcimadamore/8183938/ >> >> Cheers >> Maurizio >> From tobias.hartmann at oracle.com Thu Jul 6 13:51:14 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 6 Jul 2017 15:51:14 +0200 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> Message-ID: <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> On 06.07.2017 15:48, Maurizio Cimadamore wrote: > Not really, that's something that came from before your fix of JDK-8183129 now it can be safely removed if preferred. > > I will also remove -Xint flag from the test that I've already pushed. Okay, thanks! I think it would be best to have one run with -Xint and one with -Xcomp. Is there a reason you are using testng instead of a normal jtreg test? Best regards, Tobias > On 06/07/17 14:40, Tobias Hartmann wrote: >> Hi Maurizio, >> >> is there a reason that the test is only executed with -Xint? >> >> Thanks, >> Tobias >> >> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>> Hi, >>> this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. >>> >>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>> >>> Cheers >>> Maurizio >>> > From maurizio.cimadamore at oracle.com Thu Jul 6 14:03:28 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 15:03:28 +0100 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> Message-ID: On 06/07/17 14:51, Tobias Hartmann wrote: > On 06.07.2017 15:48, Maurizio Cimadamore wrote: >> Not really, that's something that came from before your fix of JDK-8183129 now it can be safely removed if preferred. >> >> I will also remove -Xint flag from the test that I've already pushed. > Okay, thanks! I think it would be best to have one run with -Xint and one with -Xcomp. > > Is there a reason you are using testng instead of a normal jtreg test? testng makes it easier to add new test cases as you go along - with plain jtreg you really only have a main method. It is also easier to create things like data providers - e.g. create a bunch of objects and execute a given test method against each possible object in the data set. In other words, testng is typically more suited for writing unit tests, and the test report will be generally more useful e.g : test VectorTest.testConditional(): success test VectorTest.testSumArray(1): success test VectorTest.testSumArray(5): success test VectorTest.testSumArray(10): success test VectorTest.testSumArray(0): success =============================================== valhalla/mvt/vector/VectorTest.java Total tests run: 5, Failures: 0, Skips: 0 =============================================== You can of course do all this with jtreg, but you have to do it manually, with the risk of replicating routines across multiple tests (e.g. assertEquals, etc.) Maurizio > > Best regards, > Tobias > >> On 06/07/17 14:40, Tobias Hartmann wrote: >>> Hi Maurizio, >>> >>> is there a reason that the test is only executed with -Xint? >>> >>> Thanks, >>> Tobias >>> >>> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>>> Hi, >>>> this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. >>>> >>>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>>> >>>> Cheers >>>> Maurizio >>>> From maurizio.cimadamore at oracle.com Thu Jul 6 14:08:29 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 15:08:29 +0100 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> Message-ID: <92fcc7f3-c138-137d-37f5-bb594a089747@oracle.com> -Xcomp doesn't work - I get this: org.testng.TestNGException: An error occurred while instantiating class VectorTest: Long2$Value not a value type at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:393) at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:295) at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:117) at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:183) at org.testng.internal.TestNGClassFinder.(TestNGClassFinder.java:128) at org.testng.TestRunner.initMethods(TestRunner.java:415) at org.testng.TestRunner.init(TestRunner.java:241) at org.testng.TestRunner.init(TestRunner.java:211) at org.testng.TestRunner.(TestRunner.java:158) at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:545) at org.testng.SuiteRunner.init(SuiteRunner.java:159) at org.testng.SuiteRunner.(SuiteRunner.java:114) at org.testng.TestNG.createSuiteRunner(TestNG.java:1260) at org.testng.TestNG.createSuiteRunners(TestNG.java:1247) at org.testng.TestNG.runSuitesLocally(TestNG.java:1101) at org.testng.TestNG.run(TestNG.java:1018) at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94) at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:563) at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:115) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.InternalError: Long2$Value not a value type at java.base/java.lang.System$2.loadValueTypeClass(System.java:2174) at java.base/valhalla.shady.MinimalValueTypes_1_0.loadValueTypeClass(MinimalValueTypes_1_0.java:114) at java.base/valhalla.shady.MinimalValueTypes_1_0.getValueTypeClass(MinimalValueTypes_1_0.java:107) at java.base/jdk.experimental.value.ValueType.forClass(ValueType.java:158) at VectorTest.(VectorTest.java:18) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:487) at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29) at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:382) ... 23 more Without -Xcomp, or with -Xint everything works. Any clues? Maurizio On 06/07/17 15:03, Maurizio Cimadamore wrote: > > > On 06/07/17 14:51, Tobias Hartmann wrote: >> On 06.07.2017 15:48, Maurizio Cimadamore wrote: >>> Not really, that's something that came from before your fix of >>> JDK-8183129 now it can be safely removed if preferred. >>> >>> I will also remove -Xint flag from the test that I've already pushed. >> Okay, thanks! I think it would be best to have one run with -Xint and >> one with -Xcomp. >> >> Is there a reason you are using testng instead of a normal jtreg test? > testng makes it easier to add new test cases as you go along - with > plain jtreg you really only have a main method. It is also easier to > create things like data providers - e.g. create a bunch of objects and > execute a given test method against each possible object in the data > set. In other words, testng is typically more suited for writing unit > tests, and the test report will be generally more useful e.g : > > test VectorTest.testConditional(): success > test VectorTest.testSumArray(1): success > test VectorTest.testSumArray(5): success > test VectorTest.testSumArray(10): success > test VectorTest.testSumArray(0): success > > =============================================== > valhalla/mvt/vector/VectorTest.java > Total tests run: 5, Failures: 0, Skips: 0 > =============================================== > > You can of course do all this with jtreg, but you have to do it > manually, with the risk of replicating routines across multiple tests > (e.g. assertEquals, etc.) > > > Maurizio > >> >> Best regards, >> Tobias >> >>> On 06/07/17 14:40, Tobias Hartmann wrote: >>>> Hi Maurizio, >>>> >>>> is there a reason that the test is only executed with -Xint? >>>> >>>> Thanks, >>>> Tobias >>>> >>>> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>>>> Hi, >>>>> this changeset adds the mock vector API test that Vlad has worked >>>>> on. I cleaned it up a bit and converted to a working testng test. >>>>> >>>>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>>>> >>>>> Cheers >>>>> Maurizio >>>>> > From tobias.hartmann at oracle.com Thu Jul 6 14:09:14 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 6 Jul 2017 16:09:14 +0200 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> Message-ID: <27d7a377-2654-2399-3dc7-b13eb83210b8@oracle.com> On 06.07.2017 16:03, Maurizio Cimadamore wrote: > testng makes it easier to add new test cases as you go along - with plain jtreg you really only have a main method. It is also easier to create things like data providers - e.g. create a bunch of objects and execute a given test method against each possible object in the data set. In other words, testng is typically more suited for writing unit tests, and the test report will be generally more useful e.g : > > test VectorTest.testConditional(): success > test VectorTest.testSumArray(1): success > test VectorTest.testSumArray(5): success > test VectorTest.testSumArray(10): success > test VectorTest.testSumArray(0): success > > =============================================== > valhalla/mvt/vector/VectorTest.java > Total tests run: 5, Failures: 0, Skips: 0 > =============================================== > > You can of course do all this with jtreg, but you have to do it manually, with the risk of replicating routines across multiple tests (e.g. assertEquals, etc.) You are right, it seems more reasonable to use testng in this case. Thanks, Tobias >> Best regards, >> Tobias >> >>> On 06/07/17 14:40, Tobias Hartmann wrote: >>>> Hi Maurizio, >>>> >>>> is there a reason that the test is only executed with -Xint? >>>> >>>> Thanks, >>>> Tobias >>>> >>>> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>>>> Hi, >>>>> this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. >>>>> >>>>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>>>> >>>>> Cheers >>>>> Maurizio >>>>> > From maurizio.cimadamore at oracle.com Thu Jul 6 14:15:37 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 15:15:37 +0100 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <92fcc7f3-c138-137d-37f5-bb594a089747@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> <92fcc7f3-c138-137d-37f5-bb594a089747@oracle.com> Message-ID: Something is probably off with clasloaders - and that makes the test System.isValueClass (and Class.isValueClass) to fail. Investigating. Maurizio On 06/07/17 15:08, Maurizio Cimadamore wrote: > -Xcomp doesn't work - I get this: > > org.testng.TestNGException: > An error occurred while instantiating class VectorTest: Long2$Value > not a value type > at > org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:393) > at > org.testng.internal.ClassHelper.createInstance(ClassHelper.java:295) > at > org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:117) > at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:183) > at > org.testng.internal.TestNGClassFinder.(TestNGClassFinder.java:128) > at org.testng.TestRunner.initMethods(TestRunner.java:415) > at org.testng.TestRunner.init(TestRunner.java:241) > at org.testng.TestRunner.init(TestRunner.java:211) > at org.testng.TestRunner.(TestRunner.java:158) > at > org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:545) > at org.testng.SuiteRunner.init(SuiteRunner.java:159) > at org.testng.SuiteRunner.(SuiteRunner.java:114) > at org.testng.TestNG.createSuiteRunner(TestNG.java:1260) > at org.testng.TestNG.createSuiteRunners(TestNG.java:1247) > at org.testng.TestNG.runSuitesLocally(TestNG.java:1101) > at org.testng.TestNG.run(TestNG.java:1018) > at > com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94) > at > com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54) > at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.base/java.lang.reflect.Method.invoke(Method.java:563) > at > com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:115) > at java.base/java.lang.Thread.run(Thread.java:844) > Caused by: java.lang.InternalError: Long2$Value not a value type > at java.base/java.lang.System$2.loadValueTypeClass(System.java:2174) > at > java.base/valhalla.shady.MinimalValueTypes_1_0.loadValueTypeClass(MinimalValueTypes_1_0.java:114) > at > java.base/valhalla.shady.MinimalValueTypes_1_0.getValueTypeClass(MinimalValueTypes_1_0.java:107) > at > java.base/jdk.experimental.value.ValueType.forClass(ValueType.java:158) > at VectorTest.(VectorTest.java:18) > at > java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at > java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:487) > at > org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29) > at > org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:382) > ... 23 more > > > Without -Xcomp, or with -Xint everything works. > > Any clues? > > Maurizio > > > On 06/07/17 15:03, Maurizio Cimadamore wrote: >> >> >> On 06/07/17 14:51, Tobias Hartmann wrote: >>> On 06.07.2017 15:48, Maurizio Cimadamore wrote: >>>> Not really, that's something that came from before your fix of >>>> JDK-8183129 now it can be safely removed if preferred. >>>> >>>> I will also remove -Xint flag from the test that I've already pushed. >>> Okay, thanks! I think it would be best to have one run with -Xint >>> and one with -Xcomp. >>> >>> Is there a reason you are using testng instead of a normal jtreg test? >> testng makes it easier to add new test cases as you go along - with >> plain jtreg you really only have a main method. It is also easier to >> create things like data providers - e.g. create a bunch of objects >> and execute a given test method against each possible object in the >> data set. In other words, testng is typically more suited for writing >> unit tests, and the test report will be generally more useful e.g : >> >> test VectorTest.testConditional(): success >> test VectorTest.testSumArray(1): success >> test VectorTest.testSumArray(5): success >> test VectorTest.testSumArray(10): success >> test VectorTest.testSumArray(0): success >> >> =============================================== >> valhalla/mvt/vector/VectorTest.java >> Total tests run: 5, Failures: 0, Skips: 0 >> =============================================== >> >> You can of course do all this with jtreg, but you have to do it >> manually, with the risk of replicating routines across multiple tests >> (e.g. assertEquals, etc.) >> >> >> Maurizio >> >>> >>> Best regards, >>> Tobias >>> >>>> On 06/07/17 14:40, Tobias Hartmann wrote: >>>>> Hi Maurizio, >>>>> >>>>> is there a reason that the test is only executed with -Xint? >>>>> >>>>> Thanks, >>>>> Tobias >>>>> >>>>> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>>>>> Hi, >>>>>> this changeset adds the mock vector API test that Vlad has worked >>>>>> on. I cleaned it up a bit and converted to a working testng test. >>>>>> >>>>>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>>>>> >>>>>> Cheers >>>>>> Maurizio >>>>>> >> > From maurizio.cimadamore at oracle.com Thu Jul 6 14:27:24 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 15:27:24 +0100 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> <92fcc7f3-c138-137d-37f5-bb594a089747@oracle.com> Message-ID: <577cbe22-0bf3-2a44-5f79-116fc7bb6644@oracle.com> Nope - there's something else going on here - probably some bad optimization? I can only reproduce the problem with -Xcomp and if I'm _not_ debugging. Maurizio On 06/07/17 15:15, Maurizio Cimadamore wrote: > Something is probably off with clasloaders - and that makes the test > System.isValueClass (and Class.isValueClass) to fail. Investigating. > > Maurizio > > > On 06/07/17 15:08, Maurizio Cimadamore wrote: >> -Xcomp doesn't work - I get this: >> >> org.testng.TestNGException: >> An error occurred while instantiating class VectorTest: Long2$Value >> not a value type >> at >> org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:393) >> at >> org.testng.internal.ClassHelper.createInstance(ClassHelper.java:295) >> at >> org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:117) >> at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:183) >> at >> org.testng.internal.TestNGClassFinder.(TestNGClassFinder.java:128) >> at org.testng.TestRunner.initMethods(TestRunner.java:415) >> at org.testng.TestRunner.init(TestRunner.java:241) >> at org.testng.TestRunner.init(TestRunner.java:211) >> at org.testng.TestRunner.(TestRunner.java:158) >> at >> org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:545) >> at org.testng.SuiteRunner.init(SuiteRunner.java:159) >> at org.testng.SuiteRunner.(SuiteRunner.java:114) >> at org.testng.TestNG.createSuiteRunner(TestNG.java:1260) >> at org.testng.TestNG.createSuiteRunners(TestNG.java:1247) >> at org.testng.TestNG.runSuitesLocally(TestNG.java:1101) >> at org.testng.TestNG.run(TestNG.java:1018) >> at >> com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94) >> at >> com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54) >> at >> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native >> Method) >> at >> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >> at >> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >> at java.base/java.lang.reflect.Method.invoke(Method.java:563) >> at >> com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:115) >> at java.base/java.lang.Thread.run(Thread.java:844) >> Caused by: java.lang.InternalError: Long2$Value not a value type >> at java.base/java.lang.System$2.loadValueTypeClass(System.java:2174) >> at >> java.base/valhalla.shady.MinimalValueTypes_1_0.loadValueTypeClass(MinimalValueTypes_1_0.java:114) >> at >> java.base/valhalla.shady.MinimalValueTypes_1_0.getValueTypeClass(MinimalValueTypes_1_0.java:107) >> at >> java.base/jdk.experimental.value.ValueType.forClass(ValueType.java:158) >> at VectorTest.(VectorTest.java:18) >> at >> java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native >> Method) >> at >> java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) >> at >> java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) >> at >> java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:487) >> at >> org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29) >> at >> org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:382) >> ... 23 more >> >> >> Without -Xcomp, or with -Xint everything works. >> >> Any clues? >> >> Maurizio >> >> >> On 06/07/17 15:03, Maurizio Cimadamore wrote: >>> >>> >>> On 06/07/17 14:51, Tobias Hartmann wrote: >>>> On 06.07.2017 15:48, Maurizio Cimadamore wrote: >>>>> Not really, that's something that came from before your fix of >>>>> JDK-8183129 now it can be safely removed if preferred. >>>>> >>>>> I will also remove -Xint flag from the test that I've already pushed. >>>> Okay, thanks! I think it would be best to have one run with -Xint >>>> and one with -Xcomp. >>>> >>>> Is there a reason you are using testng instead of a normal jtreg test? >>> testng makes it easier to add new test cases as you go along - with >>> plain jtreg you really only have a main method. It is also easier to >>> create things like data providers - e.g. create a bunch of objects >>> and execute a given test method against each possible object in the >>> data set. In other words, testng is typically more suited for >>> writing unit tests, and the test report will be generally more >>> useful e.g : >>> >>> test VectorTest.testConditional(): success >>> test VectorTest.testSumArray(1): success >>> test VectorTest.testSumArray(5): success >>> test VectorTest.testSumArray(10): success >>> test VectorTest.testSumArray(0): success >>> >>> =============================================== >>> valhalla/mvt/vector/VectorTest.java >>> Total tests run: 5, Failures: 0, Skips: 0 >>> =============================================== >>> >>> You can of course do all this with jtreg, but you have to do it >>> manually, with the risk of replicating routines across multiple >>> tests (e.g. assertEquals, etc.) >>> >>> >>> Maurizio >>> >>>> >>>> Best regards, >>>> Tobias >>>> >>>>> On 06/07/17 14:40, Tobias Hartmann wrote: >>>>>> Hi Maurizio, >>>>>> >>>>>> is there a reason that the test is only executed with -Xint? >>>>>> >>>>>> Thanks, >>>>>> Tobias >>>>>> >>>>>> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>>>>>> Hi, >>>>>>> this changeset adds the mock vector API test that Vlad has >>>>>>> worked on. I cleaned it up a bit and converted to a working >>>>>>> testng test. >>>>>>> >>>>>>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>>>>>> >>>>>>> Cheers >>>>>>> Maurizio >>>>>>> >>> >> > From paul.sandoz at oracle.com Thu Jul 6 14:41:47 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 6 Jul 2017 07:41:47 -0700 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> Message-ID: <660841B1-009C-4C4D-8664-7CE4DA611134@oracle.com> > On 6 Jul 2017, at 06:28, Maurizio Cimadamore wrote: > > Hi, > this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. > > http://cr.openjdk.java.net/~mcimadamore/8183938/ > Looks good. Minor stuff: Utils -- 33 // Copied from jdk.experimental.value.ValueType 34 public static Field[] valueFields(ValueType vt) { 35 int valFieldMask = Modifier.FINAL; 36 return Stream.of(vt.sourceClass().getDeclaredFields()) 37 .filter(f -> (f.getModifiers() & (valFieldMask | Modifier.STATIC)) == valFieldMask) 38 .toArray(Field[]::new); 39 } There is now a public method on ValueType to obtain the value fields, but also see the following. VectorUtils ? 106 static MethodHandle valueFactory(Class vcc, MethodHandles.Lookup lookup) { This method could be removed and calls replaced with the unreflectWithers, or probably better is to replace the implementation with unreflectWithers. Since your Point test already has a combo constructor i think we have this case covered. Paul. From tobias.hartmann at oracle.com Thu Jul 6 14:46:43 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 6 Jul 2017 16:46:43 +0200 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <577cbe22-0bf3-2a44-5f79-116fc7bb6644@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> <92fcc7f3-c138-137d-37f5-bb594a089747@oracle.com> <577cbe22-0bf3-2a44-5f79-116fc7bb6644@oracle.com> Message-ID: On 06.07.2017 16:27, Maurizio Cimadamore wrote: > Nope - there's something else going on here - probably some bad optimization? I can only reproduce the problem with -Xcomp and if I'm _not_ debugging. Okay, feel free to push with -Xint then. I have a look tomorrow. Best regards, Tobias > On 06/07/17 15:15, Maurizio Cimadamore wrote: >> Something is probably off with clasloaders - and that makes the test System.isValueClass (and Class.isValueClass) to fail. Investigating. >> >> Maurizio >> >> >> On 06/07/17 15:08, Maurizio Cimadamore wrote: >>> -Xcomp doesn't work - I get this: >>> >>> org.testng.TestNGException: >>> An error occurred while instantiating class VectorTest: Long2$Value not a value type >>> at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:393) >>> at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:295) >>> at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:117) >>> at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:183) >>> at org.testng.internal.TestNGClassFinder.(TestNGClassFinder.java:128) >>> at org.testng.TestRunner.initMethods(TestRunner.java:415) >>> at org.testng.TestRunner.init(TestRunner.java:241) >>> at org.testng.TestRunner.init(TestRunner.java:211) >>> at org.testng.TestRunner.(TestRunner.java:158) >>> at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:545) >>> at org.testng.SuiteRunner.init(SuiteRunner.java:159) >>> at org.testng.SuiteRunner.(SuiteRunner.java:114) >>> at org.testng.TestNG.createSuiteRunner(TestNG.java:1260) >>> at org.testng.TestNG.createSuiteRunners(TestNG.java:1247) >>> at org.testng.TestNG.runSuitesLocally(TestNG.java:1101) >>> at org.testng.TestNG.run(TestNG.java:1018) >>> at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94) >>> at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54) >>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.base/java.lang.reflect.Method.invoke(Method.java:563) >>> at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:115) >>> at java.base/java.lang.Thread.run(Thread.java:844) >>> Caused by: java.lang.InternalError: Long2$Value not a value type >>> at java.base/java.lang.System$2.loadValueTypeClass(System.java:2174) >>> at java.base/valhalla.shady.MinimalValueTypes_1_0.loadValueTypeClass(MinimalValueTypes_1_0.java:114) >>> at java.base/valhalla.shady.MinimalValueTypes_1_0.getValueTypeClass(MinimalValueTypes_1_0.java:107) >>> at java.base/jdk.experimental.value.ValueType.forClass(ValueType.java:158) >>> at VectorTest.(VectorTest.java:18) >>> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) >>> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) >>> at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) >>> at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:487) >>> at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29) >>> at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:382) >>> ... 23 more >>> >>> >>> Without -Xcomp, or with -Xint everything works. >>> >>> Any clues? >>> >>> Maurizio >>> >>> >>> On 06/07/17 15:03, Maurizio Cimadamore wrote: >>>> >>>> >>>> On 06/07/17 14:51, Tobias Hartmann wrote: >>>>> On 06.07.2017 15:48, Maurizio Cimadamore wrote: >>>>>> Not really, that's something that came from before your fix of JDK-8183129 now it can be safely removed if preferred. >>>>>> >>>>>> I will also remove -Xint flag from the test that I've already pushed. >>>>> Okay, thanks! I think it would be best to have one run with -Xint and one with -Xcomp. >>>>> >>>>> Is there a reason you are using testng instead of a normal jtreg test? >>>> testng makes it easier to add new test cases as you go along - with plain jtreg you really only have a main method. It is also easier to create things like data providers - e.g. create a bunch of objects and execute a given test method against each possible object in the data set. In other words, testng is typically more suited for writing unit tests, and the test report will be generally more useful e.g : >>>> >>>> test VectorTest.testConditional(): success >>>> test VectorTest.testSumArray(1): success >>>> test VectorTest.testSumArray(5): success >>>> test VectorTest.testSumArray(10): success >>>> test VectorTest.testSumArray(0): success >>>> >>>> =============================================== >>>> valhalla/mvt/vector/VectorTest.java >>>> Total tests run: 5, Failures: 0, Skips: 0 >>>> =============================================== >>>> >>>> You can of course do all this with jtreg, but you have to do it manually, with the risk of replicating routines across multiple tests (e.g. assertEquals, etc.) >>>> >>>> >>>> Maurizio >>>> >>>>> >>>>> Best regards, >>>>> Tobias >>>>> >>>>>> On 06/07/17 14:40, Tobias Hartmann wrote: >>>>>>> Hi Maurizio, >>>>>>> >>>>>>> is there a reason that the test is only executed with -Xint? >>>>>>> >>>>>>> Thanks, >>>>>>> Tobias >>>>>>> >>>>>>> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>>>>>>> Hi, >>>>>>>> this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. >>>>>>>> >>>>>>>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>>>>>>> >>>>>>>> Cheers >>>>>>>> Maurizio >>>>>>>> >>>> >>> >> > From rwestrel at redhat.com Thu Jul 6 14:48:44 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jul 2017 16:48:44 +0200 Subject: bug in "8183130: [MVT] Implement intrinsics for Q-typed LambdaForms"? In-Reply-To: <5387f9cc-68b1-a254-ac3e-a5ef193b08f5@oracle.com> References: <7ec66afc-df01-22d3-1159-45d56986d4cb@oracle.com> <5387f9cc-68b1-a254-ac3e-a5ef193b08f5@oracle.com> Message-ID: > I've been able to reproduce and fix - see RFR for JDK-8183929 Thanks for the quick fix. Roland. From maurizio.cimadamore at oracle.com Thu Jul 6 14:49:30 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 15:49:30 +0100 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <577cbe22-0bf3-2a44-5f79-116fc7bb6644@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> <92fcc7f3-c138-137d-37f5-bb594a089747@oracle.com> <577cbe22-0bf3-2a44-5f79-116fc7bb6644@oracle.com> Message-ID: Attached is a simple and self-contained jtreg test. Please let me know what do you think. The test passes if you run with debugger enabled and you step inside Class.isValueClass - otherwise it fails. Maurizio On 06/07/17 15:27, Maurizio Cimadamore wrote: > Nope - there's something else going on here - probably some bad > optimization? I can only reproduce the problem with -Xcomp and if I'm > _not_ debugging. > > Maurizio > > > On 06/07/17 15:15, Maurizio Cimadamore wrote: >> Something is probably off with clasloaders - and that makes the test >> System.isValueClass (and Class.isValueClass) to fail. Investigating. >> >> Maurizio >> >> >> On 06/07/17 15:08, Maurizio Cimadamore wrote: >>> -Xcomp doesn't work - I get this: >>> >>> org.testng.TestNGException: >>> An error occurred while instantiating class VectorTest: Long2$Value >>> not a value type >>> at >>> org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:393) >>> at >>> org.testng.internal.ClassHelper.createInstance(ClassHelper.java:295) >>> at >>> org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:117) >>> at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:183) >>> at >>> org.testng.internal.TestNGClassFinder.(TestNGClassFinder.java:128) >>> at org.testng.TestRunner.initMethods(TestRunner.java:415) >>> at org.testng.TestRunner.init(TestRunner.java:241) >>> at org.testng.TestRunner.init(TestRunner.java:211) >>> at org.testng.TestRunner.(TestRunner.java:158) >>> at >>> org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:545) >>> at org.testng.SuiteRunner.init(SuiteRunner.java:159) >>> at org.testng.SuiteRunner.(SuiteRunner.java:114) >>> at org.testng.TestNG.createSuiteRunner(TestNG.java:1260) >>> at org.testng.TestNG.createSuiteRunners(TestNG.java:1247) >>> at org.testng.TestNG.runSuitesLocally(TestNG.java:1101) >>> at org.testng.TestNG.run(TestNG.java:1018) >>> at >>> com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94) >>> at >>> com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54) >>> at >>> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native >>> Method) >>> at >>> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>> at >>> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.base/java.lang.reflect.Method.invoke(Method.java:563) >>> at >>> com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:115) >>> at java.base/java.lang.Thread.run(Thread.java:844) >>> Caused by: java.lang.InternalError: Long2$Value not a value type >>> at >>> java.base/java.lang.System$2.loadValueTypeClass(System.java:2174) >>> at >>> java.base/valhalla.shady.MinimalValueTypes_1_0.loadValueTypeClass(MinimalValueTypes_1_0.java:114) >>> at >>> java.base/valhalla.shady.MinimalValueTypes_1_0.getValueTypeClass(MinimalValueTypes_1_0.java:107) >>> at >>> java.base/jdk.experimental.value.ValueType.forClass(ValueType.java:158) >>> at VectorTest.(VectorTest.java:18) >>> at >>> java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native >>> Method) >>> at >>> java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) >>> at >>> java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) >>> at >>> java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:487) >>> at >>> org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29) >>> at >>> org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:382) >>> ... 23 more >>> >>> >>> Without -Xcomp, or with -Xint everything works. >>> >>> Any clues? >>> >>> Maurizio >>> >>> >>> On 06/07/17 15:03, Maurizio Cimadamore wrote: >>>> >>>> >>>> On 06/07/17 14:51, Tobias Hartmann wrote: >>>>> On 06.07.2017 15:48, Maurizio Cimadamore wrote: >>>>>> Not really, that's something that came from before your fix of >>>>>> JDK-8183129 now it can be safely removed if preferred. >>>>>> >>>>>> I will also remove -Xint flag from the test that I've already >>>>>> pushed. >>>>> Okay, thanks! I think it would be best to have one run with -Xint >>>>> and one with -Xcomp. >>>>> >>>>> Is there a reason you are using testng instead of a normal jtreg >>>>> test? >>>> testng makes it easier to add new test cases as you go along - with >>>> plain jtreg you really only have a main method. It is also easier >>>> to create things like data providers - e.g. create a bunch of >>>> objects and execute a given test method against each possible >>>> object in the data set. In other words, testng is typically more >>>> suited for writing unit tests, and the test report will be >>>> generally more useful e.g : >>>> >>>> test VectorTest.testConditional(): success >>>> test VectorTest.testSumArray(1): success >>>> test VectorTest.testSumArray(5): success >>>> test VectorTest.testSumArray(10): success >>>> test VectorTest.testSumArray(0): success >>>> >>>> =============================================== >>>> valhalla/mvt/vector/VectorTest.java >>>> Total tests run: 5, Failures: 0, Skips: 0 >>>> =============================================== >>>> >>>> You can of course do all this with jtreg, but you have to do it >>>> manually, with the risk of replicating routines across multiple >>>> tests (e.g. assertEquals, etc.) >>>> >>>> >>>> Maurizio >>>> >>>>> >>>>> Best regards, >>>>> Tobias >>>>> >>>>>> On 06/07/17 14:40, Tobias Hartmann wrote: >>>>>>> Hi Maurizio, >>>>>>> >>>>>>> is there a reason that the test is only executed with -Xint? >>>>>>> >>>>>>> Thanks, >>>>>>> Tobias >>>>>>> >>>>>>> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>>>>>>> Hi, >>>>>>>> this changeset adds the mock vector API test that Vlad has >>>>>>>> worked on. I cleaned it up a bit and converted to a working >>>>>>>> testng test. >>>>>>>> >>>>>>>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>>>>>>> >>>>>>>> Cheers >>>>>>>> Maurizio >>>>>>>> >>>> >>> >> > From paul.sandoz at oracle.com Thu Jul 6 14:58:11 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 6 Jul 2017 07:58:11 -0700 Subject: JNI was Re: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: References: <1BBA7FDC-694E-4085-BE5F-CAAAA5D20CD9@oracle.com> <6A0D431D-E238-44DA-8A56-C8E9719BB770@oracle.com> Message-ID: Slight change in behaviour with the patch applied. Now i observe null returned if ValueTypeReturnedAsFields is enabled or disabled. (Note this behaviour is observed when running with -Xint). This is currently what i am using: http://cr.openjdk.java.net/~psandoz/valhalla/unsafe-value-jdk/webrev/ http://cr.openjdk.java.net/~psandoz/valhalla/unsafe-value-hotspot/webrev/ Paul. > On 6 Jul 2017, at 06:46, Paul Sandoz wrote: > > Sigh, it would help if I apply the patch! Sorry for the noise I will report back after testing with the applied patch. > > Paul. > >> On Jul 5, 2017, at 18:17, Paul Sandoz wrote: >> >> Unfortunately i still observe the same errors with ValueTypeReturnedAsFields being enabled or disabled for the identity JNI function e.g.: >> >> UNSAFE_ENTRY(jobject, Unsafe_GetValueIdentity(JNIEnv *env, jobject unsafe, jobject jvalue)) { >> oop value = JNIHandles::resolve(jvalue); >> assert(value->klass()->is_value(), "jvalue must be an value"); >> >> return jvalue; >> } UNSAFE_END >> >> When ValueTypeReturnedAsFields is enabled the error is: >> >> V [libjvm.dylib+0x102dcd4] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x5a4 >> V [libjvm.dylib+0x102e578] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x78 >> V [libjvm.dylib+0x699b9f] report_vm_error(char const*, int, char const*, char const*, ...)+0x19f >> V [libjvm.dylib+0xd4d63e] Monitor::check_prelock_state(Thread*)+0x9e >> V [libjvm.dylib+0xd4d28c] Monitor::lock(Thread*)+0x9c >> V [libjvm.dylib+0x4f07b4] MutexLocker::MutexLocker(Monitor*, Thread*)+0xb4 >> V [libjvm.dylib+0x4eff15] MutexLocker::MutexLocker(Monitor*, Thread*)+0x25 >> V [libjvm.dylib+0xf65082] SystemDictionary::add_loader_constraint(Symbol*, Handle, Handle, Thread*)+0x192 >> V [libjvm.dylib+0xf6540b] SystemDictionary::check_signature_loaders(Symbol*, Handle, Handle, bool, Thread*)+0xfb >> V [libjvm.dylib+0xb9cb7d] LinkResolver::check_method_loader_constraints(LinkInfo const&, methodHandle const&, char const*, Thread*)+0xcd >> V [libjvm.dylib+0xb9c0e9] LinkResolver::resolve_method(LinkInfo const&, Bytecodes::Code, Thread*)+0x649 >> V [libjvm.dylib+0xb9ba05] LinkResolver::resolve_method_statically(Bytecodes::Code, constantPoolHandle const&, int, Thread*)+0x2d5 >> V [libjvm.dylib+0x37497d] Bytecode_invoke::static_target(Thread*)+0x7d >> V [libjvm.dylib+0xeb3a28] SharedRuntime::store_value_type_fields_to_buf(JavaThread*, long)+0x218 >> v ~RuntimeStub::store_value_type_fields_to_buf >> j runtime.valhalla.valuetypes.UnsafeTest.main([Ljava/lang/String;)V+30 >> >> >> When ValueTypeReturnedAsFields is disabled a null value is returned. I tried detecting whether the value oop is in the heap with: >> >> Universe::heap()->is_in_reserved(value) >> >> and reallocating but it made no difference. I also started debugging HS but i don?t understand enough about how the template interpreter works to ?interpret? the behaviour and track operations on the returned object. >> >> There is something asymmetric about the handling of jobject value arguments and jobject value return. >> >> >> Further more, does the creation of a jobject from a value oop require that the value be allocated on the heap? I think so otherwise i get failures for assertions such as: >> >> assert(Universe::heap()->is_in_reserved(obj), "sanity check"); >> >> Paul. >> >> >>> On 5 Jul 2017, at 10:51, Paul Sandoz wrote: >>> >>> >>>> On 5 Jul 2017, at 00:33, Roland Westrelin wrote: >>>> >>>> >>>> http://cr.openjdk.java.net/~roland/valhalla/vreturn-improv/webrev.00/ >>>> >>>> This patch: >>>> >>>> - reworks the verification logic in >>>> SharedRuntime::store_value_type_fields_to_buf() to address the crash >>>> that Paul encountered >>>> >>> >>> Thanks. I will verify this week when i update the Unsafe methods to be in sync with Fred?s latest changes. >>> >>> Paul. >>> >>>> - changes the vreturn convention so if we return the klass pointer + >>>> fields, the klass pointer is tagged by setting its least significant >>>> bit. This way it's cheaper for the caller to detect if it's getting an >>>> oop, a buffered value or a list of fields back from the callee. (this >>>> is based on a discussion with Fred) >>>> >>>> - stores precomputed extended signature and vreturn registers in the >>>> ValueKlass to not have to compute them every time they are >>>> needed. This is also something Fred suggested. I considered >>>> initializaing those fields on first use but came to the conclusion it >>>> would make things too complicated. For instance the vreturn registers >>>> are sometimes use at a point where the thread can't safepoint making >>>> it impossible to use a metadata Array. >>>> >>>> Roland. >>> >> > From tobias.hartmann at oracle.com Thu Jul 6 14:58:28 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 6 Jul 2017 16:58:28 +0200 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> <92fcc7f3-c138-137d-37f5-bb594a089747@oracle.com> <577cbe22-0bf3-2a44-5f79-116fc7bb6644@oracle.com> Message-ID: <685ca2c2-5cf5-1271-c4eb-81609a38db56@oracle.com> Hi Maurizio, thanks for the test, the problem is: https://bugs.openjdk.java.net/browse/JDK-8183111 You can disable the intrinsic with "-XX:+UnlockDiagnosticVMOptions -XX:DisableIntrinsic=_isAssignableFrom" as Mandy did for other tests: http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8181425/revised-fix/index.html I'll send the fix for review tomorrow. Best regards, Tobias On 06.07.2017 16:49, Maurizio Cimadamore wrote: > Attached is a simple and self-contained jtreg test. Please let me know what do you think. > > The test passes if you run with debugger enabled and you step inside Class.isValueClass - otherwise it fails. > > Maurizio > > > On 06/07/17 15:27, Maurizio Cimadamore wrote: >> Nope - there's something else going on here - probably some bad optimization? I can only reproduce the problem with -Xcomp and if I'm _not_ debugging. >> >> Maurizio >> >> >> On 06/07/17 15:15, Maurizio Cimadamore wrote: >>> Something is probably off with clasloaders - and that makes the test System.isValueClass (and Class.isValueClass) to fail. Investigating. >>> >>> Maurizio >>> >>> >>> On 06/07/17 15:08, Maurizio Cimadamore wrote: >>>> -Xcomp doesn't work - I get this: >>>> >>>> org.testng.TestNGException: >>>> An error occurred while instantiating class VectorTest: Long2$Value not a value type >>>> at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:393) >>>> at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:295) >>>> at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:117) >>>> at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:183) >>>> at org.testng.internal.TestNGClassFinder.(TestNGClassFinder.java:128) >>>> at org.testng.TestRunner.initMethods(TestRunner.java:415) >>>> at org.testng.TestRunner.init(TestRunner.java:241) >>>> at org.testng.TestRunner.init(TestRunner.java:211) >>>> at org.testng.TestRunner.(TestRunner.java:158) >>>> at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:545) >>>> at org.testng.SuiteRunner.init(SuiteRunner.java:159) >>>> at org.testng.SuiteRunner.(SuiteRunner.java:114) >>>> at org.testng.TestNG.createSuiteRunner(TestNG.java:1260) >>>> at org.testng.TestNG.createSuiteRunners(TestNG.java:1247) >>>> at org.testng.TestNG.runSuitesLocally(TestNG.java:1101) >>>> at org.testng.TestNG.run(TestNG.java:1018) >>>> at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94) >>>> at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54) >>>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>>> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>> at java.base/java.lang.reflect.Method.invoke(Method.java:563) >>>> at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:115) >>>> at java.base/java.lang.Thread.run(Thread.java:844) >>>> Caused by: java.lang.InternalError: Long2$Value not a value type >>>> at java.base/java.lang.System$2.loadValueTypeClass(System.java:2174) >>>> at java.base/valhalla.shady.MinimalValueTypes_1_0.loadValueTypeClass(MinimalValueTypes_1_0.java:114) >>>> at java.base/valhalla.shady.MinimalValueTypes_1_0.getValueTypeClass(MinimalValueTypes_1_0.java:107) >>>> at java.base/jdk.experimental.value.ValueType.forClass(ValueType.java:158) >>>> at VectorTest.(VectorTest.java:18) >>>> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) >>>> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) >>>> at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) >>>> at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:487) >>>> at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29) >>>> at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:382) >>>> ... 23 more >>>> >>>> >>>> Without -Xcomp, or with -Xint everything works. >>>> >>>> Any clues? >>>> >>>> Maurizio >>>> >>>> >>>> On 06/07/17 15:03, Maurizio Cimadamore wrote: >>>>> >>>>> >>>>> On 06/07/17 14:51, Tobias Hartmann wrote: >>>>>> On 06.07.2017 15:48, Maurizio Cimadamore wrote: >>>>>>> Not really, that's something that came from before your fix of JDK-8183129 now it can be safely removed if preferred. >>>>>>> >>>>>>> I will also remove -Xint flag from the test that I've already pushed. >>>>>> Okay, thanks! I think it would be best to have one run with -Xint and one with -Xcomp. >>>>>> >>>>>> Is there a reason you are using testng instead of a normal jtreg test? >>>>> testng makes it easier to add new test cases as you go along - with plain jtreg you really only have a main method. It is also easier to create things like data providers - e.g. create a bunch of objects and execute a given test method against each possible object in the data set. In other words, testng is typically more suited for writing unit tests, and the test report will be generally more useful e.g : >>>>> >>>>> test VectorTest.testConditional(): success >>>>> test VectorTest.testSumArray(1): success >>>>> test VectorTest.testSumArray(5): success >>>>> test VectorTest.testSumArray(10): success >>>>> test VectorTest.testSumArray(0): success >>>>> >>>>> =============================================== >>>>> valhalla/mvt/vector/VectorTest.java >>>>> Total tests run: 5, Failures: 0, Skips: 0 >>>>> =============================================== >>>>> >>>>> You can of course do all this with jtreg, but you have to do it manually, with the risk of replicating routines across multiple tests (e.g. assertEquals, etc.) >>>>> >>>>> >>>>> Maurizio >>>>> >>>>>> >>>>>> Best regards, >>>>>> Tobias >>>>>> >>>>>>> On 06/07/17 14:40, Tobias Hartmann wrote: >>>>>>>> Hi Maurizio, >>>>>>>> >>>>>>>> is there a reason that the test is only executed with -Xint? >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Tobias >>>>>>>> >>>>>>>> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>>>>>>>> Hi, >>>>>>>>> this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. >>>>>>>>> >>>>>>>>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>>>>>>>> >>>>>>>>> Cheers >>>>>>>>> Maurizio >>>>>>>>> >>>>> >>>> >>> >> > From maurizio.cimadamore at oracle.com Thu Jul 6 14:59:33 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 15:59:33 +0100 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <685ca2c2-5cf5-1271-c4eb-81609a38db56@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <8c723c6c-595e-202b-912c-262a3c6e7fbd@oracle.com> <1e3dc49f-837d-c641-ae49-200117d0caec@oracle.com> <26c20f80-c45b-941d-9611-4f97863bec73@oracle.com> <92fcc7f3-c138-137d-37f5-bb594a089747@oracle.com> <577cbe22-0bf3-2a44-5f79-116fc7bb6644@oracle.com> <685ca2c2-5cf5-1271-c4eb-81609a38db56@oracle.com> Message-ID: Thanks Maurizio On 06/07/17 15:58, Tobias Hartmann wrote: > Hi Maurizio, > > thanks for the test, the problem is: > https://bugs.openjdk.java.net/browse/JDK-8183111 > > You can disable the intrinsic with "-XX:+UnlockDiagnosticVMOptions -XX:DisableIntrinsic=_isAssignableFrom" as Mandy did for other tests: > http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8181425/revised-fix/index.html > > I'll send the fix for review tomorrow. > > Best regards, > Tobias > > On 06.07.2017 16:49, Maurizio Cimadamore wrote: >> Attached is a simple and self-contained jtreg test. Please let me know what do you think. >> >> The test passes if you run with debugger enabled and you step inside Class.isValueClass - otherwise it fails. >> >> Maurizio >> >> >> On 06/07/17 15:27, Maurizio Cimadamore wrote: >>> Nope - there's something else going on here - probably some bad optimization? I can only reproduce the problem with -Xcomp and if I'm _not_ debugging. >>> >>> Maurizio >>> >>> >>> On 06/07/17 15:15, Maurizio Cimadamore wrote: >>>> Something is probably off with clasloaders - and that makes the test System.isValueClass (and Class.isValueClass) to fail. Investigating. >>>> >>>> Maurizio >>>> >>>> >>>> On 06/07/17 15:08, Maurizio Cimadamore wrote: >>>>> -Xcomp doesn't work - I get this: >>>>> >>>>> org.testng.TestNGException: >>>>> An error occurred while instantiating class VectorTest: Long2$Value not a value type >>>>> at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:393) >>>>> at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:295) >>>>> at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:117) >>>>> at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:183) >>>>> at org.testng.internal.TestNGClassFinder.(TestNGClassFinder.java:128) >>>>> at org.testng.TestRunner.initMethods(TestRunner.java:415) >>>>> at org.testng.TestRunner.init(TestRunner.java:241) >>>>> at org.testng.TestRunner.init(TestRunner.java:211) >>>>> at org.testng.TestRunner.(TestRunner.java:158) >>>>> at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:545) >>>>> at org.testng.SuiteRunner.init(SuiteRunner.java:159) >>>>> at org.testng.SuiteRunner.(SuiteRunner.java:114) >>>>> at org.testng.TestNG.createSuiteRunner(TestNG.java:1260) >>>>> at org.testng.TestNG.createSuiteRunners(TestNG.java:1247) >>>>> at org.testng.TestNG.runSuitesLocally(TestNG.java:1101) >>>>> at org.testng.TestNG.run(TestNG.java:1018) >>>>> at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94) >>>>> at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54) >>>>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>>>> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>> at java.base/java.lang.reflect.Method.invoke(Method.java:563) >>>>> at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:115) >>>>> at java.base/java.lang.Thread.run(Thread.java:844) >>>>> Caused by: java.lang.InternalError: Long2$Value not a value type >>>>> at java.base/java.lang.System$2.loadValueTypeClass(System.java:2174) >>>>> at java.base/valhalla.shady.MinimalValueTypes_1_0.loadValueTypeClass(MinimalValueTypes_1_0.java:114) >>>>> at java.base/valhalla.shady.MinimalValueTypes_1_0.getValueTypeClass(MinimalValueTypes_1_0.java:107) >>>>> at java.base/jdk.experimental.value.ValueType.forClass(ValueType.java:158) >>>>> at VectorTest.(VectorTest.java:18) >>>>> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) >>>>> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) >>>>> at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) >>>>> at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:487) >>>>> at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29) >>>>> at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:382) >>>>> ... 23 more >>>>> >>>>> >>>>> Without -Xcomp, or with -Xint everything works. >>>>> >>>>> Any clues? >>>>> >>>>> Maurizio >>>>> >>>>> >>>>> On 06/07/17 15:03, Maurizio Cimadamore wrote: >>>>>> >>>>>> On 06/07/17 14:51, Tobias Hartmann wrote: >>>>>>> On 06.07.2017 15:48, Maurizio Cimadamore wrote: >>>>>>>> Not really, that's something that came from before your fix of JDK-8183129 now it can be safely removed if preferred. >>>>>>>> >>>>>>>> I will also remove -Xint flag from the test that I've already pushed. >>>>>>> Okay, thanks! I think it would be best to have one run with -Xint and one with -Xcomp. >>>>>>> >>>>>>> Is there a reason you are using testng instead of a normal jtreg test? >>>>>> testng makes it easier to add new test cases as you go along - with plain jtreg you really only have a main method. It is also easier to create things like data providers - e.g. create a bunch of objects and execute a given test method against each possible object in the data set. In other words, testng is typically more suited for writing unit tests, and the test report will be generally more useful e.g : >>>>>> >>>>>> test VectorTest.testConditional(): success >>>>>> test VectorTest.testSumArray(1): success >>>>>> test VectorTest.testSumArray(5): success >>>>>> test VectorTest.testSumArray(10): success >>>>>> test VectorTest.testSumArray(0): success >>>>>> >>>>>> =============================================== >>>>>> valhalla/mvt/vector/VectorTest.java >>>>>> Total tests run: 5, Failures: 0, Skips: 0 >>>>>> =============================================== >>>>>> >>>>>> You can of course do all this with jtreg, but you have to do it manually, with the risk of replicating routines across multiple tests (e.g. assertEquals, etc.) >>>>>> >>>>>> >>>>>> Maurizio >>>>>> >>>>>>> Best regards, >>>>>>> Tobias >>>>>>> >>>>>>>> On 06/07/17 14:40, Tobias Hartmann wrote: >>>>>>>>> Hi Maurizio, >>>>>>>>> >>>>>>>>> is there a reason that the test is only executed with -Xint? >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Tobias >>>>>>>>> >>>>>>>>> On 06.07.2017 15:28, Maurizio Cimadamore wrote: >>>>>>>>>> Hi, >>>>>>>>>> this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. >>>>>>>>>> >>>>>>>>>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>>>>>>>>> >>>>>>>>>> Cheers >>>>>>>>>> Maurizio >>>>>>>>>> From maurizio.cimadamore at oracle.com Thu Jul 6 15:00:49 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 16:00:49 +0100 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <660841B1-009C-4C4D-8664-7CE4DA611134@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <660841B1-009C-4C4D-8664-7CE4DA611134@oracle.com> Message-ID: unreflectWithers fails with NPE: n error occurred while instantiating class VectorTest: java.lang.NullPointerException at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:393) at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:295) at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:117) at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:183) at org.testng.internal.TestNGClassFinder.(TestNGClassFinder.java:128) at org.testng.TestRunner.initMethods(TestRunner.java:415) at org.testng.TestRunner.init(TestRunner.java:241) at org.testng.TestRunner.init(TestRunner.java:211) at org.testng.TestRunner.(TestRunner.java:158) at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:545) at org.testng.SuiteRunner.init(SuiteRunner.java:159) at org.testng.SuiteRunner.(SuiteRunner.java:114) at org.testng.TestNG.createSuiteRunner(TestNG.java:1260) at org.testng.TestNG.createSuiteRunners(TestNG.java:1247) at org.testng.TestNG.runSuitesLocally(TestNG.java:1101) at org.testng.TestNG.run(TestNG.java:1018) at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94) at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:563) at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:115) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.Error: java.lang.NullPointerException at VectorUtils.valueFactory(VectorUtils.java:111) at Long2.(Long2.java:16) at VectorLibrary$L2.(VectorLibrary.java:17) at VectorTest.(VectorTest.java:33) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:487) at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29) at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:382) ... 23 more Caused by: java.lang.NullPointerException at java.base/jdk.experimental.bytecode.BasicClassBuilder$BasicTypeHelper.tag(BasicClassBuilder.java:582) at java.base/jdk.experimental.value.MethodHandleBuilder$IsolatedMethodBuilder$IsolatedMethodTypeHelper.tag(MethodHandleBuilder.java:183) at java.base/jdk.experimental.value.MethodHandleBuilder$IsolatedMethodBuilder$IsolatedMethodTypeHelper.tag(MethodHandleBuilder.java:123) at java.base/jdk.experimental.bytecode.TypedCodeBuilder.load(TypedCodeBuilder.java:984) at java.base/jdk.experimental.value.ValueType.lambda$unreflectWithers$4(ValueType.java:326) at java.base/jdk.experimental.bytecode.MethodBuilder.withCode(MethodBuilder.java:50) at java.base/jdk.experimental.value.MethodHandleBuilder.lambda$loadCode$1(MethodHandleBuilder.java:94) at java.base/jdk.experimental.bytecode.ClassBuilder.withMethod(ClassBuilder.java:103) at java.base/jdk.experimental.value.MethodHandleBuilder.loadCode(MethodHandleBuilder.java:92) at java.base/jdk.experimental.value.MethodHandleBuilder.loadCode(MethodHandleBuilder.java:70) at java.base/jdk.experimental.value.MethodHandleBuilder.loadCode(MethodHandleBuilder.java:66) at java.base/jdk.experimental.value.ValueType.unreflectWithers(ValueType.java:314) at VectorUtils.valueFactory(VectorUtils.java:109) ... 32 more I think the cause is that unreflect wither is failing to handle double slots ('i' is always incremented by one). Can you please take a look? Thanks Maurizio On 06/07/17 15:41, Paul Sandoz wrote: >> On 6 Jul 2017, at 06:28, Maurizio Cimadamore wrote: >> >> Hi, >> this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. >> >> http://cr.openjdk.java.net/~mcimadamore/8183938/ >> > Looks good. Minor stuff: > > Utils > -- > > 33 // Copied from jdk.experimental.value.ValueType > 34 public static Field[] valueFields(ValueType vt) { > 35 int valFieldMask = Modifier.FINAL; > 36 return Stream.of(vt.sourceClass().getDeclaredFields()) > 37 .filter(f -> (f.getModifiers() & (valFieldMask | Modifier.STATIC)) == valFieldMask) > 38 .toArray(Field[]::new); > 39 } > > There is now a public method on ValueType to obtain the value fields, but also see the following. > > > VectorUtils > ? > > 106 static MethodHandle valueFactory(Class vcc, MethodHandles.Lookup lookup) { > > This method could be removed and calls replaced with the unreflectWithers, or probably better is to replace the implementation with unreflectWithers. > > Since your Point test already has a combo constructor i think we have this case covered. > > Paul. From tobias.hartmann at oracle.com Thu Jul 6 15:01:42 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 6 Jul 2017 17:01:42 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> <13cb8333-27f6-a90a-2105-6858bb5d0a05@oracle.com> <8896C1DC-23FD-435A-B38E-6AEDF9F01574@oracle.com> <15fe38a9-d2f0-fd79-c3d9-13bba1593fc2@oracle.com> Message-ID: <617da8d0-9e7b-3d8f-e66c-179105dcb41b@oracle.com> Is everyone fine with the latest webrev? Thanks, Tobias On 05.07.2017 18:47, Tobias Hartmann wrote: > Hi, > > here's the new fix: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.28/ > > I had to compare the name instead of the Klass because SystemDictionary::___Value_klass() is not available. If value types are disabled, CompileTheWorld now simply skips the methods: > CompileTheWorld (18361) : java/lang/__Value > CompileTheWorld (18361) : Skipping method: java.lang.__Value.()V > CompileTheWorld (18361) : Skipping method: java.lang.__Value.equals(Ljava/lang/Object;)Z > CompileTheWorld (18361) : Skipping method: java.lang.__Value.toString()Ljava/lang/String; > CompileTheWorld (18361) : Skipping method: java.lang.__Value.hashCode()I > CompileTheWorld (18361) : Skipping method: java.lang.__Value.getClass()Ljava/lang/Class; > > Best regards, > Tobias > > On 05.07.2017 16:23, Tobias Hartmann wrote: >> Hi Karen, >> >> On 05.07.2017 15:46, Karen Kinnear wrote: >>> It seems wrong to me to enable MVT if CompileTheWorld is true. >>> It makes more sense to me to explicitly disable compiling java.lang.__Value if !EnableMVT && !EnableValhalla. >> >> Yes, that's correct but I was concerned that there are other points of friction where we may encounter __Value although MVT/Valhalla is not enabled. For example, in Class::isValueClass() we reference __Value [1]. Looking at it again, it shouldn't be a problem (it actually is the same with -Xcomp). >> >> That said, I agree that we should probably just disable compilation of __Value if CompileTheWorld is true. I'll prepare a new fix. >> >> Thanks, >> Tobias >> >> [1] http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8181425/revised-fix/jdk/src/java.base/share/classes/java/lang/Class.java.sdiff.html >> >>>> On Jul 5, 2017, at 9:18 AM, Tobias Hartmann wrote: >>>> >>>> Thanks Roland! >>>> >>>> (I'll look at your changes as soon as possible, just very busy with other stuff atm). >>>> >>>> Best regards, >>>> Tobias >>>> >>>> On 05.07.2017 15:09, Roland Westrelin wrote: >>>>> >>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/ >>>>> >>>>> Looks ok to me. >>>>> >>>>> Roland. >>>>> >>> From paul.sandoz at oracle.com Thu Jul 6 15:03:49 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 6 Jul 2017 08:03:49 -0700 Subject: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <660841B1-009C-4C4D-8664-7CE4DA611134@oracle.com> Message-ID: <3DA4DBEC-C934-4484-8F75-5135B5D7A1F6@oracle.com> Yes, i will take a look, don?t let this block pushing what you have. Paul. > On 6 Jul 2017, at 08:00, Maurizio Cimadamore wrote: > > unreflectWithers fails with NPE: > > n error occurred while instantiating class VectorTest: java.lang.NullPointerException > at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:393) > at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:295) > at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:117) > at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:183) > at org.testng.internal.TestNGClassFinder.(TestNGClassFinder.java:128) > at org.testng.TestRunner.initMethods(TestRunner.java:415) > at org.testng.TestRunner.init(TestRunner.java:241) > at org.testng.TestRunner.init(TestRunner.java:211) > at org.testng.TestRunner.(TestRunner.java:158) > at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:545) > at org.testng.SuiteRunner.init(SuiteRunner.java:159) > at org.testng.SuiteRunner.(SuiteRunner.java:114) > at org.testng.TestNG.createSuiteRunner(TestNG.java:1260) > at org.testng.TestNG.createSuiteRunners(TestNG.java:1247) > at org.testng.TestNG.runSuitesLocally(TestNG.java:1101) > at org.testng.TestNG.run(TestNG.java:1018) > at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94) > at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54) > at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.base/java.lang.reflect.Method.invoke(Method.java:563) > at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:115) > at java.base/java.lang.Thread.run(Thread.java:844) > Caused by: java.lang.Error: java.lang.NullPointerException > at VectorUtils.valueFactory(VectorUtils.java:111) > at Long2.(Long2.java:16) > at VectorLibrary$L2.(VectorLibrary.java:17) > at VectorTest.(VectorTest.java:33) > at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:487) > at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29) > at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:382) > ... 23 more > Caused by: java.lang.NullPointerException > at java.base/jdk.experimental.bytecode.BasicClassBuilder$BasicTypeHelper.tag(BasicClassBuilder.java:582) > at java.base/jdk.experimental.value.MethodHandleBuilder$IsolatedMethodBuilder$IsolatedMethodTypeHelper.tag(MethodHandleBuilder.java:183) > at java.base/jdk.experimental.value.MethodHandleBuilder$IsolatedMethodBuilder$IsolatedMethodTypeHelper.tag(MethodHandleBuilder.java:123) > at java.base/jdk.experimental.bytecode.TypedCodeBuilder.load(TypedCodeBuilder.java:984) > at java.base/jdk.experimental.value.ValueType.lambda$unreflectWithers$4(ValueType.java:326) > at java.base/jdk.experimental.bytecode.MethodBuilder.withCode(MethodBuilder.java:50) > at java.base/jdk.experimental.value.MethodHandleBuilder.lambda$loadCode$1(MethodHandleBuilder.java:94) > at java.base/jdk.experimental.bytecode.ClassBuilder.withMethod(ClassBuilder.java:103) > at java.base/jdk.experimental.value.MethodHandleBuilder.loadCode(MethodHandleBuilder.java:92) > at java.base/jdk.experimental.value.MethodHandleBuilder.loadCode(MethodHandleBuilder.java:70) > at java.base/jdk.experimental.value.MethodHandleBuilder.loadCode(MethodHandleBuilder.java:66) > at java.base/jdk.experimental.value.ValueType.unreflectWithers(ValueType.java:314) > at VectorUtils.valueFactory(VectorUtils.java:109) > ... 32 more > > > I think the cause is that unreflect wither is failing to handle double slots ('i' is always incremented by one). > > Can you please take a look? > > Thanks > Maurizio > > > On 06/07/17 15:41, Paul Sandoz wrote: >>> On 6 Jul 2017, at 06:28, Maurizio Cimadamore wrote: >>> >>> Hi, >>> this changeset adds the mock vector API test that Vlad has worked on. I cleaned it up a bit and converted to a working testng test. >>> >>> http://cr.openjdk.java.net/~mcimadamore/8183938/ >>> >> Looks good. Minor stuff: >> >> Utils >> -- >> >> 33 // Copied from jdk.experimental.value.ValueType >> 34 public static Field[] valueFields(ValueType vt) { >> 35 int valFieldMask = Modifier.FINAL; >> 36 return Stream.of(vt.sourceClass().getDeclaredFields()) >> 37 .filter(f -> (f.getModifiers() & (valFieldMask | Modifier.STATIC)) == valFieldMask) >> 38 .toArray(Field[]::new); >> 39 } >> >> There is now a public method on ValueType to obtain the value fields, but also see the following. >> >> >> VectorUtils >> ? >> >> 106 static MethodHandle valueFactory(Class vcc, MethodHandles.Lookup lookup) { >> >> This method could be removed and calls replaced with the unreflectWithers, or probably better is to replace the implementation with unreflectWithers. >> >> Since your Point test already has a combo constructor i think we have this case covered. >> >> Paul. > From rwestrel at redhat.com Thu Jul 6 15:07:06 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jul 2017 17:07:06 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: <617da8d0-9e7b-3d8f-e66c-179105dcb41b@oracle.com> References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> <13cb8333-27f6-a90a-2105-6858bb5d0a05@oracle.com> <8896C1DC-23FD-435A-B38E-6AEDF9F01574@oracle.com> <15fe38a9-d2f0-fd79-c3d9-13bba1593fc2@oracle.com> <617da8d0-9e7b-3d8f-e66c-179105dcb41b@oracle.com> Message-ID: > Is everyone fine with the latest webrev? I am. Roland. From rwestrel at redhat.com Thu Jul 6 15:36:56 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jul 2017 17:36:56 +0200 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: <4fb154d1-002d-8af0-059c-ad67a4b20a50@oracle.com> References: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> <4fb154d1-002d-8af0-059c-ad67a4b20a50@oracle.com> Message-ID: Here is a first shot: http://cr.openjdk.java.net/~roland/8183137/webrev.00/ I don't see the allocations in your test anymore. Can you give it a try? Roland. From rwestrel at redhat.com Thu Jul 6 15:52:15 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jul 2017 17:52:15 +0200 Subject: RFR: 8182997: [MVT] ValueTypeArray.java fails with "assert(false) failed: unexpected TypeAryPtr::_klass" In-Reply-To: References: <7691daa0-ea2e-0c6a-29c1-e6488e45cdfc@oracle.com> Message-ID: Thanks for the review. > Okay, that's unfortunate. I'm fine with the changes but maybe you > could guard the symbol scanning code by ValueArrayFlatten or > EnableValhalla/EnableMVT. I don't think flattened arrays make a difference here. We could also assert for EnableValhalla || EnableMVT if the logic find a [Q array declaration. Or do you think that logic must be skipped if !EnableValhalla && !EnableMVT? Roland. From rwestrel at redhat.com Thu Jul 6 15:53:55 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jul 2017 17:53:55 +0200 Subject: JNI was Re: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: References: <1BBA7FDC-694E-4085-BE5F-CAAAA5D20CD9@oracle.com> <6A0D431D-E238-44DA-8A56-C8E9719BB770@oracle.com> Message-ID: Hi Paul, Thanks for trying the patch. > Slight change in behaviour with the patch applied. Now i observe null > returned if ValueTypeReturnedAsFields is enabled or disabled. (Note > this behaviour is observed when running with -Xint). So no more crash? I will push that change then as is then. Roland. From rwestrel at redhat.com Thu Jul 6 15:54:18 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jul 2017 17:54:18 +0200 Subject: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: References: Message-ID: > Runtime portions look good, can't answer for the JIT specifics... Thanks for the review! Roland. From paul.sandoz at oracle.com Thu Jul 6 15:56:01 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 6 Jul 2017 08:56:01 -0700 Subject: JNI was Re: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: References: <1BBA7FDC-694E-4085-BE5F-CAAAA5D20CD9@oracle.com> <6A0D431D-E238-44DA-8A56-C8E9719BB770@oracle.com> Message-ID: <019269CC-CA33-43A3-A60D-EA89D1201538@oracle.com> > On 6 Jul 2017, at 08:53, Roland Westrelin wrote: > > > Hi Paul, > > Thanks for trying the patch. > >> Slight change in behaviour with the patch applied. Now i observe null >> returned if ValueTypeReturnedAsFields is enabled or disabled. (Note >> this behaviour is observed when running with -Xint). > > So no more crash? Correct, no more crash when running with -Xint. > I will push that change then as is then. > Ok. Paul. From maurizio.cimadamore at oracle.com Thu Jul 6 16:41:24 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Thu, 06 Jul 2017 16:41:24 +0000 Subject: hg: valhalla/valhalla/jdk: 8183938: [MVT] Add test for mock vector API Message-ID: <201707061641.v66GfOHk022226@aojmv0008.oracle.com> Changeset: 5e557e358b19 Author: mcimadamore Date: 2017-07-06 15:53 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5e557e358b19 8183938: [MVT] Add test for mock vector API Summary: Add new tests mimicking vector API usage Reviewed-by: psandoz, thartmann Contributed-by: vladimir.x.ivanov at oracle.com + test/valhalla/mvt/vector/Long2.java + test/valhalla/mvt/vector/Utils.java + test/valhalla/mvt/vector/VectorLibrary.java + test/valhalla/mvt/vector/VectorTest.java + test/valhalla/mvt/vector/VectorUtils.java From paul.sandoz at oracle.com Thu Jul 6 17:36:34 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 6 Jul 2017 10:36:34 -0700 Subject: unreflectWithers fix for double slot args Re: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <3DA4DBEC-C934-4484-8F75-5135B5D7A1F6@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <660841B1-009C-4C4D-8664-7CE4DA611134@oracle.com> <3DA4DBEC-C934-4484-8F75-5135B5D7A1F6@oracle.com> Message-ID: <2A156299-02AD-41C6-8D24-1B382234E978@oracle.com> Here?s a fix: http://cr.openjdk.java.net/~psandoz/valhalla/unreflect-wither-double-slots/webrev/ Paul. > On 6 Jul 2017, at 08:03, Paul Sandoz wrote: > > Yes, i will take a look, don?t let this block pushing what you have. > > Paul. > From maurizio.cimadamore at oracle.com Thu Jul 6 21:19:31 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 6 Jul 2017 22:19:31 +0100 Subject: unreflectWithers fix for double slot args Re: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: <2A156299-02AD-41C6-8D24-1B382234E978@oracle.com> References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <660841B1-009C-4C4D-8664-7CE4DA611134@oracle.com> <3DA4DBEC-C934-4484-8F75-5135B5D7A1F6@oracle.com> <2A156299-02AD-41C6-8D24-1B382234E978@oracle.com> Message-ID: Looks good - thanks P.S. for future references, the bytecode API's TypeTag class also has a 'width' method that give you the number of slots. In this case, since you already have a basic type, what you did is good. http://hg.openjdk.java.net/valhalla/valhalla/jdk/file/tip/src/java.base/share/classes/jdk/experimental/bytecode/TypeTag.java#l63 Maurizio On 06/07/17 18:36, Paul Sandoz wrote: > Here?s a fix: > > http://cr.openjdk.java.net/~psandoz/valhalla/unreflect-wither-double-slots/webrev/ > > > > Paul. > >> On 6 Jul 2017, at 08:03, Paul Sandoz > > wrote: >> >> Yes, i will take a look, don?t let this block pushing what you have. >> >> Paul. >> From paul.sandoz at oracle.com Thu Jul 6 21:28:39 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 6 Jul 2017 14:28:39 -0700 Subject: unreflectWithers fix for double slot args Re: RFR 8183938: [MVT] Add test for mock vector API In-Reply-To: References: <4b740f16-197d-b306-ebdd-5f39d68d15ba@oracle.com> <660841B1-009C-4C4D-8664-7CE4DA611134@oracle.com> <3DA4DBEC-C934-4484-8F75-5135B5D7A1F6@oracle.com> <2A156299-02AD-41C6-8D24-1B382234E978@oracle.com> Message-ID: <38CE998E-6B30-4B84-A1E4-3E03F9775684@oracle.com> > On 6 Jul 2017, at 14:19, Maurizio Cimadamore wrote: > > Looks good - thanks > > P.S. > > for future references, the bytecode API's TypeTag class also has a 'width' method that give you the number of slots. In this case, since you already have a basic type, what you did is good. > > http://hg.openjdk.java.net/valhalla/valhalla/jdk/file/tip/src/java.base/share/classes/jdk/experimental/bytecode/TypeTag.java#l63 > Thanks, good to know as i was a little unsure if i took the right approach. FWIW Wrapper.forBasicType knows nothing of Q types, but in this case it?s harmless. Paul. From paul.sandoz at oracle.com Thu Jul 6 21:39:42 2017 From: paul.sandoz at oracle.com (paul.sandoz at oracle.com) Date: Thu, 06 Jul 2017 21:39:42 +0000 Subject: hg: valhalla/valhalla/jdk: Fix bug in unreflectWithers to correctly support arguments whose values Message-ID: <201707062139.v66Ldg14006221@aojmv0008.oracle.com> Changeset: f0d2ba859ce1 Author: psandoz Date: 2017-07-06 14:37 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f0d2ba859ce1 Fix bug in unreflectWithers to correctly support arguments whose values take double slots. ! src/java.base/share/classes/jdk/experimental/value/ValueType.java ! test/valhalla/mvt/UnreflectWithersTest.java ! test/valhalla/mvt/vector/VectorUtils.java From paul.sandoz at oracle.com Fri Jul 7 00:23:45 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 6 Jul 2017 17:23:45 -0700 Subject: JNI was Re: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: References: <1BBA7FDC-694E-4085-BE5F-CAAAA5D20CD9@oracle.com> <6A0D431D-E238-44DA-8A56-C8E9719BB770@oracle.com> Message-ID: <38E33558-1754-4BF0-B567-7A0F871B9050@oracle.com> I got a basic test working, see updated in place webrevs. There were T_VALUETYPE cases missing in the code for generating native entries and wrappers, not sure i got all of ?em, and if the approach in general is fully correct. The Unsafe native method returns a jobject requiring that the value oop is allocated on the heap. That might be ok since i expect any C1/C2 intrinsic will optimize. However, for JNI in general perhaps there needs to be some refinement and i am guessing some aspects of JNI will anyway require an overhaul at some point. Paul. > On 6 Jul 2017, at 07:58, Paul Sandoz wrote: > > Slight change in behaviour with the patch applied. Now i observe null returned if ValueTypeReturnedAsFields is enabled or disabled. (Note this behaviour is observed when running with -Xint). > > This is currently what i am using: > > http://cr.openjdk.java.net/~psandoz/valhalla/unsafe-value-jdk/webrev/ > http://cr.openjdk.java.net/~psandoz/valhalla/unsafe-value-hotspot/webrev/ > > Paul. > From tobias.hartmann at oracle.com Fri Jul 7 07:02:47 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 7 Jul 2017 09:02:47 +0200 Subject: RFR: 8182997: [MVT] ValueTypeArray.java fails with "assert(false) failed: unexpected TypeAryPtr::_klass" In-Reply-To: References: <7691daa0-ea2e-0c6a-29c1-e6488e45cdfc@oracle.com> Message-ID: <5683a8e0-8135-ee88-3d2f-fbf238ab32f5@oracle.com> On 06.07.2017 17:52, Roland Westrelin wrote: > I don't think flattened arrays make a difference here. We could also > assert for EnableValhalla || EnableMVT if the logic find a [Q array > declaration. Or do you think that logic must be skipped if > !EnableValhalla && !EnableMVT? Right, I think an assert is fine. Thanks, Tobias From rwestrel at redhat.com Fri Jul 7 07:05:02 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 07 Jul 2017 09:05:02 +0200 Subject: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: <2AF102DB-CBE2-4D30-8840-EFD51570A636@oracle.com> References: <2AF102DB-CBE2-4D30-8840-EFD51570A636@oracle.com> Message-ID: > valueKlass.cpp:442: Missing message in assert? I will add the message back. Thanks for the review. Roland. From tobias.hartmann at oracle.com Fri Jul 7 07:07:44 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 07 Jul 2017 07:07:44 +0000 Subject: hg: valhalla/valhalla/hotspot: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() Message-ID: <201707070707.v6777j4M006975@aojmv0008.oracle.com> Changeset: 11407244949d Author: thartmann Date: 2017-07-07 09:05 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/11407244949d [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() Reviewed-by: roland, dsimms, acorn ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/runtime/arguments.cpp From tobias.hartmann at oracle.com Fri Jul 7 07:06:03 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 7 Jul 2017 09:06:03 +0200 Subject: RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded() In-Reply-To: References: <93f355ca-ac63-5e29-51dd-2fdbd88aa747@oracle.com> <13cb8333-27f6-a90a-2105-6858bb5d0a05@oracle.com> <8896C1DC-23FD-435A-B38E-6AEDF9F01574@oracle.com> <15fe38a9-d2f0-fd79-c3d9-13bba1593fc2@oracle.com> <617da8d0-9e7b-3d8f-e66c-179105dcb41b@oracle.com> Message-ID: <36946a91-b6f7-1830-f748-23c668b4c578@oracle.com> Thanks, I pushed this. Best regards, Tobias On 06.07.2017 17:07, Roland Westrelin wrote: > >> Is everyone fine with the latest webrev? > > I am. > > Roland. > From rwestrel at redhat.com Fri Jul 7 07:40:19 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 07 Jul 2017 09:40:19 +0200 Subject: RFR: 8183546: [MVT] cleanup/improve vreturn convention implementation In-Reply-To: <660627b5-a577-6ca0-7ebb-476652c8aba1@oracle.com> References: <660627b5-a577-6ca0-7ebb-476652c8aba1@oracle.com> Message-ID: Thanks for reviewing this. > One minor suggestion: I would prefer to use mask macros to make the "& > 1" and "& ~1L" operations more explicit. Good suggestion. I changed the code to use set_nth_bit/clear_nth_bit/is_set_nth_bit. Roland. From rwestrel at redhat.com Fri Jul 7 08:15:41 2017 From: rwestrel at redhat.com (rwestrel at redhat.com) Date: Fri, 07 Jul 2017 08:15:41 +0000 Subject: hg: valhalla/valhalla/hotspot: 8183546: [MVT] cleanup/improve vreturn convention implementation Message-ID: <201707070815.v678Ff9c003316@aojmv0008.oracle.com> Changeset: eb2fdbd0695d Author: roland Date: 2017-07-07 09:41 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/eb2fdbd0695d 8183546: [MVT] cleanup/improve vreturn convention implementation Reviewed-by: dsimms, fparain, thartmann ! src/share/vm/ci/ciValueKlass.hpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/valueKlass.cpp ! src/share/vm/oops/valueKlass.hpp ! src/share/vm/opto/type.cpp ! src/share/vm/opto/valuetypenode.cpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/utilities/growableArray.hpp From rwestrel at redhat.com Fri Jul 7 08:16:03 2017 From: rwestrel at redhat.com (rwestrel at redhat.com) Date: Fri, 07 Jul 2017 08:16:03 +0000 Subject: hg: valhalla/valhalla/hotspot: 8182997: [MVT] ValueTypeArray.java fails with "assert(false) failed: unexpected TypeAryPtr::_klass" Message-ID: <201707070816.v678G3LH003636@aojmv0008.oracle.com> Changeset: 988c2fda6c55 Author: roland Date: 2017-07-07 10:04 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/988c2fda6c55 8182997: [MVT] ValueTypeArray.java fails with "assert(false) failed: unexpected TypeAryPtr::_klass" Reviewed-by: thartmann ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciValueArrayKlass.cpp + test/compiler/valhalla/valuetypes/TestUnloadedValueTypeArray.java From maurizio.cimadamore at oracle.com Fri Jul 7 10:22:15 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 7 Jul 2017 11:22:15 +0100 Subject: RFR 8183924: [MVT] -Djava.lang.invoke.MethodHandle.DUMP_CLASS_FILES=true fails to dump DVT In-Reply-To: <17d3d8b6-096a-d9be-72e7-9f3a8474fda6@oracle.com> References: <17d3d8b6-096a-d9be-72e7-9f3a8474fda6@oracle.com> Message-ID: <42d86f93-4fa8-8596-7e41-5bdaf11cd58c@oracle.com> Ping? Maurizio On 06/07/17 13:23, Maurizio Cimadamore wrote: > Hi, > this is a simple fix for an issue in DUMP_CLASS_FILES support - if the > DVT is generated inside a package, the support fails to create the > required dirs, causing an error. > > http://cr.openjdk.java.net/~mcimadamore/8183924/ > > Cheers > Maurizio > From tobias.hartmann at oracle.com Fri Jul 7 10:24:10 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 7 Jul 2017 12:24:10 +0200 Subject: RFR 8183924: [MVT] -Djava.lang.invoke.MethodHandle.DUMP_CLASS_FILES=true fails to dump DVT In-Reply-To: <42d86f93-4fa8-8596-7e41-5bdaf11cd58c@oracle.com> References: <17d3d8b6-096a-d9be-72e7-9f3a8474fda6@oracle.com> <42d86f93-4fa8-8596-7e41-5bdaf11cd58c@oracle.com> Message-ID: <7c5987b8-cae5-d652-6246-f8eb01ab7c56@oracle.com> Hi Maurizio, looks good to me. Best regards, Tobias On 07.07.2017 12:22, Maurizio Cimadamore wrote: > Ping? > > Maurizio > > > On 06/07/17 13:23, Maurizio Cimadamore wrote: >> Hi, >> this is a simple fix for an issue in DUMP_CLASS_FILES support - if the DVT is generated inside a package, the support fails to create the required dirs, causing an error. >> >> http://cr.openjdk.java.net/~mcimadamore/8183924/ >> >> Cheers >> Maurizio >> > From vladimir.x.ivanov at oracle.com Fri Jul 7 12:19:49 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Fri, 7 Jul 2017 15:19:49 +0300 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: References: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> <4fb154d1-002d-8af0-059c-ad67a4b20a50@oracle.com> Message-ID: <1f66d25d-2914-993e-989d-7edfce5711f6@oracle.com> > Here is a first shot: > > http://cr.openjdk.java.net/~roland/8183137/webrev.00/ > > I don't see the allocations in your test anymore. Can you give it a try? Thanks, Roland! I confirm that there are no allocations left in the loop test I wrote (VectorTest::sumArrayL2). I'll experiment with other code shapes and let you know about the results. Best regards, Vladimir Ivanov From maurizio.cimadamore at oracle.com Fri Jul 7 13:56:25 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Fri, 07 Jul 2017 13:56:25 +0000 Subject: hg: valhalla/valhalla/jdk: 8183924: [MVT] -Djava.lang.invoke.MethodHandle.DUMP_CLASS_FILES=true fails to dump DVT Message-ID: <201707071356.v67DuPD3011332@aojmv0008.oracle.com> Changeset: 90c4e2c4ff97 Author: mcimadamore Date: 2017-07-07 14:53 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/90c4e2c4ff97 8183924: [MVT] -Djava.lang.invoke.MethodHandle.DUMP_CLASS_FILES=true fails to dump DVT Summary: maybeDump() does not add intermediate fodlers Reviewed-by: thartmann ! src/java.base/share/classes/valhalla/shady/MinimalValueTypes_1_0.java From rwestrel at redhat.com Fri Jul 7 14:03:05 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 07 Jul 2017 16:03:05 +0200 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: <1f66d25d-2914-993e-989d-7edfce5711f6@oracle.com> References: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> <4fb154d1-002d-8af0-059c-ad67a4b20a50@oracle.com> <1f66d25d-2914-993e-989d-7edfce5711f6@oracle.com> Message-ID: > Thanks, Roland! I confirm that there are no allocations left in the loop > test I wrote (VectorTest::sumArrayL2). I'll experiment with other code > shapes and let you know about the results. Thanks for giving it a try! Roland. From paul.sandoz at oracle.com Fri Jul 7 15:22:27 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Fri, 7 Jul 2017 08:22:27 -0700 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: <1f66d25d-2914-993e-989d-7edfce5711f6@oracle.com> References: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> <4fb154d1-002d-8af0-059c-ad67a4b20a50@oracle.com> <1f66d25d-2914-993e-989d-7edfce5711f6@oracle.com> Message-ID: Hi Vladimir, How do you determine if there are allocations or not? some specific hotspot flags? Thanks, Paul. > On 7 Jul 2017, at 05:19, Vladimir Ivanov wrote: > >> Here is a first shot: >> http://cr.openjdk.java.net/~roland/8183137/webrev.00/ >> I don't see the allocations in your test anymore. Can you give it a try? > > Thanks, Roland! I confirm that there are no allocations left in the loop test I wrote (VectorTest::sumArrayL2). I'll experiment with other code shapes and let you know about the results. > > Best regards, > Vladimir Ivanov From vladimir.x.ivanov at oracle.com Fri Jul 7 15:52:39 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Fri, 7 Jul 2017 18:52:39 +0300 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: References: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> <4fb154d1-002d-8af0-059c-ad67a4b20a50@oracle.com> <1f66d25d-2914-993e-989d-7edfce5711f6@oracle.com> Message-ID: <1e1a1384-44b3-e439-d63a-bbefcf29f551@oracle.com> > How do you determine if there are allocations or not? some specific hotspot flags? Yes, diagnostic EA output and eyeballing generated code (w/ -XX:-UseTLAB): -XX:+PrintEliminateAllocations -XX:+PrintEscapeAnalysis Best regards, Vladimir Ivanov >> On 7 Jul 2017, at 05:19, Vladimir Ivanov wrote: >> >>> Here is a first shot: >>> http://cr.openjdk.java.net/~roland/8183137/webrev.00/ >>> I don't see the allocations in your test anymore. Can you give it a try? >> >> Thanks, Roland! I confirm that there are no allocations left in the loop test I wrote (VectorTest::sumArrayL2). I'll experiment with other code shapes and let you know about the results. >> >> Best regards, >> Vladimir Ivanov > From vladimir.x.ivanov at oracle.com Fri Jul 7 16:37:54 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Fri, 7 Jul 2017 19:37:54 +0300 Subject: RFR: 8184017: [MVT] Support Q-types in MHs.insertArguments() Message-ID: <05372af3-b2ab-7528-c23f-5a2b8c2cbbdf@oracle.com> http://cr.openjdk.java.net/~vlivanov/valhalla/8184017/webrev.00 Q-typed argument binding support. The value is stored in boxed form inside BMH and unboxed on access. Before: a1:Q invoke061_LQL_Q=Lambda(a0:L/SpeciesData,a1:Q,a2:L)=>{ After: t4:Q invoke065_LL_Q=Lambda(a0:L/SpeciesData,a1:L)=>{ t2:L=BoundMethodHandle$Species_L6.argL5(a0:L); t3:L=BoundMethodHandle$Species_L6.argL4(a0:L); t4:Q=MethodHandle.invokeBasic(t2:L,t3:L); I haven't added any test case yet, but there will be one in an updated test on vectors. Best regards, Vladimir Ivanov From paul.sandoz at oracle.com Fri Jul 7 16:41:23 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Fri, 7 Jul 2017 09:41:23 -0700 Subject: decoupling interpreter buffers from the JIT's value processing In-Reply-To: <1e1a1384-44b3-e439-d63a-bbefcf29f551@oracle.com> References: <8650ae87-7d62-66de-6275-85341479b693@oracle.com> <4fb154d1-002d-8af0-059c-ad67a4b20a50@oracle.com> <1f66d25d-2914-993e-989d-7edfce5711f6@oracle.com> <1e1a1384-44b3-e439-d63a-bbefcf29f551@oracle.com> Message-ID: Thanks, i added that to the wiki page, primarily so I don?t forget: https://wiki.openjdk.java.net/display/valhalla/Minimal+Value+Types+and+Valhalla+value+types+command+line+options Paul. > On 7 Jul 2017, at 08:52, Vladimir Ivanov wrote: > >> How do you determine if there are allocations or not? some specific hotspot flags? > > Yes, diagnostic EA output and eyeballing generated code (w/ -XX:-UseTLAB): > -XX:+PrintEliminateAllocations -XX:+PrintEscapeAnalysis > > Best regards, > Vladimir Ivanov > >>> On 7 Jul 2017, at 05:19, Vladimir Ivanov wrote: >>> >>>> Here is a first shot: >>>> http://cr.openjdk.java.net/~roland/8183137/webrev.00/ >>>> I don't see the allocations in your test anymore. Can you give it a try? >>> >>> Thanks, Roland! I confirm that there are no allocations left in the loop test I wrote (VectorTest::sumArrayL2). I'll experiment with other code shapes and let you know about the results. >>> >>> Best regards, >>> Vladimir Ivanov From maurizio.cimadamore at oracle.com Fri Jul 7 16:58:46 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 7 Jul 2017 17:58:46 +0100 Subject: RFR: 8184017: [MVT] Support Q-types in MHs.insertArguments() In-Reply-To: <05372af3-b2ab-7528-c23f-5a2b8c2cbbdf@oracle.com> References: <05372af3-b2ab-7528-c23f-5a2b8c2cbbdf@oracle.com> Message-ID: Looks good - did you run existing tests just in case? They are in the jdk jtreg test group called jdk_valhalla_mvt Maurizio On 07/07/17 17:37, Vladimir Ivanov wrote: > http://cr.openjdk.java.net/~vlivanov/valhalla/8184017/webrev.00 > > Q-typed argument binding support. The value is stored in boxed form > inside BMH and unboxed on access. > > Before: a1:Q > invoke061_LQL_Q=Lambda(a0:L/SpeciesData,a1:Q,a2:L)=>{ > > After: t4:Q > invoke065_LL_Q=Lambda(a0:L/SpeciesData,a1:L)=>{ > t2:L=BoundMethodHandle$Species_L6.argL5(a0:L); > t3:L=BoundMethodHandle$Species_L6.argL4(a0:L); > t4:Q=MethodHandle.invokeBasic(t2:L,t3:L); > > I haven't added any test case yet, but there will be one in an updated > test on vectors. > > Best regards, > Vladimir Ivanov From paul.sandoz at oracle.com Fri Jul 7 17:07:00 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Fri, 7 Jul 2017 10:07:00 -0700 Subject: RFR: 8184017: [MVT] Support Q-types in MHs.insertArguments() In-Reply-To: <05372af3-b2ab-7528-c23f-5a2b8c2cbbdf@oracle.com> References: <05372af3-b2ab-7528-c23f-5a2b8c2cbbdf@oracle.com> Message-ID: <437428EC-5742-4822-9209-91351EAFF219@oracle.com> +1 Paul. > On 7 Jul 2017, at 09:37, Vladimir Ivanov wrote: > > http://cr.openjdk.java.net/~vlivanov/valhalla/8184017/webrev.00 > > Q-typed argument binding support. The value is stored in boxed form inside BMH and unboxed on access. > > Before: a1:Q > invoke061_LQL_Q=Lambda(a0:L/SpeciesData,a1:Q,a2:L)=>{ > > After: t4:Q > invoke065_LL_Q=Lambda(a0:L/SpeciesData,a1:L)=>{ > t2:L=BoundMethodHandle$Species_L6.argL5(a0:L); > t3:L=BoundMethodHandle$Species_L6.argL4(a0:L); > t4:Q=MethodHandle.invokeBasic(t2:L,t3:L); > > I haven't added any test case yet, but there will be one in an updated test on vectors. > > Best regards, > Vladimir Ivanov From vladimir.x.ivanov at oracle.com Mon Jul 10 13:06:57 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Mon, 10 Jul 2017 16:06:57 +0300 Subject: RFR: 8184017: [MVT] Support Q-types in MHs.insertArguments() In-Reply-To: References: <05372af3-b2ab-7528-c23f-5a2b8c2cbbdf@oracle.com> Message-ID: Thanks, Maurizio & Paul. Yes, all tests in jdk/test/valhalla/mvt pass. I decided to write a dedicated unit test and here's an updated version: http://cr.openjdk.java.net/~vlivanov/valhalla/8184017/webrev.01/ Also, added explicit null check to align the behavior on MVTs with primitives. Best regards, Vladimir Ivanov On 7/7/17 7:58 PM, Maurizio Cimadamore wrote: > Looks good - did you run existing tests just in case? They are in the > jdk jtreg test group called jdk_valhalla_mvt > > Maurizio > > > On 07/07/17 17:37, Vladimir Ivanov wrote: >> http://cr.openjdk.java.net/~vlivanov/valhalla/8184017/webrev.00 >> >> Q-typed argument binding support. The value is stored in boxed form >> inside BMH and unboxed on access. >> >> Before: a1:Q >> invoke061_LQL_Q=Lambda(a0:L/SpeciesData,a1:Q,a2:L)=>{ >> >> After: t4:Q >> invoke065_LL_Q=Lambda(a0:L/SpeciesData,a1:L)=>{ >> t2:L=BoundMethodHandle$Species_L6.argL5(a0:L); >> t3:L=BoundMethodHandle$Species_L6.argL4(a0:L); >> t4:Q=MethodHandle.invokeBasic(t2:L,t3:L); >> >> I haven't added any test case yet, but there will be one in an updated >> test on vectors. >> >> Best regards, >> Vladimir Ivanov > From rwestrel at redhat.com Mon Jul 10 16:28:15 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Mon, 10 Jul 2017 18:28:15 +0200 Subject: RFR: 8183137: [MVT] C2 doesn't eliminate redundant value type allocations inside loops Message-ID: http://cr.openjdk.java.net/~roland/8183137/webrev.01/ This change adds a new ValueTypePtrNode that behaves similarly to ValueTypeNode. A ValueTypePtrNode is added to the graph where we're forced to allocate because C2 expects an __Value. That ValueTypePtrNode has all the fields of the value as input (like ValueTypeNode) and its oop input is the new allocation. Like ValueTypeNode, a Phi(ValueTypePtrNode#1 ValueTypePtrNode#2 ...) is transformed to ValueTypePtrNode(Phi(Oop#1, Oop#2 ..) Phi(Field#1, Field#2 ...)). Like ValueTypeNode, a ValueTypePtrNode referenced in the debug info at a safepoint is converted to a SafePointScalarObjectNode and field values. A Load of a field from a ValueTypePtrNode is optimized to that field from the ValueTypePtrNode. The implementation of the new node shares a lot of code with the existing ValueTypeNode so most of that change is refactoring, boiler plate code and new tests. There are tests such as test95/test96 for which the allocation is still not eliminated but could be by improving this further. Roland. From maurizio.cimadamore at oracle.com Mon Jul 10 16:48:55 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 10 Jul 2017 17:48:55 +0100 Subject: RFR: 8184017: [MVT] Support Q-types in MHs.insertArguments() In-Reply-To: References: <05372af3-b2ab-7528-c23f-5a2b8c2cbbdf@oracle.com> Message-ID: <84dfedd2-eec2-f34c-5bf3-c3cc8b86f166@oracle.com> Looks good Maurizio On 10/07/17 14:06, Vladimir Ivanov wrote: > Thanks, Maurizio & Paul. > > Yes, all tests in jdk/test/valhalla/mvt pass. > > I decided to write a dedicated unit test and here's an updated version: > http://cr.openjdk.java.net/~vlivanov/valhalla/8184017/webrev.01/ > > Also, added explicit null check to align the behavior on MVTs with > primitives. > > Best regards, > Vladimir Ivanov > > On 7/7/17 7:58 PM, Maurizio Cimadamore wrote: >> Looks good - did you run existing tests just in case? They are in the >> jdk jtreg test group called jdk_valhalla_mvt >> >> Maurizio >> >> >> On 07/07/17 17:37, Vladimir Ivanov wrote: >>> http://cr.openjdk.java.net/~vlivanov/valhalla/8184017/webrev.00 >>> >>> Q-typed argument binding support. The value is stored in boxed form >>> inside BMH and unboxed on access. >>> >>> Before: a1:Q >>> invoke061_LQL_Q=Lambda(a0:L/SpeciesData,a1:Q,a2:L)=>{ >>> >>> After: t4:Q >>> invoke065_LL_Q=Lambda(a0:L/SpeciesData,a1:L)=>{ >>> t2:L=BoundMethodHandle$Species_L6.argL5(a0:L); >>> t3:L=BoundMethodHandle$Species_L6.argL4(a0:L); >>> t4:Q=MethodHandle.invokeBasic(t2:L,t3:L); >>> >>> I haven't added any test case yet, but there will be one in an >>> updated test on vectors. >>> >>> Best regards, >>> Vladimir Ivanov >> From paul.sandoz at oracle.com Mon Jul 10 19:28:16 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Mon, 10 Jul 2017 12:28:16 -0700 Subject: RFR: 8184017: [MVT] Support Q-types in MHs.insertArguments() In-Reply-To: References: <05372af3-b2ab-7528-c23f-5a2b8c2cbbdf@oracle.com> Message-ID: > On 10 Jul 2017, at 06:06, Vladimir Ivanov wrote: > > Thanks, Maurizio & Paul. > +1 on test. Paul. > Yes, all tests in jdk/test/valhalla/mvt pass. > > I decided to write a dedicated unit test and here's an updated version: > http://cr.openjdk.java.net/~vlivanov/valhalla/8184017/webrev.01/ > > Also, added explicit null check to align the behavior on MVTs with primitives. > > Best regards, > Vladimir Ivanov From sergey.kuksenko at oracle.com Mon Jul 10 20:19:24 2017 From: sergey.kuksenko at oracle.com (Sergey Kuksenko) Date: Mon, 10 Jul 2017 13:19:24 -0700 Subject: 8184123: [MVT] Intermittent hotspot crash on assigning 2-fields value type into array Message-ID: Please look at this: https://bugs.openjdk.java.net/browse/JDK-8184123 -- Best regards, Sergey Kuksenko From vladimir.x.ivanov at oracle.com Tue Jul 11 15:57:27 2017 From: vladimir.x.ivanov at oracle.com (vladimir.x.ivanov at oracle.com) Date: Tue, 11 Jul 2017 15:57:27 +0000 Subject: hg: valhalla/valhalla/jdk: 8184017: [MVT] Support Q-types in MHs.insertArguments() Message-ID: <201707111557.v6BFvSN0003714@aojmv0008.oracle.com> Changeset: 922106ba5e19 Author: vlivanov Date: 2017-07-11 18:54 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/922106ba5e19 8184017: [MVT] Support Q-types in MHs.insertArguments() Reviewed-by: psandoz, mcimadamore ! src/java.base/share/classes/java/lang/invoke/BoundMethodHandle.java ! src/java.base/share/classes/java/lang/invoke/LambdaFormEditor.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java + test/valhalla/mvt/MethodHandlesTest.java From vladimir.x.ivanov at oracle.com Tue Jul 11 17:43:13 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Tue, 11 Jul 2017 20:43:13 +0300 Subject: RFR (XS): [MVT] Support Q-types in MHs.constant() Message-ID: <846faad2-3e60-681d-cb92-1c99babcb768@oracle.com> http://cr.openjdk.java.net/~vlivanov/valhalla/8184184/webrev.00/ Support Q-types in MHs.constant(). Testing: jdk/test/valhalla/mvt/ Best regards, Vladimir Ivanov From vladimir.x.ivanov at oracle.com Tue Jul 11 18:02:48 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Tue, 11 Jul 2017 21:02:48 +0300 Subject: RFR: 8183137: [MVT] C2 doesn't eliminate redundant value type allocations inside loops In-Reply-To: References: Message-ID: <441e95c1-68cc-b9c1-cfa4-4680d2e80ca6@oracle.com> Looks good! Best regards, Vladimir Ivanov On 7/10/17 7:28 PM, Roland Westrelin wrote: > > http://cr.openjdk.java.net/~roland/8183137/webrev.01/ > > This change adds a new ValueTypePtrNode that behaves similarly to > ValueTypeNode. A ValueTypePtrNode is added to the graph where we're > forced to allocate because C2 expects an __Value. That ValueTypePtrNode > has all the fields of the value as input (like ValueTypeNode) and its > oop input is the new allocation. Like ValueTypeNode, a > Phi(ValueTypePtrNode#1 ValueTypePtrNode#2 ...) is transformed to > ValueTypePtrNode(Phi(Oop#1, Oop#2 ..) Phi(Field#1, Field#2 ...)). Like > ValueTypeNode, a ValueTypePtrNode referenced in the debug info at a > safepoint is converted to a SafePointScalarObjectNode and field > values. A Load of a field from a ValueTypePtrNode is optimized to that > field from the ValueTypePtrNode. > > The implementation of the new node shares a lot of code with the > existing ValueTypeNode so most of that change is refactoring, boiler > plate code and new tests. > > There are tests such as test95/test96 for which the allocation is still > not eliminated but could be by improving this further. > > Roland. > From paul.sandoz at oracle.com Tue Jul 11 19:20:39 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Tue, 11 Jul 2017 12:20:39 -0700 Subject: RFR (XS): [MVT] Support Q-types in MHs.constant() In-Reply-To: <846faad2-3e60-681d-cb92-1c99babcb768@oracle.com> References: <846faad2-3e60-681d-cb92-1c99babcb768@oracle.com> Message-ID: <7239A583-9427-470D-8D86-85BB526645B9@oracle.com> Looks good. Should the test assert on the type of the MH to check the return type is a Q type? Paul. > On 11 Jul 2017, at 10:43, Vladimir Ivanov wrote: > > http://cr.openjdk.java.net/~vlivanov/valhalla/8184184/webrev.00/ > > Support Q-types in MHs.constant(). > > Testing: jdk/test/valhalla/mvt/ > > Best regards, > Vladimir Ivanov From maurizio.cimadamore at oracle.com Wed Jul 12 00:29:11 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 12 Jul 2017 01:29:11 +0100 Subject: RFR (XS): [MVT] Support Q-types in MHs.constant() In-Reply-To: <846faad2-3e60-681d-cb92-1c99babcb768@oracle.com> References: <846faad2-3e60-681d-cb92-1c99babcb768@oracle.com> Message-ID: <74f6502e-8ea2-7968-65b4-66ea90c2c9f8@oracle.com> Looks good Moving forward I have a concern on adding more capabilities to MethodHandles/MethodHandles.lookup. On the one hand it's cool that we're trying to tweak things so that they 'just work' - that is, let devs use existing MH capabilities to create/combine value-based handles. On the other hand, this makes the surface area of MVT very blurry, as it becomes harder to see where standard JDK ends and where MVT begins. This could be problematic if, e.g. at some point we needed to move all the MVT stuff under an experimental incubator module. So, I'm starting to wonder if we shouldn't just add a ValueHandles class, similar to MethodHandles. In other words - have a ValueHandles class which contains the relevant methods from ValueType plus the ones we've tweaked inside MethodHandles. And have a ValueHandles.Lookup class to perform getter and wither lookup on values. What do you think? Maurizio On 11/07/17 18:43, Vladimir Ivanov wrote: > http://cr.openjdk.java.net/~vlivanov/valhalla/8184184/webrev.00/ > > Support Q-types in MHs.constant(). > > Testing: jdk/test/valhalla/mvt/ > > Best regards, > Vladimir Ivanov From tobias.hartmann at oracle.com Wed Jul 12 10:00:13 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 12 Jul 2017 12:00:13 +0200 Subject: 8184123: [MVT] Intermittent hotspot crash on assigning 2-fields value type into array In-Reply-To: References: Message-ID: Hi Sergey, thanks for reporting, I'll have a look. Best regards, Tobias On 10.07.2017 22:19, Sergey Kuksenko wrote: > Please look at this: > > https://bugs.openjdk.java.net/browse/JDK-8184123 > > From vladimir.x.ivanov at oracle.com Wed Jul 12 12:54:19 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 12 Jul 2017 15:54:19 +0300 Subject: RFR (XS): [MVT] Support Q-types in MHs.constant() In-Reply-To: <74f6502e-8ea2-7968-65b4-66ea90c2c9f8@oracle.com> References: <846faad2-3e60-681d-cb92-1c99babcb768@oracle.com> <74f6502e-8ea2-7968-65b4-66ea90c2c9f8@oracle.com> Message-ID: <574e02cf-ef18-45d7-e899-aecb53cd5175@oracle.com> Though it looks attractive at first, I don't think it'll take us too far. j.l.i API is full of method handle combinators which should properly handle DVTs. If there's a separate place for DVT-capable combinators, then the combinators (all of them?) should be duplicated there and, moreover, special checks should be added across j.l.i API to reject any inputs which require DVT support. It looks like an overkill from both API & implementation perspective. IMO there's a better alternative: only keep MVT-specific API experimental (VCC->DVT, withers, etc) and enhance j.l.i implementation to support DVT-capable operations. It doesn't require any public API changes and enables safe removal of MVT-specific API. If there's no way for the user to get a DVT class, then there'll be no way to create any DVT-capable method handle. Best regards, Vladimir Ivanov On 7/12/17 3:29 AM, Maurizio Cimadamore wrote: > Looks good > > Moving forward I have a concern on adding more capabilities to > MethodHandles/MethodHandles.lookup. > > On the one hand it's cool that we're trying to tweak things so that they > 'just work' - that is, let devs use existing MH capabilities to > create/combine value-based handles. > > On the other hand, this makes the surface area of MVT very blurry, as it > becomes harder to see where standard JDK ends and where MVT begins. This > could be problematic if, e.g. at some point we needed to move all the > MVT stuff under an experimental incubator module. > > So, I'm starting to wonder if we shouldn't just add a ValueHandles > class, similar to MethodHandles. > > In other words - have a ValueHandles class which contains the relevant > methods from ValueType plus the ones we've tweaked inside MethodHandles. > And have a ValueHandles.Lookup class to perform getter and wither lookup > on values. > > What do you think? > > Maurizio > > > On 11/07/17 18:43, Vladimir Ivanov wrote: >> http://cr.openjdk.java.net/~vlivanov/valhalla/8184184/webrev.00/ >> >> Support Q-types in MHs.constant(). >> >> Testing: jdk/test/valhalla/mvt/ >> >> Best regards, >> Vladimir Ivanov From vladimir.x.ivanov at oracle.com Wed Jul 12 12:58:55 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 12 Jul 2017 15:58:55 +0300 Subject: RFR (XS): [MVT] Support Q-types in MHs.constant() In-Reply-To: <7239A583-9427-470D-8D86-85BB526645B9@oracle.com> References: <846faad2-3e60-681d-cb92-1c99babcb768@oracle.com> <7239A583-9427-470D-8D86-85BB526645B9@oracle.com> Message-ID: Thanks, Paul & Maurizio. > Looks good. > > Should the test assert on the type of the MH to check the return type is a Q type? Well, it won't be excessive for sure :-) I'll add one. Best regards, Vladimir Ivanov > > Paul. > >> On 11 Jul 2017, at 10:43, Vladimir Ivanov wrote: >> >> http://cr.openjdk.java.net/~vlivanov/valhalla/8184184/webrev.00/ >> >> Support Q-types in MHs.constant(). >> >> Testing: jdk/test/valhalla/mvt/ >> >> Best regards, >> Vladimir Ivanov > From tobias.hartmann at oracle.com Wed Jul 12 13:07:46 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 12 Jul 2017 15:07:46 +0200 Subject: RFR(S): 8184123: [MVT] C2 crashes with SIGSEGV in ValueTypeNode::is_loaded Message-ID: <2e6443bc-892b-056b-d278-ddc0e2fb4976@oracle.com> Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8184123 http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.30/ We crash in ValueTypeNode::is_loaded() because the code incorrectly assumes that all value type field loads have an AddP address input [1]. I refactored the code to use AddPNode::Ideal_base_and_offset() to retrieve the base node and offset (if available). Verified with replay compilation. Thanks, Tobias [1] Failing ValueTypeNode (i == 0): 3 StartOSR === 3 0 [[ 3 5 6 7 8 9 10 ]] #{0:control, 1:abIO, 2:memory, 3:rawptr:BotPTR, 4:return_address, 5:rawptr:BotPTR} 76 ConI === 0 [[ 77 90 239 135 238 ]] #int:1 10 Parm === 3 [[ 36 35 29 29 25 25 ]] Parm0: rawptr:BotPTR !jvms: FillI2::bc_value @ bci:11 7 Parm === 3 [[ 178 127 273 27 31 35 36 54 40 270 156 94 81 16 185 230 282 285 ]] Memory Memory: @BotPTR *+bot, idx=Bot; !orig=[72],[208],[105] !jvms: FillI2::bc_value @ bci:11 5 Parm === 3 [[ 35 36 27 31 ]] Control !jvms: FillI2::bc_value @ bci:11 239 AddI === _ 35 76 [[ 290 237 ]] !orig=135 !jvms: FillI2::bc_value @ bci:22 35 LoadI === 5 7 10 [[ 63 291 97 84 237 239 ]] @rawptr:BotPTR, idx=Raw; #int (does not depend only on test) !orig=[75] !jvms: FillI2::bc_value @ bci:11 46 ConP === 0 [[ 47 45 111 148 237 ]] #NULL 237 ValueType === _ 46 35 239 [[ 288 ]] #valuetype[2]:{int, int} !orig=148,147,146 !jvms: ValueI2::of @ bci:0 FillI2::bc_value @ bci:23 From rwestrel at redhat.com Wed Jul 12 13:13:40 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 12 Jul 2017 15:13:40 +0200 Subject: RFR(S): 8184123: [MVT] C2 crashes with SIGSEGV in ValueTypeNode::is_loaded In-Reply-To: <2e6443bc-892b-056b-d278-ddc0e2fb4976@oracle.com> References: <2e6443bc-892b-056b-d278-ddc0e2fb4976@oracle.com> Message-ID: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.30/ Looks good to me. Roland. From vladimir.x.ivanov at oracle.com Wed Jul 12 13:16:30 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 12 Jul 2017 16:16:30 +0300 Subject: RFR(S): 8184123: [MVT] C2 crashes with SIGSEGV in ValueTypeNode::is_loaded In-Reply-To: <2e6443bc-892b-056b-d278-ddc0e2fb4976@oracle.com> References: <2e6443bc-892b-056b-d278-ddc0e2fb4976@oracle.com> Message-ID: <85c8c6a1-36e0-bd2b-8dbd-fb4f164455f4@oracle.com> Looks good. Best regards, Vladimir Ivanov On 7/12/17 4:07 PM, Tobias Hartmann wrote: > Hi, > > please review the following patch: > https://bugs.openjdk.java.net/browse/JDK-8184123 > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.30/ > > We crash in ValueTypeNode::is_loaded() because the code incorrectly assumes that all value type field loads have an AddP address input [1]. I refactored the code to use AddPNode::Ideal_base_and_offset() to retrieve the base node and offset (if available). > > Verified with replay compilation. > > Thanks, > Tobias > > [1] Failing ValueTypeNode (i == 0): > 3 StartOSR === 3 0 [[ 3 5 6 7 8 9 10 ]] #{0:control, 1:abIO, 2:memory, 3:rawptr:BotPTR, 4:return_address, 5:rawptr:BotPTR} > 76 ConI === 0 [[ 77 90 239 135 238 ]] #int:1 > 10 Parm === 3 [[ 36 35 29 29 25 25 ]] Parm0: rawptr:BotPTR !jvms: FillI2::bc_value @ bci:11 > 7 Parm === 3 [[ 178 127 273 27 31 35 36 54 40 270 156 94 81 16 185 230 282 285 ]] Memory Memory: @BotPTR *+bot, idx=Bot; !orig=[72],[208],[105] !jvms: FillI2::bc_value @ bci:11 > 5 Parm === 3 [[ 35 36 27 31 ]] Control !jvms: FillI2::bc_value @ bci:11 > 239 AddI === _ 35 76 [[ 290 237 ]] !orig=135 !jvms: FillI2::bc_value @ bci:22 > 35 LoadI === 5 7 10 [[ 63 291 97 84 237 239 ]] @rawptr:BotPTR, idx=Raw; #int (does not depend only on test) !orig=[75] !jvms: FillI2::bc_value @ bci:11 > 46 ConP === 0 [[ 47 45 111 148 237 ]] #NULL > 237 ValueType === _ 46 35 239 [[ 288 ]] #valuetype[2]:{int, int} !orig=148,147,146 !jvms: ValueI2::of @ bci:0 FillI2::bc_value @ bci:23 > From maurizio.cimadamore at oracle.com Wed Jul 12 13:35:44 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 12 Jul 2017 14:35:44 +0100 Subject: RFR (XS): [MVT] Support Q-types in MHs.constant() In-Reply-To: <574e02cf-ef18-45d7-e899-aecb53cd5175@oracle.com> References: <846faad2-3e60-681d-cb92-1c99babcb768@oracle.com> <74f6502e-8ea2-7968-65b4-66ea90c2c9f8@oracle.com> <574e02cf-ef18-45d7-e899-aecb53cd5175@oracle.com> Message-ID: On 12/07/17 13:54, Vladimir Ivanov wrote: > Though it looks attractive at first, I don't think it'll take us too far. > > j.l.i API is full of method handle combinators which should properly > handle DVTs. If there's a separate place for DVT-capable combinators, > then the combinators (all of them?) should be duplicated there and, > moreover, special checks should be added across j.l.i API to reject > any inputs which require DVT support. It looks like an overkill from > both API & implementation perspective. > > IMO there's a better alternative: only keep MVT-specific API > experimental (VCC->DVT, withers, etc) and enhance j.l.i implementation > to support DVT-capable operations. It doesn't require any public API > changes and enables safe removal of MVT-specific API. If there's no > way for the user to get a DVT class, then there'll be no way to create > any DVT-capable method handle. Makes sense - I just wanted to make sure we had a way to 'keep the lid' on top of valueness in MHs :-) Maurizio > > Best regards, > Vladimir Ivanov > > On 7/12/17 3:29 AM, Maurizio Cimadamore wrote: >> Looks good >> >> Moving forward I have a concern on adding more capabilities to >> MethodHandles/MethodHandles.lookup. >> >> On the one hand it's cool that we're trying to tweak things so that >> they 'just work' - that is, let devs use existing MH capabilities to >> create/combine value-based handles. >> >> On the other hand, this makes the surface area of MVT very blurry, as >> it becomes harder to see where standard JDK ends and where MVT >> begins. This could be problematic if, e.g. at some point we needed to >> move all the MVT stuff under an experimental incubator module. >> >> So, I'm starting to wonder if we shouldn't just add a ValueHandles >> class, similar to MethodHandles. >> >> In other words - have a ValueHandles class which contains the >> relevant methods from ValueType plus the ones we've tweaked inside >> MethodHandles. And have a ValueHandles.Lookup class to perform getter >> and wither lookup on values. >> >> What do you think? >> >> Maurizio >> >> >> On 11/07/17 18:43, Vladimir Ivanov wrote: >>> http://cr.openjdk.java.net/~vlivanov/valhalla/8184184/webrev.00/ >>> >>> Support Q-types in MHs.constant(). >>> >>> Testing: jdk/test/valhalla/mvt/ >>> >>> Best regards, >>> Vladimir Ivanov From tobias.hartmann at oracle.com Wed Jul 12 13:53:45 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 12 Jul 2017 15:53:45 +0200 Subject: RFR(S): 8184123: [MVT] C2 crashes with SIGSEGV in ValueTypeNode::is_loaded In-Reply-To: References: <2e6443bc-892b-056b-d278-ddc0e2fb4976@oracle.com> Message-ID: Thanks Roland! Best regards, Tobias On 12.07.2017 15:13, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.30/ > > Looks good to me. > > Roland. > From tobias.hartmann at oracle.com Wed Jul 12 13:53:55 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 12 Jul 2017 15:53:55 +0200 Subject: RFR(S): 8184123: [MVT] C2 crashes with SIGSEGV in ValueTypeNode::is_loaded In-Reply-To: <85c8c6a1-36e0-bd2b-8dbd-fb4f164455f4@oracle.com> References: <2e6443bc-892b-056b-d278-ddc0e2fb4976@oracle.com> <85c8c6a1-36e0-bd2b-8dbd-fb4f164455f4@oracle.com> Message-ID: <798eea5a-c54d-be71-c124-a2635e22713a@oracle.com> Thanks Vladimir! Best regards, Tobias On 12.07.2017 15:16, Vladimir Ivanov wrote: > Looks good. > > Best regards, > Vladimir Ivanov > > On 7/12/17 4:07 PM, Tobias Hartmann wrote: >> Hi, >> >> please review the following patch: >> https://bugs.openjdk.java.net/browse/JDK-8184123 >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.30/ >> >> We crash in ValueTypeNode::is_loaded() because the code incorrectly assumes that all value type field loads have an AddP address input [1]. I refactored the code to use AddPNode::Ideal_base_and_offset() to retrieve the base node and offset (if available). >> >> Verified with replay compilation. >> >> Thanks, >> Tobias >> >> [1] Failing ValueTypeNode (i == 0): >> 3 StartOSR === 3 0 [[ 3 5 6 7 8 9 10 ]] #{0:control, 1:abIO, 2:memory, 3:rawptr:BotPTR, 4:return_address, 5:rawptr:BotPTR} >> 76 ConI === 0 [[ 77 90 239 135 238 ]] #int:1 >> 10 Parm === 3 [[ 36 35 29 29 25 25 ]] Parm0: rawptr:BotPTR !jvms: FillI2::bc_value @ bci:11 >> 7 Parm === 3 [[ 178 127 273 27 31 35 36 54 40 270 156 94 81 16 185 230 282 285 ]] Memory Memory: @BotPTR *+bot, idx=Bot; !orig=[72],[208],[105] !jvms: FillI2::bc_value @ bci:11 >> 5 Parm === 3 [[ 35 36 27 31 ]] Control !jvms: FillI2::bc_value @ bci:11 >> 239 AddI === _ 35 76 [[ 290 237 ]] !orig=135 !jvms: FillI2::bc_value @ bci:22 >> 35 LoadI === 5 7 10 [[ 63 291 97 84 237 239 ]] @rawptr:BotPTR, idx=Raw; #int (does not depend only on test) !orig=[75] !jvms: FillI2::bc_value @ bci:11 >> 46 ConP === 0 [[ 47 45 111 148 237 ]] #NULL >> 237 ValueType === _ 46 35 239 [[ 288 ]] #valuetype[2]:{int, int} !orig=148,147,146 !jvms: ValueI2::of @ bci:0 FillI2::bc_value @ bci:23 >> From paul.sandoz at oracle.com Wed Jul 12 15:22:29 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Wed, 12 Jul 2017 08:22:29 -0700 Subject: RFR (XS): [MVT] Support Q-types in MHs.constant() In-Reply-To: References: <846faad2-3e60-681d-cb92-1c99babcb768@oracle.com> <74f6502e-8ea2-7968-65b4-66ea90c2c9f8@oracle.com> <574e02cf-ef18-45d7-e899-aecb53cd5175@oracle.com> Message-ID: <8E77B72D-F5A6-41B7-B8B1-6EFBBE7F056A@oracle.com> > On 12 Jul 2017, at 06:35, Maurizio Cimadamore wrote: > > > > On 12/07/17 13:54, Vladimir Ivanov wrote: >> Though it looks attractive at first, I don't think it'll take us too far. >> >> j.l.i API is full of method handle combinators which should properly handle DVTs. If there's a separate place for DVT-capable combinators, then the combinators (all of them?) should be duplicated there and, moreover, special checks should be added across j.l.i API to reject any inputs which require DVT support. It looks like an overkill from both API & implementation perspective. >> >> IMO there's a better alternative: only keep MVT-specific API experimental (VCC->DVT, withers, etc) and enhance j.l.i implementation to support DVT-capable operations. It doesn't require any public API changes and enables safe removal of MVT-specific API. If there's no way for the user to get a DVT class, then there'll be no way to create any DVT-capable method handle. > Makes sense - I just wanted to make sure we had a way to 'keep the lid' on top of valueness in MHs :-) > FWIW the same type of entanglement will be there for VarHandles too. Paul. From tobias.hartmann at oracle.com Thu Jul 13 10:06:30 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Thu, 13 Jul 2017 10:06:30 +0000 Subject: hg: valhalla/valhalla/hotspot: 8184123: [MVT] C2 crashes with SIGSEGV in ValueTypeNode::is_loaded Message-ID: <201707131006.v6DA6UuN016136@aojmv0008.oracle.com> Changeset: 4330006d73cb Author: thartmann Date: 2017-07-13 12:04 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4330006d73cb 8184123: [MVT] C2 crashes with SIGSEGV in ValueTypeNode::is_loaded Reviewed-by: roland, vlivanov ! src/share/vm/opto/valuetypenode.cpp From tobias.hartmann at oracle.com Thu Jul 13 11:04:14 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 13 Jul 2017 13:04:14 +0200 Subject: RFR: 8183137: [MVT] C2 doesn't eliminate redundant value type allocations inside loops In-Reply-To: References: Message-ID: <82b77f45-9443-743f-52de-0c726e69b584@oracle.com> Hi Roland, > http://cr.openjdk.java.net/~roland/8183137/webrev.01/ This looks good to me! Just some minor things: - little typo in valuetypenode.hpp:134 ValueTypeNode -> ValueTypePtrNode - for better readability, you could merge test95_mt/test95_mt3/test96_mt/test96_mt3 in ValueTypeTestBench.java because they are identical > There are tests such as test95/test96 for which the allocation is still > not eliminated but could be by improving this further. Is this because C2 does not inline the non-static method handle calls? You've mentioned off-thread that you are working on fixing this. What's your plan there? Thanks, Tobias From rwestrel at redhat.com Thu Jul 13 15:54:58 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 13 Jul 2017 17:54:58 +0200 Subject: RFR: 8183137: [MVT] C2 doesn't eliminate redundant value type allocations inside loops In-Reply-To: <82b77f45-9443-743f-52de-0c726e69b584@oracle.com> References: <82b77f45-9443-743f-52de-0c726e69b584@oracle.com> Message-ID: Thanks for looking at this, Tobias. >> http://cr.openjdk.java.net/~roland/8183137/webrev.01/ > > This looks good to me! > > Just some minor things: > - little typo in valuetypenode.hpp:134 ValueTypeNode -> ValueTypePtrNode > - for better readability, you could merge test95_mt/test95_mt3/test96_mt/test96_mt3 in ValueTypeTestBench.java because they are identical Ok. >> There are tests such as test95/test96 for which the allocation is still >> not eliminated but could be by improving this further. > > Is this because C2 does not inline the non-static method handle calls? > You've mentioned off-thread that you are working on fixing > this. What's your plan there? Yes. Actually, I found after I posted the webrev that test95/test96 don't behave as intended. I'll push a fixed version. Also, since I posted the webrev, I changed the condition cfgnode.cpp line 1636 to: if (req() > 2 && in(1) != NULL && in(1)->is_ValueTypeBase() && (can_reshape || in(1)->is_ValueType())) { It's only safe to apply that transformation once we know all inputs to the ValueTypePtr node. My plan for the non constant method handle case is to transform: (Phi ValueTypePtr#1 Node#2) to (Phi ValueTypePtr#1 CheckCast#2) with a CheckCast to the type of the ValueTypePtr then push the CheckCast through phi up until a call to a method handle linker. Modify the call so it now returns the type of the CheckCast instead of __Value, add projections to the call for all return values, allocate a new value type right after the call and populate it with the values from the projections, create a ValueTypePtr with the projection as field and the new allocation as oop edge. Then let the current machinery push it down through the Phis. I have it working on test95/test96. Roland. From tobias.hartmann at oracle.com Fri Jul 14 12:39:35 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 14 Jul 2017 14:39:35 +0200 Subject: RFR: 8183137: [MVT] C2 doesn't eliminate redundant value type allocations inside loops In-Reply-To: References: <82b77f45-9443-743f-52de-0c726e69b584@oracle.com> Message-ID: <05392fd7-05df-ea23-b227-413d9dd3ac06@oracle.com> Hi Roland, On 13.07.2017 17:54, Roland Westrelin wrote: > Yes. Actually, I found after I posted the webrev that test95/test96 > don't behave as intended. I'll push a fixed version. Also, since I > posted the webrev, I changed the condition cfgnode.cpp line 1636 to: > > if (req() > 2 && in(1) != NULL && in(1)->is_ValueTypeBase() && (can_reshape || in(1)->is_ValueType())) { > > It's only safe to apply that transformation once we know all inputs to > the ValueTypePtr node. Okay, makes sense. > My plan for the non constant method handle case is to transform: > > (Phi ValueTypePtr#1 Node#2) to (Phi ValueTypePtr#1 CheckCast#2) > > with a CheckCast to the type of the ValueTypePtr then push the CheckCast > through phi up until a call to a method handle linker. Modify the call > so it now returns the type of the CheckCast instead of __Value, add > projections to the call for all return values, allocate a new value type > right after the call and populate it with the values from the > projections, create a ValueTypePtr with the projection as field and the > new allocation as oop edge. Then let the current machinery push it down > through the Phis. I have it working on test95/test96. Right, that's basically what Vladimir I. mentioned as well in another thread: On 06.07.2017 13:52, Vladimir Ivanov wrote: > There's one crucial simplifying assumption about __Value usages in LFs we can make: lambda forms don't merge VT pointers of different types. So, it's either merge of opaque value buffer pointers (PHI __Value* ... __Value* #__Value*) (when compiling stand-alone lambda forms) or merging concrete VTs of the same type (PHI VT1* ... VT1* #VT1*) (when inlining through method handle chains). Very nice! Best regards, Tobias From tobias.hartmann at oracle.com Fri Jul 14 14:06:08 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 14 Jul 2017 16:06:08 +0200 Subject: RFR(XS): 8184669: [MVT] Crash in ConnectionGraph::split_unique_types() Message-ID: <6523b246-af80-cf07-4e34-74db0035cd7b@oracle.com> Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8184669 http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.31/ Escape analysis gets confused because the Klass input of a ReturnNode is tagged (since JDK-8183546 [1]) and therefore a ConLNode instead of a KlassNode is found. Thanks, Tobias [1] http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/eb2fdbd0695d#l7.4 From tobias.hartmann at oracle.com Fri Jul 14 14:41:01 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 14 Jul 2017 16:41:01 +0200 Subject: RFR(S): 8183111: [MVT] java.lang.Class::isAssignableFrom() C2 intrinsic does not support value types Message-ID: Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8183111 http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.29/ The problem is that the Class::isAssignableFrom C2 intrinsic returns incorrect results for value type classes. This is because the result type of the LoadKlassNode is set to TypeKlassPtr::OBJECT_OR_NULL which is wrong for value type classes (because they are not a subtype of Object) and results in constant folding of subtype checks at compile time. I fixed this by introducing TypeKlassPtr::BOTTOM which has _klass set to NULL. I had to adjust all code that relies on _klass being initialized. I wasn't sure about the implementation of meet if one of the KlassPtrs is BOTTOM (see changes in type.cpp) but the current implementation works for all our tests. I added tests for Class::isAssignableFrom, Class::getSuperclass and Class::cast. I also removed the DisableIntrinsic flags added as workaround by JDK-8181425. Thanks, Tobias From rwestrel at redhat.com Mon Jul 17 07:57:24 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Mon, 17 Jul 2017 09:57:24 +0200 Subject: RFR(XS): 8184669: [MVT] Crash in ConnectionGraph::split_unique_types() In-Reply-To: <6523b246-af80-cf07-4e34-74db0035cd7b@oracle.com> References: <6523b246-af80-cf07-4e34-74db0035cd7b@oracle.com> Message-ID: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.31/ Looks good to me. Roland. From tobias.hartmann at oracle.com Mon Jul 17 07:59:11 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Mon, 17 Jul 2017 09:59:11 +0200 Subject: RFR(XS): 8184669: [MVT] Crash in ConnectionGraph::split_unique_types() In-Reply-To: References: <6523b246-af80-cf07-4e34-74db0035cd7b@oracle.com> Message-ID: Thanks Roland! Best regards, Tobias On 17.07.2017 09:57, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.31/ > > Looks good to me. > > Roland. > From rwestrel at redhat.com Mon Jul 17 09:35:21 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Mon, 17 Jul 2017 11:35:21 +0200 Subject: RFR(S): 8183111: [MVT] java.lang.Class::isAssignableFrom() C2 intrinsic does not support value types In-Reply-To: References: Message-ID: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.29/ Looks reasonable. Roland. From tobias.hartmann at oracle.com Mon Jul 17 09:57:58 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Mon, 17 Jul 2017 11:57:58 +0200 Subject: RFR(S): 8183111: [MVT] java.lang.Class::isAssignableFrom() C2 intrinsic does not support value types In-Reply-To: References: Message-ID: Thanks for the review Roland! Best regards, Tobias On 17.07.2017 11:35, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.29/ > > Looks reasonable. > > Roland. > From tobias.hartmann at oracle.com Mon Jul 17 11:12:06 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Mon, 17 Jul 2017 11:12:06 +0000 Subject: hg: valhalla/valhalla/hotspot: 8184669: [MVT] Crash in ConnectionGraph::split_unique_types() Message-ID: <201707171112.v6HBC6io021152@aojmv0008.oracle.com> Changeset: ed8f8e678b03 Author: thartmann Date: 2017-07-17 13:09 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ed8f8e678b03 8184669: [MVT] Crash in ConnectionGraph::split_unique_types() Reviewed-by: roland ! src/share/vm/opto/escape.cpp From tobias.hartmann at oracle.com Mon Jul 17 11:15:33 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Mon, 17 Jul 2017 11:15:33 +0000 Subject: hg: valhalla/valhalla/hotspot: 8183111: [MVT] java.lang.Class::isAssignableFrom() C2 intrinsic does not support value types Message-ID: <201707171115.v6HBFXMO022394@aojmv0008.oracle.com> Changeset: ed323fd47c0f Author: thartmann Date: 2017-07-17 13:13 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ed323fd47c0f 8183111: [MVT] java.lang.Class::isAssignableFrom() C2 intrinsic does not support value types Reviewed-by: roland ! src/share/vm/opto/cfgnode.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/type.cpp ! src/share/vm/opto/type.hpp ! test/compiler/valhalla/valuetypes/ValueTypeTestBench.java ! test/runtime/valhalla/valuetypes/DeriveValueTypeCreation.java ! test/runtime/valhalla/valuetypes/MVTComboTier1.java ! test/runtime/valhalla/valuetypes/ValueOops.java ! test/runtime/valhalla/valuetypes/VboxUnbox.java From john.r.rose at oracle.com Tue Jul 18 02:12:27 2017 From: john.r.rose at oracle.com (John Rose) Date: Mon, 17 Jul 2017 19:12:27 -0700 Subject: refactoring BMH Message-ID: <7724767C-2F44-423B-8A47-FE2AD512A466@oracle.com> I have felt for some time that the BoundMethodHandle code is not easy to work with, and I have wanted to refactor it for a long time to separate out the specialization logic from the BMH logic proper. Here is an experimental refactoring that accomplishes this: https://bugs.openjdk.java.net/browse/JDK-8184777 http://cr.openjdk.java.net/~jrose/jdk/8184777/webrev.0 I'd like to commit it to JDK10 first as a cleanup, but the motivation for it comes from Valhalla and Amber. If you work on java.lang.invoke code, please take a look and tell me what you think. Caveat: It basically passes smoke tests only, but it does pass its own regression test (which builds a toy specialization schema, including nominal types the could be replaced by value types). ? John From rwestrel at redhat.com Tue Jul 18 11:47:46 2017 From: rwestrel at redhat.com (rwestrel at redhat.com) Date: Tue, 18 Jul 2017 11:47:46 +0000 Subject: hg: valhalla/valhalla/hotspot: 8183137: [MVT] C2 doesn't eliminate redundant value type allocations inside loops Message-ID: <201707181147.v6IBllI8016377@aojmv0008.oracle.com> Changeset: 314ea36f0728 Author: roland Date: 2017-07-18 11:38 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/314ea36f0728 8183137: [MVT] C2 doesn't eliminate redundant value type allocations inside loops Reviewed-by: thartmann, vlivanov ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/cfgnode.cpp ! src/share/vm/opto/classes.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/parse1.cpp ! src/share/vm/opto/phaseX.cpp ! src/share/vm/opto/valuetypenode.cpp ! src/share/vm/opto/valuetypenode.hpp ! test/compiler/valhalla/valuetypes/ValueCapableClass2.java ! test/compiler/valhalla/valuetypes/ValueTypeTestBench.java From rwestrel at redhat.com Tue Jul 18 12:32:52 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Tue, 18 Jul 2017 14:32:52 +0200 Subject: RFR: 8183137: [MVT] C2 doesn't eliminate redundant value type allocations inside loops In-Reply-To: <05392fd7-05df-ea23-b227-413d9dd3ac06@oracle.com> References: <82b77f45-9443-743f-52de-0c726e69b584@oracle.com> <05392fd7-05df-ea23-b227-413d9dd3ac06@oracle.com> Message-ID: > Right, that's basically what Vladimir I. mentioned as well in another thread: Yes. it's very similar to what Vladimir suggested. The main difference is that I make sure we always have a valid oop input edge for a ValueTypePtrNode so if elimination of allocation fails, we can fall back to already allocated values. Roland. From rwestrel at redhat.com Tue Jul 18 13:00:59 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Tue, 18 Jul 2017 15:00:59 +0200 Subject: RFR: 8184795: [MVT] non constant method handles can cause allocations in method handle combinators Message-ID: http://cr.openjdk.java.net/~roland/8184795/webrev.00/ This is a follow up to 8183137. test101 is an example of the problem this change attempts to fix. test101 invokes a simple GWT combinator for which one of the method handle targets is non constant. As a result, C2 doesn't know the type returned from that target and the change from 8183137 that should sink ValueTypePtrNodes through phi to remove the need for allocations doesn't trigger. This is fixed by transforming: (Phi ValueTypePtr#1 Node#2) to (Phi ValueTypePtr#1 CheckCastPP#2) Then pushing the CheckCastPP up through Phis until it reaches the non constant call. The type of the return value is then known from the type of the CheckCastPP. A ValueTypePtr can be created by adding projections to the call for all values being returned. The oop edge is set by allocating a new instance of the value type (that allocation is hopefully useless and can be eliminated). The ValueTypePtr can then be pushed down through Phis using the machinery from 8183137. I had to disable compilation of LF as root if they return a method handle value. The reason is that the logic in CheckCastPPNode::Ideal() expects values to be returned in registers but is the called method is a lambda form, I expect it could return a value as an instance. The fix would require the logic in CheckCastPPNode::Ideal() to test if the returned value is a class pointer or not (tagged or not). Roland. From maurizio.cimadamore at oracle.com Tue Jul 18 14:49:13 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Tue, 18 Jul 2017 15:49:13 +0100 Subject: refactoring BMH In-Reply-To: <7724767C-2F44-423B-8A47-FE2AD512A466@oracle.com> References: <7724767C-2F44-423B-8A47-FE2AD512A466@oracle.com> Message-ID: Hi, it's good to see this kind of effort being started. I have a general question on the shape of the classes generated by the ClassSpecializer; in the doc you say: class Species_[[types]] extends [[T]] { * final [[S]] speciesData() { return ... } * static [[T]] make([[fields]]) { return ... } * [[fields]] * final [[T]] transform([[args]]) { return ... } How much the 'transform' primitives belong in here? The fact that the underlying species kind is able to apply transforms to get new kinds seem very BMH specific. Also, the fact that Species_XYZ classes are constructed with an initially empty 'kind', which is injected later through Unsafe, also seems very specific. I guess it would help to have a bit more background on what kind of things you imagine would be possible to express given this framework, and judge how much of the existing BMH cruft is getting in the way. Thanks Maurizio On 18/07/17 03:12, John Rose wrote: > I have felt for some time that the BoundMethodHandle code > is not easy to work with, and I have wanted to refactor it > for a long time to separate out the specialization logic > from the BMH logic proper. > > Here is an experimental refactoring that accomplishes this: > > https://bugs.openjdk.java.net/browse/JDK-8184777 > http://cr.openjdk.java.net/~jrose/jdk/8184777/webrev.0 > > I'd like to commit it to JDK10 first as a cleanup, > but the motivation for it comes from Valhalla and Amber. > > If you work on java.lang.invoke code, please take a look > and tell me what you think. > > Caveat: It basically passes smoke tests only, but it > does pass its own regression test (which builds a toy > specialization schema, including nominal types the > could be replaced by value types). > > ? John From john.r.rose at oracle.com Tue Jul 18 18:21:49 2017 From: john.r.rose at oracle.com (John Rose) Date: Tue, 18 Jul 2017 11:21:49 -0700 Subject: refactoring BMH In-Reply-To: References: <7724767C-2F44-423B-8A47-FE2AD512A466@oracle.com> Message-ID: On Jul 18, 2017, at 7:49 AM, Maurizio Cimadamore wrote: > > Hi, > it's good to see this kind of effort being started. I have a general question on the shape of the classes generated by the ClassSpecializer; in the doc you say: > > class Species_[[types]] extends [[T]] { > * final [[S]] speciesData() { return ... } > * static [[T]] make([[fields]]) { return ... } > * [[fields]] > * final [[T]] transform([[args]]) { return ... } > > How much the 'transform' primitives belong in here? The fact that the underlying species kind is able to apply transforms to get new kinds seem very BMH specific. Short answer: None of them. The CSpec has a *hook* for the BMH transforms. The jtreg smoke test doesn't use them (which could be made better). > Also, the fact that Species_XYZ classes are constructed with an initially empty 'kind', which is injected later through Unsafe, also seems very specific. Good point. That's optional. The smoke test doesn't specify one. (The default method returns null, which tells the framework there isn't one.) I will try to remove it completely. > I guess it would help to have a bit more background on what kind of things you imagine would be possible to express given this framework, and judge how much of the existing BMH cruft is getting in the way. Use cases: - reusable lambda implementations (key = interface + captured field types) - argument list (key = parameter types) - vector (key = lane type and lane count) - C pointer type (key = base type of pointer + Java carrier type + on/off heap) - fake generic specializations (key = specialization parameters) - foreign data structures (key = struct layout formula) Some of these anticipate generic specialization; some don't (unless generic specialization grows very generic indeed). The ones that *do* overlap with generic specialization will give us a way to quickly experiment with specialization schemes before committing to bytecode formats. The BMH cruft can be observed in the refactored BMH source file: http://cr.openjdk.java.net/~jrose/jdk/8184777/webrev.0/raw_files/new/src/java.base/share/classes/java/lang/invoke/BoundMethodHandle.java It is embodied mainly in these two nested classes: static final class BMHSpecies extends ClassSpecializer.SpeciesData { // This array is filled in lazily, as new species come into being over time. @Stable final private BMHSpecies[] extensions = new BMHSpecies[ARG_TYPE_LIMIT]; ? static final class Specializer extends ClassSpecializer { private Specializer() { super( // Reified type parameters: BoundMethodHandle.class, String.class, BMHSpecies.class, // Principal constructor type: MethodType.methodType(void.class, MethodType.class, LambdaForm.class), // Required linkage between class and species: reflectMethod(BoundMethodHandle.class, "speciesData"), "BMH_SPECIES", BMH_TRANSFORMS); } @Override protected String topSpeciesKey() { return ""; } ? The special BMH logic factored out has to do with the bind-single protocol, which adds a new field of some particular type to whatever fields are already present. Adding a new field to the end of an object is specific to BMHs, so that logic is only in the BMH customizations, not the basic ClassSpecializer. The bare minimum provided by the ClassSpecializer is (a) a factory and (b) one getter per component field. Everything else (including whether and how to make those things public) is in the subclasses. Thanks for looking at this. ? John From tobias.hartmann at oracle.com Wed Jul 19 12:57:30 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 19 Jul 2017 14:57:30 +0200 Subject: RFR: 8184795: [MVT] non constant method handles can cause allocations in method handle combinators In-Reply-To: References: Message-ID: <2263c330-99a5-143e-3b47-e0e577cf698d@oracle.com> Hi Roland, On 18.07.2017 15:00, Roland Westrelin wrote: > http://cr.openjdk.java.net/~roland/8184795/webrev.00/ src/share/vm/opto/castnode.cpp - It would be nice to move the allocation code in CheckCastPPNode::Ideal to valuetype.cpp or merge it with ValueTypeNode::allocate src/share/vm/opto/cfgnode.cpp - In line 1657, shouldn't this be: assert(in(i) == NULL || (vtptr != NULL && phase->type(in(i))->higher_equal(vtptr)) || [...] - Why do you need the (in(1)->is_Phi()) check? Maybe add { } and a comment - Remove the linebreak in 1662 src/share/vm/opto/type.cpp - Why did you change this from TypeKlassPtr to TypePtr? I get some trailing whitespace errors (I have a save-action in my IDE to avoid this): - src/share/vm/opto/castnode.cpp:426: Trailing whitespace - test/compiler/valhalla/valuetypes/ValueTypeTestBench.java:2730: Trailing whitespace I also get some build failures on JPRT: /opt/jprt/T/P1/121328.tohartma/s/hotspot/src/share/vm/opto/valuetypenode.cpp:696:26: error: member access into incomplete type 'CheckCastPPNode' ciValueKlass* vk = cast->type()->is_valuetypeptr()->value_type()->value_klass(); ^ /opt/jprt/T/P1/121328.tohartma/s/hotspot/src/share/vm/opto/valuetypenode.cpp:698:14: error: member access into incomplete type 'CheckCastPPNode' assert(cast->in(1)->is_Proj(), "bad graph shape"); ^ > This is a follow up to 8183137. test101 is an example of the problem > this change attempts to fix. test101 invokes a simple GWT combinator for > which one of the method handle targets is non constant. As a result, C2 > doesn't know the type returned from that target and the change from > 8183137 that should sink ValueTypePtrNodes through phi to remove the > need for allocations doesn't trigger. > > This is fixed by transforming: > > (Phi ValueTypePtr#1 Node#2) to (Phi ValueTypePtr#1 CheckCastPP#2) Please add this as comment to cfgnode.cpp. > Then pushing the CheckCastPP up through Phis until it reaches the non > constant call. The type of the return value is then known from the type > of the CheckCastPP. A ValueTypePtr can be created by adding projections > to the call for all values being returned. The oop edge is set by > allocating a new instance of the value type (that allocation is > hopefully useless and can be eliminated). The ValueTypePtr can then be > pushed down through Phis using the machinery from 8183137. > > I had to disable compilation of LF as root if they return a method > handle value. The reason is that the logic in CheckCastPPNode::Ideal() > expects values to be returned in registers but is the called method is a > lambda form, I expect it could return a value as an instance. Was this problem triggered by one of the tests? I'm seeing spurious failures on JPRT (without your changes) and wonder if that could be the cause. > The fix would require the logic in CheckCastPPNode::Ideal() to test if the > returned value is a class pointer or not (tagged or not). Okay, could you please file a follow up bug/enhancement for this? Thanks, Tobias From vladimir.x.ivanov at oracle.com Wed Jul 19 13:11:01 2017 From: vladimir.x.ivanov at oracle.com (vladimir.x.ivanov at oracle.com) Date: Wed, 19 Jul 2017 13:11:01 +0000 Subject: hg: valhalla/valhalla/jdk: 8184184: [MVT] Support Q-types in MHs.constant() Message-ID: <201707191311.v6JDB1JU017134@aojmv0008.oracle.com> Changeset: 710a236822dd Author: vlivanov Date: 2017-07-19 16:04 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/710a236822dd 8184184: [MVT] Support Q-types in MHs.constant() Reviewed-by: psandoz, mcimadamore ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! test/valhalla/mvt/MethodHandlesTest.java From rwestrel at redhat.com Wed Jul 19 13:17:08 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 19 Jul 2017 15:17:08 +0200 Subject: RFR: 8184795: [MVT] non constant method handles can cause allocations in method handle combinators In-Reply-To: <2263c330-99a5-143e-3b47-e0e577cf698d@oracle.com> References: <2263c330-99a5-143e-3b47-e0e577cf698d@oracle.com> Message-ID: Hi Tobias, Thanks for looking at this. > src/share/vm/opto/castnode.cpp > - It would be nice to move the allocation code in > CheckCastPPNode::Ideal to valuetype.cpp or merge it with > ValueTypeNode::allocate Ok. Makes sense. Merging with ValueTypeNode::allocate doesn't seem reasonable though because that one only runs during parsing. > > src/share/vm/opto/cfgnode.cpp > - In line 1657, shouldn't this be: > assert(in(i) == NULL || (vtptr != NULL && phase->type(in(i))->higher_equal(vtptr)) || [...] vtptr can be null if the first non null phi input is not a ValueTypePtr. > - Why do you need the (in(1)->is_Phi()) check? Maybe add { } and a comment The new allocation reuses the exception paths from the call above it with extra regions and phis. I found that would break that logic. > - Remove the linebreak in 1662 > > src/share/vm/opto/type.cpp > - Why did you change this from TypeKlassPtr to TypePtr? Because we're returning either a class pointer or a pointer to a value. So it's not always a TypeKlassPtr. > I get some trailing whitespace errors (I have a save-action in my IDE to avoid this): > - src/share/vm/opto/castnode.cpp:426: Trailing whitespace > - test/compiler/valhalla/valuetypes/ValueTypeTestBench.java:2730: Trailing whitespace > > I also get some build failures on JPRT: > /opt/jprt/T/P1/121328.tohartma/s/hotspot/src/share/vm/opto/valuetypenode.cpp:696:26: error: member access into incomplete type 'CheckCastPPNode' > ciValueKlass* vk = cast->type()->is_valuetypeptr()->value_type()->value_klass(); > ^ > /opt/jprt/T/P1/121328.tohartma/s/hotspot/src/share/vm/opto/valuetypenode.cpp:698:14: error: member access into incomplete type 'CheckCastPPNode' > assert(cast->in(1)->is_Proj(), "bad graph shape"); Ok. Will look at those. >> This is a follow up to 8183137. test101 is an example of the problem >> this change attempts to fix. test101 invokes a simple GWT combinator for >> which one of the method handle targets is non constant. As a result, C2 >> doesn't know the type returned from that target and the change from >> 8183137 that should sink ValueTypePtrNodes through phi to remove the >> need for allocations doesn't trigger. >> >> This is fixed by transforming: >> >> (Phi ValueTypePtr#1 Node#2) to (Phi ValueTypePtr#1 CheckCastPP#2) > > Please add this as comment to cfgnode.cpp. Ok. >> Then pushing the CheckCastPP up through Phis until it reaches the non >> constant call. The type of the return value is then known from the type >> of the CheckCastPP. A ValueTypePtr can be created by adding projections >> to the call for all values being returned. The oop edge is set by >> allocating a new instance of the value type (that allocation is >> hopefully useless and can be eliminated). The ValueTypePtr can then be >> pushed down through Phis using the machinery from 8183137. >> >> I had to disable compilation of LF as root if they return a method >> handle value. The reason is that the logic in CheckCastPPNode::Ideal() >> expects values to be returned in registers but is the called method is a >> lambda form, I expect it could return a value as an instance. > > Was this problem triggered by one of the tests? I'm seeing spurious > failures on JPRT (without your changes) and wonder if that could be > the cause. It wasn't. I don't think it exists without that change. >> The fix would require the logic in CheckCastPPNode::Ideal() to test if the >> returned value is a class pointer or not (tagged or not). > > Okay, could you please file a follow up bug/enhancement for this? Ok. Roland. From vladimir.x.ivanov at oracle.com Wed Jul 19 13:17:28 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 19 Jul 2017 16:17:28 +0300 Subject: RFR (XS): [MVT] MH.bindTo() should reject to bind DVTs Message-ID: <6076e505-d457-9d24-efe1-0ac1c8eba763@oracle.com> http://cr.openjdk.java.net/~vlivanov/valhalla/8184920/webrev.00 MH.bindTo() should reject to bind DVTs, because they aren't reference types as required by the contract: * @throws IllegalArgumentException if the target does not have a * leading parameter type that is a reference type Testing: jdk/test/valhalla/mvt/ Best regards, Vladimir Ivanov From tobias.hartmann at oracle.com Wed Jul 19 13:37:04 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 19 Jul 2017 15:37:04 +0200 Subject: RFR: 8184795: [MVT] non constant method handles can cause allocations in method handle combinators In-Reply-To: References: <2263c330-99a5-143e-3b47-e0e577cf698d@oracle.com> Message-ID: <8e829d65-8b79-2fe1-e077-b980d8da832b@oracle.com> Hi Roland, On 19.07.2017 15:17, Roland Westrelin wrote: >> src/share/vm/opto/castnode.cpp >> - It would be nice to move the allocation code in >> CheckCastPPNode::Ideal to valuetype.cpp or merge it with >> ValueTypeNode::allocate > > Ok. Makes sense. Merging with ValueTypeNode::allocate doesn't seem > reasonable though because that one only runs during parsing. Right, just would have been nice to reuse the code in GraphKit::new_instance instead of creating the allocate/initialize/barrier nodes manually. >> src/share/vm/opto/cfgnode.cpp >> - In line 1657, shouldn't this be: >> assert(in(i) == NULL || (vtptr != NULL && phase->type(in(i))->higher_equal(vtptr)) || [...] > > vtptr can be null if the first non null phi input is not a ValueTypePtr. Okay, I missed that we don't bail out then (but we could). >> - Why do you need the (in(1)->is_Phi()) check? Maybe add { } and a comment > > The new allocation reuses the exception paths from the call above > it with extra regions and phis. I found that would break that logic. Okay, makes sense. >> src/share/vm/opto/type.cpp >> - Why did you change this from TypeKlassPtr to TypePtr? > > Because we're returning either a class pointer or a pointer to a > value. So it's not always a TypeKlassPtr. Right, missed that. >> Was this problem triggered by one of the tests? I'm seeing spurious >> failures on JPRT (without your changes) and wonder if that could be >> the cause. > > It wasn't. I don't think it exists without that change. Okay, I'll try to figure out what the problem is with these failures. I'm not able to reproduce them locally. Best regards, Tobias From maurizio.cimadamore at oracle.com Wed Jul 19 13:59:45 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 19 Jul 2017 14:59:45 +0100 Subject: RFR (XS): [MVT] MH.bindTo() should reject to bind DVTs In-Reply-To: <6076e505-d457-9d24-efe1-0ac1c8eba763@oracle.com> References: <6076e505-d457-9d24-efe1-0ac1c8eba763@oracle.com> Message-ID: <1fd79330-1695-bf31-8f23-8ffbd321ae7d@oracle.com> Looks good Maurizio On 19/07/17 14:17, Vladimir Ivanov wrote: > http://cr.openjdk.java.net/~vlivanov/valhalla/8184920/webrev.00 > > MH.bindTo() should reject to bind DVTs, because they aren't reference > types as required by the contract: > > * @throws IllegalArgumentException if the target does not have a > * leading parameter type that is a reference type > > Testing: jdk/test/valhalla/mvt/ > > Best regards, > Vladimir Ivanov From vladimir.x.ivanov at oracle.com Wed Jul 19 14:30:31 2017 From: vladimir.x.ivanov at oracle.com (vladimir.x.ivanov at oracle.com) Date: Wed, 19 Jul 2017 14:30:31 +0000 Subject: hg: valhalla/valhalla/jdk: 8184920: [MVT] MH.bindTo() should reject DVTs Message-ID: <201707191430.v6JEUWr4012751@aojmv0008.oracle.com> Changeset: dc6a59938518 Author: vlivanov Date: 2017-07-19 17:27 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/dc6a59938518 8184920: [MVT] MH.bindTo() should reject DVTs Reviewed-by: mcimadamore ! src/java.base/share/classes/java/lang/invoke/MethodType.java ! test/valhalla/mvt/MethodHandlesTest.java From vladimir.x.ivanov at oracle.com Wed Jul 19 14:28:42 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 19 Jul 2017 17:28:42 +0300 Subject: RFR (XS): [MVT] MH.bindTo() should reject to bind DVTs In-Reply-To: <1fd79330-1695-bf31-8f23-8ffbd321ae7d@oracle.com> References: <6076e505-d457-9d24-efe1-0ac1c8eba763@oracle.com> <1fd79330-1695-bf31-8f23-8ffbd321ae7d@oracle.com> Message-ID: <7faaa47f-c370-20f2-b2a6-a86965ccd4a9@oracle.com> Thanks, Maurizio. Pushed. Best regards, Vladimir Ivanov On 7/19/17 4:59 PM, Maurizio Cimadamore wrote: > Looks good > > Maurizio > > > On 19/07/17 14:17, Vladimir Ivanov wrote: >> http://cr.openjdk.java.net/~vlivanov/valhalla/8184920/webrev.00 >> >> MH.bindTo() should reject to bind DVTs, because they aren't reference >> types as required by the contract: >> >> * @throws IllegalArgumentException if the target does not have a >> * leading parameter type that is a reference type >> >> Testing: jdk/test/valhalla/mvt/ >> >> Best regards, >> Vladimir Ivanov > From vladimir.x.ivanov at oracle.com Wed Jul 19 17:40:10 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 19 Jul 2017 20:40:10 +0300 Subject: RFR (S): [MVT] Support lambda form customization in LambdaFormBuilder Message-ID: http://cr.openjdk.java.net/~vlivanov/valhalla/8184938/webrev.00/ Implement lambda form customization in LambdaFormBuilder. (Duplicated logic from InvokerBytecodeGenerator.) LF customization is crucial for performant MH.invoke() and MH.invokeExact() on non-constant method handles. It enables JIT-compilers to generate a single nmethod for the whole method handle chain. Otherwise, the method handle chain scatters into numerous nmethods (one for each method handle) which severely affects performance (especially for MVT where Q-typed lambda forms can't be compiled as a root.) Testing: jdk/test/valhalla/mvt/ Best regards, Vladimir Ivanov From maurizio.cimadamore at oracle.com Wed Jul 19 18:05:13 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 19 Jul 2017 19:05:13 +0100 Subject: RFR (S): [MVT] Support lambda form customization in LambdaFormBuilder In-Reply-To: References: Message-ID: <9e39901f-2a5a-1598-8289-43529e70c858@oracle.com> Is there any value in having the 'assert', given that the method 'checkActualReceiver' always returns true? Taking thing further - do you need a method at all? Do you expect this to be used in other places? Maurizio On 19/07/17 18:40, Vladimir Ivanov wrote: > http://cr.openjdk.java.net/~vlivanov/valhalla/8184938/webrev.00/ > > Implement lambda form customization in LambdaFormBuilder. (Duplicated > logic from InvokerBytecodeGenerator.) > > LF customization is crucial for performant MH.invoke() and > MH.invokeExact() on non-constant method handles. It enables > JIT-compilers to generate a single nmethod for the whole method handle > chain. > > Otherwise, the method handle chain scatters into numerous nmethods > (one for each method handle) which severely affects performance > (especially for MVT where Q-typed lambda forms can't be compiled as a > root.) > > Testing: jdk/test/valhalla/mvt/ > > Best regards, > Vladimir Ivanov From vladimir.x.ivanov at oracle.com Wed Jul 19 18:40:12 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 19 Jul 2017 21:40:12 +0300 Subject: RFR (S): [MVT] Support lambda form customization in LambdaFormBuilder In-Reply-To: <9e39901f-2a5a-1598-8289-43529e70c858@oracle.com> References: <9e39901f-2a5a-1598-8289-43529e70c858@oracle.com> Message-ID: On 7/19/17 9:05 PM, Maurizio Cimadamore wrote: > Is there any value in having the 'assert', given that the method > 'checkActualReceiver' always returns true? Taking thing further - do you checkActualReceiver() inserts a check on bytecode into compiled lambda. It is deliberately guarded by an assert to generate that only in testing mode. > need a method at all? Do you expect this to be used in other places? No, it's not required and shouldn't be used anywhere else. But it's easier to guard the check using assert than Class.desiredAssertionStatus(). Best regards, Vladimir Ivanov > On 19/07/17 18:40, Vladimir Ivanov wrote: >> http://cr.openjdk.java.net/~vlivanov/valhalla/8184938/webrev.00/ >> >> Implement lambda form customization in LambdaFormBuilder. (Duplicated >> logic from InvokerBytecodeGenerator.) >> >> LF customization is crucial for performant MH.invoke() and >> MH.invokeExact() on non-constant method handles. It enables >> JIT-compilers to generate a single nmethod for the whole method handle >> chain. >> >> Otherwise, the method handle chain scatters into numerous nmethods >> (one for each method handle) which severely affects performance >> (especially for MVT where Q-typed lambda forms can't be compiled as a >> root.) >> >> Testing: jdk/test/valhalla/mvt/ >> >> Best regards, >> Vladimir Ivanov > From maurizio.cimadamore at oracle.com Wed Jul 19 20:40:04 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 19 Jul 2017 21:40:04 +0100 Subject: RFR (S): [MVT] Support lambda form customization in LambdaFormBuilder In-Reply-To: References: <9e39901f-2a5a-1598-8289-43529e70c858@oracle.com> Message-ID: <339625f3-d8b1-0042-4cb6-9996a11b6185@oracle.com> On 19/07/17 19:40, Vladimir Ivanov wrote: > > On 7/19/17 9:05 PM, Maurizio Cimadamore wrote: >> Is there any value in having the 'assert', given that the method >> 'checkActualReceiver' always returns true? Taking thing further - do you > > checkActualReceiver() inserts a check on bytecode into compiled > lambda. It is deliberately guarded by an assert to generate that only > in testing mode. Ah devious! - I never came across to that pattern before; reminds me of the if (DEBUG) { ... } trick (if DEBUG is a static constant, the compiler will generate or omit the code depending on the constant value). Ok - approved. Maurizio > >> need a method at all? Do you expect this to be used in other places? > > No, it's not required and shouldn't be used anywhere else. But it's > easier to guard the check using assert than > Class.desiredAssertionStatus(). > > Best regards, > Vladimir Ivanov > >> On 19/07/17 18:40, Vladimir Ivanov wrote: >>> http://cr.openjdk.java.net/~vlivanov/valhalla/8184938/webrev.00/ >>> >>> Implement lambda form customization in LambdaFormBuilder. >>> (Duplicated logic from InvokerBytecodeGenerator.) >>> >>> LF customization is crucial for performant MH.invoke() and >>> MH.invokeExact() on non-constant method handles. It enables >>> JIT-compilers to generate a single nmethod for the whole method >>> handle chain. >>> >>> Otherwise, the method handle chain scatters into numerous nmethods >>> (one for each method handle) which severely affects performance >>> (especially for MVT where Q-typed lambda forms can't be compiled as >>> a root.) >>> >>> Testing: jdk/test/valhalla/mvt/ >>> >>> Best regards, >>> Vladimir Ivanov >> From paul.sandoz at oracle.com Wed Jul 19 21:34:00 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Wed, 19 Jul 2017 14:34:00 -0700 Subject: RFR (S): [MVT] Support lambda form customization in LambdaFormBuilder In-Reply-To: <339625f3-d8b1-0042-4cb6-9996a11b6185@oracle.com> References: <9e39901f-2a5a-1598-8289-43529e70c858@oracle.com> <339625f3-d8b1-0042-4cb6-9996a11b6185@oracle.com> Message-ID: <0174ECD4-EA4E-4116-94CC-8F7BF438F6BD@oracle.com> > On 19 Jul 2017, at 13:40, Maurizio Cimadamore wrote: > > > > On 19/07/17 19:40, Vladimir Ivanov wrote: >> >> On 7/19/17 9:05 PM, Maurizio Cimadamore wrote: >>> Is there any value in having the 'assert', given that the method 'checkActualReceiver' always returns true? Taking thing further - do you >> >> checkActualReceiver() inserts a check on bytecode into compiled lambda. It is deliberately guarded by an assert to generate that only in testing mode. > Ah devious! - Indeed! +1 Paul. From david.simms at oracle.com Thu Jul 20 09:42:21 2017 From: david.simms at oracle.com (david.simms at oracle.com) Date: Thu, 20 Jul 2017 09:42:21 +0000 Subject: hg: valhalla/valhalla/hotspot: 8184794: [MVT] runtime/6294277/SourceDebugExtension.java: -Xrunjdwp crashes release builds Message-ID: <201707200942.v6K9gLBE021230@aojmv0008.oracle.com> Changeset: cbbd2c7f3259 Author: dsimms Date: 2017-07-20 10:42 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/cbbd2c7f3259 8184794: [MVT] runtime/6294277/SourceDebugExtension.java: -Xrunjdwp crashes release builds ! src/cpu/x86/vm/templateInterpreterGenerator_x86.cpp From vladimir.x.ivanov at oracle.com Thu Jul 20 11:24:41 2017 From: vladimir.x.ivanov at oracle.com (vladimir.x.ivanov at oracle.com) Date: Thu, 20 Jul 2017 11:24:41 +0000 Subject: hg: valhalla/valhalla/jdk: 8184938: [MVT] Support lambda form customization in LambdaFormBuilder Message-ID: <201707201124.v6KBOfsJ024497@aojmv0008.oracle.com> Changeset: 2165a7e479c9 Author: vlivanov Date: 2017-07-20 14:21 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2165a7e479c9 8184938: [MVT] Support lambda form customization in LambdaFormBuilder Reviewed-by: psandoz, mcimadamore ! src/java.base/share/classes/java/lang/invoke/LambdaFormBuilder.java ! src/java.base/share/classes/jdk/experimental/value/MethodHandleBuilder.java From vladimir.x.ivanov at oracle.com Thu Jul 20 11:38:55 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Thu, 20 Jul 2017 14:38:55 +0300 Subject: RFR (S): [MVT] Support lambda form customization in LambdaFormBuilder In-Reply-To: <0174ECD4-EA4E-4116-94CC-8F7BF438F6BD@oracle.com> References: <9e39901f-2a5a-1598-8289-43529e70c858@oracle.com> <339625f3-d8b1-0042-4cb6-9996a11b6185@oracle.com> <0174ECD4-EA4E-4116-94CC-8F7BF438F6BD@oracle.com> Message-ID: Thanks, Maurizio & Paul. Pushed. Best regards, Vladimir Ivanov On 7/20/17 12:34 AM, Paul Sandoz wrote: > >> On 19 Jul 2017, at 13:40, Maurizio Cimadamore wrote: >> >> >> >> On 19/07/17 19:40, Vladimir Ivanov wrote: >>> >>> On 7/19/17 9:05 PM, Maurizio Cimadamore wrote: >>>> Is there any value in having the 'assert', given that the method 'checkActualReceiver' always returns true? Taking thing further - do you >>> >>> checkActualReceiver() inserts a check on bytecode into compiled lambda. It is deliberately guarded by an assert to generate that only in testing mode. >> Ah devious! - > > Indeed! > > +1 > > Paul. > From maurizio.cimadamore at oracle.com Mon Jul 24 16:00:30 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 24 Jul 2017 17:00:30 +0100 Subject: RFR: [MVT] Rename DeriveValueType annotation Message-ID: <0f183bd5-cf02-d1bc-ce06-f03078602761@oracle.com> Hi, the special annotation that triggers generation of a derived value should be renamed from @DeriveValueType to @ValueCapableClass (which is also a term used in the spec draft). After some internal discussion we agreed that adding flags, or deprecating old annotation was not worth the extra interim complexity, so we're aiming for a straight rename. As this touches a lot of stuff, please double check :-) Webrevs: http://cr.openjdk.java.net/~mcimadamore/8185143-hotspot/ http://cr.openjdk.java.net/~mcimadamore/8185143-jdk/ http://cr.openjdk.java.net/~mcimadamore/8185143-langtools/ Maurizio From maurizio.cimadamore at oracle.com Mon Jul 24 16:14:08 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 24 Jul 2017 17:14:08 +0100 Subject: RFR: [MVT] MethodHandlesTest fails with assertions enabled Message-ID: <4bdb2dd8-dde0-dbe7-2bdd-b93a1541e9c9@oracle.com> Hi, this is a fix for a problem when running MethodHandlesTest with assertions enabled (-esa). Currently, bound method handles with value types are handled by encoding a bound value as a boxed value + unbox MH pair - but doing so breaks some arity invariants for BMHs. This makes the pair encoding explicit, by adding a small carrier class for the box/MH pair, which is then used to encode the bound value. http://cr.openjdk.java.net/~mcimadamore/8185142-jdk/ Maurizio From vladimir.x.ivanov at oracle.com Mon Jul 24 16:28:55 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Mon, 24 Jul 2017 19:28:55 +0300 Subject: RFR: [MVT] MethodHandlesTest fails with assertions enabled In-Reply-To: <4bdb2dd8-dde0-dbe7-2bdd-b93a1541e9c9@oracle.com> References: <4bdb2dd8-dde0-dbe7-2bdd-b93a1541e9c9@oracle.com> Message-ID: <8adcd092-5f2a-b60b-8077-e55622c4a213@oracle.com> Thanks for taking care of it, Maurizio! ======================================== + static final class Carrier_Q { + @Stable + final Object boxedValue; + @Stable + final MethodHandle unboxHandle; @Stable isn't needed. Final fields in java.lang.invoke are trusted by JIT-compilers. ======================================== + static final MethodHandle BOX_VALUE_GETTER; + static final MethodHandle UNBOX_HANDLE_GETTER; + NamedFunction unboxGetter = new NamedFunction(Carrier_Q.UNBOX_HANDLE_GETTER); + NamedFunction boxedValue = new NamedFunction(Carrier_Q.BOX_VALUE_GETTER); Maybe cache NamedFunctions right away? ======================================== - return mh.copyWithExtendL(type2, form2, value) - .copyWithExtendL(type2, form2, unbox); + try { + return mh.copyWithExtendL(type2, form2, new Carrier_Q(value, unbox)); + } catch (Throwable ex) { + throw new IllegalStateException(ex); + } Why do you need a try-catch block here? Otherwise, looks good. Best regards, Vladimir Ivanov On 7/24/17 7:14 PM, Maurizio Cimadamore wrote: > Hi, > this is a fix for a problem when running MethodHandlesTest with > assertions enabled (-esa). Currently, bound method handles with value > types are handled by encoding a bound value as a boxed value + unbox MH > pair - but doing so breaks some arity invariants for BMHs. This makes > the pair encoding explicit, by adding a small carrier class for the > box/MH pair, which is then used to encode the bound value. > > http://cr.openjdk.java.net/~mcimadamore/8185142-jdk/ > > Maurizio > From maurizio.cimadamore at oracle.com Mon Jul 24 23:02:47 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Tue, 25 Jul 2017 00:02:47 +0100 Subject: RFR: [MVT] MethodHandlesTest fails with assertions enabled In-Reply-To: <8adcd092-5f2a-b60b-8077-e55622c4a213@oracle.com> References: <4bdb2dd8-dde0-dbe7-2bdd-b93a1541e9c9@oracle.com> <8adcd092-5f2a-b60b-8077-e55622c4a213@oracle.com> Message-ID: Thanks for the review. Here's an updated webrev: http://cr.openjdk.java.net/~mcimadamore/8185142-jdk_v2/ Maurizio On 24/07/17 17:28, Vladimir Ivanov wrote: > Thanks for taking care of it, Maurizio! > > ======================================== > + static final class Carrier_Q { > + @Stable > + final Object boxedValue; > + @Stable > + final MethodHandle unboxHandle; > > @Stable isn't needed. Final fields in java.lang.invoke are trusted by > JIT-compilers. > > ======================================== > + static final MethodHandle BOX_VALUE_GETTER; > + static final MethodHandle UNBOX_HANDLE_GETTER; > > + NamedFunction unboxGetter = new > NamedFunction(Carrier_Q.UNBOX_HANDLE_GETTER); > > + NamedFunction boxedValue = new > NamedFunction(Carrier_Q.BOX_VALUE_GETTER); > > Maybe cache NamedFunctions right away? > > ======================================== > - return mh.copyWithExtendL(type2, form2, value) > - .copyWithExtendL(type2, form2, unbox); > + try { > + return mh.copyWithExtendL(type2, form2, new > Carrier_Q(value, unbox)); > + } catch (Throwable ex) { > + throw new IllegalStateException(ex); > + } > > Why do you need a try-catch block here? > > Otherwise, looks good. > > Best regards, > Vladimir Ivanov > > On 7/24/17 7:14 PM, Maurizio Cimadamore wrote: >> Hi, >> this is a fix for a problem when running MethodHandlesTest with >> assertions enabled (-esa). Currently, bound method handles with value >> types are handled by encoding a bound value as a boxed value + unbox >> MH pair - but doing so breaks some arity invariants for BMHs. This >> makes the pair encoding explicit, by adding a small carrier class for >> the box/MH pair, which is then used to encode the bound value. >> >> http://cr.openjdk.java.net/~mcimadamore/8185142-jdk/ >> >> Maurizio >> From vladimir.x.ivanov at oracle.com Tue Jul 25 09:27:37 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Tue, 25 Jul 2017 12:27:37 +0300 Subject: RFR: [MVT] MethodHandlesTest fails with assertions enabled In-Reply-To: References: <4bdb2dd8-dde0-dbe7-2bdd-b93a1541e9c9@oracle.com> <8adcd092-5f2a-b60b-8077-e55622c4a213@oracle.com> Message-ID: <0772a54f-370e-dda9-c38e-206709f4876e@oracle.com> Looks good. Best regards, Vladimir Ivanov On 7/25/17 2:02 AM, Maurizio Cimadamore wrote: > Thanks for the review. Here's an updated webrev: > > http://cr.openjdk.java.net/~mcimadamore/8185142-jdk_v2/ > > Maurizio > > > On 24/07/17 17:28, Vladimir Ivanov wrote: >> Thanks for taking care of it, Maurizio! >> >> ======================================== >> + static final class Carrier_Q { >> + @Stable >> + final Object boxedValue; >> + @Stable >> + final MethodHandle unboxHandle; >> >> @Stable isn't needed. Final fields in java.lang.invoke are trusted by >> JIT-compilers. >> >> ======================================== >> + static final MethodHandle BOX_VALUE_GETTER; >> + static final MethodHandle UNBOX_HANDLE_GETTER; >> >> + NamedFunction unboxGetter = new >> NamedFunction(Carrier_Q.UNBOX_HANDLE_GETTER); >> >> + NamedFunction boxedValue = new >> NamedFunction(Carrier_Q.BOX_VALUE_GETTER); >> >> Maybe cache NamedFunctions right away? >> >> ======================================== >> - return mh.copyWithExtendL(type2, form2, value) >> - .copyWithExtendL(type2, form2, unbox); >> + try { >> + return mh.copyWithExtendL(type2, form2, new >> Carrier_Q(value, unbox)); >> + } catch (Throwable ex) { >> + throw new IllegalStateException(ex); >> + } >> >> Why do you need a try-catch block here? >> >> Otherwise, looks good. >> >> Best regards, >> Vladimir Ivanov >> >> On 7/24/17 7:14 PM, Maurizio Cimadamore wrote: >>> Hi, >>> this is a fix for a problem when running MethodHandlesTest with >>> assertions enabled (-esa). Currently, bound method handles with value >>> types are handled by encoding a bound value as a boxed value + unbox >>> MH pair - but doing so breaks some arity invariants for BMHs. This >>> makes the pair encoding explicit, by adding a small carrier class for >>> the box/MH pair, which is then used to encode the bound value. >>> >>> http://cr.openjdk.java.net/~mcimadamore/8185142-jdk/ >>> >>> Maurizio >>> > From rwestrel at redhat.com Tue Jul 25 13:08:29 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Tue, 25 Jul 2017 15:08:29 +0200 Subject: RFR: 8184795: [MVT] non constant method handles can cause allocations in method handle combinators In-Reply-To: <2263c330-99a5-143e-3b47-e0e577cf698d@oracle.com> References: <2263c330-99a5-143e-3b47-e0e577cf698d@oracle.com> Message-ID: Here is a new webrev that should address your comments: http://cr.openjdk.java.net/~roland/8184795/webrev.01/ Roland. From maurizio.cimadamore at oracle.com Tue Jul 25 14:59:37 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Tue, 25 Jul 2017 14:59:37 +0000 Subject: hg: valhalla/valhalla/jdk: 8185142: [MVT] MethodHandlesTest fails with assertions enabled Message-ID: <201707251459.v6PExbqR015730@aojmv0008.oracle.com> Changeset: f1744c45ad76 Author: mcimadamore Date: 2017-07-25 15:57 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f1744c45ad76 8185142: [MVT] MethodHandlesTest fails with assertions enabled Summary: Box bound values into a carrier class when creating BMHs Reviewed-by: vlivanov ! src/java.base/share/classes/java/lang/invoke/LambdaFormEditor.java From tobias.hartmann at oracle.com Tue Jul 25 15:26:26 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Tue, 25 Jul 2017 17:26:26 +0200 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" Message-ID: Hi, below test fails with: Exception in thread "main" java.lang.IllegalArgumentException: no leading reference parameter at java.base/java.lang.invoke.MethodHandleStatics.newIllegalArgumentException(MethodHandleStatics.java:134) at java.base/java.lang.invoke.MethodType.leadingReferenceParameter(MethodType.java:531) at java.base/java.lang.invoke.MethodHandle.bindTo(MethodHandle.java:1419) at Test.test(Test.java:35) at Test.main(Test.java:41) Am I doing something wrong or is this case not yet supported? Thanks, Tobias import java.lang.invoke.*; __ByValue final class MyValue1 { final int x; private MyValue1() { this.x = 0; } __ValueFactory static MyValue1 createDefaultInline() { return __MakeDefault MyValue1(); } } public class Test { static final MethodHandle mh; static { try { mh = MethodHandles.lookup().unreflect(Test.class.getMethod("test_target", MyValue1.class)); } catch (NoSuchMethodException|IllegalAccessException e) { e.printStackTrace(); throw new RuntimeException("method handle lookup fails"); } } MyValue1 test_vt = MyValue1.createDefaultInline(); public int test_target(MyValue1 vt) { return vt.x; } long test() throws Throwable { MethodHandle mh1 = mh.bindTo(this); MethodHandle mh2 = mh1.bindTo(test_vt); return (long)mh2.invoke(); } public static void main(String[] args) throws Throwable { Test t = new Test(); t.test(); } } From vladimir.x.ivanov at oracle.com Tue Jul 25 15:35:31 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Tue, 25 Jul 2017 18:35:31 +0300 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: References: Message-ID: DVTs were deliberately forbidden in MH.bindTo() (8184920 [1]). The method contract explicitly states that only reference types can be bound: * @throws IllegalArgumentException if the target does not have a * leading parameter type that is a reference type Best regards, Vladimir Ivanov [1] https://jbs.oracle.com/browse/JDK-8184920 On 7/25/17 6:26 PM, Tobias Hartmann wrote: > Hi, > > below test fails with: > Exception in thread "main" java.lang.IllegalArgumentException: no leading reference parameter > at java.base/java.lang.invoke.MethodHandleStatics.newIllegalArgumentException(MethodHandleStatics.java:134) > at java.base/java.lang.invoke.MethodType.leadingReferenceParameter(MethodType.java:531) > at java.base/java.lang.invoke.MethodHandle.bindTo(MethodHandle.java:1419) > at Test.test(Test.java:35) > at Test.main(Test.java:41) > > Am I doing something wrong or is this case not yet supported? > > Thanks, > Tobias > > > import java.lang.invoke.*; > > __ByValue final class MyValue1 { > final int x; > > private MyValue1() { > this.x = 0; > } > > __ValueFactory static MyValue1 createDefaultInline() { > return __MakeDefault MyValue1(); > } > } > > public class Test { > > static final MethodHandle mh; > static { > try { > mh = MethodHandles.lookup().unreflect(Test.class.getMethod("test_target", MyValue1.class)); > } catch (NoSuchMethodException|IllegalAccessException e) { > e.printStackTrace(); > throw new RuntimeException("method handle lookup fails"); > } > } > > MyValue1 test_vt = MyValue1.createDefaultInline(); > > public int test_target(MyValue1 vt) { > return vt.x; > } > > long test() throws Throwable { > MethodHandle mh1 = mh.bindTo(this); > MethodHandle mh2 = mh1.bindTo(test_vt); > return (long)mh2.invoke(); > } > > public static void main(String[] args) throws Throwable { > Test t = new Test(); > t.test(); > } > } > From vladimir.x.ivanov at oracle.com Tue Jul 25 15:38:45 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Tue, 25 Jul 2017 18:38:45 +0300 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: References: Message-ID: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> > DVTs were deliberately forbidden in MH.bindTo() (8184920 [1]). > The method contract explicitly states that only reference types can be > bound: > * @throws IllegalArgumentException if the target does not have a > * leading parameter type that is a reference type MethodHandles.insertArguments() should be used instead. Best regards, Vladimir Ivanov > [1] https://jbs.oracle.com/browse/JDK-8184920 > > On 7/25/17 6:26 PM, Tobias Hartmann wrote: >> Hi, >> >> below test fails with: >> Exception in thread "main" java.lang.IllegalArgumentException: no >> leading reference parameter >> at >> java.base/java.lang.invoke.MethodHandleStatics.newIllegalArgumentException(MethodHandleStatics.java:134) >> >> at >> java.base/java.lang.invoke.MethodType.leadingReferenceParameter(MethodType.java:531) >> >> at >> java.base/java.lang.invoke.MethodHandle.bindTo(MethodHandle.java:1419) >> at Test.test(Test.java:35) >> at Test.main(Test.java:41) >> >> Am I doing something wrong or is this case not yet supported? >> >> Thanks, >> Tobias >> >> >> import java.lang.invoke.*; >> >> __ByValue final class MyValue1 { >> final int x; >> >> private MyValue1() { >> this.x = 0; >> } >> __ValueFactory static MyValue1 createDefaultInline() { >> return __MakeDefault MyValue1(); >> } >> } >> >> public class Test { >> >> static final MethodHandle mh; >> static { >> try { >> mh = >> MethodHandles.lookup().unreflect(Test.class.getMethod("test_target", >> MyValue1.class)); >> } catch (NoSuchMethodException|IllegalAccessException e) { >> e.printStackTrace(); >> throw new RuntimeException("method handle lookup fails"); >> } >> } >> >> MyValue1 test_vt = MyValue1.createDefaultInline(); >> >> public int test_target(MyValue1 vt) { >> return vt.x; >> } >> >> long test() throws Throwable { >> MethodHandle mh1 = mh.bindTo(this); >> MethodHandle mh2 = mh1.bindTo(test_vt); >> return (long)mh2.invoke(); >> } >> >> public static void main(String[] args) throws Throwable { >> Test t = new Test(); >> t.test(); >> } >> } >> From tobias.hartmann at oracle.com Tue Jul 25 15:51:48 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Tue, 25 Jul 2017 17:51:48 +0200 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> References: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> Message-ID: Hi Vladimir, On 25.07.2017 17:38, Vladimir Ivanov wrote: >> DVTs were deliberately forbidden in MH.bindTo() (8184920 [1]). >> The method contract explicitly states that only reference types can be bound: >> * @throws IllegalArgumentException if the target does not have a >> * leading parameter type that is a reference type > > MethodHandles.insertArguments() should be used instead. Okay, thank you! Best regards, Tobias >> On 7/25/17 6:26 PM, Tobias Hartmann wrote: >>> Hi, >>> >>> below test fails with: >>> Exception in thread "main" java.lang.IllegalArgumentException: no leading reference parameter >>> at java.base/java.lang.invoke.MethodHandleStatics.newIllegalArgumentException(MethodHandleStatics.java:134) >>> at java.base/java.lang.invoke.MethodType.leadingReferenceParameter(MethodType.java:531) >>> at java.base/java.lang.invoke.MethodHandle.bindTo(MethodHandle.java:1419) >>> at Test.test(Test.java:35) >>> at Test.main(Test.java:41) >>> >>> Am I doing something wrong or is this case not yet supported? >>> >>> Thanks, >>> Tobias >>> >>> >>> import java.lang.invoke.*; >>> >>> __ByValue final class MyValue1 { >>> final int x; >>> >>> private MyValue1() { >>> this.x = 0; >>> } >>> __ValueFactory static MyValue1 createDefaultInline() { >>> return __MakeDefault MyValue1(); >>> } >>> } >>> >>> public class Test { >>> >>> static final MethodHandle mh; >>> static { >>> try { >>> mh = MethodHandles.lookup().unreflect(Test.class.getMethod("test_target", MyValue1.class)); >>> } catch (NoSuchMethodException|IllegalAccessException e) { >>> e.printStackTrace(); >>> throw new RuntimeException("method handle lookup fails"); >>> } >>> } >>> >>> MyValue1 test_vt = MyValue1.createDefaultInline(); >>> >>> public int test_target(MyValue1 vt) { >>> return vt.x; >>> } >>> >>> long test() throws Throwable { >>> MethodHandle mh1 = mh.bindTo(this); >>> MethodHandle mh2 = mh1.bindTo(test_vt); >>> return (long)mh2.invoke(); >>> } >>> >>> public static void main(String[] args) throws Throwable { >>> Test t = new Test(); >>> t.test(); >>> } >>> } >>> From tobias.hartmann at oracle.com Tue Jul 25 15:55:22 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Tue, 25 Jul 2017 17:55:22 +0200 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: References: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> Message-ID: <5d024431-2f6a-be27-45f4-578ae4e47d0a@oracle.com> (Somehow I missed the RFR for 8184920) On 25.07.2017 17:51, Tobias Hartmann wrote: > Hi Vladimir, > > On 25.07.2017 17:38, Vladimir Ivanov wrote: >>> DVTs were deliberately forbidden in MH.bindTo() (8184920 [1]). >>> The method contract explicitly states that only reference types can be bound: >>> * @throws IllegalArgumentException if the target does not have a >>> * leading parameter type that is a reference type >> >> MethodHandles.insertArguments() should be used instead. > > Okay, thank you! > > Best regards, > Tobias > >>> On 7/25/17 6:26 PM, Tobias Hartmann wrote: >>>> Hi, >>>> >>>> below test fails with: >>>> Exception in thread "main" java.lang.IllegalArgumentException: no leading reference parameter >>>> at java.base/java.lang.invoke.MethodHandleStatics.newIllegalArgumentException(MethodHandleStatics.java:134) >>>> at java.base/java.lang.invoke.MethodType.leadingReferenceParameter(MethodType.java:531) >>>> at java.base/java.lang.invoke.MethodHandle.bindTo(MethodHandle.java:1419) >>>> at Test.test(Test.java:35) >>>> at Test.main(Test.java:41) >>>> >>>> Am I doing something wrong or is this case not yet supported? >>>> >>>> Thanks, >>>> Tobias >>>> >>>> >>>> import java.lang.invoke.*; >>>> >>>> __ByValue final class MyValue1 { >>>> final int x; >>>> >>>> private MyValue1() { >>>> this.x = 0; >>>> } >>>> __ValueFactory static MyValue1 createDefaultInline() { >>>> return __MakeDefault MyValue1(); >>>> } >>>> } >>>> >>>> public class Test { >>>> >>>> static final MethodHandle mh; >>>> static { >>>> try { >>>> mh = MethodHandles.lookup().unreflect(Test.class.getMethod("test_target", MyValue1.class)); >>>> } catch (NoSuchMethodException|IllegalAccessException e) { >>>> e.printStackTrace(); >>>> throw new RuntimeException("method handle lookup fails"); >>>> } >>>> } >>>> >>>> MyValue1 test_vt = MyValue1.createDefaultInline(); >>>> >>>> public int test_target(MyValue1 vt) { >>>> return vt.x; >>>> } >>>> >>>> long test() throws Throwable { >>>> MethodHandle mh1 = mh.bindTo(this); >>>> MethodHandle mh2 = mh1.bindTo(test_vt); >>>> return (long)mh2.invoke(); >>>> } >>>> >>>> public static void main(String[] args) throws Throwable { >>>> Test t = new Test(); >>>> t.test(); >>>> } >>>> } >>>> From tobias.hartmann at oracle.com Tue Jul 25 17:08:13 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Tue, 25 Jul 2017 19:08:13 +0200 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> References: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> Message-ID: Hi Vladimir, On 25.07.2017 17:38, Vladimir Ivanov wrote: > MethodHandles.insertArguments() should be used instead. Changing MethodHandle mh2 = mh1.bindTo(test_vt); to MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, test_vt); fails with: Exception in thread "main" java.lang.ArrayStoreException: MyValue1 at Test.test(Test.java:35) at Test.main(Test.java:41) Why's that? Thanks, Tobias From vladimir.x.ivanov at oracle.com Tue Jul 25 17:21:28 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Tue, 25 Jul 2017 20:21:28 +0300 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: References: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> Message-ID: > Changing > MethodHandle mh2 = mh1.bindTo(test_vt); > to > MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, test_vt); > fails with: > > Exception in thread "main" java.lang.ArrayStoreException: MyValue1 > at Test.test(Test.java:35) > at Test.main(Test.java:41) > > Why's that? I'd say it's a problem in javac with auto-boxing of Q-types when calling vararg methods. It tries to store a Q-typed value into an Object[] which generates an ArrayStoreException: long test() throws java.lang.Throwable; ... 10: iconst_1 11: anewarray #7 // class java/lang/Object 14: dup 15: iconst_0 16: aload_0 17: getfield #3 // Field test_vt:QMyValue1; 20: aastore 21: invokestatic #8 // Method java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; Best regards, Vladimir Ivanov From maurizio.cimadamore at oracle.com Tue Jul 25 17:30:18 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Tue, 25 Jul 2017 18:30:18 +0100 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: References: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> Message-ID: If you are using value types straight from source code (e.g. __Value), then yes, this appears to be a problem in javac. However, if you are just using value-capable classes, then javac shouldn't have much say in what you are trying to do, so, if that's the case it would point more in the MH direction. Maurizio On 25/07/17 18:21, Vladimir Ivanov wrote: >> Changing >> MethodHandle mh2 = mh1.bindTo(test_vt); >> to >> MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, test_vt); >> fails with: >> >> Exception in thread "main" java.lang.ArrayStoreException: MyValue1 >> at Test.test(Test.java:35) >> at Test.main(Test.java:41) >> >> Why's that? > > I'd say it's a problem in javac with auto-boxing of Q-types when > calling vararg methods. > > It tries to store a Q-typed value into an Object[] which generates an > ArrayStoreException: > > long test() throws java.lang.Throwable; > ... > 10: iconst_1 > 11: anewarray #7 // class java/lang/Object > 14: dup > 15: iconst_0 > 16: aload_0 > 17: getfield #3 // Field test_vt:QMyValue1; > 20: aastore > 21: invokestatic #8 // Method > java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; > > Best regards, > Vladimir Ivanov From vladimir.x.ivanov at oracle.com Tue Jul 25 18:00:13 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Tue, 25 Jul 2017 21:00:13 +0300 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: References: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> Message-ID: <9e7a1b22-6f6c-73ee-9202-00c28084d361@oracle.com> > If you are using value types straight from source code (e.g. __Value), > then yes, this appears to be a problem in javac. However, if you are > just using value-capable classes, then javac shouldn't have much say in > what you are trying to do, so, if that's the case it would point more in > the MH direction. It's the former case. The exception is thrown from javac-generated code. MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, test_vt); is translated into: 11: anewarray #7 // class java/lang/Object ... 17: getfield #3 // Field test_vt:QMyValue1; 20: aastore 21: invokestatic #8 // Method java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; where test_vt is a Q-typed field: MyValue1 test_vt = MyValue1.createDefaultInline(); __ByValue final class MyValue1 { ... __ValueFactory static MyValue1 createDefaultInline() { return __MakeDefault MyValue1(); } } aastore @ 20 tries to write a Q-typed value (loaded from test_vt) into Object[] before passing it into MethodHandles.insertArguments() which is vararg method. I'd expect test_vt to be boxed first. Best regards, Vladimir Ivanov > > Maurizio > > > On 25/07/17 18:21, Vladimir Ivanov wrote: >>> Changing >>> MethodHandle mh2 = mh1.bindTo(test_vt); >>> to >>> MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, test_vt); >>> fails with: >>> >>> Exception in thread "main" java.lang.ArrayStoreException: MyValue1 >>> at Test.test(Test.java:35) >>> at Test.main(Test.java:41) >>> >>> Why's that? >> >> I'd say it's a problem in javac with auto-boxing of Q-types when >> calling vararg methods. >> >> It tries to store a Q-typed value into an Object[] which generates an >> ArrayStoreException: >> >> long test() throws java.lang.Throwable; >> ... >> 10: iconst_1 >> 11: anewarray #7 // class java/lang/Object >> 14: dup >> 15: iconst_0 >> 16: aload_0 >> 17: getfield #3 // Field test_vt:QMyValue1; >> 20: aastore >> 21: invokestatic #8 // Method >> java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; >> >> >> Best regards, >> Vladimir Ivanov > From lois.foltan at oracle.com Tue Jul 25 21:10:19 2017 From: lois.foltan at oracle.com (lois.foltan at oracle.com) Date: Tue, 25 Jul 2017 21:10:19 +0000 Subject: hg: valhalla/valhalla/hotspot: 8185301: [MVT] Add JVM support for -Dvalhalla.mangleClassInfo Message-ID: <201707252110.v6PLAJib004161@aojmv0008.oracle.com> Changeset: 3cb736f232c7 Author: lfoltan Date: 2017-07-25 16:57 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3cb736f232c7 8185301: [MVT] Add JVM support for -Dvalhalla.mangleClassInfo Summary: Introduction of JVM_CONSTANT_Value to support MVT's name mangling specification for value types Reviewed-by: acorn, dsimms ! src/cpu/x86/vm/templateTable_x86.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotConstantPool.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotVMConfig.java ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciReplay.cpp ! src/share/vm/ci/ciStreams.hpp ! src/share/vm/ci/ciTypeFlow.cpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/interpreter/bytecodeTracer.cpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/jvmci/jvmciEnv.cpp ! src/share/vm/jvmci/vmStructs_jvmci.cpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/generateOopMap.cpp ! src/share/vm/oops/method.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/jvmtiTagMap.cpp ! src/share/vm/prims/methodComparator.cpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/utilities/constantTag.cpp ! src/share/vm/utilities/constantTag.hpp ! test/runtime/valhalla/valuetypes/UninitializedValueFieldsTest.java ! test/runtime/valhalla/valuetypes/VTBufferTest.java ! test/runtime/valhalla/valuetypes/ValueTypeGetField.java From maurizio.cimadamore at oracle.com Tue Jul 25 23:46:11 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 26 Jul 2017 00:46:11 +0100 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: <9e7a1b22-6f6c-73ee-9202-00c28084d361@oracle.com> References: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> <9e7a1b22-6f6c-73ee-9202-00c28084d361@oracle.com> Message-ID: <3bf6ba03-9992-f3b2-2b8a-e12453538331@oracle.com> I first thought of it as a javac bug, but now I'm less sure. I mean, yes, it's buggy, but the root of the problem here is that javac doesn't know how to 'box a value'. Note that this is a true 'Valhalla value', not an MVT one, so there's no POJO to fall back to. We could have javac generate some 'vbox' before storing the value in the array, but that would not achieve much, I think - as vbox/vubox specifically rely on the duality between value-capable-class and derived-value-class that's builtin in MVT. W/o MVT there's no such duality and, as a consequence, no easy way to 'box' a value. Some approaches that have been discussed in the past were either let the VM to synthesize a box for a value, or (preferred approach) have javac to generate it - while I don't object for such experimental work to be carried out somewhere, I'm not sure that this work truly belongs to the MVT branch - where value class declaration with __ByValue is there more in order to aid test development. So I'd reluctantly suggest that this is a test bug. The test is uncovering a well known issue with general support for value types in the language (how to do boxing?) but that has little to do with MVT itself. Maurizio On 25/07/17 19:00, Vladimir Ivanov wrote: >> If you are using value types straight from source code (e.g. >> __Value), then yes, this appears to be a problem in javac. However, >> if you are just using value-capable classes, then javac shouldn't >> have much say in what you are trying to do, so, if that's the case it >> would point more in the MH direction. > > It's the former case. The exception is thrown from javac-generated code. > > MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, test_vt); > > is translated into: > > 11: anewarray #7 // class java/lang/Object > ... > 17: getfield #3 // Field test_vt:QMyValue1; > 20: aastore > 21: invokestatic #8 // Method > java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; > > where test_vt is a Q-typed field: > > MyValue1 test_vt = MyValue1.createDefaultInline(); > > __ByValue final class MyValue1 { > ... > __ValueFactory static MyValue1 createDefaultInline() { > return __MakeDefault MyValue1(); > } > } > > aastore @ 20 tries to write a Q-typed value (loaded from test_vt) into > Object[] before passing it into MethodHandles.insertArguments() which > is vararg method. > > I'd expect test_vt to be boxed first. > > Best regards, > Vladimir Ivanov > > >> >> Maurizio >> >> >> On 25/07/17 18:21, Vladimir Ivanov wrote: >>>> Changing >>>> MethodHandle mh2 = mh1.bindTo(test_vt); >>>> to >>>> MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, >>>> test_vt); >>>> fails with: >>>> >>>> Exception in thread "main" java.lang.ArrayStoreException: MyValue1 >>>> at Test.test(Test.java:35) >>>> at Test.main(Test.java:41) >>>> >>>> Why's that? >>> >>> I'd say it's a problem in javac with auto-boxing of Q-types when >>> calling vararg methods. >>> >>> It tries to store a Q-typed value into an Object[] which generates >>> an ArrayStoreException: >>> >>> long test() throws java.lang.Throwable; >>> ... >>> 10: iconst_1 >>> 11: anewarray #7 // class java/lang/Object >>> 14: dup >>> 15: iconst_0 >>> 16: aload_0 >>> 17: getfield #3 // Field >>> test_vt:QMyValue1; >>> 20: aastore >>> 21: invokestatic #8 // Method >>> java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; >>> >>> >>> Best regards, >>> Vladimir Ivanov >> From tobias.hartmann at oracle.com Wed Jul 26 08:11:45 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 26 Jul 2017 10:11:45 +0200 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: <3bf6ba03-9992-f3b2-2b8a-e12453538331@oracle.com> References: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> <9e7a1b22-6f6c-73ee-9202-00c28084d361@oracle.com> <3bf6ba03-9992-f3b2-2b8a-e12453538331@oracle.com> Message-ID: Thanks Vladimir and Maurizio for looking into this. On 26.07.2017 01:46, Maurizio Cimadamore wrote: > I first thought of it as a javac bug, but now I'm less sure. I mean, yes, it's buggy, but the root of the problem here is that javac doesn't know how to 'box a value'. Note that this is a true 'Valhalla value', not an MVT one, so there's no POJO to fall back to. We could have javac generate some 'vbox' before storing the value in the array, but that would not achieve much, I think - as vbox/vubox specifically rely on the duality between value-capable-class and derived-value-class that's builtin in MVT. W/o MVT there's no such duality and, as a consequence, no easy way to 'box' a value. > > Some approaches that have been discussed in the past were either let the VM to synthesize a box for a value, or (preferred approach) have javac to generate it - while I don't object for such experimental work to be carried out somewhere, I'm not sure that this work truly belongs to the MVT branch - where value class declaration with __ByValue is there more in order to aid test development. Right, I agree that this is out of scope for MVT. > So I'd reluctantly suggest that this is a test bug. The test is uncovering a well known issue with general support for value types in the language (how to do boxing?) but that has little to do with MVT itself. Yes, I'll use a DVT for the test. Thanks, Tobias > On 25/07/17 19:00, Vladimir Ivanov wrote: >>> If you are using value types straight from source code (e.g. __Value), then yes, this appears to be a problem in javac. However, if you are just using value-capable classes, then javac shouldn't have much say in what you are trying to do, so, if that's the case it would point more in the MH direction. >> >> It's the former case. The exception is thrown from javac-generated code. >> >> MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, test_vt); >> >> is translated into: >> >> 11: anewarray #7 // class java/lang/Object >> ... >> 17: getfield #3 // Field test_vt:QMyValue1; >> 20: aastore >> 21: invokestatic #8 // Method java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; >> >> where test_vt is a Q-typed field: >> >> MyValue1 test_vt = MyValue1.createDefaultInline(); >> >> __ByValue final class MyValue1 { >> ... >> __ValueFactory static MyValue1 createDefaultInline() { >> return __MakeDefault MyValue1(); >> } >> } >> >> aastore @ 20 tries to write a Q-typed value (loaded from test_vt) into Object[] before passing it into MethodHandles.insertArguments() which is vararg method. >> >> I'd expect test_vt to be boxed first. >> >> Best regards, >> Vladimir Ivanov >> >> >>> >>> Maurizio >>> >>> >>> On 25/07/17 18:21, Vladimir Ivanov wrote: >>>>> Changing >>>>> MethodHandle mh2 = mh1.bindTo(test_vt); >>>>> to >>>>> MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, test_vt); >>>>> fails with: >>>>> >>>>> Exception in thread "main" java.lang.ArrayStoreException: MyValue1 >>>>> at Test.test(Test.java:35) >>>>> at Test.main(Test.java:41) >>>>> >>>>> Why's that? >>>> >>>> I'd say it's a problem in javac with auto-boxing of Q-types when calling vararg methods. >>>> >>>> It tries to store a Q-typed value into an Object[] which generates an ArrayStoreException: >>>> >>>> long test() throws java.lang.Throwable; >>>> ... >>>> 10: iconst_1 >>>> 11: anewarray #7 // class java/lang/Object >>>> 14: dup >>>> 15: iconst_0 >>>> 16: aload_0 >>>> 17: getfield #3 // Field test_vt:QMyValue1; >>>> 20: aastore >>>> 21: invokestatic #8 // Method java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; >>>> >>>> Best regards, >>>> Vladimir Ivanov >>> > From tobias.hartmann at oracle.com Wed Jul 26 09:06:35 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 26 Jul 2017 11:06:35 +0200 Subject: RFR: 8184795: [MVT] non constant method handles can cause allocations in method handle combinators In-Reply-To: References: <2263c330-99a5-143e-3b47-e0e577cf698d@oracle.com> Message-ID: <1f7aca3a-33ad-394d-0d85-d9f10b80f01a@oracle.com> Hi Roland, On 25.07.2017 15:08, Roland Westrelin wrote: > http://cr.openjdk.java.net/~roland/8184795/webrev.01/ Thanks for making the changes, this looks good to me. All tests pass on JPRT (I haven't seen the spurious GC crashes again). Best regards, Tobias From tobias.hartmann at oracle.com Wed Jul 26 09:07:20 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 26 Jul 2017 11:07:20 +0200 Subject: RFR(S): 8185334: [MVT] nmethod::print_nmethod_labels() does not work with -XX:+ValueTypePassFieldsAsArgs Message-ID: <5bc8382d-6fdb-14ce-d56b-fce8ced91372@oracle.com> Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8185334 http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.32/ If -XX:+ValueTypePassFieldsAsArgs is enabled, the compiled method parameters in the -XX:CompileCommand=print output should be adjusted to point to the actual fields being passed. The current output looks like this: # {method} {0x00007fb6d1dafe60} 'test35' '(JQcompiler/valhalla/valuetypes/MyValue1;IQcompiler/valhalla/valuetypes/MyValue2;)J' in 'compiler/valhalla/valuetypes/ValueTypeTestBench' # this: rsi:rsi = 'compiler/valhalla/valuetypes/ValueTypeTestBench' # parm0: rdx:rdx = long # parm1: rcx:rcx = 'compiler/valhalla/valuetypes/MyValue1' # parm2: r8 = int # parm3: r9:r9 = 'compiler/valhalla/valuetypes/MyValue2' With the patch it looks like this: # {method} {0x00007fdb5089ce60} 'test35' '(JQcompiler/valhalla/valuetypes/MyValue1;IQcompiler/valhalla/valuetypes/MyValue2;)J' in 'compiler/valhalla/valuetypes/ValueTypeTestBench' # parm0: rsi:rsi = 'java/lang/Object' # parm1: rdx:rdx = long # parm2: rcx:rcx = long # parm3: r8 = int # parm4: r9 = int # parm5: rdi = short # parm6: [sp+0xa0] = 'java/lang/Object' (sp of caller) # parm7: [sp+0xa8] = array # parm8: [sp+0xb0] = long # parm9: [sp+0xb8] = int # parm10: [sp+0xc0] = byte # parm11: [sp+0xc8] = boolean # parm12: [sp+0xd0] = long # parm13: [sp+0xd8] = int # parm14: [sp+0xe0] = byte # parm15: [sp+0xe8] = boolean # parm16: [sp+0xf0] = int # parm17: [sp+0xf8] = long # parm18: [sp+0x100] = int # parm19: [sp+0x108] = byte [...] This patch includes some other cleanups: - sharedRuntime_x86_64.cpp: We should not use VOID as placeholder because this confuses other signature printing code - compiledMethod.cpp: We can safely assume that the method has a value type argument if an extended signature is available. I moved the verification code into #ifdef ASSERT. - signature.cpp: -> If the type is 'L;' (no Klass information) we currently print # parm0: rsi:rsi = '' With the changes we print: # parm0: rsi:rsi = 'java/lang/Object' Thanks, Tobias From tobias.hartmann at oracle.com Wed Jul 26 11:43:43 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 26 Jul 2017 13:43:43 +0200 Subject: RFR(S): 8185339: [MVT] Bytecode escape analyzer does not support _vbox/_vunbox Message-ID: Hi, https://bugs.openjdk.java.net/browse/JDK-8185339 http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.33/ We crash during compilation because the bytecode escape analyzer does not support the _vbox/_vunbox bytecodes. I noticed that for _vwithfield, we don't mark the input value type as escaping but for _vgetfield we do: if (s.cur_bc() != Bytecodes::_getstatic) { set_method_escape(state.apop()); } Do we need to 'set_method_escape' for value types? If I understand the code in ConnectionGraph::process_call_arguments() correctly, we set the fields escape state according to the argument escape state. For value types, the (reference) fields may still escape so I think we need to set the escape state. Thanks, Tobias From rwestrel at redhat.com Wed Jul 26 12:04:00 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 26 Jul 2017 14:04:00 +0200 Subject: RFR(S): 8185334: [MVT] nmethod::print_nmethod_labels() does not work with -XX:+ValueTypePassFieldsAsArgs In-Reply-To: <5bc8382d-6fdb-14ce-d56b-fce8ced91372@oracle.com> References: <5bc8382d-6fdb-14ce-d56b-fce8ced91372@oracle.com> Message-ID: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.32/ Looks ok to me. Roland. From vladimir.x.ivanov at oracle.com Wed Jul 26 12:11:37 2017 From: vladimir.x.ivanov at oracle.com (Vladimir Ivanov) Date: Wed, 26 Jul 2017 15:11:37 +0300 Subject: MethodHandle.bindTo chain fails with "IllegalArgumentException: no leading reference parameter" In-Reply-To: <3bf6ba03-9992-f3b2-2b8a-e12453538331@oracle.com> References: <648dcb74-8927-4f9f-2e08-36cdc4c2e085@oracle.com> <9e7a1b22-6f6c-73ee-9202-00c28084d361@oracle.com> <3bf6ba03-9992-f3b2-2b8a-e12453538331@oracle.com> Message-ID: Sure, it's definitely out of scope for MVT. > I first thought of it as a javac bug, but now I'm less sure. I mean, > yes, it's buggy, but the root of the problem here is that javac doesn't > know how to 'box a value'. Note that this is a true 'Valhalla value', > not an MVT one, so there's no POJO to fall back to. We could have javac > generate some 'vbox' before storing the value in the array, but that > would not achieve much, I think - as vbox/vubox specifically rely on the > duality between value-capable-class and derived-value-class that's > builtin in MVT. W/o MVT there's no such duality and, as a consequence, > no easy way to 'box' a value. I had an impression that Q-type & L-type duality is part of long-term vision for value types and vbox/vunbox bytecodes will stay. But it doesn't necessarily pass reality check :-) Best regards, Vladimir Ivanov > Some approaches that have been discussed in the past were either let the > VM to synthesize a box for a value, or (preferred approach) have javac > to generate it - while I don't object for such experimental work to be > carried out somewhere, I'm not sure that this work truly belongs to the > MVT branch - where value class declaration with __ByValue is there more > in order to aid test development. > > So I'd reluctantly suggest that this is a test bug. The test is > uncovering a well known issue with general support for value types in > the language (how to do boxing?) but that has little to do with MVT itself. > > Maurizio > > > On 25/07/17 19:00, Vladimir Ivanov wrote: >>> If you are using value types straight from source code (e.g. >>> __Value), then yes, this appears to be a problem in javac. However, >>> if you are just using value-capable classes, then javac shouldn't >>> have much say in what you are trying to do, so, if that's the case it >>> would point more in the MH direction. >> >> It's the former case. The exception is thrown from javac-generated code. >> >> MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, test_vt); >> >> is translated into: >> >> 11: anewarray #7 // class java/lang/Object >> ... >> 17: getfield #3 // Field test_vt:QMyValue1; >> 20: aastore >> 21: invokestatic #8 // Method >> java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; >> >> >> where test_vt is a Q-typed field: >> >> MyValue1 test_vt = MyValue1.createDefaultInline(); >> >> __ByValue final class MyValue1 { >> ... >> __ValueFactory static MyValue1 createDefaultInline() { >> return __MakeDefault MyValue1(); >> } >> } >> >> aastore @ 20 tries to write a Q-typed value (loaded from test_vt) into >> Object[] before passing it into MethodHandles.insertArguments() which >> is vararg method. >> >> I'd expect test_vt to be boxed first. >> >> Best regards, >> Vladimir Ivanov >> >> >>> >>> Maurizio >>> >>> >>> On 25/07/17 18:21, Vladimir Ivanov wrote: >>>>> Changing >>>>> MethodHandle mh2 = mh1.bindTo(test_vt); >>>>> to >>>>> MethodHandle mh2 = MethodHandles.insertArguments(mh1, 0, >>>>> test_vt); >>>>> fails with: >>>>> >>>>> Exception in thread "main" java.lang.ArrayStoreException: MyValue1 >>>>> at Test.test(Test.java:35) >>>>> at Test.main(Test.java:41) >>>>> >>>>> Why's that? >>>> >>>> I'd say it's a problem in javac with auto-boxing of Q-types when >>>> calling vararg methods. >>>> >>>> It tries to store a Q-typed value into an Object[] which generates >>>> an ArrayStoreException: >>>> >>>> long test() throws java.lang.Throwable; >>>> ... >>>> 10: iconst_1 >>>> 11: anewarray #7 // class java/lang/Object >>>> 14: dup >>>> 15: iconst_0 >>>> 16: aload_0 >>>> 17: getfield #3 // Field >>>> test_vt:QMyValue1; >>>> 20: aastore >>>> 21: invokestatic #8 // Method >>>> java/lang/invoke/MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; >>>> >>>> >>>> Best regards, >>>> Vladimir Ivanov >>> > From rwestrel at redhat.com Wed Jul 26 12:14:19 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 26 Jul 2017 14:14:19 +0200 Subject: RFR(S): 8185339: [MVT] Bytecode escape analyzer does not support _vbox/_vunbox In-Reply-To: References: Message-ID: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.33/ That looks reasonable to me. Roland. From tobias.hartmann at oracle.com Wed Jul 26 12:57:30 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 26 Jul 2017 14:57:30 +0200 Subject: RFR(S): 8185334: [MVT] nmethod::print_nmethod_labels() does not work with -XX:+ValueTypePassFieldsAsArgs In-Reply-To: References: <5bc8382d-6fdb-14ce-d56b-fce8ced91372@oracle.com> Message-ID: <51a814f1-1e60-5ec9-c5ec-36cdbcd46730@oracle.com> Thanks Roland. Best regards, Tobias On 26.07.2017 14:04, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.32/ > > Looks ok to me. > > Roland. > From tobias.hartmann at oracle.com Wed Jul 26 12:58:21 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 26 Jul 2017 14:58:21 +0200 Subject: RFR(S): 8185339: [MVT] Bytecode escape analyzer does not support _vbox/_vunbox In-Reply-To: References: Message-ID: Thanks Roland. Any thoughts about if vwithfield should also mark the value type as escaping? Best regards, Tobias On 26.07.2017 14:14, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.33/ > > That looks reasonable to me. > > Roland. > From rwestrel at redhat.com Wed Jul 26 13:14:12 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 26 Jul 2017 15:14:12 +0200 Subject: RFR(S): 8185339: [MVT] Bytecode escape analyzer does not support _vbox/_vunbox In-Reply-To: References: Message-ID: > Any thoughts about if vwithfield should also mark the value type as escaping? I suppose that we do given it makes a copy of the value type and as you said some fields can then escape. Roland. From rwestrel at redhat.com Wed Jul 26 13:20:40 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 26 Jul 2017 15:20:40 +0200 Subject: RFR: 8184795: [MVT] non constant method handles can cause allocations in method handle combinators In-Reply-To: <1f7aca3a-33ad-394d-0d85-d9f10b80f01a@oracle.com> References: <2263c330-99a5-143e-3b47-e0e577cf698d@oracle.com> <1f7aca3a-33ad-394d-0d85-d9f10b80f01a@oracle.com> Message-ID: >> http://cr.openjdk.java.net/~roland/8184795/webrev.01/ > > Thanks for making the changes, this looks good to me. > > All tests pass on JPRT (I haven't seen the spurious GC crashes again). Thanks! Roland. From rwestrel at redhat.com Wed Jul 26 13:50:58 2017 From: rwestrel at redhat.com (rwestrel at redhat.com) Date: Wed, 26 Jul 2017 13:50:58 +0000 Subject: hg: valhalla/valhalla/hotspot: 8184795: [MVT] non constant method handles can cause allocations in method handle combinators Message-ID: <201707261350.v6QDoxSC013896@aojmv0008.oracle.com> Changeset: 6efbdfd91076 Author: roland Date: 2017-07-26 15:24 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/6efbdfd91076 8184795: [MVT] non constant method handles can cause allocations in method handle combinators Reviewed-by: thartmann ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/castnode.cpp ! src/share/vm/opto/castnode.hpp ! src/share/vm/opto/cfgnode.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/parse1.cpp ! src/share/vm/opto/type.cpp ! src/share/vm/opto/type.hpp ! src/share/vm/opto/valuetypenode.cpp ! src/share/vm/opto/valuetypenode.hpp ! test/compiler/valhalla/valuetypes/ValueTypeTestBench.java From tobias.hartmann at oracle.com Wed Jul 26 14:15:46 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 26 Jul 2017 16:15:46 +0200 Subject: RFR(S): 8185339: [MVT] Bytecode escape analyzer does not support _vbox/_vunbox In-Reply-To: References: Message-ID: On 26.07.2017 15:14, Roland Westrelin wrote: >> Any thoughts about if vwithfield should also mark the value type as escaping? > > I suppose that we do given it makes a copy of the value type and as you > said some fields can then escape. Okay, I'll adjust the vwithfield case accordingly before pushing. Thanks, Tobias From tobias.hartmann at oracle.com Wed Jul 26 16:00:30 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Wed, 26 Jul 2017 16:00:30 +0000 Subject: hg: valhalla/valhalla/hotspot: 3 new changesets Message-ID: <201707261600.v6QG0UrT001790@aojmv0008.oracle.com> Changeset: d5c9d8e0fbc0 Author: thartmann Date: 2017-07-26 16:12 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d5c9d8e0fbc0 8185334: [MVT] nmethod::print_nmethod_labels() does not work with -XX:+ValueTypePassFieldsAsArgs Reviewed-by: roland ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/share/vm/code/compiledMethod.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/runtime/signature.cpp Changeset: 2ad53cb33745 Author: thartmann Date: 2017-07-26 16:30 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/2ad53cb33745 8185339: [MVT] Bytecode escape analyzer does not support _vbox/_vunbox Reviewed-by: roland ! src/share/vm/ci/bcEscapeAnalyzer.cpp + test/compiler/valhalla/valuetypes/TestBoundValueTypes.java Changeset: 855cfe19730f Author: thartmann Date: 2017-07-26 17:51 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/855cfe19730f Fixed build after 8185301 changes ! src/share/vm/classfile/classFileParser.cpp From tobias.hartmann at oracle.com Wed Jul 26 15:58:39 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Wed, 26 Jul 2017 17:58:39 +0200 Subject: hg: valhalla/valhalla/hotspot: 8185301: [MVT] Add JVM support for -Dvalhalla.mangleClassInfo In-Reply-To: <201707252110.v6PLAJib004161@aojmv0008.oracle.com> References: <201707252110.v6PLAJib004161@aojmv0008.oracle.com> Message-ID: <3e89d950-5210-a877-d1f3-9cc9f2a851c2@oracle.com> Hi Lois, the change to classFileParser.cpp [1] caused JPRT to fail: c:/jprt/T/P1/150024.tohartma/s/hotspot/src/share/vm/classfile/classFileParser.cpp(6314) : error C2220: warning treated as error - no 'object' file generated c:/jprt/T/P1/150024.tohartma/s/hotspot/src/share/vm/classfile/classFileParser.cpp(6314) : warning C4800: 'int' : forcing value to bool 'true' or 'false' (performance warning) lib/CompileJvm.gmk:207: recipe for target '/cygdrive/c/jprt/T/P1/150024.tohartma/s/build/windows-x64-debug/hotspot/variant-server/libjvm/objs/classFileParser.obj' failed make[3]: *** [/cygdrive/c/jprt/T/P1/150024.tohartma/s/build/windows-x64-debug/hotspot/variant-server/libjvm/objs/classFileParser.obj] Error 1 I fixed it with: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/855cfe19730f Best regards, Tobias [1] http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3cb736f232c7#l9.131 On 25.07.2017 23:10, lois.foltan at oracle.com wrote: > Changeset: 3cb736f232c7 > Author: lfoltan > Date: 2017-07-25 16:57 -0400 > URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3cb736f232c7 > > 8185301: [MVT] Add JVM support for -Dvalhalla.mangleClassInfo > Summary: Introduction of JVM_CONSTANT_Value to support MVT's name mangling specification for value types > Reviewed-by: acorn, dsimms > > ! src/cpu/x86/vm/templateTable_x86.cpp > ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotConstantPool.java > ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotVMConfig.java > ! src/share/vm/c1/c1_GraphBuilder.cpp > ! src/share/vm/ci/ciEnv.cpp > ! src/share/vm/ci/ciReplay.cpp > ! src/share/vm/ci/ciStreams.hpp > ! src/share/vm/ci/ciTypeFlow.cpp > ! src/share/vm/classfile/classFileParser.cpp > ! src/share/vm/classfile/classFileParser.hpp > ! src/share/vm/interpreter/bytecodeInterpreter.cpp > ! src/share/vm/interpreter/bytecodeTracer.cpp > ! src/share/vm/interpreter/interpreterRuntime.cpp > ! src/share/vm/jvmci/jvmciEnv.cpp > ! src/share/vm/jvmci/vmStructs_jvmci.cpp > ! src/share/vm/oops/constantPool.cpp > ! src/share/vm/oops/constantPool.hpp > ! src/share/vm/oops/generateOopMap.cpp > ! src/share/vm/oops/method.cpp > ! src/share/vm/prims/jvm.cpp > ! src/share/vm/prims/jvmtiRedefineClasses.cpp > ! src/share/vm/prims/jvmtiTagMap.cpp > ! src/share/vm/prims/methodComparator.cpp > ! src/share/vm/runtime/deoptimization.cpp > ! src/share/vm/runtime/vmStructs.cpp > ! src/share/vm/utilities/constantTag.cpp > ! src/share/vm/utilities/constantTag.hpp > ! test/runtime/valhalla/valuetypes/UninitializedValueFieldsTest.java > ! test/runtime/valhalla/valuetypes/VTBufferTest.java > ! test/runtime/valhalla/valuetypes/ValueTypeGetField.java > From sergey.kuksenko at oracle.com Wed Jul 26 23:58:29 2017 From: sergey.kuksenko at oracle.com (Sergey Kuksenko) Date: Wed, 26 Jul 2017 16:58:29 -0700 Subject: Valhalla/MVT microbenchmarks (first benchmarks and first results) Message-ID: <4cee57e0-26ad-1319-d0e3-d03808de5e45@oracle.com> Hi All, On the link http://cr.openjdk.java.net/~skuksenko/valhalla/benchmarks/ you could find results of the first round MVT benchmarking. On the page you could find benchmarks description, archive with source files and first results. Please, review my benchmarks especially with MethodHandles. -- Best regards, Sergey Kuksenko From maurizio.cimadamore at oracle.com Thu Jul 27 00:15:06 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 27 Jul 2017 01:15:06 +0100 Subject: Valhalla/MVT microbenchmarks (first benchmarks and first results) In-Reply-To: <4cee57e0-26ad-1319-d0e3-d03808de5e45@oracle.com> References: <4cee57e0-26ad-1319-d0e3-d03808de5e45@oracle.com> Message-ID: Great work - thanks for putting so much effort on this Sergey, I found all your comments very easy to read/understand and I'm not too deep in jmh benchmarks. I'd say those results look good - especially considered the early stage of the implementation. Basically, with invokeExact, MVT performs more or less identical to the baseline in all benchmarks. The only exception seems to be those multIJKTotalLoop/multIKJTotalLoop benchmarks, in which, as you point out, something is preventing full MH compilation. I'm sure our C2 gurus will look into that soon. Thanks Maurizio On 27/07/17 00:58, Sergey Kuksenko wrote: > Hi All, > > On the link http://cr.openjdk.java.net/~skuksenko/valhalla/benchmarks/ > you could find results of the first round MVT benchmarking. > > On the page you could find benchmarks description, archive with source > files and first results. > > Please, review my benchmarks especially with MethodHandles. > From sergey.kuksenko at oracle.com Thu Jul 27 00:49:54 2017 From: sergey.kuksenko at oracle.com (Sergey Kuksenko) Date: Wed, 26 Jul 2017 17:49:54 -0700 Subject: Performance impact of value type buffering for the interpreter Message-ID: <83cbc9e0-b229-b9cf-5fbc-715932704084@oracle.com> Hi All, Sorry, I am a little bit late with this results. Right now, I won't provide detailed report. I'll just describe findings. Detailed report may be provided later by request. To check "value type buffering" I did two comparisons: - compare turned off vs turned on buffers turn off used options: -XX:BigValueTypeThreshold=0 -XX:ValueTypesBufferMaxMemory=0 turn on used options: -XX:BigValueTypeThreshold=128 (the latter option is required because of I have benchmarks with value types large than default big value threshold) - compare vs without "value type buffering" (reverting the patch) First of all I want to say that "value type buffering" definitely reduces amount of GC allocation for value types in the interpreter. At the same moment I have to admit that "value type buffering" has negative impact to the interpreter performance. 1. turned off vs turned on buffers Turning on caused slowdown for value types: - "arrayfill" benchmarks: up to 10% - "arraysum" benchmarks: up to 20% - "traversal" benchmarks: up to 10% on small data sets and up 30% on large data sets 2. Moreover, even turned off "value type buffering" causes general slowdown ~5%-10% against reverted build. Some thoughts: - Looks like extra allocation of boxed value types in the interpreter doesn't related to poor value types interpreter performance. - Allocated boxed values are dying almost immediately and GC is pretty well in dealing with minor collections. -- Best regards, Sergey Kuksenko From tobias.hartmann at oracle.com Thu Jul 27 11:40:06 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 13:40:06 +0200 Subject: RFR(S): 8185266: [MVT] valhalla/mvt/WithFieldTest.java crashes with assert(will_link) failed: vdefault: typeflow responsibility Message-ID: <37a9932b-b516-b7cc-7104-14ca66de2f0f@oracle.com> Hi, please review the following change: https://bugs.openjdk.java.net/browse/JDK-8185266 http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.34/ Typeflow analysis should trap if the value type klass for vwithfield is not loaded. Thanks, Tobias From rwestrel at redhat.com Thu Jul 27 12:27:28 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 27 Jul 2017 14:27:28 +0200 Subject: Valhalla/MVT microbenchmarks (first benchmarks and first results) In-Reply-To: References: <4cee57e0-26ad-1319-d0e3-d03808de5e45@oracle.com> Message-ID: > The only exception seems to be those multIJKTotalLoop/multIKJTotalLoop > benchmarks, in which, as you point out, something is preventing full > MH compilation. I'm sure our C2 gurus will look into that soon. Those benchmarks apparently need a warmup that's a lot longer. I see performance improved dramatically at warmup iteration 83 with MH_Derived.multIJKTotalLoop. Compilation heuristics work by counting the number of invocations of a method and adding the number of times a backbranch is taken in a method. Once that value crosses a threshold compilation is triggered. It looks like it doesn't work well with the loop combinators. Maybe the actual loop is in some method that gets compiled early but for maximum performance we need some caller of that method to be compiled so method handles are known constant and that only happens much later. Roland. From maurizio.cimadamore at oracle.com Thu Jul 27 14:41:07 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Thu, 27 Jul 2017 14:41:07 +0000 Subject: hg: valhalla/valhalla/langtools: 8185349: [MVT] - drop support for vgetfield in favor of getfield Message-ID: <201707271441.v6REf7YG024788@aojmv0008.oracle.com> Changeset: 254846ecd7ab Author: mcimadamore Date: 2017-07-27 15:38 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/254846ecd7ab 8185349: [MVT] - drop support for vgetfield in favor of getfield Summary: Drop support for vgetfield for __ByValue classes Reviewed-by: acorn ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ByteCodes.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassWriter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Code.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Items.java ! src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java ! test/tools/javac/valhalla/minimalvalues/CheckFinalize.out ! test/tools/javac/valhalla/values/VOpcodeTest.java From maurizio.cimadamore at oracle.com Thu Jul 27 14:41:17 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Thu, 27 Jul 2017 14:41:17 +0000 Subject: hg: valhalla/valhalla/jdk: 8185349: [MVT] - drop support for vgetfield in favor of getfield Message-ID: <201707271441.v6REfHIf024871@aojmv0008.oracle.com> Changeset: 631172b84d83 Author: mcimadamore Date: 2017-07-27 15:37 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/631172b84d83 8185349: [MVT] - drop support for vgetfield in favor of getfield Summary: Remove usages of vgetfield from ValueType. ClassInfo value mangling always on. Reviewed-by: acorn ! src/java.base/share/classes/jdk/experimental/value/ValueType.java ! src/java.base/share/classes/valhalla/shady/MinimalValueTypes_1_0.java From maurizio.cimadamore at oracle.com Thu Jul 27 14:41:27 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Thu, 27 Jul 2017 14:41:27 +0000 Subject: hg: valhalla/valhalla/hotspot: 8185349: [MVT] - drop support for vgetfield in favor of getfield Message-ID: <201707271441.v6REfRc2024938@aojmv0008.oracle.com> Changeset: dbb31857c4d4 Author: mcimadamore Date: 2017-07-27 15:35 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 8185349: [MVT] - drop support for vgetfield in favor of getfield Summary: Add rewriter support for getfield with constant value CP entries Reviewed-by: acorn, lfoltan, fparain ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/interpreter/bytecodes.hpp ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/interpreter/rewriter.hpp ! test/compiler/valhalla/valuetypes/TestBoundValueTypes.java ! test/compiler/valhalla/valuetypes/ValueTypeTestBench.java From maurizio.cimadamore at oracle.com Thu Jul 27 15:03:00 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Thu, 27 Jul 2017 15:03:00 +0000 Subject: hg: valhalla/valhalla/hotspot: 8185143: [MVT] Rename DeriveValueType annotation Message-ID: <201707271503.v6RF30Wa005460@aojmv0008.oracle.com> Changeset: 5cd8d5559192 Author: mcimadamore Date: 2017-07-27 16:00 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5cd8d5559192 8185143: [MVT] Rename DeriveValueType annotation Summary: Replace @DeriveValueType with @ValueCapableClass Reviewed-by: acorn ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! test/compiler/valhalla/valuetypes/ValueCapableClass1.java ! test/compiler/valhalla/valuetypes/ValueCapableClass2.java ! test/runtime/valhalla/valuetypes/DeriveValueTypeCreation.java ! test/runtime/valhalla/valuetypes/MVTCombo.java ! test/runtime/valhalla/valuetypes/PersonVcc.java ! test/runtime/valhalla/valuetypes/ValueCapableClass.java From maurizio.cimadamore at oracle.com Thu Jul 27 15:03:09 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Thu, 27 Jul 2017 15:03:09 +0000 Subject: hg: valhalla/valhalla/langtools: 8185143: [MVT] Rename DeriveValueType annotation Message-ID: <201707271503.v6RF39mo005702@aojmv0008.oracle.com> Changeset: 298730c35452 Author: mcimadamore Date: 2017-07-27 16:00 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/298730c35452 8185143: [MVT] Rename DeriveValueType annotation Summary: Replace @DeriveValueType with @ValueCapableClass Reviewed-by: acorn ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symtab.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/ValueCapableClassAttr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! test/tools/javac/diags/CheckResourceKeys.java ! test/tools/javac/valhalla/minimalvalues/CheckClone.java ! test/tools/javac/valhalla/minimalvalues/CheckCyclicMembership.java ! test/tools/javac/valhalla/minimalvalues/CheckEquals.java ! test/tools/javac/valhalla/minimalvalues/CheckExtends.java ! test/tools/javac/valhalla/minimalvalues/CheckFinal.java ! test/tools/javac/valhalla/minimalvalues/CheckFinalize.java ! test/tools/javac/valhalla/minimalvalues/CheckIdentityHash.java ! test/tools/javac/valhalla/minimalvalues/CheckIdentityHash01.java ! test/tools/javac/valhalla/minimalvalues/CheckNullAssign.java ! test/tools/javac/valhalla/minimalvalues/CheckNullCastable.java ! test/tools/javac/valhalla/minimalvalues/CheckSync.java ! test/tools/javac/valhalla/minimalvalues/CheckSynchronized.java ! test/tools/javac/valhalla/minimalvalues/Point.java From maurizio.cimadamore at oracle.com Thu Jul 27 15:03:23 2017 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Thu, 27 Jul 2017 15:03:23 +0000 Subject: hg: valhalla/valhalla/jdk: 8185143: [MVT] Rename DeriveValueType annotation Message-ID: <201707271503.v6RF3NAu005976@aojmv0008.oracle.com> Changeset: 2e4c9a8ae4e3 Author: mcimadamore Date: 2017-07-27 15:59 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2e4c9a8ae4e3 8185143: [MVT] Rename DeriveValueType annotation Summary: Replace @DeriveValueType with @ValueCapableClass Reviewed-by: acorn - src/java.base/share/classes/jvm/internal/value/DeriveValueType.java + src/java.base/share/classes/jvm/internal/value/ValueCapableClass.java ! src/java.base/share/classes/valhalla/shady/MinimalValueTypes_1_0.java ! test/valhalla/mvt/Interval.java ! test/valhalla/mvt/MethodHandlesTest.java ! test/valhalla/mvt/Point.java ! test/valhalla/mvt/PrivatePoint.java ! test/valhalla/mvt/UnreflectWithersTest.java ! test/valhalla/mvt/modules/m/p/internal/Point.java ! test/valhalla/mvt/point/Point.java ! test/valhalla/mvt/vector/Long2.java From tobias.hartmann at oracle.com Thu Jul 27 15:16:17 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 17:16:17 +0200 Subject: RFR(S): 8185443: [MVT] VectorTest fails with -Xcomp "can not load classes with compiler thread" Message-ID: <2343b235-7d0e-fa8d-32ad-c6b0a7609c8f@oracle.com> Hi, please review the following patch: https://bugs.openjdk.java.net/browse/JDK-8185443 http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.35/ http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.35.jdk/ This change removes -Xint from all jdk mvt tests and fixes a problem that shows up when running the VectorTest with -Xcomp. We fail during compilation with "assert(__the_thread__->can_call_java()) failed: can not load classes with compiler thread: class=java/lang/__Value, classloader=null". The problem is that method handle intrinsics with a __Value argument may be created during compilation [1]: lookup_polymorphic_method iid=_invokeBasic java.lang.invoke.MethodHandle.invokeBasic(IQjava/lang/__Value;ILjava/lang/Object;)I lookup_polymorphic_method invokeBasic (IQjava/lang/__Value;ILjava/lang/Object;)I => basic (IQjava/lang/__Value;ILjava/lang/Object;)I make_method_handle_intrinsic MH.invokeBasic(IQjava/lang/__Value;ILjava/lang/Object;)I We should only do a system dictionary lookup when creating adapters if the argument name is not __Value, to avoid lookups from the compiler thread. I also refactored SignatureStream::as_symbol() in the same way I did for SignatureStream::as_symbol_or_null() with this change: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d5c9d8e0fbc0#l4.7 I verified that all tests pass with JPRT and locally with -Xcomp. Thanks, Tobias [1] V [libjvm.so+0xb3420d] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd V [libjvm.so+0x164a4e3] SystemDictionary::resolve_or_null(Symbol*, Handle, Handle, Thread*)+0x343 V [libjvm.so+0x1569cce] AdapterHandlerLibrary::get_adapter0(methodHandle const&)+0x3de V [libjvm.so+0x156aa9c] AdapterHandlerLibrary::get_adapter(methodHandle const&)+0x1c V [libjvm.so+0x12ec698] Method::make_adapters(methodHandle, Thread*)+0x18 V [libjvm.so+0x12ed97b] Method::link_method(methodHandle const&, Thread*)+0x1db V [libjvm.so+0x12ef3c3] Method::make_method_handle_intrinsic(vmIntrinsics::ID, Symbol*, Thread*)+0x963 V [libjvm.so+0x164e390] SystemDictionary::find_method_handle_intrinsic(vmIntrinsics::ID, Symbol*, Thread*)+0x280 V [libjvm.so+0x11637bf] LinkResolver::lookup_polymorphic_method(LinkInfo const&, Handle*, Handle*, Thread*)+0x58f V [libjvm.so+0x1164f80] LinkResolver::resolve_method(LinkInfo const&, Bytecodes::Code, Thread*)+0x2e0 V [libjvm.so+0x1167a63] LinkResolver::linktime_resolve_virtual_method(LinkInfo const&, Thread*)+0x43 V [libjvm.so+0x1169830] LinkResolver::linktime_resolve_virtual_method_or_null(LinkInfo const&)+0x40 V [libjvm.so+0x8f6492] ciEnv::lookup_method(ciInstanceKlass*, ciKlass*, Symbol*, Symbol*, Bytecodes::Code, constantTag)+0x252 V [libjvm.so+0x8f87cf] ciEnv::get_method_by_index_impl(constantPoolHandle const&, int, Bytecodes::Code, ciInstanceKlass*)+0x1bf V [libjvm.so+0x8f91f6] ciEnv::get_method_by_index(constantPoolHandle const&, int, Bytecodes::Code, ciInstanceKlass*)+0x276 V [libjvm.so+0x970495] ciBytecodeStream::get_method(bool&, ciSignature**)+0x335 V [libjvm.so+0x97d672] ciTypeFlow::StateVector::do_invoke(ciBytecodeStream*, bool)+0x32 V [libjvm.so+0x97deb0] ciTypeFlow::StateVector::apply_one_bytecode(ciBytecodeStream*)+0x360 V [libjvm.so+0x9844d8] ciTypeFlow::flow_block(ciTypeFlow::Block*, ciTypeFlow::StateVector*, ciTypeFlow::JsrSet*)+0x2d8 V [libjvm.so+0x985b29] ciTypeFlow::df_flow_types(ciTypeFlow::Block*, bool, ciTypeFlow::StateVector*, ciTypeFlow::JsrSet*)+0x559 V [libjvm.so+0x985f79] ciTypeFlow::flow_types()+0x1b9 V [libjvm.so+0x986296] ciTypeFlow::do_flow()+0x26 V [libjvm.so+0x923781] ciMethod::get_flow_analysis()+0xf1 V [libjvm.so+0x74fa19] InlineTree::check_can_parse(ciMethod*)+0x79 V [libjvm.so+0x89b0d8] CallGenerator::for_inline(ciMethod*, float)+0x18 V [libjvm.so+0xa9c274] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, DirectiveSet*)+0xf54 From tobias.hartmann at oracle.com Thu Jul 27 15:31:58 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 17:31:58 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" Message-ID: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> Hi, seems like this is due to: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. We should reset the value type bytecode numbers: diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 @@ -248,11 +248,11 @@ _vstore = 204, // 0xcc _vaload = 205, // 0xcd _vastore = 206, // 0xce - _vreturn = 210, // 0xd2 - _vdefault = 214, // 0xd6 - _vwithfield = 215, // 0xd7 - _vbox = 216, // 0xd6 - _vunbox = 217, // 0xd7 + _vreturn = 207, // 0xcf + _vdefault = 208, // 0xd0 + _vwithfield = 209, // 0xd1 + _vbox = 210, // 0xd2 + _vunbox = 211, // 0xd3 number_of_java_codes, Thanks, Tobias From maurizio.cimadamore at oracle.com Thu Jul 27 15:55:19 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 27 Jul 2017 16:55:19 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> Message-ID: <2da8c00f-0c7a-0b75-6e25-4a787464809c@oracle.com> Looks good. Do you want to push? Also, why did I not see the issue when running all tests? Maurizio On 27/07/17 16:31, Tobias Hartmann wrote: > Hi, > > seems like this is due to: > http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 > > If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. > > We should reset the value type bytecode numbers: > > diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp > --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 > +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 > @@ -248,11 +248,11 @@ > _vstore = 204, // 0xcc > _vaload = 205, // 0xcd > _vastore = 206, // 0xce > - _vreturn = 210, // 0xd2 > - _vdefault = 214, // 0xd6 > - _vwithfield = 215, // 0xd7 > - _vbox = 216, // 0xd6 > - _vunbox = 217, // 0xd7 > + _vreturn = 207, // 0xcf > + _vdefault = 208, // 0xd0 > + _vwithfield = 209, // 0xd1 > + _vbox = 210, // 0xd2 > + _vunbox = 211, // 0xd3 > > number_of_java_codes, > > Thanks, > Tobias From tobias.hartmann at oracle.com Thu Jul 27 15:57:40 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 17:57:40 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <2da8c00f-0c7a-0b75-6e25-4a787464809c@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <2da8c00f-0c7a-0b75-6e25-4a787464809c@oracle.com> Message-ID: <6ea0cb6f-8fe9-907b-c672-481ac1ea6833@oracle.com> Hi Maurizio, On 27.07.2017 17:55, Maurizio Cimadamore wrote: > Looks good. Do you want to push? Sure, I'll push it. > Also, why did I not see the issue when running all tests? Did you run with a debug build? Maybe your build cached some files. Re-building after changing bytecodes.hpp should take a long time. Best regards, Tobias > On 27/07/17 16:31, Tobias Hartmann wrote: >> Hi, >> >> seems like this is due to: >> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >> >> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >> >> We should reset the value type bytecode numbers: >> >> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >> @@ -248,11 +248,11 @@ >> _vstore = 204, // 0xcc >> _vaload = 205, // 0xcd >> _vastore = 206, // 0xce >> - _vreturn = 210, // 0xd2 >> - _vdefault = 214, // 0xd6 >> - _vwithfield = 215, // 0xd7 >> - _vbox = 216, // 0xd6 >> - _vunbox = 217, // 0xd7 >> + _vreturn = 207, // 0xcf >> + _vdefault = 208, // 0xd0 >> + _vwithfield = 209, // 0xd1 >> + _vbox = 210, // 0xd2 >> + _vunbox = 211, // 0xd3 >> number_of_java_codes, >> >> Thanks, >> Tobias > From maurizio.cimadamore at oracle.com Thu Jul 27 15:58:11 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 27 Jul 2017 16:58:11 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> Message-ID: Wait - if you update these opcodes, then we need to update bytecode library as well - see jdk.experimental.bytecode.Opcode Maurizio On 27/07/17 16:31, Tobias Hartmann wrote: > Hi, > > seems like this is due to: > http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 > > If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. > > We should reset the value type bytecode numbers: > > diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp > --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 > +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 > @@ -248,11 +248,11 @@ > _vstore = 204, // 0xcc > _vaload = 205, // 0xcd > _vastore = 206, // 0xce > - _vreturn = 210, // 0xd2 > - _vdefault = 214, // 0xd6 > - _vwithfield = 215, // 0xd7 > - _vbox = 216, // 0xd6 > - _vunbox = 217, // 0xd7 > + _vreturn = 207, // 0xcf > + _vdefault = 208, // 0xd0 > + _vwithfield = 209, // 0xd1 > + _vbox = 210, // 0xd2 > + _vunbox = 211, // 0xd3 > > number_of_java_codes, > > Thanks, > Tobias From maurizio.cimadamore at oracle.com Thu Jul 27 15:59:56 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 27 Jul 2017 16:59:56 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <6ea0cb6f-8fe9-907b-c672-481ac1ea6833@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <2da8c00f-0c7a-0b75-6e25-4a787464809c@oracle.com> <6ea0cb6f-8fe9-907b-c672-481ac1ea6833@oracle.com> Message-ID: <53dae945-3e1c-bdd2-0ebb-d95d529cf7aa@oracle.com> On 27/07/17 16:57, Tobias Hartmann wrote: > Hi Maurizio, > > On 27.07.2017 17:55, Maurizio Cimadamore wrote: >> Looks good. Do you want to push? > Sure, I'll push it. > >> Also, why did I not see the issue when running all tests? > Did you run with a debug build? Maybe your build cached some files. Re-building after changing bytecodes.hpp should take a long time. Nope - I ran with product build Maurizio > > Best regards, > Tobias > >> On 27/07/17 16:31, Tobias Hartmann wrote: >>> Hi, >>> >>> seems like this is due to: >>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>> >>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>> >>> We should reset the value type bytecode numbers: >>> >>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>> @@ -248,11 +248,11 @@ >>> _vstore = 204, // 0xcc >>> _vaload = 205, // 0xcd >>> _vastore = 206, // 0xce >>> - _vreturn = 210, // 0xd2 >>> - _vdefault = 214, // 0xd6 >>> - _vwithfield = 215, // 0xd7 >>> - _vbox = 216, // 0xd6 >>> - _vunbox = 217, // 0xd7 >>> + _vreturn = 207, // 0xcf >>> + _vdefault = 208, // 0xd0 >>> + _vwithfield = 209, // 0xd1 >>> + _vbox = 210, // 0xd2 >>> + _vunbox = 211, // 0xd3 >>> number_of_java_codes, >>> >>> Thanks, >>> Tobias From tobias.hartmann at oracle.com Thu Jul 27 16:02:06 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 18:02:06 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <53dae945-3e1c-bdd2-0ebb-d95d529cf7aa@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <2da8c00f-0c7a-0b75-6e25-4a787464809c@oracle.com> <6ea0cb6f-8fe9-907b-c672-481ac1ea6833@oracle.com> <53dae945-3e1c-bdd2-0ebb-d95d529cf7aa@oracle.com> Message-ID: On 27.07.2017 17:59, Maurizio Cimadamore wrote: > Nope - I ran with product build Okay, that's the problem then. Asserts are only enabled in (fast)debug builds. I would recommend running these tests after any HotSpot changes: $JPRT submit -email tobias.hartmann at oracle.com -stree . -noqa -ot '.*x64.*' -testset hotspot And for some additional coverage: $JPRT submit -email tobias.hartmann at oracle.com -stree . -noqa -ot '.*x64.*' -testset core -otests '.*jdk_lang.*' Best regards, Tobias From tobias.hartmann at oracle.com Thu Jul 27 16:08:50 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 18:08:50 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> Message-ID: On 27.07.2017 17:58, Maurizio Cimadamore wrote: > Wait - if you update these opcodes, then we need to update bytecode library as well - see > > jdk.experimental.bytecode.Opcode Right: diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 @@ -235,14 +235,11 @@ VSTORE(204), VALOAD(205), VASTORE(206), - VNEW(207), - VRETURN(210), - VGETFIELD(211), - TYPED(212), - VDEFAULT(214), - VWITHFIELD(215), - VBOX(216), - VUNBOX(217); + VRETURN(207), + VDEFAULT(208), + VWITHFIELD(209), + VBOX(210), + VUNBOX(211); int code; And I guess we have to change this as well: diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 @@ -247,13 +247,13 @@ VSTORE(204, LOCAL), VALOAD(205), VASTORE(206), - VRETURN(210), + VRETURN(207), - VDEFAULT(214, CPREF_W), - VWITHFIELD(215, CPREF_W), + VDEFAULT(208, CPREF_W), + VWITHFIELD(209, CPREF_W), - VBOX(216, CPREF_W), - VUNBOX(217, CPREF_W), + VBOX(210, CPREF_W), + VUNBOX(211, CPREF_W), // impdep 0xfe: PicoJava nonpriv // impdep 0xff: Picojava priv Thanks, Tobias > On 27/07/17 16:31, Tobias Hartmann wrote: >> Hi, >> >> seems like this is due to: >> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >> >> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >> >> We should reset the value type bytecode numbers: >> >> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >> @@ -248,11 +248,11 @@ >> _vstore = 204, // 0xcc >> _vaload = 205, // 0xcd >> _vastore = 206, // 0xce >> - _vreturn = 210, // 0xd2 >> - _vdefault = 214, // 0xd6 >> - _vwithfield = 215, // 0xd7 >> - _vbox = 216, // 0xd6 >> - _vunbox = 217, // 0xd7 >> + _vreturn = 207, // 0xcf >> + _vdefault = 208, // 0xd0 >> + _vwithfield = 209, // 0xd1 >> + _vbox = 210, // 0xd2 >> + _vunbox = 211, // 0xd3 >> number_of_java_codes, >> >> Thanks, >> Tobias > From tobias.hartmann at oracle.com Thu Jul 27 16:18:16 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 18:18:16 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> Message-ID: Okay, it's getting complicated. Here are the webrevs: http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ What do you think? Best regards, Tobias On 27.07.2017 18:08, Tobias Hartmann wrote: > > On 27.07.2017 17:58, Maurizio Cimadamore wrote: >> Wait - if you update these opcodes, then we need to update bytecode library as well - see >> >> jdk.experimental.bytecode.Opcode > > Right: > > diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java > --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 > +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 > @@ -235,14 +235,11 @@ > VSTORE(204), > VALOAD(205), > VASTORE(206), > - VNEW(207), > - VRETURN(210), > - VGETFIELD(211), > - TYPED(212), > - VDEFAULT(214), > - VWITHFIELD(215), > - VBOX(216), > - VUNBOX(217); > + VRETURN(207), > + VDEFAULT(208), > + VWITHFIELD(209), > + VBOX(210), > + VUNBOX(211); > > int code; > > > And I guess we have to change this as well: > > diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java > --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 > +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 > @@ -247,13 +247,13 @@ > VSTORE(204, LOCAL), > VALOAD(205), > VASTORE(206), > - VRETURN(210), > + VRETURN(207), > > - VDEFAULT(214, CPREF_W), > - VWITHFIELD(215, CPREF_W), > + VDEFAULT(208, CPREF_W), > + VWITHFIELD(209, CPREF_W), > > - VBOX(216, CPREF_W), > - VUNBOX(217, CPREF_W), > + VBOX(210, CPREF_W), > + VUNBOX(211, CPREF_W), > > // impdep 0xfe: PicoJava nonpriv > // impdep 0xff: Picojava priv > > > Thanks, > Tobias > >> On 27/07/17 16:31, Tobias Hartmann wrote: >>> Hi, >>> >>> seems like this is due to: >>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>> >>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>> >>> We should reset the value type bytecode numbers: >>> >>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>> @@ -248,11 +248,11 @@ >>> _vstore = 204, // 0xcc >>> _vaload = 205, // 0xcd >>> _vastore = 206, // 0xce >>> - _vreturn = 210, // 0xd2 >>> - _vdefault = 214, // 0xd6 >>> - _vwithfield = 215, // 0xd7 >>> - _vbox = 216, // 0xd6 >>> - _vunbox = 217, // 0xd7 >>> + _vreturn = 207, // 0xcf >>> + _vdefault = 208, // 0xd0 >>> + _vwithfield = 209, // 0xd1 >>> + _vbox = 210, // 0xd2 >>> + _vunbox = 211, // 0xd3 >>> number_of_java_codes, >>> >>> Thanks, >>> Tobias >> From maurizio.cimadamore at oracle.com Thu Jul 27 17:12:40 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 27 Jul 2017 18:12:40 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> Message-ID: <97a8afec-de97-a5d9-eb6f-da9cf780a9cb@oracle.com> Looks good Maurizio On 27/07/17 17:18, Tobias Hartmann wrote: > Okay, it's getting complicated. Here are the webrevs: > > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ > > What do you think? > > Best regards, > Tobias > > On 27.07.2017 18:08, Tobias Hartmann wrote: >> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>> >>> jdk.experimental.bytecode.Opcode >> Right: >> >> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >> @@ -235,14 +235,11 @@ >> VSTORE(204), >> VALOAD(205), >> VASTORE(206), >> - VNEW(207), >> - VRETURN(210), >> - VGETFIELD(211), >> - TYPED(212), >> - VDEFAULT(214), >> - VWITHFIELD(215), >> - VBOX(216), >> - VUNBOX(217); >> + VRETURN(207), >> + VDEFAULT(208), >> + VWITHFIELD(209), >> + VBOX(210), >> + VUNBOX(211); >> >> int code; >> >> >> And I guess we have to change this as well: >> >> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >> @@ -247,13 +247,13 @@ >> VSTORE(204, LOCAL), >> VALOAD(205), >> VASTORE(206), >> - VRETURN(210), >> + VRETURN(207), >> >> - VDEFAULT(214, CPREF_W), >> - VWITHFIELD(215, CPREF_W), >> + VDEFAULT(208, CPREF_W), >> + VWITHFIELD(209, CPREF_W), >> >> - VBOX(216, CPREF_W), >> - VUNBOX(217, CPREF_W), >> + VBOX(210, CPREF_W), >> + VUNBOX(211, CPREF_W), >> >> // impdep 0xfe: PicoJava nonpriv >> // impdep 0xff: Picojava priv >> >> >> Thanks, >> Tobias >> >>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>> Hi, >>>> >>>> seems like this is due to: >>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>> >>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>> >>>> We should reset the value type bytecode numbers: >>>> >>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>> @@ -248,11 +248,11 @@ >>>> _vstore = 204, // 0xcc >>>> _vaload = 205, // 0xcd >>>> _vastore = 206, // 0xce >>>> - _vreturn = 210, // 0xd2 >>>> - _vdefault = 214, // 0xd6 >>>> - _vwithfield = 215, // 0xd7 >>>> - _vbox = 216, // 0xd6 >>>> - _vunbox = 217, // 0xd7 >>>> + _vreturn = 207, // 0xcf >>>> + _vdefault = 208, // 0xd0 >>>> + _vwithfield = 209, // 0xd1 >>>> + _vbox = 210, // 0xd2 >>>> + _vunbox = 211, // 0xd3 >>>> number_of_java_codes, >>>> >>>> Thanks, >>>> Tobias From karen.kinnear at oracle.com Thu Jul 27 17:30:12 2017 From: karen.kinnear at oracle.com (Karen Kinnear) Date: Thu, 27 Jul 2017 13:30:12 -0400 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> Message-ID: <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> Tobias, Do you want to change in ByteCodes.java - ByteCodeCount to 210 instead of 216? Maurizio?s call - this is compiler sources, thanks, Karen > On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: > > Okay, it's getting complicated. Here are the webrevs: > > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ > > What do you think? > > Best regards, > Tobias > > On 27.07.2017 18:08, Tobias Hartmann wrote: >> >> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>> >>> jdk.experimental.bytecode.Opcode >> >> Right: >> >> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >> @@ -235,14 +235,11 @@ >> VSTORE(204), >> VALOAD(205), >> VASTORE(206), >> - VNEW(207), >> - VRETURN(210), >> - VGETFIELD(211), >> - TYPED(212), >> - VDEFAULT(214), >> - VWITHFIELD(215), >> - VBOX(216), >> - VUNBOX(217); >> + VRETURN(207), >> + VDEFAULT(208), >> + VWITHFIELD(209), >> + VBOX(210), >> + VUNBOX(211); >> >> int code; >> >> >> And I guess we have to change this as well: >> >> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >> @@ -247,13 +247,13 @@ >> VSTORE(204, LOCAL), >> VALOAD(205), >> VASTORE(206), >> - VRETURN(210), >> + VRETURN(207), >> >> - VDEFAULT(214, CPREF_W), >> - VWITHFIELD(215, CPREF_W), >> + VDEFAULT(208, CPREF_W), >> + VWITHFIELD(209, CPREF_W), >> >> - VBOX(216, CPREF_W), >> - VUNBOX(217, CPREF_W), >> + VBOX(210, CPREF_W), >> + VUNBOX(211, CPREF_W), >> >> // impdep 0xfe: PicoJava nonpriv >> // impdep 0xff: Picojava priv >> >> >> Thanks, >> Tobias >> >>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>> Hi, >>>> >>>> seems like this is due to: >>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>> >>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>> >>>> We should reset the value type bytecode numbers: >>>> >>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>> @@ -248,11 +248,11 @@ >>>> _vstore = 204, // 0xcc >>>> _vaload = 205, // 0xcd >>>> _vastore = 206, // 0xce >>>> - _vreturn = 210, // 0xd2 >>>> - _vdefault = 214, // 0xd6 >>>> - _vwithfield = 215, // 0xd7 >>>> - _vbox = 216, // 0xd6 >>>> - _vunbox = 217, // 0xd7 >>>> + _vreturn = 207, // 0xcf >>>> + _vdefault = 208, // 0xd0 >>>> + _vwithfield = 209, // 0xd1 >>>> + _vbox = 210, // 0xd2 >>>> + _vunbox = 211, // 0xd3 >>>> number_of_java_codes, >>>> >>>> Thanks, >>>> Tobias >>> From tobias.hartmann at oracle.com Thu Jul 27 17:34:43 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 19:34:43 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> Message-ID: <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> Hi Karen, On 27.07.2017 19:30, Karen Kinnear wrote: > Do you want to change in ByteCodes.java - > ByteCodeCount to 210 instead of 216? Right, that count should be updated as well. I just run this through JPRT and I get dozens of failures: # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 # assert(Bytecodes::is_java_code(code)) failed: sanity check Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 Maybe it's best to back out 8185349 for now. Best regards, Tobias > Maurizio?s call - this is compiler sources, > > thanks, > Karen > >> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >> >> Okay, it's getting complicated. Here are the webrevs: >> >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >> >> What do you think? >> >> Best regards, >> Tobias >> >> On 27.07.2017 18:08, Tobias Hartmann wrote: >>> >>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>> >>>> jdk.experimental.bytecode.Opcode >>> >>> Right: >>> >>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>> @@ -235,14 +235,11 @@ >>> VSTORE(204), >>> VALOAD(205), >>> VASTORE(206), >>> - VNEW(207), >>> - VRETURN(210), >>> - VGETFIELD(211), >>> - TYPED(212), >>> - VDEFAULT(214), >>> - VWITHFIELD(215), >>> - VBOX(216), >>> - VUNBOX(217); >>> + VRETURN(207), >>> + VDEFAULT(208), >>> + VWITHFIELD(209), >>> + VBOX(210), >>> + VUNBOX(211); >>> >>> int code; >>> >>> >>> And I guess we have to change this as well: >>> >>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>> @@ -247,13 +247,13 @@ >>> VSTORE(204, LOCAL), >>> VALOAD(205), >>> VASTORE(206), >>> - VRETURN(210), >>> + VRETURN(207), >>> >>> - VDEFAULT(214, CPREF_W), >>> - VWITHFIELD(215, CPREF_W), >>> + VDEFAULT(208, CPREF_W), >>> + VWITHFIELD(209, CPREF_W), >>> >>> - VBOX(216, CPREF_W), >>> - VUNBOX(217, CPREF_W), >>> + VBOX(210, CPREF_W), >>> + VUNBOX(211, CPREF_W), >>> >>> // impdep 0xfe: PicoJava nonpriv >>> // impdep 0xff: Picojava priv >>> >>> >>> Thanks, >>> Tobias >>> >>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>> Hi, >>>>> >>>>> seems like this is due to: >>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>> >>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>> >>>>> We should reset the value type bytecode numbers: >>>>> >>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>> @@ -248,11 +248,11 @@ >>>>> _vstore = 204, // 0xcc >>>>> _vaload = 205, // 0xcd >>>>> _vastore = 206, // 0xce >>>>> - _vreturn = 210, // 0xd2 >>>>> - _vdefault = 214, // 0xd6 >>>>> - _vwithfield = 215, // 0xd7 >>>>> - _vbox = 216, // 0xd6 >>>>> - _vunbox = 217, // 0xd7 >>>>> + _vreturn = 207, // 0xcf >>>>> + _vdefault = 208, // 0xd0 >>>>> + _vwithfield = 209, // 0xd1 >>>>> + _vbox = 210, // 0xd2 >>>>> + _vunbox = 211, // 0xd3 >>>>> number_of_java_codes, >>>>> >>>>> Thanks, >>>>> Tobias >>>> > From karen.kinnear at oracle.com Thu Jul 27 17:50:46 2017 From: karen.kinnear at oracle.com (Karen Kinnear) Date: Thu, 27 Jul 2017 13:50:46 -0400 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> Message-ID: <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> We missed a change in byte codes.cpp: Need to move the def(_vgetfield down to the JVM byte codes and add the additional field which is _getfield as the java_code. thanks, Karen > On Jul 27, 2017, at 1:34 PM, Tobias Hartmann wrote: > > Hi Karen, > > On 27.07.2017 19:30, Karen Kinnear wrote: >> Do you want to change in ByteCodes.java - >> ByteCodeCount to 210 instead of 216? > > Right, that count should be updated as well. > > I just run this through JPRT and I get dozens of failures: > > # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 > # assert(Bytecodes::is_java_code(code)) failed: sanity check > > Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k > Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) > V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f > V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f > V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd > V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 > V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 > V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d > V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba > V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 > V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb > V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a > V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e > V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a > V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e > V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 > V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c > V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 > V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 > V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 > V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed > V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd > V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 > V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f > V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 > V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 > V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 > > Maybe it's best to back out 8185349 for now. > > Best regards, > Tobias > >> Maurizio?s call - this is compiler sources, >> >> thanks, >> Karen >> >>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >>> >>> Okay, it's getting complicated. Here are the webrevs: >>> >>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>> >>> What do you think? >>> >>> Best regards, >>> Tobias >>> >>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>> >>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>>> >>>>> jdk.experimental.bytecode.Opcode >>>> >>>> Right: >>>> >>>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>>> @@ -235,14 +235,11 @@ >>>> VSTORE(204), >>>> VALOAD(205), >>>> VASTORE(206), >>>> - VNEW(207), >>>> - VRETURN(210), >>>> - VGETFIELD(211), >>>> - TYPED(212), >>>> - VDEFAULT(214), >>>> - VWITHFIELD(215), >>>> - VBOX(216), >>>> - VUNBOX(217); >>>> + VRETURN(207), >>>> + VDEFAULT(208), >>>> + VWITHFIELD(209), >>>> + VBOX(210), >>>> + VUNBOX(211); >>>> >>>> int code; >>>> >>>> >>>> And I guess we have to change this as well: >>>> >>>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>>> @@ -247,13 +247,13 @@ >>>> VSTORE(204, LOCAL), >>>> VALOAD(205), >>>> VASTORE(206), >>>> - VRETURN(210), >>>> + VRETURN(207), >>>> >>>> - VDEFAULT(214, CPREF_W), >>>> - VWITHFIELD(215, CPREF_W), >>>> + VDEFAULT(208, CPREF_W), >>>> + VWITHFIELD(209, CPREF_W), >>>> >>>> - VBOX(216, CPREF_W), >>>> - VUNBOX(217, CPREF_W), >>>> + VBOX(210, CPREF_W), >>>> + VUNBOX(211, CPREF_W), >>>> >>>> // impdep 0xfe: PicoJava nonpriv >>>> // impdep 0xff: Picojava priv >>>> >>>> >>>> Thanks, >>>> Tobias >>>> >>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>> Hi, >>>>>> >>>>>> seems like this is due to: >>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>> >>>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>>> >>>>>> We should reset the value type bytecode numbers: >>>>>> >>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>>> @@ -248,11 +248,11 @@ >>>>>> _vstore = 204, // 0xcc >>>>>> _vaload = 205, // 0xcd >>>>>> _vastore = 206, // 0xce >>>>>> - _vreturn = 210, // 0xd2 >>>>>> - _vdefault = 214, // 0xd6 >>>>>> - _vwithfield = 215, // 0xd7 >>>>>> - _vbox = 216, // 0xd6 >>>>>> - _vunbox = 217, // 0xd7 >>>>>> + _vreturn = 207, // 0xcf >>>>>> + _vdefault = 208, // 0xd0 >>>>>> + _vwithfield = 209, // 0xd1 >>>>>> + _vbox = 210, // 0xd2 >>>>>> + _vunbox = 211, // 0xd3 >>>>>> number_of_java_codes, >>>>>> >>>>>> Thanks, >>>>>> Tobias >>>>> >> From tobias.hartmann at oracle.com Thu Jul 27 17:51:28 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 19:51:28 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> Message-ID: <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> On 27.07.2017 19:50, Karen Kinnear wrote: > We missed a change in byte codes.cpp: > > Need to move the def(_vgetfield down to the JVM byte codes and add the additional field which is _getfield as the java_code. Okay, I'll fix that. Best regards, Tobias > > thanks, > Karen > >> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann wrote: >> >> Hi Karen, >> >> On 27.07.2017 19:30, Karen Kinnear wrote: >>> Do you want to change in ByteCodes.java - >>> ByteCodeCount to 210 instead of 216? >> >> Right, that count should be updated as well. >> >> I just run this through JPRT and I get dozens of failures: >> >> # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 >> # assert(Bytecodes::is_java_code(code)) failed: sanity check >> >> Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k >> Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) >> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f >> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f >> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd >> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 >> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >> V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba >> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 >> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb >> V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a >> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e >> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a >> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e >> V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >> V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 >> V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 >> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >> V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed >> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >> V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f >> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >> >> Maybe it's best to back out 8185349 for now. >> >> Best regards, >> Tobias >> >>> Maurizio?s call - this is compiler sources, >>> >>> thanks, >>> Karen >>> >>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >>>> >>>> Okay, it's getting complicated. Here are the webrevs: >>>> >>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>> >>>> What do you think? >>>> >>>> Best regards, >>>> Tobias >>>> >>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>> >>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>>>> >>>>>> jdk.experimental.bytecode.Opcode >>>>> >>>>> Right: >>>>> >>>>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>>>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>>>> @@ -235,14 +235,11 @@ >>>>> VSTORE(204), >>>>> VALOAD(205), >>>>> VASTORE(206), >>>>> - VNEW(207), >>>>> - VRETURN(210), >>>>> - VGETFIELD(211), >>>>> - TYPED(212), >>>>> - VDEFAULT(214), >>>>> - VWITHFIELD(215), >>>>> - VBOX(216), >>>>> - VUNBOX(217); >>>>> + VRETURN(207), >>>>> + VDEFAULT(208), >>>>> + VWITHFIELD(209), >>>>> + VBOX(210), >>>>> + VUNBOX(211); >>>>> >>>>> int code; >>>>> >>>>> >>>>> And I guess we have to change this as well: >>>>> >>>>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>>>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>>>> @@ -247,13 +247,13 @@ >>>>> VSTORE(204, LOCAL), >>>>> VALOAD(205), >>>>> VASTORE(206), >>>>> - VRETURN(210), >>>>> + VRETURN(207), >>>>> >>>>> - VDEFAULT(214, CPREF_W), >>>>> - VWITHFIELD(215, CPREF_W), >>>>> + VDEFAULT(208, CPREF_W), >>>>> + VWITHFIELD(209, CPREF_W), >>>>> >>>>> - VBOX(216, CPREF_W), >>>>> - VUNBOX(217, CPREF_W), >>>>> + VBOX(210, CPREF_W), >>>>> + VUNBOX(211, CPREF_W), >>>>> >>>>> // impdep 0xfe: PicoJava nonpriv >>>>> // impdep 0xff: Picojava priv >>>>> >>>>> >>>>> Thanks, >>>>> Tobias >>>>> >>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>> Hi, >>>>>>> >>>>>>> seems like this is due to: >>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>> >>>>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>>>> >>>>>>> We should reset the value type bytecode numbers: >>>>>>> >>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>>>> @@ -248,11 +248,11 @@ >>>>>>> _vstore = 204, // 0xcc >>>>>>> _vaload = 205, // 0xcd >>>>>>> _vastore = 206, // 0xce >>>>>>> - _vreturn = 210, // 0xd2 >>>>>>> - _vdefault = 214, // 0xd6 >>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>> - _vbox = 216, // 0xd6 >>>>>>> - _vunbox = 217, // 0xd7 >>>>>>> + _vreturn = 207, // 0xcf >>>>>>> + _vdefault = 208, // 0xd0 >>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>> + _vbox = 210, // 0xd2 >>>>>>> + _vunbox = 211, // 0xd3 >>>>>>> number_of_java_codes, >>>>>>> >>>>>>> Thanks, >>>>>>> Tobias >>>>>> >>> > From tobias.hartmann at oracle.com Thu Jul 27 18:09:05 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Thu, 27 Jul 2017 20:09:05 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> Message-ID: I updated the webrevs in place and will re-run JPRT. I'm also seeing lots of these: Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.VerifyError: Illegal type at constant pool entry 57 in class valhalla.shady.MinimalValueTypes_1_0 Exception Details: Location: valhalla/shady/MinimalValueTypes_1_0.getValueClass()Ljava/lang/Class; @0: ldc Reason: Constant pool index 57 is invalid Bytecode: 0000000: 1239 c000 3ab0 at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:368) at java.base/java.lang.invoke.MethodTypeForm.canonicalizeAll(MethodTypeForm.java:424) at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:348) at java.base/java.lang.invoke.MethodTypeForm.findForm(MethodTypeForm.java:320) at java.base/java.lang.invoke.MethodType.makeImpl(MethodType.java:325) at java.base/java.lang.invoke.MethodHandleNatives.findMethodHandleType(MethodHandleNatives.java:292) at java.base/java.util.ResourceBundle.getLoader(ResourceBundle.java:561) at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1560) at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1535) at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:836) at java.base/sun.launcher.LauncherHelper$ResourceBundleHolder.(LauncherHelper.java:128) at java.base/sun.launcher.LauncherHelper.getLocalizedMessage(LauncherHelper.java:352) at java.base/sun.launcher.LauncherHelper.abort(LauncherHelper.java:519) at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:677) at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:552) Best regards, Tobias On 27.07.2017 19:51, Tobias Hartmann wrote: > > On 27.07.2017 19:50, Karen Kinnear wrote: >> We missed a change in byte codes.cpp: >> >> Need to move the def(_vgetfield down to the JVM byte codes and add the additional field which is _getfield as the java_code. > > Okay, I'll fix that. > > Best regards, > Tobias > >> >> thanks, >> Karen >> >>> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann wrote: >>> >>> Hi Karen, >>> >>> On 27.07.2017 19:30, Karen Kinnear wrote: >>>> Do you want to change in ByteCodes.java - >>>> ByteCodeCount to 210 instead of 216? >>> >>> Right, that count should be updated as well. >>> >>> I just run this through JPRT and I get dozens of failures: >>> >>> # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 >>> # assert(Bytecodes::is_java_code(code)) failed: sanity check >>> >>> Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k >>> Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) >>> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f >>> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f >>> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd >>> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >>> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 >>> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >>> V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba >>> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 >>> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb >>> V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a >>> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e >>> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a >>> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e >>> V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >>> V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >>> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 >>> V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 >>> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >>> V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed >>> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >>> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >>> V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f >>> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >>> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >>> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >>> >>> Maybe it's best to back out 8185349 for now. >>> >>> Best regards, >>> Tobias >>> >>>> Maurizio?s call - this is compiler sources, >>>> >>>> thanks, >>>> Karen >>>> >>>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >>>>> >>>>> Okay, it's getting complicated. Here are the webrevs: >>>>> >>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>>> >>>>> What do you think? >>>>> >>>>> Best regards, >>>>> Tobias >>>>> >>>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>>> >>>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>>>>> >>>>>>> jdk.experimental.bytecode.Opcode >>>>>> >>>>>> Right: >>>>>> >>>>>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>>>>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>>>>> @@ -235,14 +235,11 @@ >>>>>> VSTORE(204), >>>>>> VALOAD(205), >>>>>> VASTORE(206), >>>>>> - VNEW(207), >>>>>> - VRETURN(210), >>>>>> - VGETFIELD(211), >>>>>> - TYPED(212), >>>>>> - VDEFAULT(214), >>>>>> - VWITHFIELD(215), >>>>>> - VBOX(216), >>>>>> - VUNBOX(217); >>>>>> + VRETURN(207), >>>>>> + VDEFAULT(208), >>>>>> + VWITHFIELD(209), >>>>>> + VBOX(210), >>>>>> + VUNBOX(211); >>>>>> >>>>>> int code; >>>>>> >>>>>> >>>>>> And I guess we have to change this as well: >>>>>> >>>>>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>>>>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>>>>> @@ -247,13 +247,13 @@ >>>>>> VSTORE(204, LOCAL), >>>>>> VALOAD(205), >>>>>> VASTORE(206), >>>>>> - VRETURN(210), >>>>>> + VRETURN(207), >>>>>> >>>>>> - VDEFAULT(214, CPREF_W), >>>>>> - VWITHFIELD(215, CPREF_W), >>>>>> + VDEFAULT(208, CPREF_W), >>>>>> + VWITHFIELD(209, CPREF_W), >>>>>> >>>>>> - VBOX(216, CPREF_W), >>>>>> - VUNBOX(217, CPREF_W), >>>>>> + VBOX(210, CPREF_W), >>>>>> + VUNBOX(211, CPREF_W), >>>>>> >>>>>> // impdep 0xfe: PicoJava nonpriv >>>>>> // impdep 0xff: Picojava priv >>>>>> >>>>>> >>>>>> Thanks, >>>>>> Tobias >>>>>> >>>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>>> Hi, >>>>>>>> >>>>>>>> seems like this is due to: >>>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>>> >>>>>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>>>>> >>>>>>>> We should reset the value type bytecode numbers: >>>>>>>> >>>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>>>>> @@ -248,11 +248,11 @@ >>>>>>>> _vstore = 204, // 0xcc >>>>>>>> _vaload = 205, // 0xcd >>>>>>>> _vastore = 206, // 0xce >>>>>>>> - _vreturn = 210, // 0xd2 >>>>>>>> - _vdefault = 214, // 0xd6 >>>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>>> - _vbox = 216, // 0xd6 >>>>>>>> - _vunbox = 217, // 0xd7 >>>>>>>> + _vreturn = 207, // 0xcf >>>>>>>> + _vdefault = 208, // 0xd0 >>>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>>> + _vbox = 210, // 0xd2 >>>>>>>> + _vunbox = 211, // 0xd3 >>>>>>>> number_of_java_codes, >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Tobias >>>>>>> >>>> >> From sergey.kuksenko at oracle.com Thu Jul 27 18:14:27 2017 From: sergey.kuksenko at oracle.com (Sergey Kuksenko) Date: Thu, 27 Jul 2017 11:14:27 -0700 Subject: Valhalla/MVT microbenchmarks (first benchmarks and first results) In-Reply-To: References: <4cee57e0-26ad-1319-d0e3-d03808de5e45@oracle.com> Message-ID: <0a20f8ca-fe55-872f-c17f-88cf29f5b85c@oracle.com> Thank you for pointing me out. I did some evaluations in that area and updated my report. I've collected "time to performance" metrics for derived value types with CountedLoops. arraysum...mhie_derivedLoop reaches peak performance after ~45 SECONDS of execution. matrix.MHIE_Derived...TotalLoop reaches peak performance after more than 220 SECONDS of execution. Such time to performance is too big and should be evaluated. That is why I decided do not increase warmup time of my benchmarks. Also such slow warmup can't be explained simply by slower reachingcompilation thresholds. Derived value types (with counted loops) are ~3x-4x times slower than boxed types analogues in the interpreter, but time to performance is ~20x-40x times worse. I can only guess that LambdaForms machinery has it's own counters and thresholds before generating the final bytecode. On 07/27/2017 05:27 AM, Roland Westrelin wrote: >> The only exception seems to be those multIJKTotalLoop/multIKJTotalLoop >> benchmarks, in which, as you point out, something is preventing full >> MH compilation. I'm sure our C2 gurus will look into that soon. > Those benchmarks apparently need a warmup that's a lot longer. I see > performance improved dramatically at warmup iteration 83 with > MH_Derived.multIJKTotalLoop. > > Compilation heuristics work by counting the number of invocations of a > method and adding the number of times a backbranch is taken in a > method. Once that value crosses a threshold compilation is triggered. It > looks like it doesn't work well with the loop combinators. Maybe the > actual loop is in some method that gets compiled early but for maximum > performance we need some caller of that method to be compiled so method > handles are known constant and that only happens much later. > > Roland. -- Best regards, Sergey Kuksenko From maurizio.cimadamore at oracle.com Thu Jul 27 18:16:37 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 27 Jul 2017 19:16:37 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> Message-ID: This is just the test running with Xverify:all - the MinimalValueType_1_0 class has a reference to __Value, and that reference has the mangled ClassInfo, so that is causing the verifier to fail. Maurizio On 27/07/17 19:09, Tobias Hartmann wrote: > I updated the webrevs in place and will re-run JPRT. > > I'm also seeing lots of these: > > Error: A JNI error has occurred, please check your installation and try again > Exception in thread "main" java.lang.VerifyError: Illegal type at constant pool entry 57 in class valhalla.shady.MinimalValueTypes_1_0 > Exception Details: > Location: > valhalla/shady/MinimalValueTypes_1_0.getValueClass()Ljava/lang/Class; @0: ldc > Reason: > Constant pool index 57 is invalid > Bytecode: > 0000000: 1239 c000 3ab0 > > at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:368) > at java.base/java.lang.invoke.MethodTypeForm.canonicalizeAll(MethodTypeForm.java:424) > at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:348) > at java.base/java.lang.invoke.MethodTypeForm.findForm(MethodTypeForm.java:320) > at java.base/java.lang.invoke.MethodType.makeImpl(MethodType.java:325) > at java.base/java.lang.invoke.MethodHandleNatives.findMethodHandleType(MethodHandleNatives.java:292) > at java.base/java.util.ResourceBundle.getLoader(ResourceBundle.java:561) > at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1560) > at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1535) > at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:836) > at java.base/sun.launcher.LauncherHelper$ResourceBundleHolder.(LauncherHelper.java:128) > at java.base/sun.launcher.LauncherHelper.getLocalizedMessage(LauncherHelper.java:352) > at java.base/sun.launcher.LauncherHelper.abort(LauncherHelper.java:519) > at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:677) > at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:552) > > Best regards, > Tobias > > On 27.07.2017 19:51, Tobias Hartmann wrote: >> On 27.07.2017 19:50, Karen Kinnear wrote: >>> We missed a change in byte codes.cpp: >>> >>> Need to move the def(_vgetfield down to the JVM byte codes and add the additional field which is _getfield as the java_code. >> Okay, I'll fix that. >> >> Best regards, >> Tobias >> >>> thanks, >>> Karen >>> >>>> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann wrote: >>>> >>>> Hi Karen, >>>> >>>> On 27.07.2017 19:30, Karen Kinnear wrote: >>>>> Do you want to change in ByteCodes.java - >>>>> ByteCodeCount to 210 instead of 216? >>>> Right, that count should be updated as well. >>>> >>>> I just run this through JPRT and I get dozens of failures: >>>> >>>> # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 >>>> # assert(Bytecodes::is_java_code(code)) failed: sanity check >>>> >>>> Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k >>>> Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) >>>> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f >>>> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f >>>> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd >>>> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >>>> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 >>>> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >>>> V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba >>>> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 >>>> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb >>>> V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a >>>> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e >>>> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a >>>> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e >>>> V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >>>> V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >>>> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 >>>> V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 >>>> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >>>> V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed >>>> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >>>> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >>>> V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f >>>> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >>>> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >>>> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >>>> >>>> Maybe it's best to back out 8185349 for now. >>>> >>>> Best regards, >>>> Tobias >>>> >>>>> Maurizio?s call - this is compiler sources, >>>>> >>>>> thanks, >>>>> Karen >>>>> >>>>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >>>>>> >>>>>> Okay, it's getting complicated. Here are the webrevs: >>>>>> >>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>>>> >>>>>> What do you think? >>>>>> >>>>>> Best regards, >>>>>> Tobias >>>>>> >>>>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>>>>>> >>>>>>>> jdk.experimental.bytecode.Opcode >>>>>>> Right: >>>>>>> >>>>>>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>>>>>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>>>>>> @@ -235,14 +235,11 @@ >>>>>>> VSTORE(204), >>>>>>> VALOAD(205), >>>>>>> VASTORE(206), >>>>>>> - VNEW(207), >>>>>>> - VRETURN(210), >>>>>>> - VGETFIELD(211), >>>>>>> - TYPED(212), >>>>>>> - VDEFAULT(214), >>>>>>> - VWITHFIELD(215), >>>>>>> - VBOX(216), >>>>>>> - VUNBOX(217); >>>>>>> + VRETURN(207), >>>>>>> + VDEFAULT(208), >>>>>>> + VWITHFIELD(209), >>>>>>> + VBOX(210), >>>>>>> + VUNBOX(211); >>>>>>> >>>>>>> int code; >>>>>>> >>>>>>> >>>>>>> And I guess we have to change this as well: >>>>>>> >>>>>>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>>>>>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>>>>>> @@ -247,13 +247,13 @@ >>>>>>> VSTORE(204, LOCAL), >>>>>>> VALOAD(205), >>>>>>> VASTORE(206), >>>>>>> - VRETURN(210), >>>>>>> + VRETURN(207), >>>>>>> >>>>>>> - VDEFAULT(214, CPREF_W), >>>>>>> - VWITHFIELD(215, CPREF_W), >>>>>>> + VDEFAULT(208, CPREF_W), >>>>>>> + VWITHFIELD(209, CPREF_W), >>>>>>> >>>>>>> - VBOX(216, CPREF_W), >>>>>>> - VUNBOX(217, CPREF_W), >>>>>>> + VBOX(210, CPREF_W), >>>>>>> + VUNBOX(211, CPREF_W), >>>>>>> >>>>>>> // impdep 0xfe: PicoJava nonpriv >>>>>>> // impdep 0xff: Picojava priv >>>>>>> >>>>>>> >>>>>>> Thanks, >>>>>>> Tobias >>>>>>> >>>>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> seems like this is due to: >>>>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>>>> >>>>>>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>>>>>> >>>>>>>>> We should reset the value type bytecode numbers: >>>>>>>>> >>>>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>>>>>> @@ -248,11 +248,11 @@ >>>>>>>>> _vstore = 204, // 0xcc >>>>>>>>> _vaload = 205, // 0xcd >>>>>>>>> _vastore = 206, // 0xce >>>>>>>>> - _vreturn = 210, // 0xd2 >>>>>>>>> - _vdefault = 214, // 0xd6 >>>>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>>>> - _vbox = 216, // 0xd6 >>>>>>>>> - _vunbox = 217, // 0xd7 >>>>>>>>> + _vreturn = 207, // 0xcf >>>>>>>>> + _vdefault = 208, // 0xd0 >>>>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>>>> + _vbox = 210, // 0xd2 >>>>>>>>> + _vunbox = 211, // 0xd3 >>>>>>>>> number_of_java_codes, >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Tobias From maurizio.cimadamore at oracle.com Thu Jul 27 18:18:15 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 27 Jul 2017 19:18:15 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> Message-ID: <08aeca80-be86-5b03-93cd-ed54c8c4a38e@oracle.com> In other words, I believe this is, again, related to JDK-8185148 Maurizio On 27/07/17 19:16, Maurizio Cimadamore wrote: > This is just the test running with Xverify:all - the > MinimalValueType_1_0 class has a reference to __Value, and that > reference has the mangled ClassInfo, so that is causing the verifier > to fail. > > Maurizio > > > On 27/07/17 19:09, Tobias Hartmann wrote: >> I updated the webrevs in place and will re-run JPRT. >> >> I'm also seeing lots of these: >> >> Error: A JNI error has occurred, please check your installation and >> try again >> Exception in thread "main" java.lang.VerifyError: Illegal type at >> constant pool entry 57 in class valhalla.shady.MinimalValueTypes_1_0 >> Exception Details: >> Location: >> valhalla/shady/MinimalValueTypes_1_0.getValueClass()Ljava/lang/Class; >> @0: ldc >> Reason: >> Constant pool index 57 is invalid >> Bytecode: >> 0000000: 1239 c000 3ab0 >> >> at >> java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:368) >> at >> java.base/java.lang.invoke.MethodTypeForm.canonicalizeAll(MethodTypeForm.java:424) >> at >> java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:348) >> at >> java.base/java.lang.invoke.MethodTypeForm.findForm(MethodTypeForm.java:320) >> at >> java.base/java.lang.invoke.MethodType.makeImpl(MethodType.java:325) >> at >> java.base/java.lang.invoke.MethodHandleNatives.findMethodHandleType(MethodHandleNatives.java:292) >> at >> java.base/java.util.ResourceBundle.getLoader(ResourceBundle.java:561) >> at >> java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1560) >> at >> java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1535) >> at >> java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:836) >> at >> java.base/sun.launcher.LauncherHelper$ResourceBundleHolder.(LauncherHelper.java:128) >> at >> java.base/sun.launcher.LauncherHelper.getLocalizedMessage(LauncherHelper.java:352) >> at >> java.base/sun.launcher.LauncherHelper.abort(LauncherHelper.java:519) >> at >> java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:677) >> at >> java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:552) >> >> Best regards, >> Tobias >> >> On 27.07.2017 19:51, Tobias Hartmann wrote: >>> On 27.07.2017 19:50, Karen Kinnear wrote: >>>> We missed a change in byte codes.cpp: >>>> >>>> Need to move the def(_vgetfield down to the JVM byte codes and add >>>> the additional field which is _getfield as the java_code. >>> Okay, I'll fix that. >>> >>> Best regards, >>> Tobias >>> >>>> thanks, >>>> Karen >>>> >>>>> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann >>>>> wrote: >>>>> >>>>> Hi Karen, >>>>> >>>>> On 27.07.2017 19:30, Karen Kinnear wrote: >>>>>> Do you want to change in ByteCodes.java - >>>>>> ByteCodeCount to 210 instead of 216? >>>>> Right, that count should be updated as well. >>>>> >>>>> I just run this through JPRT and I get dozens of failures: >>>>> >>>>> # Internal Error >>>>> (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), >>>>> pid=10773, tid=10777 >>>>> # assert(Bytecodes::is_java_code(code)) failed: sanity check >>>>> >>>>> Stack: [0x00007fc4238db000,0x00007fc4239db000], >>>>> sp=0x00007fc4239d72d0, free space=1008k >>>>> Native frames: (J=compiled Java code, A=aot compiled Java code, >>>>> j=interpreted, Vv=VM code, C=native code) >>>>> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char >>>>> const*, char const*, __va_list_tag*, Thread*, unsigned char*, >>>>> void*, void*, char const*, int, unsigned long)+0x15f >>>>> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char >>>>> const*, int, char const*, char const*, __va_list_tag*)+0x2f >>>>> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char >>>>> const*, char const*, ...)+0xdd >>>>> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >>>>> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle >>>>> const&)+0x48 >>>>> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >>>>> V [libjvm.so+0x1327c7a] >>>>> OopMapForCacheEntry::compute_map(Thread*)+0xba >>>>> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, >>>>> int)+0x136 >>>>> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, >>>>> int, InterpreterOopMap*) const+0x1bb >>>>> V [libjvm.so+0x126587a] Method::mask_for(int, >>>>> InterpreterOopMap*)+0x5a >>>>> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, >>>>> RegisterMap const*, bool)+0xb0e >>>>> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, >>>>> CodeBlobClosure*)+0x21a >>>>> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, >>>>> OopClosure*, CodeBlobClosure*)+0x4e >>>>> V [libjvm.so+0xd36be1] >>>>> GenCollectedHeap::process_roots(StrongRootsScope*, >>>>> GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, >>>>> CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >>>>> V [libjvm.so+0xd36fdc] >>>>> GenCollectedHeap::young_process_roots(StrongRootsScope*, >>>>> OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >>>>> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, >>>>> unsigned long, bool)+0x554 >>>>> V [libjvm.so+0xd3a576] >>>>> GenCollectedHeap::collect_generation(Generation*, bool, unsigned >>>>> long, bool, bool, bool, bool)+0x356 >>>>> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, >>>>> bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >>>>> V [libjvm.so+0xa02ebd] >>>>> GenCollectorPolicy::satisfy_failed_allocation(unsigned long, >>>>> bool)+0xed >>>>> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >>>>> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >>>>> V [libjvm.so+0x16e8fbf] >>>>> VMThread::evaluate_operation(VM_Operation*)+0x34f >>>>> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >>>>> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >>>>> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >>>>> >>>>> Maybe it's best to back out 8185349 for now. >>>>> >>>>> Best regards, >>>>> Tobias >>>>> >>>>>> Maurizio?s call - this is compiler sources, >>>>>> >>>>>> thanks, >>>>>> Karen >>>>>> >>>>>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann >>>>>>> wrote: >>>>>>> >>>>>>> Okay, it's getting complicated. Here are the webrevs: >>>>>>> >>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>>>>> >>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>>>>> >>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>>>>> >>>>>>> >>>>>>> What do you think? >>>>>>> >>>>>>> Best regards, >>>>>>> Tobias >>>>>>> >>>>>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>>>>> Wait - if you update these opcodes, then we need to update >>>>>>>>> bytecode library as well - see >>>>>>>>> >>>>>>>>> jdk.experimental.bytecode.Opcode >>>>>>>> Right: >>>>>>>> >>>>>>>> diff -r 2e4c9a8ae4e3 >>>>>>>> src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>> --- >>>>>>>> a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>> Thu Jul 27 15:59:25 2017 +0100 >>>>>>>> +++ >>>>>>>> b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>> Thu Jul 27 18:07:52 2017 +0200 >>>>>>>> @@ -235,14 +235,11 @@ >>>>>>>> VSTORE(204), >>>>>>>> VALOAD(205), >>>>>>>> VASTORE(206), >>>>>>>> - VNEW(207), >>>>>>>> - VRETURN(210), >>>>>>>> - VGETFIELD(211), >>>>>>>> - TYPED(212), >>>>>>>> - VDEFAULT(214), >>>>>>>> - VWITHFIELD(215), >>>>>>>> - VBOX(216), >>>>>>>> - VUNBOX(217); >>>>>>>> + VRETURN(207), >>>>>>>> + VDEFAULT(208), >>>>>>>> + VWITHFIELD(209), >>>>>>>> + VBOX(210), >>>>>>>> + VUNBOX(211); >>>>>>>> >>>>>>>> int code; >>>>>>>> >>>>>>>> >>>>>>>> And I guess we have to change this as well: >>>>>>>> >>>>>>>> diff -r 298730c35452 >>>>>>>> src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>> --- >>>>>>>> a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>> Thu Jul 27 16:00:29 2017 +0100 >>>>>>>> +++ >>>>>>>> b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>> Thu Jul 27 18:08:20 2017 +0200 >>>>>>>> @@ -247,13 +247,13 @@ >>>>>>>> VSTORE(204, LOCAL), >>>>>>>> VALOAD(205), >>>>>>>> VASTORE(206), >>>>>>>> - VRETURN(210), >>>>>>>> + VRETURN(207), >>>>>>>> >>>>>>>> - VDEFAULT(214, CPREF_W), >>>>>>>> - VWITHFIELD(215, CPREF_W), >>>>>>>> + VDEFAULT(208, CPREF_W), >>>>>>>> + VWITHFIELD(209, CPREF_W), >>>>>>>> >>>>>>>> - VBOX(216, CPREF_W), >>>>>>>> - VUNBOX(217, CPREF_W), >>>>>>>> + VBOX(210, CPREF_W), >>>>>>>> + VUNBOX(211, CPREF_W), >>>>>>>> >>>>>>>> // impdep 0xfe: PicoJava nonpriv >>>>>>>> // impdep 0xff: Picojava priv >>>>>>>> >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Tobias >>>>>>>> >>>>>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>>>>> Hi, >>>>>>>>>> >>>>>>>>>> seems like this is due to: >>>>>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> If I count correctly, adding _vgetfield at the end 'causes >>>>>>>>>> number_of_codes' to be 257 and thus we fail. >>>>>>>>>> >>>>>>>>>> We should reset the value type bytecode numbers: >>>>>>>>>> >>>>>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 >>>>>>>>>> 16:00:00 2017 +0100 >>>>>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 >>>>>>>>>> 17:23:40 2017 +0200 >>>>>>>>>> @@ -248,11 +248,11 @@ >>>>>>>>>> _vstore = 204, // 0xcc >>>>>>>>>> _vaload = 205, // 0xcd >>>>>>>>>> _vastore = 206, // 0xce >>>>>>>>>> - _vreturn = 210, // 0xd2 >>>>>>>>>> - _vdefault = 214, // 0xd6 >>>>>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>>>>> - _vbox = 216, // 0xd6 >>>>>>>>>> - _vunbox = 217, // 0xd7 >>>>>>>>>> + _vreturn = 207, // 0xcf >>>>>>>>>> + _vdefault = 208, // 0xd0 >>>>>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>>>>> + _vbox = 210, // 0xd2 >>>>>>>>>> + _vunbox = 211, // 0xd3 >>>>>>>>>> number_of_java_codes, >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Tobias > From maurizio.cimadamore at oracle.com Thu Jul 27 18:19:09 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 27 Jul 2017 19:19:09 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <08aeca80-be86-5b03-93cd-ed54c8c4a38e@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> <08aeca80-be86-5b03-93cd-ed54c8c4a38e@oracle.com> Message-ID: <860b5cf9-17bc-f1b6-e688-d64dcaebead0@oracle.com> A possible fix would be to restore my compiler based solution to avoid mangling on __Value - that would likely take care of this. Maurizio On 27/07/17 19:18, Maurizio Cimadamore wrote: > In other words, I believe this is, again, related to JDK-8185148 > > Maurizio > > > On 27/07/17 19:16, Maurizio Cimadamore wrote: >> This is just the test running with Xverify:all - the >> MinimalValueType_1_0 class has a reference to __Value, and that >> reference has the mangled ClassInfo, so that is causing the verifier >> to fail. >> >> Maurizio >> >> >> On 27/07/17 19:09, Tobias Hartmann wrote: >>> I updated the webrevs in place and will re-run JPRT. >>> >>> I'm also seeing lots of these: >>> >>> Error: A JNI error has occurred, please check your installation and >>> try again >>> Exception in thread "main" java.lang.VerifyError: Illegal type at >>> constant pool entry 57 in class valhalla.shady.MinimalValueTypes_1_0 >>> Exception Details: >>> Location: >>> valhalla/shady/MinimalValueTypes_1_0.getValueClass()Ljava/lang/Class; >>> @0: ldc >>> Reason: >>> Constant pool index 57 is invalid >>> Bytecode: >>> 0000000: 1239 c000 3ab0 >>> >>> at >>> java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:368) >>> at >>> java.base/java.lang.invoke.MethodTypeForm.canonicalizeAll(MethodTypeForm.java:424) >>> at >>> java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:348) >>> at >>> java.base/java.lang.invoke.MethodTypeForm.findForm(MethodTypeForm.java:320) >>> at >>> java.base/java.lang.invoke.MethodType.makeImpl(MethodType.java:325) >>> at >>> java.base/java.lang.invoke.MethodHandleNatives.findMethodHandleType(MethodHandleNatives.java:292) >>> at >>> java.base/java.util.ResourceBundle.getLoader(ResourceBundle.java:561) >>> at >>> java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1560) >>> at >>> java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1535) >>> at >>> java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:836) >>> at >>> java.base/sun.launcher.LauncherHelper$ResourceBundleHolder.(LauncherHelper.java:128) >>> at >>> java.base/sun.launcher.LauncherHelper.getLocalizedMessage(LauncherHelper.java:352) >>> at >>> java.base/sun.launcher.LauncherHelper.abort(LauncherHelper.java:519) >>> at >>> java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:677) >>> at >>> java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:552) >>> >>> Best regards, >>> Tobias >>> >>> On 27.07.2017 19:51, Tobias Hartmann wrote: >>>> On 27.07.2017 19:50, Karen Kinnear wrote: >>>>> We missed a change in byte codes.cpp: >>>>> >>>>> Need to move the def(_vgetfield down to the JVM byte codes and add >>>>> the additional field which is _getfield as the java_code. >>>> Okay, I'll fix that. >>>> >>>> Best regards, >>>> Tobias >>>> >>>>> thanks, >>>>> Karen >>>>> >>>>>> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann >>>>>> wrote: >>>>>> >>>>>> Hi Karen, >>>>>> >>>>>> On 27.07.2017 19:30, Karen Kinnear wrote: >>>>>>> Do you want to change in ByteCodes.java - >>>>>>> ByteCodeCount to 210 instead of 216? >>>>>> Right, that count should be updated as well. >>>>>> >>>>>> I just run this through JPRT and I get dozens of failures: >>>>>> >>>>>> # Internal Error >>>>>> (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), >>>>>> pid=10773, tid=10777 >>>>>> # assert(Bytecodes::is_java_code(code)) failed: sanity check >>>>>> >>>>>> Stack: [0x00007fc4238db000,0x00007fc4239db000], >>>>>> sp=0x00007fc4239d72d0, free space=1008k >>>>>> Native frames: (J=compiled Java code, A=aot compiled Java code, >>>>>> j=interpreted, Vv=VM code, C=native code) >>>>>> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char >>>>>> const*, char const*, __va_list_tag*, Thread*, unsigned char*, >>>>>> void*, void*, char const*, int, unsigned long)+0x15f >>>>>> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char >>>>>> const*, int, char const*, char const*, __va_list_tag*)+0x2f >>>>>> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char >>>>>> const*, char const*, ...)+0xdd >>>>>> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >>>>>> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle >>>>>> const&)+0x48 >>>>>> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >>>>>> V [libjvm.so+0x1327c7a] >>>>>> OopMapForCacheEntry::compute_map(Thread*)+0xba >>>>>> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, >>>>>> int)+0x136 >>>>>> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, >>>>>> int, InterpreterOopMap*) const+0x1bb >>>>>> V [libjvm.so+0x126587a] Method::mask_for(int, >>>>>> InterpreterOopMap*)+0x5a >>>>>> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, >>>>>> RegisterMap const*, bool)+0xb0e >>>>>> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, >>>>>> CodeBlobClosure*)+0x21a >>>>>> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, >>>>>> OopClosure*, CodeBlobClosure*)+0x4e >>>>>> V [libjvm.so+0xd36be1] >>>>>> GenCollectedHeap::process_roots(StrongRootsScope*, >>>>>> GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, >>>>>> CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >>>>>> V [libjvm.so+0xd36fdc] >>>>>> GenCollectedHeap::young_process_roots(StrongRootsScope*, >>>>>> OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >>>>>> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, >>>>>> unsigned long, bool)+0x554 >>>>>> V [libjvm.so+0xd3a576] >>>>>> GenCollectedHeap::collect_generation(Generation*, bool, unsigned >>>>>> long, bool, bool, bool, bool)+0x356 >>>>>> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, >>>>>> bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >>>>>> V [libjvm.so+0xa02ebd] >>>>>> GenCollectorPolicy::satisfy_failed_allocation(unsigned long, >>>>>> bool)+0xed >>>>>> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >>>>>> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >>>>>> V [libjvm.so+0x16e8fbf] >>>>>> VMThread::evaluate_operation(VM_Operation*)+0x34f >>>>>> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >>>>>> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >>>>>> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >>>>>> >>>>>> Maybe it's best to back out 8185349 for now. >>>>>> >>>>>> Best regards, >>>>>> Tobias >>>>>> >>>>>>> Maurizio?s call - this is compiler sources, >>>>>>> >>>>>>> thanks, >>>>>>> Karen >>>>>>> >>>>>>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann >>>>>>>> wrote: >>>>>>>> >>>>>>>> Okay, it's getting complicated. Here are the webrevs: >>>>>>>> >>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>>>>>> >>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>>>>>> >>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>>>>>> >>>>>>>> >>>>>>>> What do you think? >>>>>>>> >>>>>>>> Best regards, >>>>>>>> Tobias >>>>>>>> >>>>>>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>>>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>>>>>> Wait - if you update these opcodes, then we need to update >>>>>>>>>> bytecode library as well - see >>>>>>>>>> >>>>>>>>>> jdk.experimental.bytecode.Opcode >>>>>>>>> Right: >>>>>>>>> >>>>>>>>> diff -r 2e4c9a8ae4e3 >>>>>>>>> src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>>> --- >>>>>>>>> a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>>> Thu Jul 27 15:59:25 2017 +0100 >>>>>>>>> +++ >>>>>>>>> b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>>> Thu Jul 27 18:07:52 2017 +0200 >>>>>>>>> @@ -235,14 +235,11 @@ >>>>>>>>> VSTORE(204), >>>>>>>>> VALOAD(205), >>>>>>>>> VASTORE(206), >>>>>>>>> - VNEW(207), >>>>>>>>> - VRETURN(210), >>>>>>>>> - VGETFIELD(211), >>>>>>>>> - TYPED(212), >>>>>>>>> - VDEFAULT(214), >>>>>>>>> - VWITHFIELD(215), >>>>>>>>> - VBOX(216), >>>>>>>>> - VUNBOX(217); >>>>>>>>> + VRETURN(207), >>>>>>>>> + VDEFAULT(208), >>>>>>>>> + VWITHFIELD(209), >>>>>>>>> + VBOX(210), >>>>>>>>> + VUNBOX(211); >>>>>>>>> >>>>>>>>> int code; >>>>>>>>> >>>>>>>>> >>>>>>>>> And I guess we have to change this as well: >>>>>>>>> >>>>>>>>> diff -r 298730c35452 >>>>>>>>> src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>>> --- >>>>>>>>> a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>>> Thu Jul 27 16:00:29 2017 +0100 >>>>>>>>> +++ >>>>>>>>> b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>>> Thu Jul 27 18:08:20 2017 +0200 >>>>>>>>> @@ -247,13 +247,13 @@ >>>>>>>>> VSTORE(204, LOCAL), >>>>>>>>> VALOAD(205), >>>>>>>>> VASTORE(206), >>>>>>>>> - VRETURN(210), >>>>>>>>> + VRETURN(207), >>>>>>>>> >>>>>>>>> - VDEFAULT(214, CPREF_W), >>>>>>>>> - VWITHFIELD(215, CPREF_W), >>>>>>>>> + VDEFAULT(208, CPREF_W), >>>>>>>>> + VWITHFIELD(209, CPREF_W), >>>>>>>>> >>>>>>>>> - VBOX(216, CPREF_W), >>>>>>>>> - VUNBOX(217, CPREF_W), >>>>>>>>> + VBOX(210, CPREF_W), >>>>>>>>> + VUNBOX(211, CPREF_W), >>>>>>>>> >>>>>>>>> // impdep 0xfe: PicoJava nonpriv >>>>>>>>> // impdep 0xff: Picojava priv >>>>>>>>> >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Tobias >>>>>>>>> >>>>>>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>>>>>> Hi, >>>>>>>>>>> >>>>>>>>>>> seems like this is due to: >>>>>>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> If I count correctly, adding _vgetfield at the end 'causes >>>>>>>>>>> number_of_codes' to be 257 and thus we fail. >>>>>>>>>>> >>>>>>>>>>> We should reset the value type bytecode numbers: >>>>>>>>>>> >>>>>>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 >>>>>>>>>>> 16:00:00 2017 +0100 >>>>>>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 >>>>>>>>>>> 17:23:40 2017 +0200 >>>>>>>>>>> @@ -248,11 +248,11 @@ >>>>>>>>>>> _vstore = 204, // 0xcc >>>>>>>>>>> _vaload = 205, // 0xcd >>>>>>>>>>> _vastore = 206, // 0xce >>>>>>>>>>> - _vreturn = 210, // 0xd2 >>>>>>>>>>> - _vdefault = 214, // 0xd6 >>>>>>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>>>>>> - _vbox = 216, // 0xd6 >>>>>>>>>>> - _vunbox = 217, // 0xd7 >>>>>>>>>>> + _vreturn = 207, // 0xcf >>>>>>>>>>> + _vdefault = 208, // 0xd0 >>>>>>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>>>>>> + _vbox = 210, // 0xd2 >>>>>>>>>>> + _vunbox = 211, // 0xd3 >>>>>>>>>>> number_of_java_codes, >>>>>>>>>>> >>>>>>>>>>> Thanks, >>>>>>>>>>> Tobias >> > From stanislav.smirnov at oracle.com Thu Jul 27 21:07:45 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Thu, 27 Jul 2017 21:07:45 +0000 Subject: hg: valhalla/valhalla/hotspot: test fix Message-ID: <201707272107.v6RL7ja4003343@aojmv0008.oracle.com> Changeset: d792261d52f2 Author: stsmirno Date: 2017-07-27 17:04 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d792261d52f2 test fix ! test/runtime/valhalla/valuetypes/Person.java From stanislav.smirnov at oracle.com Thu Jul 27 22:05:16 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Thu, 27 Jul 2017 22:05:16 +0000 Subject: hg: valhalla/valhalla: 91 new changesets Message-ID: <201707272205.v6RM5H0v027921@aojmv0008.oracle.com> Changeset: 91ac8096f365 Author: mseledtsov Date: 2017-05-17 11:28 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/91ac8096f365 8180393: [TESTBUG] CDSTestUtils property test.cds.copy.child.stdout should be true by default Summary: Changed default value of test.cds.copy.child.stdout to true Reviewed-by: hseigel, iklam, sspitsyn ! test/lib/jdk/test/lib/cds/CDSTestUtils.java Changeset: df33ef1dc163 Author: iignatyev Date: 2017-05-16 09:04 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/df33ef1dc163 8180195: remove jaxp testlibrary Reviewed-by: fyuan, joehw + test/lib/jdk/test/lib/compiler/CompilerUtils.java ! test/lib/jdk/test/lib/process/OutputAnalyzer.java ! test/lib/jdk/test/lib/process/ProcessTools.java Changeset: d4c30fc77c75 Author: iignatyev Date: 2017-05-18 10:22 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d4c30fc77c75 8180395: move FilterClassLoader and ParentLastURLClassLoader to top level testlibrary Reviewed-by: psandoz + test/lib/jdk/test/lib/classloader/FilterClassLoader.java + test/lib/jdk/test/lib/classloader/ParentLastURLClassLoader.java Changeset: e847c2ed3a50 Author: iignatyev Date: 2017-05-18 15:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e847c2ed3a50 8180391: move SerializationUtils to top level testlibrary Reviewed-by: psandoz + test/lib/jdk/test/lib/util/SerializationUtils.java Changeset: 7583288d0802 Author: ihse Date: 2017-05-10 09:02 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/7583288d0802 8178278: Move Standard Algorithm Names document to specs directory Reviewed-by: erikj ! make/Javadoc.gmk Changeset: 4635fa3adac6 Author: erikj Date: 2017-05-10 18:27 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/4635fa3adac6 8179867: JDK9 b167: demos exist in JDK bundles Reviewed-by: ihse ! make/Bundles.gmk ! make/Main.gmk Changeset: e50b2825a070 Author: tbell Date: 2017-05-10 14:55 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e50b2825a070 8180129: Bundles.gmk:181: *** unterminated call to function 'filter-out': missing ')'. Stop. Reviewed-by: erikj ! make/Bundles.gmk Changeset: d045961bbd5c Author: ihse Date: 2017-05-11 08:56 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d045961bbd5c 8179105: Respect "include_in_docs" property from imported modules. Reviewed-by: mchung, erikj ! make/common/Modules.gmk Changeset: 4dfb05777cb6 Author: erikj Date: 2017-05-11 18:41 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/4dfb05777cb6 8180083: Adjust Jib and JDL configurations for 9 to support new generation Mach 5 Reviewed-by: tbell, ihse ! common/conf/jib-profiles.js Changeset: 503670294c7d Author: lana Date: 2017-05-11 18:10 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/503670294c7d Merge Changeset: f1ca22ebd70f Author: iignatyev Date: 2017-05-11 13:58 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f1ca22ebd70f 8180037: move jdk.test.lib.InMemoryJavaCompiler to a separate package Reviewed-by: mseledtsov, vlivanov ! test/lib/RedefineClassHelper.java - test/lib/jdk/test/lib/InMemoryJavaCompiler.java + test/lib/jdk/test/lib/compiler/InMemoryJavaCompiler.java Changeset: 52fd3ed2536f Author: iignatyev Date: 2017-05-11 13:58 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/52fd3ed2536f 8180004: jdk.test.lib.DynamicVMOption should be moved to jdk.test.lib.management Reviewed-by: mseledtsov, vlivanov - test/lib/jdk/test/lib/DynamicVMOption.java + test/lib/jdk/test/lib/management/DynamicVMOption.java Changeset: 69879afbd98f Author: ihse Date: 2017-05-12 19:09 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/69879afbd98f 8175825: Stop including pubs repo Reviewed-by: erikj ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/bin/hgforest.sh ! common/doc/building.html ! common/doc/testing.html + make/Docs.gmk - make/Javadoc.gmk ! make/Main.gmk Changeset: f6e365a5e489 Author: ihse Date: 2017-05-12 19:11 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f6e365a5e489 8180281: --with-jtreg is broken for many use cases Reviewed-by: erikj ! common/autoconf/generated-configure.sh ! common/autoconf/toolchain.m4 ! make/RunTests.gmk Changeset: c569c88b7650 Author: mchung Date: 2017-05-12 13:29 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c569c88b7650 8180208: Provide a new docs bundle page Reviewed-by: ihse, jjg ! make/Docs.gmk ! make/Main.gmk Changeset: 2878d95ace72 Author: ihse Date: 2017-05-15 16:34 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/2878d95ace72 8180342: Fixup path for jtreg Reviewed-by: erikj ! common/autoconf/generated-configure.sh ! common/autoconf/toolchain.m4 Changeset: 9f46e4fbae64 Author: ihse Date: 2017-05-16 14:13 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9f46e4fbae64 8180420: Set PATH for dot and pandoc in JIB Reviewed-by: erikj ! common/conf/jib-profiles.js Changeset: 4d163ec59d98 Author: ihse Date: 2017-05-16 14:14 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/4d163ec59d98 8180328: Bad links in footer of all javadoc-generated pages Reviewed-by: erikj ! make/Docs.gmk Changeset: 30196d168c55 Author: lana Date: 2017-05-18 14:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/30196d168c55 Added tag jdk-9+170 for changeset 4d163ec59d98 ! .hgtags Changeset: 5980801638ba Author: lana Date: 2017-05-19 04:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/5980801638ba Merge ! .hgtags ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in - common/bin/shell-tracer.sh ! common/conf/jib-profiles.js Changeset: 190dbd51ed68 Author: iignatyev Date: 2017-05-19 13:33 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/190dbd51ed68 8180644: move jdk.testlibrary.NetworkConfiguration to the top level test library Reviewed-by: psandoz + test/lib/jdk/test/lib/NetworkConfiguration.java Changeset: d9c2fd996753 Author: jwilhelm Date: 2017-05-23 15:30 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d9c2fd996753 Merge ! common/autoconf/generated-configure.sh - common/autoconf/lib-elf.m4 ! common/autoconf/spec.gmk.in ! common/autoconf/toolchain.m4 ! common/conf/jib-profiles.js ! make/Docs.gmk ! test/lib/jdk/test/lib/process/ProcessTools.java Changeset: acc713e008a7 Author: lana Date: 2017-05-23 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/acc713e008a7 Added tag jdk-10+7 for changeset aa3c97810d7c ! .hgtags Changeset: cb3d540aa8ea Author: lana Date: 2017-05-23 22:38 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/cb3d540aa8ea Added tag jdk-10+8 for changeset df33ef1dc163 ! .hgtags Changeset: 951813691a8d Author: jwilhelm Date: 2017-05-24 22:27 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/951813691a8d Merge ! common/autoconf/generated-configure.sh - common/autoconf/lib-elf.m4 Changeset: f08b1f0b2f2a Author: iignatyev Date: 2017-05-24 13:53 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/f08b1f0b2f2a 8180802: move jdk.testlibrary.management.ThreadMXBeanTool to top level testlibrary Reviewed-by: psandoz + test/lib/jdk/test/lib/management/ThreadMXBeanTool.java Changeset: c4a17317fab2 Author: iignatyev Date: 2017-05-24 14:16 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c4a17317fab2 8180724: move ModuleInfoMaker to the top level testlibrary Reviewed-by: psandoz, mchung + test/lib/jdk/test/lib/compiler/ModuleInfoMaker.java Changeset: b94be69cbb1d Author: iignatyev Date: 2017-05-24 15:21 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/b94be69cbb1d 8180399: move jdk.testlibrary.LockFreeLogManager to the top level test library Reviewed-by: psandoz, mchung + test/lib/jdk/test/lib/LockFreeLogger.java Changeset: 11ec41f8ba87 Author: lana Date: 2017-05-26 01:00 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/11ec41f8ba87 Added tag jdk-10+9 for changeset b94be69cbb1d ! .hgtags Changeset: 2c5c3648a45f Author: erikj Date: 2017-05-29 14:06 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/2c5c3648a45f 8180651: Make target to run tests on exploded image Reviewed-by: ihse ! common/doc/testing.html ! common/doc/testing.md ! make/Help.gmk ! make/Main.gmk Changeset: 45e8c48bf4dd Author: jwilhelm Date: 2017-05-29 20:48 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/45e8c48bf4dd Merge ! common/autoconf/generated-configure.sh - common/autoconf/lib-elf.m4 Changeset: ad2e99486e1f Author: dholmes Date: 2017-05-30 17:03 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ad2e99486e1f 8174231: Factor out and share PlatformEvent and Parker code for POSIX systems Reviewed-by: ihse, erikj ! common/autoconf/flags.m4 ! common/autoconf/generated-configure.sh Changeset: 9c8a884f35c1 Author: epavlova Date: 2017-06-01 17:34 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9c8a884f35c1 8181124: Get rid of compiler.testlibrary.rtm.predicate Reviewed-by: kvn ! test/jtreg-ext/requires/VMProps.java ! test/lib/jdk/test/lib/Platform.java Changeset: fc761196703d Author: rprotacio Date: 2017-06-05 13:14 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/fc761196703d 8176132: -XX:+PrintSharedSpaces should be converted to use Unified Logging. Summary: Converted -XX:+PrintSharedSpaces to -Xlog:cds=info Reviewed-by: iklam, jiangli, mseledtsov ! test/lib/jdk/test/lib/cds/CDSTestUtils.java Changeset: abbba823f850 Author: iignatyev Date: 2017-05-30 14:56 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/abbba823f850 8180887: move FileUtils to top level testlibrary Reviewed-by: psandoz + test/lib/jdk/test/lib/util/FileUtils.java Changeset: dd4b4c262e52 Author: iignatyev Date: 2017-05-30 21:07 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/dd4b4c262e52 8180888: move jdk.testlibrary.JarUtils to the top level testlibrary Reviewed-by: weijun + test/lib/jdk/test/lib/util/JarUtils.java Changeset: d14008abb551 Author: iignatyev Date: 2017-05-30 21:14 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d14008abb551 8180805: move RandomFactory to the top level testlibrary Reviewed-by: bpb, rriggs + test/lib/jdk/test/lib/RandomFactory.java Changeset: 9c70f25ca307 Author: ihse Date: 2017-05-17 12:42 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/9c70f25ca307 8180472: Pandoc should generate html5 from markdown Reviewed-by: erikj ! common/doc/building.html ! common/doc/testing.html ! make/common/ProcessMarkdown.gmk Changeset: e6365fea178f Author: ihse Date: 2017-05-17 12:44 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e6365fea178f 8180318: Enable HTML 5 checking at compile time Reviewed-by: erikj ! make/CompileJavaModules.gmk ! make/common/SetupJavaCompilers.gmk Changeset: 3389bd361d46 Author: ihse Date: 2017-05-18 09:23 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/3389bd361d46 8180426: Use standard css file for new docs bundle index.html page Reviewed-by: mchung, erikj ! make/Docs.gmk ! make/Main.gmk Changeset: c491c6d36014 Author: lana Date: 2017-05-18 16:47 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/c491c6d36014 Merge Changeset: 1f19e7c36079 Author: wetmore Date: 2017-05-18 10:31 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1f19e7c36079 8180540: Add pandoc build fix for windows Reviewed-by: wetmore Contributed-by: magnus.ihse.bursie at oracle.com ! common/autoconf/spec.gmk.in Changeset: 440c40aa07c7 Author: uvangapally Date: 2017-05-19 15:27 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/440c40aa07c7 8175845: Provide javadoc descriptions for jdk.hotspot.agent module Summary: Added description for jdk.hotspot.agent module Reviewed-by: mchung ! make/common/Modules.gmk Changeset: d273234a040d Author: ihse Date: 2017-05-22 09:47 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d273234a040d 8180480: Use "requires transitive" relationship when determining modules for javadoc Reviewed-by: mchung, erikj ! make/Docs.gmk ! make/common/Modules.gmk Changeset: 4c12464a907d Author: iignatyev Date: 2017-05-22 15:28 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/4c12464a907d 8180793: move jdk.test.lib.wrappers.* to jdk.test.lib package Reviewed-by: mchung + test/lib/jdk/test/lib/InfiniteLoop.java + test/lib/jdk/test/lib/TimeLimitedRunner.java - test/lib/jdk/test/lib/wrappers/InfiniteLoop.java - test/lib/jdk/test/lib/wrappers/TimeLimitedRunner.java Changeset: 23c001d69fc1 Author: lana Date: 2017-05-26 00:29 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/23c001d69fc1 Added tag jdk-9+171 for changeset 4c12464a907d ! .hgtags Changeset: 6558c37afe83 Author: lana Date: 2017-05-31 17:41 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6558c37afe83 Merge ! .hgtags ! common/autoconf/spec.gmk.in - common/bin/shell-tracer.sh ! common/doc/testing.html ! make/Main.gmk ! make/common/SetupJavaCompilers.gmk Changeset: 8589c969babc Author: sballal Date: 2017-06-02 12:29 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/8589c969babc 6760477: Update SA to include stack traces in the heap dump Summary: Update SA to include HPROF_TRACE and HPROF_FRAME records in the heap dump Reviewed-by: dsamersoff Contributed-by: sharath.ballal at oracle.com ! test/lib/jdk/test/lib/hprof/parser/HprofReader.java ! test/lib/jdk/test/lib/hprof/parser/Reader.java Changeset: 18a666244da1 Author: lana Date: 2017-06-02 21:10 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/18a666244da1 Added tag jdk-10+10 for changeset 6558c37afe83 ! .hgtags Changeset: 2c25fc241032 Author: ihse Date: 2017-05-29 09:18 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/2c25fc241032 8175824: Adapt javadoc generation to different requirements for JDK and JavaSE Reviewed-by: erikj, mchung ! make/Docs.gmk ! make/common/MakeBase.gmk Changeset: d7537347a652 Author: lana Date: 2017-06-01 18:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d7537347a652 Added tag jdk-9+172 for changeset 2c25fc241032 ! .hgtags Changeset: 1bed3f29d894 Author: lana Date: 2017-06-03 02:43 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1bed3f29d894 Merge ! .hgtags - common/bin/shell-tracer.sh ! make/common/MakeBase.gmk Changeset: 6b750cdb823a Author: iignatyev Date: 2017-06-06 19:53 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6b750cdb823a 8181335: remove packageless CompilerUtils Reviewed-by: alanb ! test/lib/jdk/test/lib/compiler/CompilerUtils.java Changeset: 3a3d11d5a5a0 Author: jwilhelm Date: 2017-06-08 19:18 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/3a3d11d5a5a0 Merge ! common/autoconf/generated-configure.sh - common/autoconf/lib-elf.m4 ! common/autoconf/spec.gmk.in ! make/CompileJavaModules.gmk ! make/Docs.gmk Changeset: bdd710ab9e73 Author: kbarrett Date: 2017-06-13 11:09 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/bdd710ab9e73 8086005: Define __STDC_xxx_MACROS config macros globally via build system Summary: Moved macro definitions to hotspot build configuration Reviewed-by: erikj, eosterlund ! common/autoconf/flags.m4 ! common/autoconf/generated-configure.sh Changeset: 55bf5464b0e6 Author: eosterlund Date: 2017-06-14 01:29 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/55bf5464b0e6 8181318: Allow C++ library headers on Solaris Studio Summary: Allow studio to compile but not link against the stlport4 C++ standard library Reviewed-by: dholmes, dcubed, erikj ! common/autoconf/flags.m4 ! common/autoconf/generated-configure.sh Changeset: 78f9bd5dd9f8 Author: erikj Date: 2017-06-15 10:27 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/78f9bd5dd9f8 8180600: make run-test does not work with jib test dependencies Reviewed-by: ctornqvi, ihse ! make/RunTests.gmk Changeset: 204c708d2738 Author: erikj Date: 2017-06-08 16:36 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/204c708d2738 8181788: Unable to build JDK10 on SPARC-M8 machines Reviewed-by: tbell ! common/conf/jib-profiles.js Changeset: 288da90f237f Author: lana Date: 2017-06-09 21:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/288da90f237f Added tag jdk-10+11 for changeset 6b750cdb823a ! .hgtags Changeset: 96f737f4e11f Author: epavlova Date: 2017-06-12 12:39 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/96f737f4e11f 8181820: jdk/test/lib/Platform should not depend on jdk/test/lib/Utils Reviewed-by: alanb, chegar ! test/lib/jdk/test/lib/Platform.java Changeset: 3ad8b22b022c Author: rriggs Date: 2017-06-01 10:21 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/3ad8b22b022c 8181156: html5 issues in java.base javadoc Reviewed-by: ihse, erikj ! make/CompileJavaModules.gmk Changeset: 88d7fd969e7d Author: lana Date: 2017-06-01 18:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/88d7fd969e7d Merge Changeset: 4cdfea93f3f4 Author: lana Date: 2017-06-08 16:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/4cdfea93f3f4 Added tag jdk-9+173 for changeset 88d7fd969e7d ! .hgtags Changeset: 8d4ed1e06fe1 Author: lana Date: 2017-06-14 19:53 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/8d4ed1e06fe1 Merge ! .hgtags - common/bin/shell-tracer.sh Changeset: 577896ffb41a Author: mchung Date: 2017-06-07 21:15 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/577896ffb41a 8181639: Add tool and services information to module summary Reviewed-by: alanb, psandoz, lancea ! make/common/Modules.gmk Changeset: abe884590f03 Author: erikj Date: 2017-06-08 14:53 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/abe884590f03 8178064: OpenJDK RI binary should include the license file for freetype Reviewed-by: tbell, ihse ! common/autoconf/generated-configure.sh ! common/autoconf/lib-freetype.m4 ! common/autoconf/spec.gmk.in ! common/conf/jib-profiles.js ! make/CreateJmods.gmk Changeset: 5466f409346e Author: lana Date: 2017-06-08 23:10 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/5466f409346e Merge Changeset: 023f93e511ba Author: lana Date: 2017-06-15 17:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/023f93e511ba Added tag jdk-9+174 for changeset 5466f409346e ! .hgtags Changeset: 1212954b50dd Author: lana Date: 2017-06-16 04:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1212954b50dd Merge ! .hgtags ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in - common/bin/shell-tracer.sh ! common/conf/jib-profiles.js Changeset: 375ef1004be5 Author: lana Date: 2017-06-17 00:15 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/375ef1004be5 Added tag jdk-10+12 for changeset 8d4ed1e06fe1 ! .hgtags Changeset: d67a3f1f057f Author: redestad Date: 2017-06-19 10:32 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/d67a3f1f057f 8181147: JNU_GetStringPlatformChars should have a fast path for UTF-8 Reviewed-by: martin, erikj, sherman, chegar, mikael ! make/Main.gmk ! make/jprt.properties Changeset: 6741b50bd858 Author: jwilhelm Date: 2017-06-19 21:22 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/6741b50bd858 Merge ! common/autoconf/generated-configure.sh - common/autoconf/lib-elf.m4 ! common/autoconf/spec.gmk.in ! common/conf/jib-profiles.js ! make/CompileJavaModules.gmk ! make/jprt.properties Changeset: 5a17ec8d7dfc Author: iignatyev Date: 2017-06-27 08:30 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/5a17ec8d7dfc 8181053: port basicvmtest to jtreg Reviewed-by: ehelin ! make/jprt.properties Changeset: 826fdb1c3988 Author: bobv Date: 2017-06-27 14:30 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/826fdb1c3988 8182052: Test compiler/aot/cli/jaotc/CompileJarTest.java fails in JPRT Reviewed-by: kvn ! common/autoconf/hotspot.m4 Changeset: db33fa9fa01f Author: bobv Date: 2017-06-27 16:00 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/db33fa9fa01f Merge ! common/autoconf/generated-configure.sh Changeset: 68d4c8b3b2d1 Author: bobv Date: 2017-06-28 14:12 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/68d4c8b3b2d1 Merge Changeset: 35f50e9952e4 Author: mchung Date: 2017-06-13 10:44 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/35f50e9952e4 8182029: Make the top-level docs index.html to a HTML-level redirect to the API overview page Reviewed-by: alanb, erikj, ihse ! make/Docs.gmk Changeset: e73b6959f72d Author: lana Date: 2017-06-15 17:43 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e73b6959f72d Merge Changeset: e5c8a9c39558 Author: mchung Date: 2017-06-15 11:54 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/e5c8a9c39558 8182032: Make java.compiler upgradeable Reviewed-by: alanb, erikj ! make/CreateJmods.gmk ! make/common/Modules.gmk Changeset: ce42e2c57dc7 Author: ihse Date: 2017-06-16 11:41 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/ce42e2c57dc7 8179556: Add specs copyright file Reviewed-by: erikj ! make/Docs.gmk Changeset: 34742222cd74 Author: alanb Date: 2017-06-16 09:20 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/34742222cd74 8181087: Module system implementation refresh (6/2017) Reviewed-by: sspitsyn, hseigel ! test/lib/sun/hotspot/WhiteBox.java Changeset: 83d12a7fae3d Author: alanb Date: 2017-06-17 08:02 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/83d12a7fae3d Merge Changeset: 7df4f16bfa8f Author: mr Date: 2017-06-19 18:20 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/7df4f16bfa8f 8182408: Simplify the API-specification overview page Reviewed-by: erikj, mchung, jrose, alanb ! make/Docs.gmk Changeset: 985eae459953 Author: mchung Date: 2017-06-19 12:25 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/985eae459953 8182492: docs bundle needs legal notices for 3rd party libraries distributed for javadoc search Reviewed-by: jjg ! make/Docs.gmk Changeset: 8f7227c6012b Author: ihse Date: 2017-06-20 13:12 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/8f7227c6012b 8179537: Update testing.md for more clarity regarding JTReg configuration Reviewed-by: erikj ! common/doc/testing.html ! common/doc/testing.md Changeset: 77a9deaa0b4c Author: lana Date: 2017-06-22 18:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/77a9deaa0b4c Added tag jdk-9+175 for changeset 8f7227c6012b ! .hgtags Changeset: 5a380daa50ba Author: lana Date: 2017-06-23 23:18 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/5a380daa50ba Merge ! .hgtags - common/bin/shell-tracer.sh ! common/doc/testing.html ! common/doc/testing.md Changeset: 636c74550a81 Author: lana Date: 2017-06-24 02:59 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/636c74550a81 Added tag jdk-10+13 for changeset d67a3f1f057f ! .hgtags Changeset: 2b621c408db2 Author: iignatyev Date: 2017-06-27 08:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/2b621c408db2 8182154: merge jdk.testlibrary.Platform and jdk.test.lib.Platform Reviewed-by: sspitsyn, plevart ! test/lib/jdk/test/lib/Platform.java Changeset: 1fd5901544ac Author: iris Date: 2017-06-28 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/1fd5901544ac 8183142: Add bugids=dup to .jcheck/conf files for JDK 10 Reviewed-by: mr ! .jcheck/conf Changeset: 035a3a7c0ea7 Author: kvn Date: 2017-07-05 18:23 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/035a3a7c0ea7 Merge ! make/Docs.gmk ! test/lib/sun/hotspot/WhiteBox.java From stanislav.smirnov at oracle.com Thu Jul 27 22:05:17 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Thu, 27 Jul 2017 22:05:17 +0000 Subject: hg: valhalla/valhalla/corba: 32 new changesets Message-ID: <201707272205.v6RM5H1A027958@aojmv0008.oracle.com> Changeset: 03a2cc9c8a1e Author: lana Date: 2017-04-27 16:07 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/03a2cc9c8a1e Added tag jdk-9+167 for changeset 43de67f51801 ! .hgtags Changeset: b2218d41edef Author: lana Date: 2017-05-04 16:38 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/b2218d41edef Added tag jdk-9+168 for changeset 03a2cc9c8a1e ! .hgtags Changeset: aed5a4edc827 Author: lana Date: 2017-05-05 04:50 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/aed5a4edc827 Merge ! .hgtags Changeset: 72bb2cd3f013 Author: lana Date: 2017-05-11 16:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/72bb2cd3f013 Added tag jdk-9+169 for changeset b2218d41edef ! .hgtags Changeset: 648b0a00824e Author: lana Date: 2017-05-11 20:23 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/648b0a00824e Merge ! .hgtags Changeset: a3e210a93f90 Author: jjg Date: 2017-05-10 15:24 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/a3e210a93f90 8180041: Fix HTML 5 issues in java.corba Reviewed-by: alanb, lancea ! src/java.corba/share/classes/com/sun/corba/se/spi/monitoring/package.html ! src/java.corba/share/classes/org/omg/CORBA/Any.java ! src/java.corba/share/classes/org/omg/CORBA/ORB.java ! src/java.corba/share/classes/org/omg/CORBA/doc-files/compliance.html ! src/java.corba/share/classes/org/omg/CORBA/doc-files/generatedfiles.html ! src/java.corba/share/classes/org/omg/CORBA/package.html ! src/java.corba/share/classes/org/omg/CORBA/portable/package.html ! src/java.corba/share/classes/org/omg/CORBA_2_3/package.html ! src/java.corba/share/classes/org/omg/PortableInterceptor/IOP.idl ! src/java.corba/share/classes/org/omg/PortableInterceptor/Interceptors.idl ! src/java.corba/share/classes/org/omg/PortableInterceptor/package.html ! src/java.corba/share/classes/org/omg/PortableServer/package.html Changeset: 8a4ab3b0ab9a Author: lana Date: 2017-05-11 18:10 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/8a4ab3b0ab9a Merge Changeset: c62e5964cfcf Author: lana Date: 2017-05-18 14:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/c62e5964cfcf Added tag jdk-9+170 for changeset 8a4ab3b0ab9a ! .hgtags Changeset: 82897dd5d1e5 Author: lana Date: 2017-05-19 04:18 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/82897dd5d1e5 Merge ! .hgtags Changeset: 940cd86ef83e Author: lana Date: 2017-05-23 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/940cd86ef83e Added tag jdk-10+7 for changeset aed5a4edc827 ! .hgtags Changeset: 54c6621f7b34 Author: lana Date: 2017-05-23 22:39 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/54c6621f7b34 Added tag jdk-10+8 for changeset 648b0a00824e ! .hgtags Changeset: 77612ad980f7 Author: lana Date: 2017-05-26 01:00 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/77612ad980f7 Added tag jdk-10+9 for changeset 54c6621f7b34 ! .hgtags Changeset: 95ed14547ca9 Author: lana Date: 2017-05-26 00:29 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/95ed14547ca9 Added tag jdk-9+171 for changeset c62e5964cfcf ! .hgtags Changeset: 080c37fd77e2 Author: lana Date: 2017-05-31 17:44 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/080c37fd77e2 Merge ! .hgtags Changeset: 61d927fbfa59 Author: lana Date: 2017-06-02 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/61d927fbfa59 Added tag jdk-10+10 for changeset 080c37fd77e2 ! .hgtags Changeset: b5f3f4fc6b93 Author: lana Date: 2017-06-01 18:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/b5f3f4fc6b93 Added tag jdk-9+172 for changeset 95ed14547ca9 ! .hgtags Changeset: 8ef8a0f1c4df Author: lana Date: 2017-06-03 02:44 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/8ef8a0f1c4df Merge ! .hgtags Changeset: 3053bba569e0 Author: lana Date: 2017-06-09 21:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/3053bba569e0 Added tag jdk-10+11 for changeset 8ef8a0f1c4df ! .hgtags Changeset: d5fd6bd57a56 Author: jjg Date: 2017-05-30 15:49 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/d5fd6bd57a56 8181290: Invalid HTML 5 in core-libs docs Reviewed-by: mchung, lancea ! src/java.corba/share/classes/org/omg/CORBA/doc-files/generatedfiles.html Changeset: bd32b2b28de5 Author: msheppar Date: 2017-06-01 17:49 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/bd32b2b28de5 8176784: Amend HREF to technote/guides in CORBA API docs to unilinks for guides Reviewed-by: chegar, rriggs ! src/java.corba/share/classes/javax/rmi/PortableRemoteObject.java ! src/java.corba/share/classes/org/omg/CORBA/ACTIVITY_COMPLETED.java ! src/java.corba/share/classes/org/omg/CORBA/ACTIVITY_REQUIRED.java ! src/java.corba/share/classes/org/omg/CORBA/BAD_CONTEXT.java ! src/java.corba/share/classes/org/omg/CORBA/BAD_INV_ORDER.java ! src/java.corba/share/classes/org/omg/CORBA/BAD_OPERATION.java ! src/java.corba/share/classes/org/omg/CORBA/BAD_PARAM.java ! src/java.corba/share/classes/org/omg/CORBA/BAD_QOS.java ! src/java.corba/share/classes/org/omg/CORBA/BAD_TYPECODE.java ! src/java.corba/share/classes/org/omg/CORBA/Bounds.java ! src/java.corba/share/classes/org/omg/CORBA/CODESET_INCOMPATIBLE.java ! src/java.corba/share/classes/org/omg/CORBA/COMM_FAILURE.java ! src/java.corba/share/classes/org/omg/CORBA/DATA_CONVERSION.java ! src/java.corba/share/classes/org/omg/CORBA/FREE_MEM.java ! src/java.corba/share/classes/org/omg/CORBA/IMP_LIMIT.java ! src/java.corba/share/classes/org/omg/CORBA/INITIALIZE.java ! src/java.corba/share/classes/org/omg/CORBA/INTERNAL.java ! src/java.corba/share/classes/org/omg/CORBA/INTF_REPOS.java ! src/java.corba/share/classes/org/omg/CORBA/INVALID_ACTIVITY.java ! src/java.corba/share/classes/org/omg/CORBA/INVALID_TRANSACTION.java ! src/java.corba/share/classes/org/omg/CORBA/INV_FLAG.java ! src/java.corba/share/classes/org/omg/CORBA/INV_IDENT.java ! src/java.corba/share/classes/org/omg/CORBA/INV_OBJREF.java ! src/java.corba/share/classes/org/omg/CORBA/INV_POLICY.java ! src/java.corba/share/classes/org/omg/CORBA/MARSHAL.java ! src/java.corba/share/classes/org/omg/CORBA/NO_IMPLEMENT.java ! src/java.corba/share/classes/org/omg/CORBA/NO_MEMORY.java ! src/java.corba/share/classes/org/omg/CORBA/NO_PERMISSION.java ! src/java.corba/share/classes/org/omg/CORBA/NO_RESOURCES.java ! src/java.corba/share/classes/org/omg/CORBA/NO_RESPONSE.java ! src/java.corba/share/classes/org/omg/CORBA/OBJECT_NOT_EXIST.java ! src/java.corba/share/classes/org/omg/CORBA/OBJ_ADAPTER.java ! src/java.corba/share/classes/org/omg/CORBA/ORB.java ! src/java.corba/share/classes/org/omg/CORBA/PERSIST_STORE.java ! src/java.corba/share/classes/org/omg/CORBA/REBIND.java ! src/java.corba/share/classes/org/omg/CORBA/SystemException.java ! src/java.corba/share/classes/org/omg/CORBA/TIMEOUT.java ! src/java.corba/share/classes/org/omg/CORBA/TRANSACTION_MODE.java ! src/java.corba/share/classes/org/omg/CORBA/TRANSACTION_REQUIRED.java ! src/java.corba/share/classes/org/omg/CORBA/TRANSACTION_ROLLEDBACK.java ! src/java.corba/share/classes/org/omg/CORBA/TRANSACTION_UNAVAILABLE.java ! src/java.corba/share/classes/org/omg/CORBA/TRANSIENT.java ! src/java.corba/share/classes/org/omg/CORBA/UNKNOWN.java ! src/java.corba/share/classes/org/omg/CORBA/UnknownUserException.java ! src/java.corba/share/classes/org/omg/CORBA/UserException.java ! src/java.corba/share/classes/org/omg/CORBA/WrongTransaction.java ! src/java.corba/share/classes/org/omg/CORBA/package.html ! src/java.corba/share/classes/org/omg/CosNaming/package.html ! src/java.corba/share/classes/org/omg/PortableServer/package.html Changeset: 534ba4f8cfcf Author: lana Date: 2017-06-01 18:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/534ba4f8cfcf Merge Changeset: 3615768c1290 Author: lana Date: 2017-06-08 16:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/3615768c1290 Added tag jdk-9+173 for changeset 534ba4f8cfcf ! .hgtags Changeset: 00ae6307d78b Author: lana Date: 2017-06-14 20:07 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/00ae6307d78b Merge ! .hgtags Changeset: 6a33ed672191 Author: lana Date: 2017-06-15 17:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/6a33ed672191 Added tag jdk-9+174 for changeset 3615768c1290 ! .hgtags Changeset: 86f8f4cf41c4 Author: lana Date: 2017-06-16 04:56 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/86f8f4cf41c4 Merge ! .hgtags Changeset: 564fced058bd Author: lana Date: 2017-06-17 00:15 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/564fced058bd Added tag jdk-10+12 for changeset 00ae6307d78b ! .hgtags Changeset: e68b042f7130 Author: msheppar Date: 2017-06-16 20:37 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/e68b042f7130 8181836: BadKindHelper.html and BoundsHelper.html contains broken link in the javadoc Reviewed-by: chegar ! src/java.corba/share/classes/org/omg/CORBA/BoundsHelper.java ! src/java.corba/share/classes/org/omg/CORBA/ORBPackage/InvalidNameHelper.java ! src/java.corba/share/classes/org/omg/CORBA/TypeCodePackage/BadKindHelper.java ! src/java.corba/share/classes/org/omg/CORBA/TypeCodePackage/BoundsHelper.java Changeset: dc78a3dd6b3a Author: mchung Date: 2017-06-17 11:50 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/dc78a3dd6b3a 8182416: Clean up module-info.java like move requires transitive adjacent to exports Reviewed-by: alanb ! src/java.corba/share/classes/module-info.java Changeset: 40fb9f229471 Author: lana Date: 2017-06-22 18:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/40fb9f229471 Added tag jdk-9+175 for changeset dc78a3dd6b3a ! .hgtags Changeset: a2db85d01a02 Author: lana Date: 2017-06-24 00:21 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/a2db85d01a02 Merge ! .hgtags Changeset: 994baad957b1 Author: lana Date: 2017-06-24 02:59 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/994baad957b1 Added tag jdk-10+13 for changeset 564fced058bd ! .hgtags Changeset: 25d991a67cba Author: iris Date: 2017-06-28 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/corba/rev/25d991a67cba 8183142: Add bugids=dup to .jcheck/conf files for JDK 10 Reviewed-by: mr ! .jcheck/conf From stanislav.smirnov at oracle.com Thu Jul 27 22:05:18 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Thu, 27 Jul 2017 22:05:18 +0000 Subject: hg: valhalla/valhalla/nashorn: 40 new changesets Message-ID: <201707272205.v6RM5IVX028004@aojmv0008.oracle.com> Changeset: 03e5f1316a2d Author: sundar Date: 2017-04-19 14:05 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/03e5f1316a2d 8178954: jjs uses wrong javadoc base URL Reviewed-by: hannesw ! src/jdk.scripting.nashorn.shell/share/classes/jdk/nashorn/tools/jjs/Main.java Changeset: c9ffb95dfef4 Author: sundar Date: 2017-04-19 15:34 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/c9ffb95dfef4 8178315: nashorn ant build failure with @moduleGraph javadoc tag Summary: Added support for moduleGraph tag Reviewed-by: sundar, hannesw Contributed-by: srinivas.dama at oracle.com ! make/project.properties Changeset: b9a42a98ec1d Author: jlahoda Date: 2017-04-19 13:38 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/b9a42a98ec1d 8178012: Finish removal of -Xmodule: Summary: Setting jtreg to use --patch-module instead of -Xmodule:. Reviewed-by: alanb ! test/TEST.ROOT Changeset: a623ab461523 Author: vtewari Date: 2017-04-12 14:35 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/a623ab461523 8177656: Closed/nashorn/JDK_8034967.java starts failing (all platforms) since 9/154 Reviewed-by: jlaskey ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader.java Changeset: e118c818dbf8 Author: lana Date: 2017-04-21 03:33 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/e118c818dbf8 Merge Changeset: 98935976d88c Author: lana Date: 2017-04-27 16:07 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/98935976d88c Added tag jdk-9+167 for changeset e118c818dbf8 ! .hgtags Changeset: a3022cc65b17 Author: jjg Date: 2017-04-26 10:56 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/a3022cc65b17 8179304: Fix HTML 5 errors in jdk.scripting.nashorn and jdk.dynalink module Reviewed-by: sundar, jlaskey, hannesw ! src/jdk.dynalink/share/classes/jdk/dynalink/StandardOperation.java ! src/jdk.dynalink/share/classes/jdk/dynalink/linker/GuardingTypeConverterFactory.java ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TreeVisitor.java Changeset: 0f81cde5a1f7 Author: lana Date: 2017-04-27 21:16 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/0f81cde5a1f7 Merge Changeset: c78163ad1a4e Author: lana Date: 2017-05-04 16:38 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/c78163ad1a4e Added tag jdk-9+168 for changeset 0f81cde5a1f7 ! .hgtags Changeset: 7e9cb37e6d6e Author: lana Date: 2017-05-05 04:53 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/7e9cb37e6d6e Merge ! .hgtags Changeset: 131e25008015 Author: ihse Date: 2017-05-09 12:54 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/131e25008015 8179889: Fix typographic errors in copyright headers Reviewed-by: erikj, dholmes ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/codegen/SpillObjectCreator.java ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/codegen/TypeMap.java ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/SpillProperty.java ! test/script/basic/JDK-8150218.js ! test/script/basic/JDK-8170594.js ! test/script/basic/JDK-8171849.js ! test/script/basic/es6/JDK-8168373.js Changeset: 597d3dc02579 Author: lana Date: 2017-05-11 16:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/597d3dc02579 Added tag jdk-9+169 for changeset 131e25008015 ! .hgtags Changeset: edb825e2dfb1 Author: lana Date: 2017-05-11 20:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/edb825e2dfb1 Merge ! .hgtags Changeset: 550bfc15779f Author: sdama Date: 2017-05-12 12:12 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/550bfc15779f 8179891: JavaDoc for for..in is incorrect Summary: Fixed javadoc typo error Reviewed-by: sundar, hannesw, jlaskey Contributed-by: srinivas.dama at oracle.com ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForOfLoopTree.java Changeset: fc416270a776 Author: lana Date: 2017-05-18 14:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/fc416270a776 Added tag jdk-9+170 for changeset 550bfc15779f ! .hgtags Changeset: 494044fb3b4b Author: lana Date: 2017-05-19 04:18 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/494044fb3b4b Merge ! .hgtags Changeset: 7f059a53a9df Author: lana Date: 2017-05-23 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/7f059a53a9df Added tag jdk-10+7 for changeset 7e9cb37e6d6e ! .hgtags Changeset: d7d69c89088a Author: lana Date: 2017-05-23 22:39 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/d7d69c89088a Added tag jdk-10+8 for changeset edb825e2dfb1 ! .hgtags Changeset: 450e9fa66cf1 Author: lana Date: 2017-05-26 01:00 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/450e9fa66cf1 Added tag jdk-10+9 for changeset d7d69c89088a ! .hgtags Changeset: c8d6b740f0f7 Author: lana Date: 2017-05-26 00:29 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/c8d6b740f0f7 Added tag jdk-9+171 for changeset fc416270a776 ! .hgtags Changeset: f381e171bec9 Author: lana Date: 2017-05-31 17:43 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/f381e171bec9 Merge ! .hgtags Changeset: 832bb0f3c4fc Author: lana Date: 2017-06-02 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/832bb0f3c4fc Added tag jdk-10+10 for changeset f381e171bec9 ! .hgtags Changeset: fa8e4de50e82 Author: lana Date: 2017-06-01 18:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/fa8e4de50e82 Added tag jdk-9+172 for changeset c8d6b740f0f7 ! .hgtags Changeset: ae0c4f1560e4 Author: lana Date: 2017-06-03 02:45 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/ae0c4f1560e4 Merge ! .hgtags Changeset: b6df5f486557 Author: lana Date: 2017-06-09 21:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/b6df5f486557 Added tag jdk-10+11 for changeset ae0c4f1560e4 ! .hgtags Changeset: 3325f0c7fed2 Author: hannesw Date: 2017-06-14 10:07 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/3325f0c7fed2 8181191: getUint32 returning Long Reviewed-by: attila, jlaskey ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/objects/NativeDataView.java + test/script/basic/JDK-8181191.js Changeset: df6109f734e8 Author: lana Date: 2017-06-08 16:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/df6109f734e8 Added tag jdk-9+173 for changeset fa8e4de50e82 ! .hgtags Changeset: de571c0a9325 Author: lana Date: 2017-06-14 20:08 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/de571c0a9325 Merge ! .hgtags Changeset: 7b100002e7ae Author: mchung Date: 2017-06-07 18:57 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/7b100002e7ae 8181639: Add tool and services information to module summary Reviewed-by: alanb, psandoz, lancea ! src/jdk.dynalink/share/classes/module-info.java ! src/jdk.scripting.nashorn.shell/share/classes/module-info.java ! src/jdk.scripting.nashorn/share/classes/module-info.java Changeset: 7d4006eaa088 Author: lana Date: 2017-06-08 23:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/7d4006eaa088 Merge Changeset: da6134f74952 Author: lana Date: 2017-06-15 17:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/da6134f74952 Added tag jdk-9+174 for changeset 7d4006eaa088 ! .hgtags Changeset: f758064c1e37 Author: lana Date: 2017-06-16 04:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/f758064c1e37 Merge ! .hgtags Changeset: 2ab4a2055c2e Author: lana Date: 2017-06-17 00:15 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/2ab4a2055c2e Added tag jdk-10+12 for changeset de571c0a9325 ! .hgtags Changeset: 8c265a551d17 Author: anazarov Date: 2017-06-22 10:53 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/8c265a551d17 8181105: Nashorn file descriptor leak Reviewed-by: jlaskey, hannesw, sundar ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/Source.java ! test/src/jdk/nashorn/internal/test/framework/AbstractScriptRunnable.java ! test/src/jdk/nashorn/internal/test/framework/ScriptRunnable.java Changeset: 734b3209b6ed Author: mchung Date: 2017-06-17 11:50 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/734b3209b6ed 8182416: Clean up module-info.java like move requires transitive adjacent to exports Reviewed-by: alanb ! src/jdk.scripting.nashorn.shell/share/classes/module-info.java ! src/jdk.scripting.nashorn/share/classes/module-info.java Changeset: 3c6fbdf6e785 Author: lana Date: 2017-06-22 18:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/3c6fbdf6e785 Added tag jdk-9+175 for changeset 734b3209b6ed ! .hgtags Changeset: 60b9ba5bf8fa Author: lana Date: 2017-06-24 00:33 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/60b9ba5bf8fa Merge ! .hgtags Changeset: fc3af109dace Author: lana Date: 2017-06-24 02:59 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/fc3af109dace Added tag jdk-10+13 for changeset 2ab4a2055c2e ! .hgtags Changeset: 3b1c1b73e3f6 Author: iris Date: 2017-06-28 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/3b1c1b73e3f6 8183142: Add bugids=dup to .jcheck/conf files for JDK 10 Reviewed-by: mr ! .jcheck/conf Changeset: fed3f3298757 Author: hannesw Date: 2017-06-29 12:05 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/nashorn/rev/fed3f3298757 8182996: Incorrect mapping Long type to JavaScript equivalent Reviewed-by: jlaskey, sundar ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/AccessorProperty.java + test/src/jdk/nashorn/api/scripting/test/JDK_8182996_Test.java From stanislav.smirnov at oracle.com Thu Jul 27 22:05:19 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Thu, 27 Jul 2017 22:05:19 +0000 Subject: hg: valhalla/valhalla/jaxws: 33 new changesets Message-ID: <201707272205.v6RM5JS2028031@aojmv0008.oracle.com> Changeset: 1c610f1b4097 Author: aefimov Date: 2017-04-24 18:21 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/1c610f1b4097 8176168: Performance drop due to SAXParser SymbolTable reset Reviewed-by: joehw, lancea ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/ParserPool.java Changeset: 2746716dcc5a Author: lana Date: 2017-04-27 16:07 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/2746716dcc5a Added tag jdk-9+167 for changeset 1c610f1b4097 ! .hgtags Changeset: e66ea56c8751 Author: lana Date: 2017-05-04 16:38 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/e66ea56c8751 Added tag jdk-9+168 for changeset 2746716dcc5a ! .hgtags Changeset: b0efae7df1df Author: lana Date: 2017-05-05 04:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/b0efae7df1df Merge ! .hgtags Changeset: 912cf69806d5 Author: lancea Date: 2017-05-05 13:32 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/912cf69806d5 8179566: Add additional jaxws messages to be translated Reviewed-by: alanb, mchung + src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/newmessages.properties Changeset: e75d3abe579a Author: lana Date: 2017-05-11 16:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/e75d3abe579a Added tag jdk-9+169 for changeset 912cf69806d5 ! .hgtags Changeset: e705867d9989 Author: lana Date: 2017-05-11 20:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/e705867d9989 Merge ! .hgtags Changeset: 139e7c786ee4 Author: lana Date: 2017-05-18 14:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/139e7c786ee4 Added tag jdk-9+170 for changeset e75d3abe579a ! .hgtags Changeset: 9c1122658e0b Author: lana Date: 2017-05-19 04:18 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/9c1122658e0b Merge ! .hgtags Changeset: 00f4918dc932 Author: lana Date: 2017-05-23 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/00f4918dc932 Added tag jdk-10+7 for changeset b0efae7df1df ! .hgtags Changeset: 2fe03e35bed5 Author: lana Date: 2017-05-23 22:38 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/2fe03e35bed5 Added tag jdk-10+8 for changeset e705867d9989 ! .hgtags Changeset: dadf3e0ee9cb Author: lana Date: 2017-05-26 01:00 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/dadf3e0ee9cb Added tag jdk-10+9 for changeset 2fe03e35bed5 ! .hgtags Changeset: 8c615099f3e3 Author: lana Date: 2017-05-26 00:29 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/8c615099f3e3 Added tag jdk-9+171 for changeset 139e7c786ee4 ! .hgtags Changeset: 3ccd9f37faa6 Author: lana Date: 2017-05-31 17:49 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/3ccd9f37faa6 Merge ! .hgtags Changeset: 05313beb6ae1 Author: lana Date: 2017-06-02 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/05313beb6ae1 Added tag jdk-10+10 for changeset 3ccd9f37faa6 ! .hgtags Changeset: 2bd967aa452c Author: lana Date: 2017-06-01 18:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/2bd967aa452c Added tag jdk-9+172 for changeset 8c615099f3e3 ! .hgtags Changeset: 2d22d6732a73 Author: lana Date: 2017-06-03 02:46 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/2d22d6732a73 Merge ! .hgtags Changeset: 9fdd8fa0daf6 Author: lana Date: 2017-06-09 21:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/9fdd8fa0daf6 Added tag jdk-10+11 for changeset 2d22d6732a73 ! .hgtags Changeset: 40b9dc95ccbb Author: lana Date: 2017-06-08 16:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/40b9dc95ccbb Added tag jdk-9+173 for changeset 2bd967aa452c ! .hgtags Changeset: 712a3a657654 Author: lana Date: 2017-06-14 20:02 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/712a3a657654 Merge ! .hgtags Changeset: 0d797e800441 Author: lancea Date: 2017-06-07 18:47 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/0d797e800441 8181702: Mark jdk.xml.bind and jdk.xml.ws modules deprecated and for removal Reviewed-by: alanb, mchung ! src/jdk.xml.bind/share/classes/module-info.java ! src/jdk.xml.ws/share/classes/module-info.java Changeset: e5fae34690ab Author: mchung Date: 2017-06-07 21:14 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/e5fae34690ab 8181639: Add tool and services information to module summary Reviewed-by: alanb, psandoz, lancea ! src/java.xml.bind/share/classes/module-info.java ! src/java.xml.ws/share/classes/module-info.java ! src/jdk.xml.bind/share/classes/module-info.java ! src/jdk.xml.ws/share/classes/module-info.java Changeset: c2296642010f Author: lana Date: 2017-06-08 23:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/c2296642010f Merge Changeset: 872236b506ff Author: lana Date: 2017-06-15 17:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/872236b506ff Added tag jdk-9+174 for changeset c2296642010f ! .hgtags Changeset: 46f56e123fbf Author: lana Date: 2017-06-16 04:55 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/46f56e123fbf Merge ! .hgtags Changeset: 46a14aad004a Author: lana Date: 2017-06-17 00:15 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/46a14aad004a Added tag jdk-10+12 for changeset 712a3a657654 ! .hgtags Changeset: c9b85ef1567e Author: lancea Date: 2017-06-16 19:12 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/c9b85ef1567e 8182405: add legal file for freebxml Reviewed-by: mchung + src/jdk.xml.bind/share/legal/freebxml.md Changeset: 083973007bef Author: mchung Date: 2017-06-17 11:51 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/083973007bef 8182416: Clean up module-info.java like move requires transitive adjacent to exports Reviewed-by: alanb ! src/java.activation/share/classes/module-info.java ! src/java.xml.bind/share/classes/module-info.java ! src/java.xml.ws.annotation/share/classes/module-info.java ! src/java.xml.ws/share/classes/module-info.java ! src/jdk.xml.bind/share/classes/module-info.java ! src/jdk.xml.ws/share/classes/module-info.java Changeset: a5d361b9d1f7 Author: aefimov Date: 2017-06-18 23:07 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/a5d361b9d1f7 8176508: Update JAX-WS RI integration to latest version Reviewed-by: lancea, mchung, alanb, iris ! src/java.activation/share/classes/javax/activation/CommandInfo.java ! src/java.activation/share/classes/javax/activation/CommandObject.java ! src/java.activation/share/classes/javax/activation/DataHandler.java ! src/java.activation/share/classes/javax/activation/DataSource.java ! src/java.activation/share/classes/javax/activation/MailcapCommandMap.java ! src/java.activation/share/classes/javax/activation/MimeType.java ! src/java.activation/share/classes/javax/activation/MimeTypeParameterList.java ! src/java.activation/share/classes/javax/activation/MimetypesFileTypeMap.java ! src/java.xml.bind/share/classes/com/sun/xml/internal/bind/marshaller/MinimumEscapeHandler.java + src/java.xml.bind/share/classes/com/sun/xml/internal/bind/marshaller/NoEscapeHandler.java ! src/java.xml.bind/share/classes/com/sun/xml/internal/bind/v2/runtime/BridgeImpl.java ! src/java.xml.bind/share/classes/com/sun/xml/internal/bind/v2/runtime/MarshallerImpl.java ! src/java.xml.bind/share/classes/com/sun/xml/internal/bind/v2/runtime/output/FastInfosetStreamWriterOutput.java ! src/java.xml.bind/share/classes/com/sun/xml/internal/bind/v2/runtime/output/StAXExStreamWriterOutput.java ! src/java.xml.bind/share/classes/com/sun/xml/internal/bind/v2/runtime/output/XMLStreamWriterOutput.java ! src/java.xml.bind/share/classes/javax/xml/bind/ContextFinder.java ! src/java.xml.bind/share/classes/javax/xml/bind/JAXBContext.java ! src/java.xml.bind/share/classes/javax/xml/bind/JAXBContextFactory.java ! src/java.xml.bind/share/classes/javax/xml/bind/Messages.java ! src/java.xml.bind/share/classes/javax/xml/bind/Messages.properties + src/java.xml.bind/share/classes/javax/xml/bind/ModuleUtil.java ! src/java.xml.bind/share/classes/javax/xml/bind/Unmarshaller.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/client/p2p/HttpSOAPConnection.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/client/p2p/HttpSOAPConnectionFactory.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/MessagingException.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/internet/BMMimeMultipart.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/internet/InternetHeaders.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/internet/MimeMultipart.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/internet/MimePartDataSource.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/internet/MimePullMultipart.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/internet/ParameterList.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/util/ASCIIUtility.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/util/QDecoderStream.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/util/QPDecoderStream.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/util/QPEncoderStream.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/packaging/mime/util/UUDecoderStream.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/AttachmentPartImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ContextClassloaderLocal.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/MessageFactoryImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/MessageImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/SAAJMetaFactoryImpl.java + src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPDocumentFragment.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPDocumentImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPFactoryImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPIOException.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPPartImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/StaxLazySourceBridge.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/StaxReaderBridge.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/dynamic/SOAPFactoryDynamicImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/dynamic/SOAPMessageFactoryDynamicImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/BodyElementImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/BodyImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/CDATAImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/DetailEntryImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/DetailImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/ElementFactory.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/ElementImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/EnvelopeImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/FaultElementImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/HeaderElementImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/HeaderImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/LocalStrings.properties + src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/NamedNodeMapImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/SOAPCommentImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/SOAPTextImpl.java + src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/TextImpl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Body1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/BodyElement1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Detail1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/DetailEntry1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Envelope1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Fault1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/FaultElement1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Header1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/HeaderElement1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Message1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/SOAPFactory1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/SOAPMessageFactory1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/SOAPPart1_1Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Body1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/BodyElement1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Detail1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/DetailEntry1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Envelope1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Fault1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/FaultElement1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Header1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/HeaderElement1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Message1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/SOAPFactory1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/SOAPMessageFactory1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/SOAPPart1_2Impl.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/ByteInputStream.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/JAXMStreamSource.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/NamespaceContextIterator.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/RejectDoctypeSaxFilter.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/TeeInputStream.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/stax/LazyEnvelopeStaxReader.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/stax/SaajStaxWriter.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/stax/SaajStaxWriterEx.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/api/message/saaj/SAAJMessageHeaders.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/api/server/SDDocumentSource.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/api/streaming/XMLStreamReaderFactory.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/api/streaming/XMLStreamWriterFactory.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/model/RuntimeModeler.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/policy/privateutil/LocalizationMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/ContextClassloaderLocal.java + src/java.xml.ws/share/classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/ContextClassloaderLocalMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/AddressingMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/BindingApiMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/ClientMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/DispatchMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/EncodingMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/HandlerMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/HttpserverMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/ManagementMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/ModelerMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/PolicyMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/ProviderApiMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/SenderMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/ServerMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/SoapMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/StreamingMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/TubelineassemblyMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/UtilMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/WsdlmodelMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/WsservletMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/XmlmessageMessages.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler_de.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler_es.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler_fr.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler_it.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler_ja.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler_ko.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler_pt_BR.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler_zh_CN.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/resources/modeler_zh_TW.properties ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/util/HandlerAnnotationProcessor.java + src/java.xml.ws/share/classes/com/sun/xml/internal/ws/util/MrJarUtil.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/util/Pool.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/util/exception/JAXWSExceptionBase.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/util/pipe/AbstractSchemaValidationTube.java ! src/java.xml.ws/share/classes/com/sun/xml/internal/ws/util/version.properties ! src/java.xml.ws/share/classes/javax/xml/soap/AttachmentPart.java ! src/java.xml.ws/share/classes/javax/xml/soap/Detail.java ! src/java.xml.ws/share/classes/javax/xml/soap/MimeHeaders.java ! src/java.xml.ws/share/classes/javax/xml/soap/Node.java ! src/java.xml.ws/share/classes/javax/xml/soap/SAAJMetaFactory.java ! src/java.xml.ws/share/classes/javax/xml/soap/SOAPElement.java ! src/java.xml.ws/share/classes/javax/xml/soap/SOAPElementFactory.java ! src/java.xml.ws/share/classes/javax/xml/soap/SOAPException.java ! src/java.xml.ws/share/classes/javax/xml/soap/SOAPFactory.java ! src/java.xml.ws/share/classes/javax/xml/soap/SOAPFault.java ! src/java.xml.ws/share/classes/javax/xml/soap/SOAPHeader.java ! src/java.xml.ws/share/classes/javax/xml/soap/SOAPMessage.java ! src/java.xml.ws/share/classes/javax/xml/soap/SOAPPart.java ! src/java.xml.ws/share/classes/javax/xml/soap/ServiceLoaderUtil.java ! src/java.xml.ws/share/classes/javax/xml/soap/package-info.java ! src/java.xml.ws/share/classes/javax/xml/ws/Action.java ! src/java.xml.ws/share/classes/javax/xml/ws/AsyncHandler.java ! src/java.xml.ws/share/classes/javax/xml/ws/BindingProvider.java ! src/java.xml.ws/share/classes/javax/xml/ws/BindingType.java ! src/java.xml.ws/share/classes/javax/xml/ws/Dispatch.java ! src/java.xml.ws/share/classes/javax/xml/ws/Endpoint.java ! src/java.xml.ws/share/classes/javax/xml/ws/EndpointReference.java ! src/java.xml.ws/share/classes/javax/xml/ws/FaultAction.java ! src/java.xml.ws/share/classes/javax/xml/ws/Holder.java ! src/java.xml.ws/share/classes/javax/xml/ws/Provider.java ! src/java.xml.ws/share/classes/javax/xml/ws/RequestWrapper.java ! src/java.xml.ws/share/classes/javax/xml/ws/RespectBinding.java ! src/java.xml.ws/share/classes/javax/xml/ws/Response.java ! src/java.xml.ws/share/classes/javax/xml/ws/ResponseWrapper.java ! src/java.xml.ws/share/classes/javax/xml/ws/Service.java ! src/java.xml.ws/share/classes/javax/xml/ws/ServiceMode.java ! src/java.xml.ws/share/classes/javax/xml/ws/WebEndpoint.java ! src/java.xml.ws/share/classes/javax/xml/ws/WebServiceClient.java ! src/java.xml.ws/share/classes/javax/xml/ws/WebServiceContext.java ! src/java.xml.ws/share/classes/javax/xml/ws/WebServiceFeature.java ! src/java.xml.ws/share/classes/javax/xml/ws/WebServiceProvider.java ! src/java.xml.ws/share/classes/javax/xml/ws/WebServiceRef.java ! src/java.xml.ws/share/classes/javax/xml/ws/WebServiceRefs.java ! src/java.xml.ws/share/classes/javax/xml/ws/handler/Handler.java ! src/java.xml.ws/share/classes/javax/xml/ws/handler/LogicalHandler.java ! src/java.xml.ws/share/classes/javax/xml/ws/handler/MessageContext.java + src/java.xml.ws/share/classes/javax/xml/ws/handler/package-info.java - src/java.xml.ws/share/classes/javax/xml/ws/handler/package.html ! src/java.xml.ws/share/classes/javax/xml/ws/handler/soap/SOAPHandler.java + src/java.xml.ws/share/classes/javax/xml/ws/handler/soap/package-info.java - src/java.xml.ws/share/classes/javax/xml/ws/handler/soap/package.html + src/java.xml.ws/share/classes/javax/xml/ws/http/package-info.java - src/java.xml.ws/share/classes/javax/xml/ws/http/package.html ! src/java.xml.ws/share/classes/javax/xml/ws/soap/Addressing.java ! src/java.xml.ws/share/classes/javax/xml/ws/soap/MTOM.java + src/java.xml.ws/share/classes/javax/xml/ws/soap/package-info.java - src/java.xml.ws/share/classes/javax/xml/ws/soap/package.html ! src/java.xml.ws/share/classes/javax/xml/ws/spi/Provider.java ! src/java.xml.ws/share/classes/javax/xml/ws/spi/ServiceDelegate.java ! src/java.xml.ws/share/classes/javax/xml/ws/spi/WebServiceFeatureAnnotation.java ! src/java.xml.ws/share/classes/javax/xml/ws/spi/http/HttpContext.java + src/java.xml.ws/share/classes/javax/xml/ws/spi/package-info.java - src/java.xml.ws/share/classes/javax/xml/ws/spi/package.html ! src/java.xml.ws/share/classes/javax/xml/ws/wsaddressing/W3CEndpointReference.java ! src/java.xml.ws/share/classes/module-info.java ! src/jdk.xml.bind/share/classes/com/sun/codemodel/internal/JModuleDirective.java ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle_de.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle_es.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle_fr.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle_it.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle_ja.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle_ko.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle_pt_BR.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle_zh_CN.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/jxc/MessageBundle_zh_TW.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle_de.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle_es.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle_fr.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle_it.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle_ja.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle_ko.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle_pt_BR.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle_zh_CN.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/MessageBundle_zh_TW.properties ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/Options.java ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/api/SpecVersion.java ! src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/reader/internalizer/DOMForest.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/processor/ProcessorException.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/ConfigurationMessages.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/GeneratorMessages.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/JavacompilerMessages.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/ModelMessages.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/ModelerMessages.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/ProcessorMessages.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/UtilMessages.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/WebserviceapMessages.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/WscompileMessages.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/WsdlMessages.java - src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/newmessages.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile_de.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile_es.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile_fr.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile_it.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile_ja.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile_ko.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile_pt_BR.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile_zh_CN.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/wscompile_zh_TW.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/util/WSDLParseException.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/version.properties ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/wsdl/framework/ParseException.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/wsdl/framework/ValidationException.java ! src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/wsdl/parser/DOMForest.java Changeset: ea819b6009d3 Author: lana Date: 2017-06-22 18:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/ea819b6009d3 Added tag jdk-9+175 for changeset a5d361b9d1f7 ! .hgtags Changeset: 6516cb0f3799 Author: lana Date: 2017-06-24 00:31 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/6516cb0f3799 Merge ! .hgtags Changeset: ab96cd045656 Author: lana Date: 2017-06-24 02:59 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/ab96cd045656 Added tag jdk-10+13 for changeset 46a14aad004a ! .hgtags Changeset: bddeaa49ffd5 Author: iris Date: 2017-06-28 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxws/rev/bddeaa49ffd5 8183142: Add bugids=dup to .jcheck/conf files for JDK 10 Reviewed-by: mr ! .jcheck/conf From stanislav.smirnov at oracle.com Thu Jul 27 22:05:17 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Thu, 27 Jul 2017 22:05:17 +0000 Subject: hg: valhalla/valhalla/langtools: 73 new changesets Message-ID: <201707272205.v6RM5J7K028028@aojmv0008.oracle.com> Changeset: 9bd0f08b517a Author: rfield Date: 2017-05-18 14:16 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/9bd0f08b517a 8167554: jshell tool: re-execute a range and/or sequence of snippets 8180508: jshell tool: support id ranges in all commands with id arguments Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/ArgTokenizer.java ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/JShellTool.java ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n.properties ! test/jdk/jshell/CommandCompletionTest.java ! test/jdk/jshell/EditorTestBase.java ! test/jdk/jshell/MergedTabShiftTabCommandTest.java ! test/jdk/jshell/ToolBasicTest.java ! test/jdk/jshell/ToolLocaleMessageTest.java ! test/jdk/jshell/ToolSimpleTest.java Changeset: ee84b7d44339 Author: jjg Date: 2017-05-09 17:20 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/ee84b7d44339 8179479: Add new styles to enable HTML 5 tables Reviewed-by: bpatel ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css Changeset: d5c5150ad2d9 Author: lana Date: 2017-05-11 18:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/d5c5150ad2d9 Merge Changeset: 6ffca66728a7 Author: ksrini Date: 2017-05-11 15:12 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/6ffca66728a7 8179632: Fix the old doclet documentation Reviewed-by: jjg ! src/jdk.javadoc/share/classes/com/sun/javadoc/package-info.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/package-info.java + src/jdk.javadoc/share/classes/com/sun/tools/doclets/standard/package-info.java Changeset: 77a2d6c1f321 Author: jlahoda Date: 2017-05-12 06:42 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/77a2d6c1f321 8178152: Handling of incubating modules, the jdk.unsupported module and --add-exports with --release Summary: --release 9 should only allow documented modules; --add-exports/--add-reads/--patch-module should not be allowed on system modules when --release 9 is used. Reviewed-by: jjg, erikj, ihse ! make/gendata/Gendata-jdk.compiler.gmk + make/src/classes/build/tools/symbolgenerator/TransitiveDependencies.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/main/Arguments.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/platform/JDKPlatformProvider.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/diags/examples/AddExportsWithRelease.java + test/tools/javac/diags/examples/AddReadsWithRelease.java + test/tools/javac/diags/examples/PatchModuleWithRelease/PatchModuleWithRelease.java + test/tools/javac/diags/examples/PatchModuleWithRelease/patchmodule/java.base/java/lang/Test.java ! test/tools/javac/options/release/ReleaseOptionClashes.java + test/tools/javac/options/release/ReleaseOptionUnsupported.java Changeset: 18355c879c69 Author: bpatel Date: 2017-05-12 18:05 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/18355c879c69 8178043: Support grouping modules in unified javadoc Reviewed-by: jjg, ksrini ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractModuleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModulePackageIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Configuration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Group.java ! test/jdk/javadoc/doclet/testModules/TestModules.java Changeset: aae59039c1f5 Author: lana Date: 2017-05-18 14:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/aae59039c1f5 Added tag jdk-9+170 for changeset 18355c879c69 ! .hgtags Changeset: be2af478e81d Author: lana Date: 2017-05-19 04:59 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/be2af478e81d Merge ! .hgtags ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/platform/JDKPlatformProvider.java Changeset: 536064188914 Author: jlahoda Date: 2017-05-22 15:50 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/536064188914 8180745: Add --release 10 as an alias for --release 9 Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/platform/JDKPlatformProvider.java Changeset: c11a8af87011 Author: vromero Date: 2017-05-22 09:44 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/c11a8af87011 8180720: method InferenceGraph.initNodes() can potentially add a trivial dependency of a node to itself Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Infer.java Changeset: f52e81f886fb Author: vromero Date: 2017-05-22 12:49 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/f52e81f886fb 8180660: missing LNT entry for finally block Reviewed-by: mcimadamore, vromero Contributed-by: maurizio.cimadamore at oracle.com, vicente.romero at oracle.com ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeInfo.java ! test/tools/javac/T7008643/InlinedFinallyConfuseDebuggersTest.java + test/tools/javac/T8180660/MissingLNTEntryForFinalizerTest.java ! test/tools/javac/linenumbers/FinallyLineNumberTest.java Changeset: 21bf976d8f8a Author: lana Date: 2017-05-23 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/21bf976d8f8a Added tag jdk-10+7 for changeset 85581ae8a97f ! .hgtags Changeset: a8e4d2286eba Author: lana Date: 2017-05-23 22:39 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/a8e4d2286eba Added tag jdk-10+8 for changeset 6d9a33d72d06 ! .hgtags Changeset: 0a6e4f88a9b7 Author: lana Date: 2017-05-26 01:00 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/0a6e4f88a9b7 Added tag jdk-10+9 for changeset a8e4d2286eba ! .hgtags Changeset: 0426d4e746af Author: jlahoda Date: 2017-05-31 14:51 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/0426d4e746af 8172880: Incorrect line number for NPE generated by instance-bound method reference Summary: Synthetic null checks should have a LineNumberTable entry. Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java + test/tools/javac/linenumbers/NullCheckLineNumberTest.java Changeset: 65652f51a99a Author: lana Date: 2017-05-26 00:29 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/65652f51a99a Added tag jdk-9+171 for changeset aae59039c1f5 ! .hgtags Changeset: 48a87c3414d3 Author: lana Date: 2017-05-31 17:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/48a87c3414d3 Merge ! .hgtags Changeset: 3b9297698293 Author: vromero Date: 2017-06-01 12:51 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/3b9297698293 7170058: Confusing error message from javac when overriding a method from a raw supertype Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransTypes.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! test/tools/javac/generics/6182950/T6182950b.out ! test/tools/javac/generics/6476118/T6476118a.java ! test/tools/javac/generics/6476118/T6476118a.out ! test/tools/javac/generics/6476118/T6476118b.java ! test/tools/javac/generics/6476118/T6476118b.out ! test/tools/javac/generics/6476118/T6476118c.java ! test/tools/javac/generics/6476118/T6476118c.out ! test/tools/javac/generics/6985719/T6985719a.out ! test/tools/javac/generics/6985719/T6985719b.out ! test/tools/javac/generics/6985719/T6985719c.java ! test/tools/javac/generics/6985719/T6985719c.out ! test/tools/javac/generics/6985719/T6985719d.java ! test/tools/javac/generics/6985719/T6985719d.out ! test/tools/javac/generics/6985719/T6985719e.out ! test/tools/javac/generics/6985719/T6985719f.out ! test/tools/javac/generics/6985719/T6985719g.java ! test/tools/javac/generics/6985719/T6985719g.out ! test/tools/javac/generics/6985719/T6985719h.java ! test/tools/javac/generics/6985719/T6985719h.out ! test/tools/javac/generics/7007615/T7007615.java ! test/tools/javac/generics/7007615/T7007615.out ! test/tools/javac/generics/7020657/T7020657neg.out ! test/tools/javac/generics/7022054/T7022054neg1.out ! test/tools/javac/generics/7022054/T7022054pos1.out ! test/tools/javac/generics/7034019/T7034019c.out ! test/tools/javac/generics/7034019/T7034019d.out ! test/tools/javac/generics/ErasureClashCrash.java ! test/tools/javac/generics/ErasureClashCrash.out ! test/tools/javac/generics/T4757416.java ! test/tools/javac/generics/T4757416.out ! test/tools/javac/generics/rawOverride/7157798/Test4.java ! test/tools/javac/generics/rawOverride/7157798/Test4.out ! test/tools/javac/lambda/funcInterfaces/NonSAM2.java ! test/tools/javac/lambda/funcInterfaces/NonSAM2.out ! test/tools/javac/modules/T8159439/NPEForModuleInfoWithNonZeroSuperClassTest.out Changeset: 50d8e7b80230 Author: lana Date: 2017-06-02 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/50d8e7b80230 Added tag jdk-10+10 for changeset 48a87c3414d3 ! .hgtags Changeset: 0eedec5776e4 Author: lana Date: 2017-05-23 23:26 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/0eedec5776e4 8180167: JDK9 message drop 40 l10n resource file updates Reviewed-by: alanb, mchung, dfuchs, rfield, shinyafox, weijun, joehw Contributed-by: li.jiang at oracle.com ! src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_ja.properties ! src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_zh_CN.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_ja.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_ja.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_zh_CN.properties ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties ! src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_ja.properties ! src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_ja.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_zh_CN.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_ja.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_zh_CN.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_ja.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_zh_CN.properties ! src/jdk.jdeps/share/classes/com/sun/tools/jdeprscan/resources/jdeprscan_ja.properties ! src/jdk.jdeps/share/classes/com/sun/tools/jdeprscan/resources/jdeprscan_zh_CN.properties ! src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_ja.properties ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_ja.properties ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_zh_CN.properties Changeset: 03669efa77f5 Author: lana Date: 2017-05-26 00:45 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/03669efa77f5 Merge Changeset: 16febc896c36 Author: lana Date: 2017-06-01 18:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/16febc896c36 Added tag jdk-9+172 for changeset 03669efa77f5 ! .hgtags Changeset: 8cca234f0e36 Author: lana Date: 2017-06-03 02:45 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/8cca234f0e36 Merge ! .hgtags Changeset: daa70bfed35e Author: ksrini Date: 2017-06-05 13:45 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/daa70bfed35e 8177848: Rename Configuration(Impl) classes Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractModuleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractPackageIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllClassesFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassUseWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassWriterImpl.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConfigurationImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstantsSummaryWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Contents.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FrameOutputWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HelpWriter.java + src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/IndexRedirectWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/LinkFactoryImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/LinkInfoImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModulePackageIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexFrameWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageUseWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SerializedFormWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SingleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SourceToHTMLConverter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SplitIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SubWriterHolderWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TagletWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/WriterFactoryImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlDocWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AbstractDoclet.java + src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/CommentUtils.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Configuration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Messages.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Resources.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/WorkArounds.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AbstractBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AbstractMemberBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeFieldBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeRequiredMemberBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/BuilderFactory.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ConstructorBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/EnumConstantBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/FieldBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/LayoutParser.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/MethodBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PropertyBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/InheritDocTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/TagletManager.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/TagletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ValueTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/ClassTree.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/ClassUseMapper.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/CommentHelper.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/DeprecatedAPIListBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/DocFile.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/DocFileFactory.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/DocFinder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Extern.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Group.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/ImplementedMethods.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/IndexBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/MetaKeywords.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/PackageListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/StandardDocFileFactory.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/TypeElementCatalog.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/VisibleMemberMap.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/links/LinkInfo.java ! test/jdk/javadoc/tool/T4696488.java Changeset: ca89f102dae7 Author: bpatel Date: 2017-06-07 22:58 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/ca89f102dae7 8147881: Javadoc search box watermark text issue Reviewed-by: jjg, ksrini ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/search.js ! test/jdk/javadoc/doclet/testSearch/TestSearch.java Changeset: 7a0146c9b224 Author: bpatel Date: 2017-06-08 00:11 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/7a0146c9b224 8181215: Links incorrectly appear bold in some javadoc generated tables Reviewed-by: jjg, ksrini ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css ! test/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java Changeset: c32ca555da54 Author: vromero Date: 2017-06-09 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/c32ca555da54 8175794: Type inference regression after JDK-8078093 Reviewed-by: mcimadamore Contributed-by: maurizio.cimadamore at oracle.com, vicente.romero at oracle.com ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/ArgumentAttr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Infer.java + test/tools/javac/T8175794/MissingReturnConstraintTest.java Changeset: d10fabb6a3a1 Author: lana Date: 2017-06-09 21:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/d10fabb6a3a1 Added tag jdk-10+11 for changeset daa70bfed35e ! .hgtags Changeset: cfc4a56c86f9 Author: vromero Date: 2017-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/cfc4a56c86f9 8181464: Invalid lambda in annotation causes NPE in Lint.augment Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! test/tools/javac/8002286/T8002286.out + test/tools/javac/T8181464/Anno.java + test/tools/javac/T8181464/Anno2.java + test/tools/javac/T8181464/AnnoProcessor.java + test/tools/javac/T8181464/LambdaInAnnotationsCausesNPETest1.java + test/tools/javac/T8181464/LambdaInAnnotationsCausesNPETest1.out + test/tools/javac/T8181464/LambdaInAnnotationsCausesNPETest2.java + test/tools/javac/T8181464/LambdaInAnnotationsCausesNPETest2.out + test/tools/javac/T8181464/LambdaInAnnotationsCausesNPETest3.java + test/tools/javac/T8181464/LambdaInAnnotationsCausesNPETest3.out ! test/tools/javac/annotations/neg/AnonSubclass.out ! test/tools/javac/annotations/neg/Z15.out ! test/tools/javac/annotations/neg/pkg/package-info.out ! test/tools/javac/diags/examples.not-yet.txt ! test/tools/javac/diags/examples/AnnoValueMustBeClassLiteral.java + test/tools/javac/diags/examples/AnnotationMustBeConstant.java + test/tools/javac/diags/examples/AnnotationMustBeConstant2.java ! test/tools/javac/diags/examples/AttrMustBeConstant.java ! test/tools/javac/diags/examples/EnumAnnoValueMustBeEnumConst.java + test/tools/javac/diags/examples/EnumAnnoValueMustBeEnumConst2.java ! test/tools/javac/processing/errors/EnsureAnnotationTypeMismatchException/Source.out Changeset: fc828f719094 Author: rfield Date: 2017-06-13 12:31 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/fc828f719094 8180306: jshell tool: /help -- confusing identifier in feedback mode examples 8179048: jshell tool: /help -- references to "/reset or /reload" should add /env 8179046: jshell tool: /help /edit is missing -all and -start 8181950: jshell tests: longer help documentation breaks tests because of paging Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/ConsoleIOContext.java ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n.properties ! test/jdk/jshell/MergedTabShiftTabCommandTest.java Changeset: 5be57bc01147 Author: mchung Date: 2017-05-30 14:11 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/5be57bc01147 8181148: Update the jdeps tool to list exported packages instead of just internal APIs Reviewed-by: psandoz - make/src/classes/build/tools/listjdkinternals/ListJDKInternals.java Changeset: eaee37d37d51 Author: lana Date: 2017-06-01 18:49 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/eaee37d37d51 Merge - make/src/classes/build/tools/listjdkinternals/ListJDKInternals.java Changeset: 123eb0956a45 Author: ksrini Date: 2017-06-02 13:38 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/123eb0956a45 8181441: Fix minor typo/link in the old standard doclet API documentation Reviewed-by: jjg ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/Taglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/standard/Standard.java Changeset: ff9b23e56b10 Author: lana Date: 2017-06-08 16:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/ff9b23e56b10 Added tag jdk-9+173 for changeset 123eb0956a45 ! .hgtags Changeset: 174ffcfaf0b1 Author: lana Date: 2017-06-14 20:05 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/174ffcfaf0b1 Merge ! .hgtags - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConfigurationImpl.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Configuration.java Changeset: 2bd34895dda2 Author: jlahoda Date: 2017-06-15 13:44 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/2bd34895dda2 8170326: Inconsistencies between code, compiler.properties and comments Summary: Converting uses of Log and JCDiagnostic.Factory methods to use CompilerProperties instead of plain Strings, fixing inconsistencies, adding crules analyzer to ensure CompilerProperties are used whenever possible. Reviewed-by: mcimadamore ! make/tools/crules/CodingRulesAnalyzerPlugin.java + make/tools/crules/LegacyLogMethodAnalyzer.java ! make/tools/crules/resources/crules.properties ! make/tools/propertiesparser/parser/MessageFile.java ! make/tools/propertiesparser/parser/MessageLine.java ! make/tools/propertiesparser/parser/MessageType.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/api/BasicJavacTask.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/api/JavacTrees.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/ClassFinder.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/ModuleFinder.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symbol.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Analyzer.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/ArgumentAttr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Enter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Flow.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Infer.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Lower.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransTypes.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TypeEnter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/file/BaseFileManager.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/file/JavacFileManager.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/CRTable.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Code.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/main/Arguments.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/main/JavaCompiler.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/UnicodeReader.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/processing/JavacFiler.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/processing/JavacMessager.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java ! test/tools/javac/T5024091/T5024091.out ! test/tools/javac/annotations/neg/Cycle1.out ! test/tools/javac/annotations/neg/Cycle2.out ! test/tools/javac/annotations/neg/Cycle3.out ! test/tools/javac/annotations/neg/Dup.out ! test/tools/javac/annotations/neg/Z14.out ! test/tools/javac/annotations/repeatingAnnotations/BaseAnnoAsContainerAnno.out ! test/tools/javac/annotations/repeatingAnnotations/CyclicAnnotation.out ! test/tools/javac/annotations/repeatingAnnotations/DuplicateErrors.out ! test/tools/javac/annotations/repeatingAnnotations/NoRepeatableAnno.out ! test/tools/javac/annotations/typeAnnotations/failures/common/arrays/DuplicateTypeAnnotation.out ! test/tools/javac/annotations/typeAnnotations/failures/common/innertypeparams/DuplicateTypeAnnotation.out ! test/tools/javac/annotations/typeAnnotations/failures/common/newarray/DuplicateTypeAnnotation.out ! test/tools/javac/annotations/typeAnnotations/failures/common/parambounds/DuplicateTypeAnnotation.out ! test/tools/javac/annotations/typeAnnotations/failures/common/receiver/DuplicateTypeAnnotation.out ! test/tools/javac/annotations/typeAnnotations/failures/common/rest/DuplicateTypeAnnotation.out ! test/tools/javac/annotations/typeAnnotations/failures/common/typeArgs/DuplicateTypeAnnotation.out ! test/tools/javac/annotations/typeAnnotations/failures/common/typeparams/DuplicateTypeAnnotation.out ! test/tools/javac/annotations/typeAnnotations/failures/common/wildcards/DuplicateTypeAnnotation.out ! test/tools/javac/annotations/typeAnnotations/newlocations/RepeatingTypeAnnotations.out ! test/tools/javac/diags/examples.not-yet.txt ! test/tools/javac/importChecks/NoImportedNoClasses.out ! test/tools/javac/staticImport/ImportPrivate.out Changeset: 89968ec1af89 Author: jjg Date: 2017-06-15 10:55 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/89968ec1af89 8149146: [javadoc] eliminate doclet.xml Reviewed-by: ksrini, bpatel ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AnnotationTypeRequiredMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AbstractBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AbstractMemberBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeFieldBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeOptionalMemberBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeRequiredMemberBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/BuilderFactory.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ClassBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ConstantsSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ConstructorBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/EnumConstantBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/FieldBuilder.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/LayoutParser.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/MemberSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/MethodBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ModuleSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PackageSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PropertyBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/SerializedFormBuilder.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/XMLNode.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclet.xml ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets.properties Changeset: 733fb11b37d4 Author: jjg Date: 2017-06-08 15:50 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/733fb11b37d4 8180296: Move Javadoc: doclet, taglet specs to specs directory Reviewed-by: ksrini ! src/jdk.compiler/share/classes/com/sun/source/doctree/package-info.java ! src/jdk.javadoc/share/classes/jdk/javadoc/doclet/StandardDoclet.java ! src/jdk.javadoc/share/classes/module-info.java Changeset: 50c077995aa2 Author: lana Date: 2017-06-08 23:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/50c077995aa2 Merge Changeset: da99b31da7b5 Author: lana Date: 2017-06-15 17:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/da99b31da7b5 Added tag jdk-9+174 for changeset 50c077995aa2 ! .hgtags Changeset: b8ef8ce8ecf4 Author: lana Date: 2017-06-16 04:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/b8ef8ce8ecf4 Merge ! .hgtags - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConfigurationImpl.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Configuration.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/LayoutParser.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/XMLNode.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclet.xml Changeset: dd1e024fc434 Author: rfield Date: 2017-06-16 10:32 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/dd1e024fc434 8180510: jshell tool: crash on entering pseudo-commands: / or /- Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/JShellTool.java ! test/jdk/jshell/ToolSimpleTest.java Changeset: 24b8889c6063 Author: lana Date: 2017-06-17 00:15 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/24b8889c6063 Added tag jdk-10+12 for changeset 2bd34895dda2 ! .hgtags Changeset: 0b32afcabef4 Author: cushon Date: 2017-06-12 12:25 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/0b32afcabef4 8144185: javac produces incorrect RuntimeInvisibleTypeAnnotations length attribute Reviewed-by: sadayapalam ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java + test/tools/javac/annotations/typeAnnotations/classfile/TypeAnnotationPropagationTest.java Changeset: 123f40b60a18 Author: jlahoda Date: 2017-06-19 11:41 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/123f40b60a18 8181911: Lambda Analyzer causes compile-time error Summary: When copying Env for Analyzer, detach returnResult from the outer context. Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Analyzer.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/lambda/LambdaConv28.java + test/tools/javac/lambda/LambdaConv28.out Changeset: ead6d6c18bcc Author: ksrini Date: 2017-06-21 19:39 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/ead6d6c18bcc 8177511: Remove the old standard doclet Reviewed-by: jjg - src/jdk.javadoc/share/classes/com/sun/tools/doclets/Taglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractExecutableMemberWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractPackageIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractTreeWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AllClassesFrameWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeFieldWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ClassWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConfigurationImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstructorWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/DeprecatedListWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/EnumConstantWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/FrameOutputWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HelpWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlSerialFieldWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlSerialMethodWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/LinkFactoryImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/LinkInfoImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/LinkOutputImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/NestedClassWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageFrameWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageTreeWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PropertyWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SearchIndexItem.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SectionName.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SerializedFormWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SingleIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SourceToHTMLConverter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SplitIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/TagletWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/TreeWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/WriterFactoryImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/Comment.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/ContentBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/DocType.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlAttr.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlConstants.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocument.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlStyle.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTag.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlVersion.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/RawHtml.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/StringContent.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AbstractDoclet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeFieldWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeOptionalMemberWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeRequiredMemberWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ClassWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/Configuration.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ConstantsSummaryWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ConstructorWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/Content.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/EnumConstantWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/FieldWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/MemberSummaryWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/MethodWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/NestedClassWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/PackageSummaryWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/PropertyWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/SerializedFormWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/WriterFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractMemberBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeFieldBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeOptionalMemberBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeRequiredMemberBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/BuilderFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ClassBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstantsSummaryBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstructorBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/EnumConstantBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/FieldBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/LayoutParser.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MemberSummaryBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MethodBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PropertyBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/SerializedFormBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/XMLNode.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclet.xml - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/glass.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/external/jquery/jquery.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_flat_0_aaaaaa_40x100.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_flat_75_ffffff_40x100.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_55_fbf9ee_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_65_ffffff_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_75_dadada_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_75_e6e6e6_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_95_fef1ec_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_highlight-soft_75_cccccc_1x100.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_222222_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_2e83ff_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_454545_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_888888_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_cd0a0a_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-1.10.2.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.min.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.min.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.structure.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.structure.min.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip-utils/dist/jszip-utils-ie.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip-utils/dist/jszip-utils-ie.min.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip-utils/dist/jszip-utils.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip-utils/dist/jszip-utils.min.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip/dist/jszip.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip/dist/jszip.min.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/script.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/search.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/stylesheet.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/x.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BaseExecutableMemberTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BaseInlineTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BasePropertyTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BaseTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/CodeTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/DeprecatedTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/DocRootTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/IndexTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/InheritDocTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/InheritableTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LegacyTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LiteralTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ParamTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/PropertyGetterTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/PropertySetterTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ReturnTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/SeeTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/SimpleTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/Taglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/TagletManager.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/TagletWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ThrowsTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ValueTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassDocCatalog.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassTree.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassUseMapper.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DeprecatedAPIListBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocFile.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocFileFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocFinder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocLink.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocPath.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocPaths.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocletAbortException.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocletConstants.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/Extern.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/FatalError.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/Group.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/ImplementedMethods.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/IndexBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/MessageRetriever.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/MetaKeywords.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/MethodTypes.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/PackageListWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/StandardDocFileFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/TextTag.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/Utils.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/VisibleMemberMap.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/LinkFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/LinkInfo.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/LinkOutput.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/package-info.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/standard/Standard.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/standard/package-info.java ! src/jdk.javadoc/share/classes/com/sun/tools/javadoc/main/DocImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ToolOption.java ! src/jdk.javadoc/share/classes/module-info.java - test/com/sun/javadoc/5093723/DocumentedClass.java - test/com/sun/javadoc/5093723/T5093723.java - test/com/sun/javadoc/5093723/UndocumentedClass.java - test/com/sun/javadoc/AccessAsciiArt/AccessAsciiArt.java - test/com/sun/javadoc/AccessAsciiArt/p1/C.java - test/com/sun/javadoc/AccessAsciiArt/p1/I.java - test/com/sun/javadoc/AccessAsciiArt/p1/SC.java - test/com/sun/javadoc/AccessAsciiArt/p1/SI.java - test/com/sun/javadoc/AccessAsciiArt/p1/subpkg/SSC.java - test/com/sun/javadoc/AccessFrameTitle/AccessFrameTitle.java - test/com/sun/javadoc/AccessFrameTitle/p1/C1.java - test/com/sun/javadoc/AccessFrameTitle/p2/C2.java - test/com/sun/javadoc/AccessH1/AccessH1.java - test/com/sun/javadoc/AccessH1/p1/C.java - test/com/sun/javadoc/AccessH1/p2/C2.java - test/com/sun/javadoc/AccessSkipNav/AccessSkipNav.java - test/com/sun/javadoc/AccessSkipNav/p1/C1.java - test/com/sun/javadoc/AccessSkipNav/p2/C2.java - test/com/sun/javadoc/AccessSummary/AccessSummary.java - test/com/sun/javadoc/AccessSummary/p1/C1.java - test/com/sun/javadoc/AccessSummary/p2/C2.java - test/com/sun/javadoc/AuthorDD/AuthorDD.java - test/com/sun/javadoc/AuthorDD/p1/C1.java - test/com/sun/javadoc/DocRootSlash/DocRootSlash.java - test/com/sun/javadoc/DocRootSlash/overview.html - test/com/sun/javadoc/DocRootSlash/p1/C1.java - test/com/sun/javadoc/DocRootSlash/p1/package.html - test/com/sun/javadoc/DocRootSlash/p2/C2.java - test/com/sun/javadoc/DocRootSlash/p2/package.html - test/com/sun/javadoc/InheritDocForUserTags/DocTest.java - test/com/sun/javadoc/JavascriptWinTitle/JavascriptWinTitle.java - test/com/sun/javadoc/JavascriptWinTitle/overview.html - test/com/sun/javadoc/JavascriptWinTitle/p1/C.java - test/com/sun/javadoc/JavascriptWinTitle/p2/C2.java - test/com/sun/javadoc/JavascriptWinTitle/package-list - test/com/sun/javadoc/MetaTag/MetaTag.java - test/com/sun/javadoc/MetaTag/p1/C1.java - test/com/sun/javadoc/MetaTag/p2/C2.java - test/com/sun/javadoc/PackagesHeader/PackagesHeader.java - test/com/sun/javadoc/PackagesHeader/p1/C1.java - test/com/sun/javadoc/PackagesHeader/p2/C2.java - test/com/sun/javadoc/T6735320/SerialFieldTest.java - test/com/sun/javadoc/T6735320/T6735320.java - test/com/sun/javadoc/ValidHtml/ValidHtml.java - test/com/sun/javadoc/ValidHtml/overview.html - test/com/sun/javadoc/ValidHtml/p1/C.java - test/com/sun/javadoc/ValidHtml/p2/C2.java - test/com/sun/javadoc/VersionNumber/VersionNumber.java - test/com/sun/javadoc/VersionNumber/p1/C.java - test/com/sun/javadoc/WindowTitles/WindowTitles.java - test/com/sun/javadoc/WindowTitles/p1/C1.java - test/com/sun/javadoc/WindowTitles/p2/C2.java - test/com/sun/javadoc/_template/Template.java - test/com/sun/javadoc/_template/TemplateComplete.java - test/com/sun/javadoc/constantValues/A.java - test/com/sun/javadoc/constantValues/TestConstantValues.java - test/com/sun/javadoc/constantValues/TestConstantValues2.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/testAbsLinkPath/pkg1/C1.java - test/com/sun/javadoc/testAbsLinkPath/pkg2/C2.java - test/com/sun/javadoc/testAbstractMethod/TestAbstractMethod.java - test/com/sun/javadoc/testAbstractMethod/pkg/A.java - test/com/sun/javadoc/testAbstractMethod/pkg/B.java - test/com/sun/javadoc/testAbstractMethod/pkg/C.java - test/com/sun/javadoc/testAnchorNames/TestAnchorNames.java - test/com/sun/javadoc/testAnchorNames/pkg1/DeprMemClass.java - test/com/sun/javadoc/testAnchorNames/pkg1/RegClass.java - test/com/sun/javadoc/testAnnotationOptional/TestAnnotationOptional.java - test/com/sun/javadoc/testAnnotationOptional/pkg/AnnotationOptional.java - test/com/sun/javadoc/testAnnotationTypes/TestAnnotationTypes.java - test/com/sun/javadoc/testAnnotationTypes/pkg/AnnotationType.java - test/com/sun/javadoc/testAnnotationTypes/pkg/AnnotationTypeField.java - test/com/sun/javadoc/testBackSlashInLink/C.java - test/com/sun/javadoc/testBackSlashInLink/TestBackSlashInLink.java - test/com/sun/javadoc/testBadPackageFileInJar/TestBadPackageFileInJar.java - test/com/sun/javadoc/testBadPackageFileInJar/badPackageFileInJar.jar - test/com/sun/javadoc/testBadPackageFileInJar/pkg/C.java - test/com/sun/javadoc/testBadSourceFile/C1.java - test/com/sun/javadoc/testBadSourceFile/C2.java - test/com/sun/javadoc/testBadSourceFile/TestBadSourceFile.java - test/com/sun/javadoc/testBaseClass/Bar.java - test/com/sun/javadoc/testBaseClass/BaseClass.java - test/com/sun/javadoc/testBaseClass/TestBaseClass.java - test/com/sun/javadoc/testBaseClass/baz/Foo.java - test/com/sun/javadoc/testBreakIterator/TestBreakIterator.java - test/com/sun/javadoc/testBreakIterator/pkg/BreakIteratorTest.java - test/com/sun/javadoc/testCRLineSeparator/TestCRLineSeparator.java - test/com/sun/javadoc/testCRLineSeparator/pkg/MyClass.java - test/com/sun/javadoc/testCharset/TestCharset.java - test/com/sun/javadoc/testCharset/pkg/Foo.java - test/com/sun/javadoc/testClassCrossReferences/C.java - test/com/sun/javadoc/testClassCrossReferences/TestClassCrossReferences.java - test/com/sun/javadoc/testClassCrossReferences/package-list - test/com/sun/javadoc/testClassTree/TestClassTree.java - test/com/sun/javadoc/testClassTree/pkg/AnnotationType.java - test/com/sun/javadoc/testClassTree/pkg/ChildClass.java - test/com/sun/javadoc/testClassTree/pkg/Coin.java - test/com/sun/javadoc/testClassTree/pkg/ParentClass.java - test/com/sun/javadoc/testCmndLineClass/C5.java - test/com/sun/javadoc/testCmndLineClass/TestCmndLineClass.java - test/com/sun/javadoc/testCmndLineClass/pkg1/C1.java - test/com/sun/javadoc/testCmndLineClass/pkg1/C2.java - test/com/sun/javadoc/testCmndLineClass/pkg1/package.html - test/com/sun/javadoc/testCmndLineClass/pkg2/C3.java - test/com/sun/javadoc/testCmndLineClass/pkg2/C4.java - test/com/sun/javadoc/testCmndLineClass/pkg2/package.html - test/com/sun/javadoc/testCompletionFailure/TestCompletionFailure.java - test/com/sun/javadoc/testCompletionFailure/pkg1/NumberFormatTest.java - test/com/sun/javadoc/testConstantValuesPage/TestConstantValuesPage.java - test/com/sun/javadoc/testConstructorIndent/C.java - test/com/sun/javadoc/testConstructorIndent/TestConstructorIndent.java - test/com/sun/javadoc/testConstructors/TestConstructors.java - test/com/sun/javadoc/testConstructors/pkg1/Outer.java - test/com/sun/javadoc/testCustomTag/TagTestClass.java - test/com/sun/javadoc/testCustomTag/TestCustomTag.java - test/com/sun/javadoc/testCustomTag/taglets/CustomTag.java - test/com/sun/javadoc/testDeprecatedDocs/TestDeprecatedDocs.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/DeprecatedClassByAnnotation.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestAnnotationType.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestClass.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestEnum.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestError.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestException.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestInterface.java - test/com/sun/javadoc/testDocEncoding/TestDocEncoding.java - test/com/sun/javadoc/testDocEncoding/pkg/Test.java - test/com/sun/javadoc/testDocErrorReporter/TestDocErrorReporter.java - test/com/sun/javadoc/testDocFileDir/TestDocFileDir.java - test/com/sun/javadoc/testDocFileDir/pkg/C.java - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/subdir-excluded1/testfile.txt - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/subdir-excluded2/testfile.txt - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/subdir-used1/testfile.txt - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/subdir-used2/testfile.txt - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/testfile.txt - test/com/sun/javadoc/testDocFiles/TestDocFiles.java - test/com/sun/javadoc/testDocFiles/pkg/Test.java - test/com/sun/javadoc/testDocFiles/pkg/doc-files/test.txt - test/com/sun/javadoc/testDocRootInlineTag/TestDocRootInlineTag.java - test/com/sun/javadoc/testDocRootInlineTag/TestDocRootTag.java - test/com/sun/javadoc/testDocRootInlineTag/package-list - test/com/sun/javadoc/testDocRootInlineTag/pkg/C.java - test/com/sun/javadoc/testDocRootLink/TestDocRootLink.java - test/com/sun/javadoc/testDocRootLink/pkg1/C1.java - test/com/sun/javadoc/testDocRootLink/pkg1/package.html - test/com/sun/javadoc/testDocRootLink/pkg2/C2.java - test/com/sun/javadoc/testDocRootLink/pkg2/package.html - test/com/sun/javadoc/testDupParamWarn/TestDupParamWarn.java - test/com/sun/javadoc/testDupParamWarn/pkg/Bar.java - test/com/sun/javadoc/testDupParamWarn/pkg/Foo.java - test/com/sun/javadoc/testEmptyClass/TestEmptyClass.java - test/com/sun/javadoc/testEmptyClass/src/Empty.java - test/com/sun/javadoc/testEnclosingClass/TestEnclosingClass.java - test/com/sun/javadoc/testEnclosingClass/pkg/MyClass.java - test/com/sun/javadoc/testEncoding/EncodeTest.java - test/com/sun/javadoc/testEncoding/TestEncoding.java - test/com/sun/javadoc/testExternalOverridenMethod/TestExternalOverridenMethod.java - test/com/sun/javadoc/testExternalOverridenMethod/package-list - test/com/sun/javadoc/testExternalOverridenMethod/pkg/XReader.java - test/com/sun/javadoc/testGeneratedBy/TestGeneratedBy.java - test/com/sun/javadoc/testGeneratedBy/pkg/MyClass.java - test/com/sun/javadoc/testGroupOption/TestGroupOption.java - test/com/sun/javadoc/testGroupOption/pkg1/C.java - test/com/sun/javadoc/testGroupOption/pkg2/C.java - test/com/sun/javadoc/testGroupOption/pkg3/C.java - test/com/sun/javadoc/testHeadings/TestHeadings.java - test/com/sun/javadoc/testHeadings/pkg1/C1.java - test/com/sun/javadoc/testHeadings/pkg2/C2.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/testHiddenMembers/pkg/BaseClass.java - test/com/sun/javadoc/testHiddenMembers/pkg/SubClass.java - test/com/sun/javadoc/testHref/TestHref.java - test/com/sun/javadoc/testHref/package-list - test/com/sun/javadoc/testHref/pkg/C1.java - test/com/sun/javadoc/testHref/pkg/C2.java - test/com/sun/javadoc/testHref/pkg/C4.java - test/com/sun/javadoc/testHrefInDocComment/TestHrefInDocComment.java - test/com/sun/javadoc/testHrefInDocComment/pkg/I1.java - test/com/sun/javadoc/testHrefInDocComment/pkg/I2.java - test/com/sun/javadoc/testHtmlComments/C.java - test/com/sun/javadoc/testHtmlComments/TestHtmlComments.java - test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C1.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C2.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C3.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C4.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C5.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/package-info.java - test/com/sun/javadoc/testHtmlDocument/TestHtmlDocument.java - test/com/sun/javadoc/testHtmlDocument/testLink.html - test/com/sun/javadoc/testHtmlDocument/testMarkup.html - test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java - test/com/sun/javadoc/testHtmlStrongTag/pkg1/C1.java - test/com/sun/javadoc/testHtmlStrongTag/pkg2/C2.java - test/com/sun/javadoc/testHtmlTableStyles/TestHtmlTableStyles.java - test/com/sun/javadoc/testHtmlTableStyles/pkg1/TestTable.java - test/com/sun/javadoc/testHtmlTableStyles/pkg2/TestUse.java - test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java - test/com/sun/javadoc/testHtmlTableTags/pkg1/C1.java - test/com/sun/javadoc/testHtmlTableTags/pkg1/I1.java - test/com/sun/javadoc/testHtmlTableTags/pkg1/package-info.java - test/com/sun/javadoc/testHtmlTableTags/pkg2/C2.java - test/com/sun/javadoc/testHtmlTableTags/pkg2/C3.java - test/com/sun/javadoc/testHtmlTableTags/pkg2/C4.java - test/com/sun/javadoc/testHtmlTableTags/pkg2/package-info.java - test/com/sun/javadoc/testHtmlTag/TestHtmlTag.java - test/com/sun/javadoc/testHtmlTag/pkg1/C1.java - test/com/sun/javadoc/testHtmlTag/pkg2/C2.java - test/com/sun/javadoc/testHtmlVersion/TestHtmlVersion.java - test/com/sun/javadoc/testHtmlVersion/pkg/AnnotationType.java - test/com/sun/javadoc/testHtmlVersion/pkg/AnotherClass.java - test/com/sun/javadoc/testHtmlVersion/pkg/TestError.java - test/com/sun/javadoc/testHtmlVersion/pkg/TestException.java - test/com/sun/javadoc/testHtmlVersion/pkg/TestInterface.java - test/com/sun/javadoc/testHtmlVersion/pkg/package-info.java - test/com/sun/javadoc/testHtmlVersion/pkg1/NestedInnerClass.java - test/com/sun/javadoc/testHtmlVersion/pkg1/PrivateIncludeInnerClass.java - test/com/sun/javadoc/testHtmlVersion/pkg1/ProtectedInnerClass.java - test/com/sun/javadoc/testHtmlVersion/pkg1/PublicExcludeInnerClass.java - test/com/sun/javadoc/testHtmlVersion/pkg1/RegClass.java - test/com/sun/javadoc/testHtmlVersion/pkg2/DeprecatedClassByAnnotation.java - test/com/sun/javadoc/testHtmlVersion/pkg2/Interface.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestAnnotationType.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestClass.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestEnum.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestError.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestException.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestInterface.java - test/com/sun/javadoc/testHtmlVersion/pkg3/ClassNoConstants.java - test/com/sun/javadoc/testHtmlVersion/profile-rtjar-includes.txt - test/com/sun/javadoc/testIndentation/TestIndentation.java - test/com/sun/javadoc/testIndentation/p/Indent.java - test/com/sun/javadoc/testIndentation/p/IndentAnnot.java - test/com/sun/javadoc/testIndex/NoPackage.java - test/com/sun/javadoc/testIndex/TestIndex.java - test/com/sun/javadoc/testIndex/pkg/AnnotationType.java - test/com/sun/javadoc/testIndex/pkg/C.java - test/com/sun/javadoc/testIndex/pkg/Coin.java - test/com/sun/javadoc/testIndex/pkg/Interface.java - test/com/sun/javadoc/testInlineLinkLabel/TestInlineLinkLabel.java - test/com/sun/javadoc/testInlineLinkLabel/pkg/C1.java - test/com/sun/javadoc/testInlineLinkLabel/pkg/C2.java - test/com/sun/javadoc/testInlineLinkLabel/pkg/package.html - test/com/sun/javadoc/testInterface/TestInterface.java - test/com/sun/javadoc/testInterface/pkg/Child.java - test/com/sun/javadoc/testInterface/pkg/Interface.java - test/com/sun/javadoc/testInterface/pkg/Parent.java - test/com/sun/javadoc/testJavaFX/TestJavaFX.java - test/com/sun/javadoc/testJavaFX/pkg1/C.java - test/com/sun/javadoc/testJavaFX/pkg1/D.java - test/com/sun/javadoc/testJavaFX/pkg2/Test.java - test/com/sun/javadoc/testJavascript/TestJavascript.java - test/com/sun/javadoc/testJavascript/pkg/C.java - test/com/sun/javadoc/testLambdaFeature/TestLambdaFeature.java - test/com/sun/javadoc/testLambdaFeature/pkg/A.java - test/com/sun/javadoc/testLambdaFeature/pkg/B.java - test/com/sun/javadoc/testLambdaFeature/pkg1/FuncInf.java - test/com/sun/javadoc/testLambdaFeature/pkg1/NotAFuncInf.java - test/com/sun/javadoc/testLeadingSpaces/LeadingSpaces.java - test/com/sun/javadoc/testLegacyTaglet/C.java - test/com/sun/javadoc/testLegacyTaglet/Check.java - test/com/sun/javadoc/testLegacyTaglet/TestLegacyTaglet.java - test/com/sun/javadoc/testLegacyTaglet/ToDoTaglet.java - test/com/sun/javadoc/testLegacyTaglet/UnderlineTaglet.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/testLinkOption/extra/StringBuilder.java - test/com/sun/javadoc/testLinkOption/jdk/package-list - test/com/sun/javadoc/testLinkOption/mylib/lang/StringBuilderChild.java - test/com/sun/javadoc/testLinkOption/pkg/C.java - test/com/sun/javadoc/testLinkOption/pkg2/C2.java - test/com/sun/javadoc/testLinkOption/testNewLineInLink/C.java - test/com/sun/javadoc/testLinkOption/testNewLineInLink/package.html - test/com/sun/javadoc/testLinkTaglet/TestLinkTaglet.java - test/com/sun/javadoc/testLinkTaglet/checkPkg/A.java - test/com/sun/javadoc/testLinkTaglet/checkPkg/B.java - test/com/sun/javadoc/testLinkTaglet/pkg/C.java - test/com/sun/javadoc/testLinkToSerialForm/TestLinkToSerialForm.java - test/com/sun/javadoc/testLinkToSerialForm/pkg/C.java - test/com/sun/javadoc/testLiteralCodeInPre/TestLiteralCodeInPre.java - test/com/sun/javadoc/testLiteralCodeInPre/pkg/Test.java - test/com/sun/javadoc/testMemberInheritence/TestMemberInheritence.java - test/com/sun/javadoc/testMemberInheritence/diamond/A.java - test/com/sun/javadoc/testMemberInheritence/diamond/B.java - test/com/sun/javadoc/testMemberInheritence/diamond/C.java - test/com/sun/javadoc/testMemberInheritence/diamond/X.java - test/com/sun/javadoc/testMemberInheritence/diamond/Z.java - test/com/sun/javadoc/testMemberInheritence/inheritDist/A.java - test/com/sun/javadoc/testMemberInheritence/inheritDist/B.java - test/com/sun/javadoc/testMemberInheritence/inheritDist/C.java - test/com/sun/javadoc/testMemberInheritence/pkg/BaseClass.java - test/com/sun/javadoc/testMemberInheritence/pkg/BaseInterface.java - test/com/sun/javadoc/testMemberInheritence/pkg/SubClass.java - test/com/sun/javadoc/testMemberSummary/TestMemberSummary.java - test/com/sun/javadoc/testMemberSummary/pkg/PrivateParent.java - test/com/sun/javadoc/testMemberSummary/pkg/PublicChild.java - test/com/sun/javadoc/testMemberSummary/pkg2/A.java - test/com/sun/javadoc/testMethodTypes/TestMethodTypes.java - test/com/sun/javadoc/testMethodTypes/pkg1/A.java - test/com/sun/javadoc/testMethodTypes/pkg1/B.java - test/com/sun/javadoc/testMethodTypes/pkg1/D.java - test/com/sun/javadoc/testModifier/Interface.java - test/com/sun/javadoc/testModifier/ModifierAbstract.java - test/com/sun/javadoc/testModifier/Test.java - test/com/sun/javadoc/testModifier/TestModifier.java - test/com/sun/javadoc/testNavigation/TestNavigation.java - test/com/sun/javadoc/testNavigation/pkg/A.java - test/com/sun/javadoc/testNavigation/pkg/C.java - test/com/sun/javadoc/testNavigation/pkg/E.java - test/com/sun/javadoc/testNavigation/pkg/I.java - test/com/sun/javadoc/testNestedGenerics/TestNestedGenerics.java - test/com/sun/javadoc/testNestedGenerics/pkg/NestedGenerics.java - test/com/sun/javadoc/testNestedInlineTag/TestNestedInlineTag.java - test/com/sun/javadoc/testNestedInlineTag/testtaglets/BoldTaglet.java - test/com/sun/javadoc/testNestedInlineTag/testtaglets/GreenTaglet.java - test/com/sun/javadoc/testNestedInlineTag/testtaglets/UnderlineTaglet.java - test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/AnnotationType.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/AnnotationTypeUndocumented.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/AnnotationTypeUsage.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/Coin.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/MultiTypeParameters.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/SubInterface.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/SuperInterface.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/TypeParameterSubClass.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/TypeParameterSuperClass.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/TypeParameters.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/VarArgs.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/Wildcards.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/package-info.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg1/A.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg1/B.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ClassUseTest1.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ClassUseTest2.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ClassUseTest3.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/Foo.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/Foo2.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/Foo3.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/Foo4.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ParamTest.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ParamTest2.java - test/com/sun/javadoc/testNoPackagesFile/C.java - test/com/sun/javadoc/testNoPackagesFile/TestNoPackagesFile.java - test/com/sun/javadoc/testNonInlineHtmlTagRemoval/C.java - test/com/sun/javadoc/testNonInlineHtmlTagRemoval/Negative.java - test/com/sun/javadoc/testNonInlineHtmlTagRemoval/TestNonInlineHtmlTagRemoval.java - test/com/sun/javadoc/testNotifications/TestNotifications.java - test/com/sun/javadoc/testNotifications/pkg/C.java - test/com/sun/javadoc/testOptions/TestOptions.java - test/com/sun/javadoc/testOptions/pkg/Foo.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/A.java - test/com/sun/javadoc/testOrdering/pkg1/B.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/MethodOrder.java - test/com/sun/javadoc/testOrdering/pkg1/UsedClass.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 - 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/testOverridenMethods/pkg1/BaseClass.java - test/com/sun/javadoc/testOverridenMethods/pkg1/SubClass.java - test/com/sun/javadoc/testOverridenMethods/pkg2/SubClass.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I0.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I1.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I2.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I3.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I4.java - test/com/sun/javadoc/testPackageDeprecation/C2.java - test/com/sun/javadoc/testPackageDeprecation/FooDepr.java - test/com/sun/javadoc/testPackageDeprecation/TestPackageDeprecation.java - test/com/sun/javadoc/testPackageDeprecation/pkg/A.java - test/com/sun/javadoc/testPackageDeprecation/pkg1/ClassUseTest1.java - test/com/sun/javadoc/testPackageDeprecation/pkg1/Foo.java - test/com/sun/javadoc/testPackageDeprecation/pkg1/Foo2.java - test/com/sun/javadoc/testPackageDeprecation/pkg1/package-info.java - test/com/sun/javadoc/testPackagePage/TestPackagePage.java - test/com/sun/javadoc/testPackagePage/com/pkg/C.java - test/com/sun/javadoc/testPackagePage/com/pkg/package.html - test/com/sun/javadoc/testPackagePage/pkg2/C.java - test/com/sun/javadoc/testParamTaglet/TestParamTaglet.java - test/com/sun/javadoc/testParamTaglet/pkg/C.java - test/com/sun/javadoc/testParamTaglet/pkg/Parent.java - test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java - test/com/sun/javadoc/testPrivateClasses/pkg/PrivateInterface.java - test/com/sun/javadoc/testPrivateClasses/pkg/PrivateParent.java - test/com/sun/javadoc/testPrivateClasses/pkg/PublicChild.java - test/com/sun/javadoc/testPrivateClasses/pkg/PublicInterface.java - test/com/sun/javadoc/testPrivateClasses/pkg2/C.java - test/com/sun/javadoc/testPrivateClasses/pkg2/I.java - test/com/sun/javadoc/testRecurseSubPackages/TestRecurseSubPackages.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/C1.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/C2.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/C3.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/C4.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/packageToExclude/DummyClass.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/pkg3/C5.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/pkg3/C6.java - test/com/sun/javadoc/testRelativeLinks/TestRelativeLinks.java - test/com/sun/javadoc/testRelativeLinks/pkg/C.java - test/com/sun/javadoc/testRelativeLinks/pkg/package.html - test/com/sun/javadoc/testRelativeLinks/pkg2/Foo.java - test/com/sun/javadoc/testRepeatedAnnotations/TestRepeatedAnnotations.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/C.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContaineeRegDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContaineeSynthDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContainerRegDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContainerRegNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContainerSynthDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/D.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/NonSynthDocContainer.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegArryDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegContaineeDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegContaineeNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegContainerDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegContainerNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/C.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContaineeNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContaineeSynthDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContainerSynthNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContainerValDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContainerValNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/RegContaineeDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/RegContaineeNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/RegContainerValDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/RegContainerValNotDoc.java - test/com/sun/javadoc/testReturnTag/TestReturnTag.java - test/com/sun/javadoc/testSearch/TestSearch.java - test/com/sun/javadoc/testSearch/UnnamedPkgClass.java - test/com/sun/javadoc/testSearch/pkg/AnnotationType.java - test/com/sun/javadoc/testSearch/pkg/AnotherClass.java - test/com/sun/javadoc/testSearch/pkg/TestError.java - test/com/sun/javadoc/testSearch/pkg/TestException.java - test/com/sun/javadoc/testSearch/pkg/TestInterface.java - test/com/sun/javadoc/testSearch/pkg/package-info.java - test/com/sun/javadoc/testSearch/pkg1/NestedInnerClass.java - test/com/sun/javadoc/testSearch/pkg1/PrivateIncludeInnerClass.java - test/com/sun/javadoc/testSearch/pkg1/ProtectedInnerClass.java - test/com/sun/javadoc/testSearch/pkg1/PublicExcludeInnerClass.java - test/com/sun/javadoc/testSearch/pkg1/RegClass.java - test/com/sun/javadoc/testSearch/pkg2/DeprecatedClassByAnnotation.java - test/com/sun/javadoc/testSearch/pkg2/Interface.java - test/com/sun/javadoc/testSearch/pkg2/TestAnnotationType.java - test/com/sun/javadoc/testSearch/pkg2/TestClass.java - test/com/sun/javadoc/testSearch/pkg2/TestEnum.java - test/com/sun/javadoc/testSearch/pkg2/TestError.java - test/com/sun/javadoc/testSearch/pkg2/TestException.java - test/com/sun/javadoc/testSearch/pkg2/TestInterface.java - test/com/sun/javadoc/testSearch/pkg3/ClassNoConstants.java - test/com/sun/javadoc/testSearch/pkgfx/C.java - test/com/sun/javadoc/testSeeTag/TestSeeTag.java - test/com/sun/javadoc/testSeeTag/pkg/Test.java - test/com/sun/javadoc/testSerialVersionUID/C.java - test/com/sun/javadoc/testSerialVersionUID/TestSerialVersionUID.java - test/com/sun/javadoc/testSerializedForm/TestSerializedForm.java - test/com/sun/javadoc/testSerializedForm/pkg1/NestedInnerClass.java - test/com/sun/javadoc/testSerializedForm/pkg1/PrivateIncludeInnerClass.java - test/com/sun/javadoc/testSerializedForm/pkg1/ProtectedInnerClass.java - test/com/sun/javadoc/testSerializedForm/pkg1/PublicExcludeInnerClass.java - test/com/sun/javadoc/testSerializedFormDeprecationInfo/TestSerializedFormDeprecationInfo.java - test/com/sun/javadoc/testSerializedFormDeprecationInfo/pkg1/C1.java - test/com/sun/javadoc/testSerializedFormDeprecationInfo/pkg1/C2.java - test/com/sun/javadoc/testSerializedFormDeprecationInfo/pkg1/C3.java - test/com/sun/javadoc/testSimpleTag/C.java - test/com/sun/javadoc/testSimpleTag/TestSimpleTag.java - test/com/sun/javadoc/testSimpleTagExclude/DummyClass.java - test/com/sun/javadoc/testSimpleTagExclude/TestSimpleTagExclude.java - test/com/sun/javadoc/testSimpleTagInherit/TestSimpleTagInherit.java - test/com/sun/javadoc/testSimpleTagInherit/p/BaseClass.java - test/com/sun/javadoc/testSimpleTagInherit/p/TestClass.java - test/com/sun/javadoc/testSinceTag/TestSinceTag.java - test/com/sun/javadoc/testSinceTag/pkg1/C1.java - test/com/sun/javadoc/testSingleQuotedLink/TestSingleQuotedLink.java - test/com/sun/javadoc/testSingleQuotedLink/pkg1/C1.java - test/com/sun/javadoc/testSingleQuotedLink/pkg1/C2.java - test/com/sun/javadoc/testSingleQuotedLink/pkg1/package.html - test/com/sun/javadoc/testSourceTab/DoubleTab/C.java - test/com/sun/javadoc/testSourceTab/SingleTab/C.java - test/com/sun/javadoc/testSourceTab/TestSourceTab.java - test/com/sun/javadoc/testStylesheet/TestStylesheet.java - test/com/sun/javadoc/testStylesheet/pkg/A.java - test/com/sun/javadoc/testSubTitle/TestSubTitle.java - test/com/sun/javadoc/testSubTitle/pkg/C.java - test/com/sun/javadoc/testSubTitle/pkg/package.html - test/com/sun/javadoc/testSummaryHeading/C.java - test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java - test/com/sun/javadoc/testSuperclassInSerialForm/TestSuperClassInSerialForm.java - test/com/sun/javadoc/testSuperclassInSerialForm/pkg/SubClass.java - test/com/sun/javadoc/testSuperclassInSerialForm/pkg/SuperClass.java - test/com/sun/javadoc/testSupplementary/C.java - test/com/sun/javadoc/testSupplementary/TestSupplementary.java - test/com/sun/javadoc/testTagHolderMethod/TestTagHolderMethod.java - test/com/sun/javadoc/testTagHolderMethod/pkg/C.java - test/com/sun/javadoc/testTagInheritence/TestTagInheritence.java - test/com/sun/javadoc/testTagInheritence/firstSentence/A.java - test/com/sun/javadoc/testTagInheritence/firstSentence/B.java - test/com/sun/javadoc/testTagInheritence/firstSentence2/A.java - test/com/sun/javadoc/testTagInheritence/firstSentence2/B.java - test/com/sun/javadoc/testTagInheritence/firstSentence2/C.java - test/com/sun/javadoc/testTagInheritence/pkg/TestAbstractClass.java - test/com/sun/javadoc/testTagInheritence/pkg/TestInterface.java - test/com/sun/javadoc/testTagInheritence/pkg/TestInterfaceForAbstractClass.java - test/com/sun/javadoc/testTagInheritence/pkg/TestSuperSuperClass.java - test/com/sun/javadoc/testTagInheritence/pkg/TestSuperSuperInterface.java - test/com/sun/javadoc/testTagInheritence/pkg/TestTagInheritence.java - test/com/sun/javadoc/testTagMisuse/TestTagMisuse.java - test/com/sun/javadoc/testTagOutput/TestTagOutput.java - test/com/sun/javadoc/testTagOutput/pkg1/DeprecatedTag.java - test/com/sun/javadoc/testTaglets/C.java - test/com/sun/javadoc/testTaglets/Child.java - test/com/sun/javadoc/testTaglets/Parent.java - test/com/sun/javadoc/testTaglets/TestTaglets.java - test/com/sun/javadoc/testTaglets/taglets/Foo.java - test/com/sun/javadoc/testThrowsHead/C.java - test/com/sun/javadoc/testThrowsHead/TestThrowsHead.java - test/com/sun/javadoc/testThrowsInheritence/C.java - test/com/sun/javadoc/testThrowsInheritence/Foo.java - test/com/sun/javadoc/testThrowsInheritence/I.java - test/com/sun/javadoc/testThrowsInheritence/Iface.java - test/com/sun/javadoc/testThrowsInheritence/TestThrowsTagInheritence.java - test/com/sun/javadoc/testThrowsTag/TestThrowsTag.java - test/com/sun/javadoc/testThrowsTag/pkg/C.java - test/com/sun/javadoc/testThrowsTag/pkg/P.java - test/com/sun/javadoc/testThrowsTag/pkg/T1.java - test/com/sun/javadoc/testThrowsTag/pkg/T2.java - test/com/sun/javadoc/testThrowsTag/pkg/T3.java - test/com/sun/javadoc/testThrowsTag/pkg/T4.java - test/com/sun/javadoc/testThrowsTag/pkg/T5.java - test/com/sun/javadoc/testThrowsTag/pkg/T6.java - test/com/sun/javadoc/testThrowsTag/pkg/T7.java - test/com/sun/javadoc/testThrowsTag/pkg/T8.java - test/com/sun/javadoc/testTitleInHref/TestTitleInHref.java - test/com/sun/javadoc/testTitleInHref/package-list - test/com/sun/javadoc/testTitleInHref/pkg/Class.java - test/com/sun/javadoc/testTitleInHref/pkg/Interface.java - test/com/sun/javadoc/testTitleInHref/pkg/Links.java - test/com/sun/javadoc/testTopOption/TestTopOption.java - test/com/sun/javadoc/testTopOption/overview.html - test/com/sun/javadoc/testTopOption/pkg/AnnotationType.java - test/com/sun/javadoc/testTopOption/pkg/Cl.java - test/com/sun/javadoc/testTypeAnnotations/TestTypeAnnotations.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/ClassExtends.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/ClassParameters.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Fields.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/MethodReturnType.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/MethodTypeParameters.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Parameters.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Receivers.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Throws.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/TypeParameters.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Varargs.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Wildcards.java - test/com/sun/javadoc/testTypeParams/TestTypeParameters.java - test/com/sun/javadoc/testTypeParams/pkg/C.java - test/com/sun/javadoc/testTypeParams/pkg/ClassUseTest3.java - test/com/sun/javadoc/testTypeParams/pkg/Foo4.java - test/com/sun/javadoc/testTypeParams/pkg/ParamTest2.java - test/com/sun/javadoc/testTypeParams/pkg/Parent.java - test/com/sun/javadoc/testUnnamedPackage/BadSource.java - test/com/sun/javadoc/testUnnamedPackage/C.java - test/com/sun/javadoc/testUnnamedPackage/TestUnnamedPackage.java - test/com/sun/javadoc/testUnnamedPackage/package.html - test/com/sun/javadoc/testUseOption/C.java - test/com/sun/javadoc/testUseOption/TestUseOption.java - test/com/sun/javadoc/testUseOption/UsedInC.java - test/com/sun/javadoc/testUseOption/pkg1/AnAbstract.java - test/com/sun/javadoc/testUseOption/pkg1/C1.java - test/com/sun/javadoc/testUseOption/pkg1/C10.java - test/com/sun/javadoc/testUseOption/pkg1/C2.java - test/com/sun/javadoc/testUseOption/pkg1/C4.java - test/com/sun/javadoc/testUseOption/pkg1/C5.java - test/com/sun/javadoc/testUseOption/pkg1/C6.java - test/com/sun/javadoc/testUseOption/pkg1/C7.java - test/com/sun/javadoc/testUseOption/pkg1/C8.java - test/com/sun/javadoc/testUseOption/pkg1/C9.java - test/com/sun/javadoc/testUseOption/pkg1/UsedClass.java - test/com/sun/javadoc/testUseOption/pkg1/UsedInterface.java - test/com/sun/javadoc/testUseOption/pkg1/UsedInterfaceA.java - test/com/sun/javadoc/testUseOption/pkg1/package.html - test/com/sun/javadoc/testUseOption/pkg2/C3.java - test/com/sun/javadoc/testUseOption/pkg2/package.html - test/com/sun/javadoc/testUseOption/unique/C1.java - test/com/sun/javadoc/testUseOption/unique/UseMe.java - test/com/sun/javadoc/testValueTag/TestValueTag.java - test/com/sun/javadoc/testValueTag/pkg1/Class1.java - test/com/sun/javadoc/testValueTag/pkg1/Class2.java - test/com/sun/javadoc/testValueTag/pkg1/CustomTagUsage.java - test/com/sun/javadoc/testValueTag/pkg2/Class3.java - test/com/sun/javadoc/testValueTag/pkg2/package.html - test/com/sun/javadoc/testWarnBadParamNames/C.java - test/com/sun/javadoc/testWarnBadParamNames/TestWarnBadParamNames.java - test/com/sun/javadoc/testWarnings/TestWarnings.java - test/com/sun/javadoc/testWarnings/pkg/X.java - test/com/sun/javadoc/testWarnings/pkg/package.html - test/com/sun/javadoc/testWindowTitle/TestWindowTitle.java - test/com/sun/javadoc/testWindowTitle/p1/C1.java - test/com/sun/javadoc/testWindowTitle/p2/C2.java - test/com/sun/javadoc/testXOption/TestXOption.java - test/com/sun/javadoc/typeAnnotations/smoke/TestSmoke.java - test/com/sun/javadoc/typeAnnotations/smoke/pkg/TargetTypes.java ! test/jdk/javadoc/tool/EnsureNewOldDoclet.java ! test/tools/javadoc/6942366/T6942366.java ! test/tools/javadoc/6958836/Test.java - test/tools/javadoc/6958836/errs/Errors.java - test/tools/javadoc/6958836/warns/Warnings.java ! test/tools/javadoc/6964914/Test.java ! test/tools/javadoc/BadOptionsTest.java ! test/tools/javadoc/CheckResourceKeys.java ! test/tools/javadoc/MaxWarns.java ! test/tools/javadoc/ReleaseOption.java - test/tools/javadoc/T4696488.java - test/tools/javadoc/T6551367.java ! test/tools/javadoc/T6968833.java - test/tools/javadoc/TestScriptInComment.java - test/tools/javadoc/api/basic/TagletPathTest.java - test/tools/javadoc/badSuper/BadSuper.java - test/tools/javadoc/badSuper/p/A.java - test/tools/javadoc/badSuper/p/B.java + test/tools/javadoc/lib/ToyDoclet.java ! test/tools/javadoc/nonConstExprs/Test.java ! test/tools/javadoc/parser/7091528/T7091528.java - test/tools/javadoc/sampleapi/SampleApiTest.java - test/tools/javadoc/sampleapi/res/fx.xml - test/tools/javadoc/sampleapi/res/simple.xml - test/tools/javadoc/sampleapi/res/sub.xml - test/tools/javadoc/sampleapi/res/tiny.xml Changeset: bbb3a10fce39 Author: jjg Date: 2017-06-15 14:45 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/bbb3a10fce39 8181825: Add tool and services information to module summary Reviewed-by: mchung, rfield ! src/jdk.compiler/share/classes/com/sun/tools/javac/Main.java + src/jdk.compiler/share/classes/com/sun/tools/javac/package-info.java ! src/jdk.compiler/share/classes/module-info.java ! src/jdk.javadoc/share/classes/module-info.java ! src/jdk.jdeps/share/classes/module-info.java ! src/jdk.jshell/share/classes/module-info.java Changeset: 15ebbc892255 Author: jjg Date: 2017-06-16 15:29 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/15ebbc892255 8182406: Add missing legal file for jquery Reviewed-by: mchung + src/jdk.javadoc/share/legal/jquery.md Changeset: abaedfca9e3e Author: alanb Date: 2017-06-16 09:21 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/abaedfca9e3e 8181087: Module system implementation refresh (6/2017) Reviewed-by: jjg Contributed-by: alan.bateman at oracle.com, jan.lahoda at oracle.com ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/jdk.jdeps/share/classes/module-info.java + test/tools/javac/diags/examples/PackageClashFromRequiresInUnnamed/PackageClashFromRequiresInUnnamed.java + test/tools/javac/diags/examples/PackageClashFromRequiresInUnnamed/modulepath/lib1x/exported/Api1.java + test/tools/javac/diags/examples/PackageClashFromRequiresInUnnamed/modulepath/lib1x/module-info.java + test/tools/javac/diags/examples/PackageClashFromRequiresInUnnamed/modulepath/lib2x/exported/Api2.java + test/tools/javac/diags/examples/PackageClashFromRequiresInUnnamed/modulepath/lib2x/module-info.java ! test/tools/javac/modules/AutomaticModules.java ! test/tools/javac/modules/PackageConflictTest.java Changeset: cbabd54a029b Author: alanb Date: 2017-06-17 08:02 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/cbabd54a029b Merge ! src/jdk.jdeps/share/classes/module-info.java Changeset: bd10ad9aefb3 Author: mchung Date: 2017-06-17 11:50 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/bd10ad9aefb3 8182416: Clean up module-info.java like move requires transitive adjacent to exports Reviewed-by: alanb ! src/java.compiler/share/classes/module-info.java ! src/jdk.compiler/share/classes/module-info.java ! src/jdk.javadoc/share/classes/module-info.java ! src/jdk.jdeps/share/classes/com/sun/tools/jdeps/ModuleInfoBuilder.java ! src/jdk.jdeps/share/classes/module-info.java ! src/jdk.jshell/share/classes/module-info.java Changeset: c899c71eb7d2 Author: jlahoda Date: 2017-06-19 05:56 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/c899c71eb7d2 8182162: Remove -XD-Xmodule Summary: Removing the undocumented -XD-Xmodule: option. Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java - test/tools/javac/modules/LegacyXModuleTest.java Changeset: 14169b37b44f Author: mchung Date: 2017-06-19 12:25 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/14169b37b44f 8182492: docs bundle needs legal notices for 3rd party libraries distributed for javadoc search Reviewed-by: jjg + src/jdk.javadoc/share/legal/pako.md Changeset: 51b4cd2af28e Author: darcy Date: 2017-06-19 15:06 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/51b4cd2af28e 8163989: Clarify ModuleElement spec Reviewed-by: abuckley, jjg ! src/java.compiler/share/classes/javax/lang/model/element/ModuleElement.java ! src/java.compiler/share/classes/javax/lang/model/element/PackageElement.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symbol.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java ! test/tools/javac/modules/EdgeCases.java + test/tools/javac/processing/model/element/TestModuleElementNames.java ! test/tools/javac/processing/model/element/TestPackageElement.java Changeset: 83f6eb009d8f Author: darcy Date: 2017-06-19 17:13 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/83f6eb009d8f 8182566: Including missing test update for JDK-8163989 Reviewed-by: jjg ! test/tools/javac/file/MultiReleaseJar/MutliReleaseModuleInfoTest.java Changeset: 141a3c187e1a Author: lana Date: 2017-06-22 18:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/141a3c187e1a Added tag jdk-9+175 for changeset 83f6eb009d8f ! .hgtags Changeset: df5baffdd74c Author: lana Date: 2017-06-24 00:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/df5baffdd74c Merge ! .hgtags ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symbol.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/Taglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractExecutableMemberWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractPackageIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractTreeWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AllClassesFrameWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeFieldWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ClassWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConfigurationImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstructorWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/DeprecatedListWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/EnumConstantWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/FrameOutputWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HelpWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlSerialFieldWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlSerialMethodWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/LinkFactoryImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/LinkInfoImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/LinkOutputImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/NestedClassWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageFrameWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageTreeWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PropertyWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SearchIndexItem.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SectionName.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SerializedFormWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SingleIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SourceToHTMLConverter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SplitIndexWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/TagletWriterImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/TreeWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/WriterFactoryImpl.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/Comment.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/ContentBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/DocType.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlAttr.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlConstants.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocument.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlStyle.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTag.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlVersion.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/RawHtml.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/StringContent.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AbstractDoclet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeFieldWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeOptionalMemberWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeRequiredMemberWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ClassWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/Configuration.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ConstantsSummaryWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ConstructorWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/Content.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/EnumConstantWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/FieldWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/MemberSummaryWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/MethodWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/NestedClassWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/PackageSummaryWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/PropertyWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/SerializedFormWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/WriterFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractMemberBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeFieldBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeOptionalMemberBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeRequiredMemberBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/BuilderFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ClassBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstantsSummaryBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstructorBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/EnumConstantBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/FieldBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/LayoutParser.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MemberSummaryBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MethodBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PropertyBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/SerializedFormBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/XMLNode.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclet.xml - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/glass.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/external/jquery/jquery.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_flat_0_aaaaaa_40x100.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_flat_75_ffffff_40x100.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_55_fbf9ee_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_65_ffffff_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_75_dadada_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_75_e6e6e6_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_glass_95_fef1ec_1x400.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-bg_highlight-soft_75_cccccc_1x100.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_222222_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_2e83ff_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_454545_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_888888_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/images/ui-icons_cd0a0a_256x240.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-1.10.2.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.min.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.min.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.structure.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jquery-ui.structure.min.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip-utils/dist/jszip-utils-ie.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip-utils/dist/jszip-utils-ie.min.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip-utils/dist/jszip-utils.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip-utils/dist/jszip-utils.min.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip/dist/jszip.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/jquery/jszip/dist/jszip.min.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/script.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/search.js - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/stylesheet.css - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/x.png - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BaseExecutableMemberTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BaseInlineTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BasePropertyTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BaseTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/CodeTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/DeprecatedTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/DocRootTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/IndexTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/InheritDocTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/InheritableTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LegacyTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LiteralTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ParamTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/PropertyGetterTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/PropertySetterTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ReturnTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/SeeTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/SimpleTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/Taglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/TagletManager.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/TagletWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ThrowsTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ValueTaglet.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassDocCatalog.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassTree.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassUseMapper.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DeprecatedAPIListBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocFile.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocFileFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocFinder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocLink.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocPath.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocPaths.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocletAbortException.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocletConstants.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/Extern.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/FatalError.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/Group.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/ImplementedMethods.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/IndexBuilder.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/MessageRetriever.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/MetaKeywords.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/MethodTypes.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/PackageListWriter.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/StandardDocFileFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/TextTag.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/Utils.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/VisibleMemberMap.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/LinkFactory.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/LinkInfo.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/LinkOutput.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/package-info.java - src/jdk.javadoc/share/classes/com/sun/tools/doclets/package-info.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConfigurationImpl.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Configuration.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/LayoutParser.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/XMLNode.java - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclet.xml ! src/jdk.javadoc/share/classes/module-info.java - test/com/sun/javadoc/5093723/DocumentedClass.java - test/com/sun/javadoc/5093723/T5093723.java - test/com/sun/javadoc/5093723/UndocumentedClass.java - test/com/sun/javadoc/AccessAsciiArt/AccessAsciiArt.java - test/com/sun/javadoc/AccessAsciiArt/p1/C.java - test/com/sun/javadoc/AccessAsciiArt/p1/I.java - test/com/sun/javadoc/AccessAsciiArt/p1/SC.java - test/com/sun/javadoc/AccessAsciiArt/p1/SI.java - test/com/sun/javadoc/AccessAsciiArt/p1/subpkg/SSC.java - test/com/sun/javadoc/AccessFrameTitle/AccessFrameTitle.java - test/com/sun/javadoc/AccessFrameTitle/p1/C1.java - test/com/sun/javadoc/AccessFrameTitle/p2/C2.java - test/com/sun/javadoc/AccessH1/AccessH1.java - test/com/sun/javadoc/AccessH1/p1/C.java - test/com/sun/javadoc/AccessH1/p2/C2.java - test/com/sun/javadoc/AccessSkipNav/AccessSkipNav.java - test/com/sun/javadoc/AccessSkipNav/p1/C1.java - test/com/sun/javadoc/AccessSkipNav/p2/C2.java - test/com/sun/javadoc/AccessSummary/AccessSummary.java - test/com/sun/javadoc/AccessSummary/p1/C1.java - test/com/sun/javadoc/AccessSummary/p2/C2.java - test/com/sun/javadoc/AuthorDD/AuthorDD.java - test/com/sun/javadoc/AuthorDD/p1/C1.java - test/com/sun/javadoc/DocRootSlash/DocRootSlash.java - test/com/sun/javadoc/DocRootSlash/overview.html - test/com/sun/javadoc/DocRootSlash/p1/C1.java - test/com/sun/javadoc/DocRootSlash/p1/package.html - test/com/sun/javadoc/DocRootSlash/p2/C2.java - test/com/sun/javadoc/DocRootSlash/p2/package.html - test/com/sun/javadoc/InheritDocForUserTags/DocTest.java - test/com/sun/javadoc/JavascriptWinTitle/JavascriptWinTitle.java - test/com/sun/javadoc/JavascriptWinTitle/overview.html - test/com/sun/javadoc/JavascriptWinTitle/p1/C.java - test/com/sun/javadoc/JavascriptWinTitle/p2/C2.java - test/com/sun/javadoc/JavascriptWinTitle/package-list - test/com/sun/javadoc/MetaTag/MetaTag.java - test/com/sun/javadoc/MetaTag/p1/C1.java - test/com/sun/javadoc/MetaTag/p2/C2.java - test/com/sun/javadoc/PackagesHeader/PackagesHeader.java - test/com/sun/javadoc/PackagesHeader/p1/C1.java - test/com/sun/javadoc/PackagesHeader/p2/C2.java - test/com/sun/javadoc/T6735320/SerialFieldTest.java - test/com/sun/javadoc/T6735320/T6735320.java - test/com/sun/javadoc/ValidHtml/ValidHtml.java - test/com/sun/javadoc/ValidHtml/overview.html - test/com/sun/javadoc/ValidHtml/p1/C.java - test/com/sun/javadoc/ValidHtml/p2/C2.java - test/com/sun/javadoc/VersionNumber/VersionNumber.java - test/com/sun/javadoc/VersionNumber/p1/C.java - test/com/sun/javadoc/WindowTitles/WindowTitles.java - test/com/sun/javadoc/WindowTitles/p1/C1.java - test/com/sun/javadoc/WindowTitles/p2/C2.java - test/com/sun/javadoc/_template/Template.java - test/com/sun/javadoc/_template/TemplateComplete.java - test/com/sun/javadoc/constantValues/A.java - test/com/sun/javadoc/constantValues/TestConstantValues.java - test/com/sun/javadoc/constantValues/TestConstantValues2.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/testAbsLinkPath/pkg1/C1.java - test/com/sun/javadoc/testAbsLinkPath/pkg2/C2.java - test/com/sun/javadoc/testAbstractMethod/TestAbstractMethod.java - test/com/sun/javadoc/testAbstractMethod/pkg/A.java - test/com/sun/javadoc/testAbstractMethod/pkg/B.java - test/com/sun/javadoc/testAbstractMethod/pkg/C.java - test/com/sun/javadoc/testAnchorNames/TestAnchorNames.java - test/com/sun/javadoc/testAnchorNames/pkg1/DeprMemClass.java - test/com/sun/javadoc/testAnchorNames/pkg1/RegClass.java - test/com/sun/javadoc/testAnnotationOptional/TestAnnotationOptional.java - test/com/sun/javadoc/testAnnotationOptional/pkg/AnnotationOptional.java - test/com/sun/javadoc/testAnnotationTypes/TestAnnotationTypes.java - test/com/sun/javadoc/testAnnotationTypes/pkg/AnnotationType.java - test/com/sun/javadoc/testAnnotationTypes/pkg/AnnotationTypeField.java - test/com/sun/javadoc/testBackSlashInLink/C.java - test/com/sun/javadoc/testBackSlashInLink/TestBackSlashInLink.java - test/com/sun/javadoc/testBadPackageFileInJar/TestBadPackageFileInJar.java - test/com/sun/javadoc/testBadPackageFileInJar/badPackageFileInJar.jar - test/com/sun/javadoc/testBadPackageFileInJar/pkg/C.java - test/com/sun/javadoc/testBadSourceFile/C1.java - test/com/sun/javadoc/testBadSourceFile/C2.java - test/com/sun/javadoc/testBadSourceFile/TestBadSourceFile.java - test/com/sun/javadoc/testBaseClass/Bar.java - test/com/sun/javadoc/testBaseClass/BaseClass.java - test/com/sun/javadoc/testBaseClass/TestBaseClass.java - test/com/sun/javadoc/testBaseClass/baz/Foo.java - test/com/sun/javadoc/testBreakIterator/TestBreakIterator.java - test/com/sun/javadoc/testBreakIterator/pkg/BreakIteratorTest.java - test/com/sun/javadoc/testCRLineSeparator/TestCRLineSeparator.java - test/com/sun/javadoc/testCRLineSeparator/pkg/MyClass.java - test/com/sun/javadoc/testCharset/TestCharset.java - test/com/sun/javadoc/testCharset/pkg/Foo.java - test/com/sun/javadoc/testClassCrossReferences/C.java - test/com/sun/javadoc/testClassCrossReferences/TestClassCrossReferences.java - test/com/sun/javadoc/testClassCrossReferences/package-list - test/com/sun/javadoc/testClassTree/TestClassTree.java - test/com/sun/javadoc/testClassTree/pkg/AnnotationType.java - test/com/sun/javadoc/testClassTree/pkg/ChildClass.java - test/com/sun/javadoc/testClassTree/pkg/Coin.java - test/com/sun/javadoc/testClassTree/pkg/ParentClass.java - test/com/sun/javadoc/testCmndLineClass/C5.java - test/com/sun/javadoc/testCmndLineClass/TestCmndLineClass.java - test/com/sun/javadoc/testCmndLineClass/pkg1/C1.java - test/com/sun/javadoc/testCmndLineClass/pkg1/C2.java - test/com/sun/javadoc/testCmndLineClass/pkg1/package.html - test/com/sun/javadoc/testCmndLineClass/pkg2/C3.java - test/com/sun/javadoc/testCmndLineClass/pkg2/C4.java - test/com/sun/javadoc/testCmndLineClass/pkg2/package.html - test/com/sun/javadoc/testCompletionFailure/TestCompletionFailure.java - test/com/sun/javadoc/testCompletionFailure/pkg1/NumberFormatTest.java - test/com/sun/javadoc/testConstantValuesPage/TestConstantValuesPage.java - test/com/sun/javadoc/testConstructorIndent/C.java - test/com/sun/javadoc/testConstructorIndent/TestConstructorIndent.java - test/com/sun/javadoc/testConstructors/TestConstructors.java - test/com/sun/javadoc/testConstructors/pkg1/Outer.java - test/com/sun/javadoc/testCustomTag/TagTestClass.java - test/com/sun/javadoc/testCustomTag/TestCustomTag.java - test/com/sun/javadoc/testCustomTag/taglets/CustomTag.java - test/com/sun/javadoc/testDeprecatedDocs/TestDeprecatedDocs.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/DeprecatedClassByAnnotation.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestAnnotationType.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestClass.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestEnum.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestError.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestException.java - test/com/sun/javadoc/testDeprecatedDocs/pkg/TestInterface.java - test/com/sun/javadoc/testDocEncoding/TestDocEncoding.java - test/com/sun/javadoc/testDocEncoding/pkg/Test.java - test/com/sun/javadoc/testDocErrorReporter/TestDocErrorReporter.java - test/com/sun/javadoc/testDocFileDir/TestDocFileDir.java - test/com/sun/javadoc/testDocFileDir/pkg/C.java - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/subdir-excluded1/testfile.txt - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/subdir-excluded2/testfile.txt - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/subdir-used1/testfile.txt - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/subdir-used2/testfile.txt - test/com/sun/javadoc/testDocFileDir/pkg/doc-files/testfile.txt - test/com/sun/javadoc/testDocFiles/TestDocFiles.java - test/com/sun/javadoc/testDocFiles/pkg/Test.java - test/com/sun/javadoc/testDocFiles/pkg/doc-files/test.txt - test/com/sun/javadoc/testDocRootInlineTag/TestDocRootInlineTag.java - test/com/sun/javadoc/testDocRootInlineTag/TestDocRootTag.java - test/com/sun/javadoc/testDocRootInlineTag/package-list - test/com/sun/javadoc/testDocRootInlineTag/pkg/C.java - test/com/sun/javadoc/testDocRootLink/TestDocRootLink.java - test/com/sun/javadoc/testDocRootLink/pkg1/C1.java - test/com/sun/javadoc/testDocRootLink/pkg1/package.html - test/com/sun/javadoc/testDocRootLink/pkg2/C2.java - test/com/sun/javadoc/testDocRootLink/pkg2/package.html - test/com/sun/javadoc/testDupParamWarn/TestDupParamWarn.java - test/com/sun/javadoc/testDupParamWarn/pkg/Bar.java - test/com/sun/javadoc/testDupParamWarn/pkg/Foo.java - test/com/sun/javadoc/testEmptyClass/TestEmptyClass.java - test/com/sun/javadoc/testEmptyClass/src/Empty.java - test/com/sun/javadoc/testEnclosingClass/TestEnclosingClass.java - test/com/sun/javadoc/testEnclosingClass/pkg/MyClass.java - test/com/sun/javadoc/testEncoding/EncodeTest.java - test/com/sun/javadoc/testEncoding/TestEncoding.java - test/com/sun/javadoc/testExternalOverridenMethod/TestExternalOverridenMethod.java - test/com/sun/javadoc/testExternalOverridenMethod/package-list - test/com/sun/javadoc/testExternalOverridenMethod/pkg/XReader.java - test/com/sun/javadoc/testGeneratedBy/TestGeneratedBy.java - test/com/sun/javadoc/testGeneratedBy/pkg/MyClass.java - test/com/sun/javadoc/testGroupOption/TestGroupOption.java - test/com/sun/javadoc/testGroupOption/pkg1/C.java - test/com/sun/javadoc/testGroupOption/pkg2/C.java - test/com/sun/javadoc/testGroupOption/pkg3/C.java - test/com/sun/javadoc/testHeadings/TestHeadings.java - test/com/sun/javadoc/testHeadings/pkg1/C1.java - test/com/sun/javadoc/testHeadings/pkg2/C2.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/testHiddenMembers/pkg/BaseClass.java - test/com/sun/javadoc/testHiddenMembers/pkg/SubClass.java - test/com/sun/javadoc/testHref/TestHref.java - test/com/sun/javadoc/testHref/package-list - test/com/sun/javadoc/testHref/pkg/C1.java - test/com/sun/javadoc/testHref/pkg/C2.java - test/com/sun/javadoc/testHref/pkg/C4.java - test/com/sun/javadoc/testHrefInDocComment/TestHrefInDocComment.java - test/com/sun/javadoc/testHrefInDocComment/pkg/I1.java - test/com/sun/javadoc/testHrefInDocComment/pkg/I2.java - test/com/sun/javadoc/testHtmlComments/C.java - test/com/sun/javadoc/testHtmlComments/TestHtmlComments.java - test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C1.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C2.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C3.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C4.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/C5.java - test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/package-info.java - test/com/sun/javadoc/testHtmlDocument/TestHtmlDocument.java - test/com/sun/javadoc/testHtmlDocument/testLink.html - test/com/sun/javadoc/testHtmlDocument/testMarkup.html - test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java - test/com/sun/javadoc/testHtmlStrongTag/pkg1/C1.java - test/com/sun/javadoc/testHtmlStrongTag/pkg2/C2.java - test/com/sun/javadoc/testHtmlTableStyles/TestHtmlTableStyles.java - test/com/sun/javadoc/testHtmlTableStyles/pkg1/TestTable.java - test/com/sun/javadoc/testHtmlTableStyles/pkg2/TestUse.java - test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java - test/com/sun/javadoc/testHtmlTableTags/pkg1/C1.java - test/com/sun/javadoc/testHtmlTableTags/pkg1/I1.java - test/com/sun/javadoc/testHtmlTableTags/pkg1/package-info.java - test/com/sun/javadoc/testHtmlTableTags/pkg2/C2.java - test/com/sun/javadoc/testHtmlTableTags/pkg2/C3.java - test/com/sun/javadoc/testHtmlTableTags/pkg2/C4.java - test/com/sun/javadoc/testHtmlTableTags/pkg2/package-info.java - test/com/sun/javadoc/testHtmlTag/TestHtmlTag.java - test/com/sun/javadoc/testHtmlTag/pkg1/C1.java - test/com/sun/javadoc/testHtmlTag/pkg2/C2.java - test/com/sun/javadoc/testHtmlVersion/TestHtmlVersion.java - test/com/sun/javadoc/testHtmlVersion/pkg/AnnotationType.java - test/com/sun/javadoc/testHtmlVersion/pkg/AnotherClass.java - test/com/sun/javadoc/testHtmlVersion/pkg/TestError.java - test/com/sun/javadoc/testHtmlVersion/pkg/TestException.java - test/com/sun/javadoc/testHtmlVersion/pkg/TestInterface.java - test/com/sun/javadoc/testHtmlVersion/pkg/package-info.java - test/com/sun/javadoc/testHtmlVersion/pkg1/NestedInnerClass.java - test/com/sun/javadoc/testHtmlVersion/pkg1/PrivateIncludeInnerClass.java - test/com/sun/javadoc/testHtmlVersion/pkg1/ProtectedInnerClass.java - test/com/sun/javadoc/testHtmlVersion/pkg1/PublicExcludeInnerClass.java - test/com/sun/javadoc/testHtmlVersion/pkg1/RegClass.java - test/com/sun/javadoc/testHtmlVersion/pkg2/DeprecatedClassByAnnotation.java - test/com/sun/javadoc/testHtmlVersion/pkg2/Interface.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestAnnotationType.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestClass.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestEnum.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestError.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestException.java - test/com/sun/javadoc/testHtmlVersion/pkg2/TestInterface.java - test/com/sun/javadoc/testHtmlVersion/pkg3/ClassNoConstants.java - test/com/sun/javadoc/testHtmlVersion/profile-rtjar-includes.txt - test/com/sun/javadoc/testIndentation/TestIndentation.java - test/com/sun/javadoc/testIndentation/p/Indent.java - test/com/sun/javadoc/testIndentation/p/IndentAnnot.java - test/com/sun/javadoc/testIndex/NoPackage.java - test/com/sun/javadoc/testIndex/TestIndex.java - test/com/sun/javadoc/testIndex/pkg/AnnotationType.java - test/com/sun/javadoc/testIndex/pkg/C.java - test/com/sun/javadoc/testIndex/pkg/Coin.java - test/com/sun/javadoc/testIndex/pkg/Interface.java - test/com/sun/javadoc/testInlineLinkLabel/TestInlineLinkLabel.java - test/com/sun/javadoc/testInlineLinkLabel/pkg/C1.java - test/com/sun/javadoc/testInlineLinkLabel/pkg/C2.java - test/com/sun/javadoc/testInlineLinkLabel/pkg/package.html - test/com/sun/javadoc/testInterface/TestInterface.java - test/com/sun/javadoc/testInterface/pkg/Child.java - test/com/sun/javadoc/testInterface/pkg/Interface.java - test/com/sun/javadoc/testInterface/pkg/Parent.java - test/com/sun/javadoc/testJavaFX/TestJavaFX.java - test/com/sun/javadoc/testJavaFX/pkg1/C.java - test/com/sun/javadoc/testJavaFX/pkg1/D.java - test/com/sun/javadoc/testJavaFX/pkg2/Test.java - test/com/sun/javadoc/testJavascript/TestJavascript.java - test/com/sun/javadoc/testJavascript/pkg/C.java - test/com/sun/javadoc/testLambdaFeature/TestLambdaFeature.java - test/com/sun/javadoc/testLambdaFeature/pkg/A.java - test/com/sun/javadoc/testLambdaFeature/pkg/B.java - test/com/sun/javadoc/testLambdaFeature/pkg1/FuncInf.java - test/com/sun/javadoc/testLambdaFeature/pkg1/NotAFuncInf.java - test/com/sun/javadoc/testLeadingSpaces/LeadingSpaces.java - test/com/sun/javadoc/testLegacyTaglet/C.java - test/com/sun/javadoc/testLegacyTaglet/Check.java - test/com/sun/javadoc/testLegacyTaglet/TestLegacyTaglet.java - test/com/sun/javadoc/testLegacyTaglet/ToDoTaglet.java - test/com/sun/javadoc/testLegacyTaglet/UnderlineTaglet.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/testLinkOption/extra/StringBuilder.java - test/com/sun/javadoc/testLinkOption/jdk/package-list - test/com/sun/javadoc/testLinkOption/mylib/lang/StringBuilderChild.java - test/com/sun/javadoc/testLinkOption/pkg/C.java - test/com/sun/javadoc/testLinkOption/pkg2/C2.java - test/com/sun/javadoc/testLinkOption/testNewLineInLink/C.java - test/com/sun/javadoc/testLinkOption/testNewLineInLink/package.html - test/com/sun/javadoc/testLinkTaglet/TestLinkTaglet.java - test/com/sun/javadoc/testLinkTaglet/checkPkg/A.java - test/com/sun/javadoc/testLinkTaglet/checkPkg/B.java - test/com/sun/javadoc/testLinkTaglet/pkg/C.java - test/com/sun/javadoc/testLinkToSerialForm/TestLinkToSerialForm.java - test/com/sun/javadoc/testLinkToSerialForm/pkg/C.java - test/com/sun/javadoc/testLiteralCodeInPre/TestLiteralCodeInPre.java - test/com/sun/javadoc/testLiteralCodeInPre/pkg/Test.java - test/com/sun/javadoc/testMemberInheritence/TestMemberInheritence.java - test/com/sun/javadoc/testMemberInheritence/diamond/A.java - test/com/sun/javadoc/testMemberInheritence/diamond/B.java - test/com/sun/javadoc/testMemberInheritence/diamond/C.java - test/com/sun/javadoc/testMemberInheritence/diamond/X.java - test/com/sun/javadoc/testMemberInheritence/diamond/Z.java - test/com/sun/javadoc/testMemberInheritence/inheritDist/A.java - test/com/sun/javadoc/testMemberInheritence/inheritDist/B.java - test/com/sun/javadoc/testMemberInheritence/inheritDist/C.java - test/com/sun/javadoc/testMemberInheritence/pkg/BaseClass.java - test/com/sun/javadoc/testMemberInheritence/pkg/BaseInterface.java - test/com/sun/javadoc/testMemberInheritence/pkg/SubClass.java - test/com/sun/javadoc/testMemberSummary/TestMemberSummary.java - test/com/sun/javadoc/testMemberSummary/pkg/PrivateParent.java - test/com/sun/javadoc/testMemberSummary/pkg/PublicChild.java - test/com/sun/javadoc/testMemberSummary/pkg2/A.java - test/com/sun/javadoc/testMethodTypes/TestMethodTypes.java - test/com/sun/javadoc/testMethodTypes/pkg1/A.java - test/com/sun/javadoc/testMethodTypes/pkg1/B.java - test/com/sun/javadoc/testMethodTypes/pkg1/D.java - test/com/sun/javadoc/testModifier/Interface.java - test/com/sun/javadoc/testModifier/ModifierAbstract.java - test/com/sun/javadoc/testModifier/Test.java - test/com/sun/javadoc/testModifier/TestModifier.java - test/com/sun/javadoc/testNavigation/TestNavigation.java - test/com/sun/javadoc/testNavigation/pkg/A.java - test/com/sun/javadoc/testNavigation/pkg/C.java - test/com/sun/javadoc/testNavigation/pkg/E.java - test/com/sun/javadoc/testNavigation/pkg/I.java - test/com/sun/javadoc/testNestedGenerics/TestNestedGenerics.java - test/com/sun/javadoc/testNestedGenerics/pkg/NestedGenerics.java - test/com/sun/javadoc/testNestedInlineTag/TestNestedInlineTag.java - test/com/sun/javadoc/testNestedInlineTag/testtaglets/BoldTaglet.java - test/com/sun/javadoc/testNestedInlineTag/testtaglets/GreenTaglet.java - test/com/sun/javadoc/testNestedInlineTag/testtaglets/UnderlineTaglet.java - test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/AnnotationType.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/AnnotationTypeUndocumented.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/AnnotationTypeUsage.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/Coin.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/MultiTypeParameters.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/SubInterface.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/SuperInterface.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/TypeParameterSubClass.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/TypeParameterSuperClass.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/TypeParameters.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/VarArgs.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/Wildcards.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg/package-info.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg1/A.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg1/B.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ClassUseTest1.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ClassUseTest2.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ClassUseTest3.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/Foo.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/Foo2.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/Foo3.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/Foo4.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ParamTest.java - test/com/sun/javadoc/testNewLanguageFeatures/pkg2/ParamTest2.java - test/com/sun/javadoc/testNoPackagesFile/C.java - test/com/sun/javadoc/testNoPackagesFile/TestNoPackagesFile.java - test/com/sun/javadoc/testNonInlineHtmlTagRemoval/C.java - test/com/sun/javadoc/testNonInlineHtmlTagRemoval/Negative.java - test/com/sun/javadoc/testNonInlineHtmlTagRemoval/TestNonInlineHtmlTagRemoval.java - test/com/sun/javadoc/testNotifications/TestNotifications.java - test/com/sun/javadoc/testNotifications/pkg/C.java - test/com/sun/javadoc/testOptions/TestOptions.java - test/com/sun/javadoc/testOptions/pkg/Foo.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/A.java - test/com/sun/javadoc/testOrdering/pkg1/B.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/MethodOrder.java - test/com/sun/javadoc/testOrdering/pkg1/UsedClass.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 - 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/testOverridenMethods/pkg1/BaseClass.java - test/com/sun/javadoc/testOverridenMethods/pkg1/SubClass.java - test/com/sun/javadoc/testOverridenMethods/pkg2/SubClass.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I0.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I1.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I2.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I3.java - test/com/sun/javadoc/testOverridenMethods/pkg3/I4.java - test/com/sun/javadoc/testPackageDeprecation/C2.java - test/com/sun/javadoc/testPackageDeprecation/FooDepr.java - test/com/sun/javadoc/testPackageDeprecation/TestPackageDeprecation.java - test/com/sun/javadoc/testPackageDeprecation/pkg/A.java - test/com/sun/javadoc/testPackageDeprecation/pkg1/ClassUseTest1.java - test/com/sun/javadoc/testPackageDeprecation/pkg1/Foo.java - test/com/sun/javadoc/testPackageDeprecation/pkg1/Foo2.java - test/com/sun/javadoc/testPackageDeprecation/pkg1/package-info.java - test/com/sun/javadoc/testPackagePage/TestPackagePage.java - test/com/sun/javadoc/testPackagePage/com/pkg/C.java - test/com/sun/javadoc/testPackagePage/com/pkg/package.html - test/com/sun/javadoc/testPackagePage/pkg2/C.java - test/com/sun/javadoc/testParamTaglet/TestParamTaglet.java - test/com/sun/javadoc/testParamTaglet/pkg/C.java - test/com/sun/javadoc/testParamTaglet/pkg/Parent.java - test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java - test/com/sun/javadoc/testPrivateClasses/pkg/PrivateInterface.java - test/com/sun/javadoc/testPrivateClasses/pkg/PrivateParent.java - test/com/sun/javadoc/testPrivateClasses/pkg/PublicChild.java - test/com/sun/javadoc/testPrivateClasses/pkg/PublicInterface.java - test/com/sun/javadoc/testPrivateClasses/pkg2/C.java - test/com/sun/javadoc/testPrivateClasses/pkg2/I.java - test/com/sun/javadoc/testRecurseSubPackages/TestRecurseSubPackages.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/C1.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/C2.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/C3.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/C4.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/packageToExclude/DummyClass.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/pkg3/C5.java - test/com/sun/javadoc/testRecurseSubPackages/pkg1/pkg2/pkg3/C6.java - test/com/sun/javadoc/testRelativeLinks/TestRelativeLinks.java - test/com/sun/javadoc/testRelativeLinks/pkg/C.java - test/com/sun/javadoc/testRelativeLinks/pkg/package.html - test/com/sun/javadoc/testRelativeLinks/pkg2/Foo.java - test/com/sun/javadoc/testRepeatedAnnotations/TestRepeatedAnnotations.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/C.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContaineeRegDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContaineeSynthDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContainerRegDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContainerRegNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/ContainerSynthDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/D.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/NonSynthDocContainer.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegArryDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegContaineeDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegContaineeNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegContainerDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegContainerNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg/RegDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/C.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContaineeNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContaineeSynthDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContainerSynthNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContainerValDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/ContainerValNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/RegContaineeDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/RegContaineeNotDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/RegContainerValDoc.java - test/com/sun/javadoc/testRepeatedAnnotations/pkg1/RegContainerValNotDoc.java - test/com/sun/javadoc/testReturnTag/TestReturnTag.java - test/com/sun/javadoc/testSearch/TestSearch.java - test/com/sun/javadoc/testSearch/UnnamedPkgClass.java - test/com/sun/javadoc/testSearch/pkg/AnnotationType.java - test/com/sun/javadoc/testSearch/pkg/AnotherClass.java - test/com/sun/javadoc/testSearch/pkg/TestError.java - test/com/sun/javadoc/testSearch/pkg/TestException.java - test/com/sun/javadoc/testSearch/pkg/TestInterface.java - test/com/sun/javadoc/testSearch/pkg/package-info.java - test/com/sun/javadoc/testSearch/pkg1/NestedInnerClass.java - test/com/sun/javadoc/testSearch/pkg1/PrivateIncludeInnerClass.java - test/com/sun/javadoc/testSearch/pkg1/ProtectedInnerClass.java - test/com/sun/javadoc/testSearch/pkg1/PublicExcludeInnerClass.java - test/com/sun/javadoc/testSearch/pkg1/RegClass.java - test/com/sun/javadoc/testSearch/pkg2/DeprecatedClassByAnnotation.java - test/com/sun/javadoc/testSearch/pkg2/Interface.java - test/com/sun/javadoc/testSearch/pkg2/TestAnnotationType.java - test/com/sun/javadoc/testSearch/pkg2/TestClass.java - test/com/sun/javadoc/testSearch/pkg2/TestEnum.java - test/com/sun/javadoc/testSearch/pkg2/TestError.java - test/com/sun/javadoc/testSearch/pkg2/TestException.java - test/com/sun/javadoc/testSearch/pkg2/TestInterface.java - test/com/sun/javadoc/testSearch/pkg3/ClassNoConstants.java - test/com/sun/javadoc/testSearch/pkgfx/C.java - test/com/sun/javadoc/testSeeTag/TestSeeTag.java - test/com/sun/javadoc/testSeeTag/pkg/Test.java - test/com/sun/javadoc/testSerialVersionUID/C.java - test/com/sun/javadoc/testSerialVersionUID/TestSerialVersionUID.java - test/com/sun/javadoc/testSerializedForm/TestSerializedForm.java - test/com/sun/javadoc/testSerializedForm/pkg1/NestedInnerClass.java - test/com/sun/javadoc/testSerializedForm/pkg1/PrivateIncludeInnerClass.java - test/com/sun/javadoc/testSerializedForm/pkg1/ProtectedInnerClass.java - test/com/sun/javadoc/testSerializedForm/pkg1/PublicExcludeInnerClass.java - test/com/sun/javadoc/testSerializedFormDeprecationInfo/TestSerializedFormDeprecationInfo.java - test/com/sun/javadoc/testSerializedFormDeprecationInfo/pkg1/C1.java - test/com/sun/javadoc/testSerializedFormDeprecationInfo/pkg1/C2.java - test/com/sun/javadoc/testSerializedFormDeprecationInfo/pkg1/C3.java - test/com/sun/javadoc/testSimpleTag/C.java - test/com/sun/javadoc/testSimpleTag/TestSimpleTag.java - test/com/sun/javadoc/testSimpleTagExclude/DummyClass.java - test/com/sun/javadoc/testSimpleTagExclude/TestSimpleTagExclude.java - test/com/sun/javadoc/testSimpleTagInherit/TestSimpleTagInherit.java - test/com/sun/javadoc/testSimpleTagInherit/p/BaseClass.java - test/com/sun/javadoc/testSimpleTagInherit/p/TestClass.java - test/com/sun/javadoc/testSinceTag/TestSinceTag.java - test/com/sun/javadoc/testSinceTag/pkg1/C1.java - test/com/sun/javadoc/testSingleQuotedLink/TestSingleQuotedLink.java - test/com/sun/javadoc/testSingleQuotedLink/pkg1/C1.java - test/com/sun/javadoc/testSingleQuotedLink/pkg1/C2.java - test/com/sun/javadoc/testSingleQuotedLink/pkg1/package.html - test/com/sun/javadoc/testSourceTab/DoubleTab/C.java - test/com/sun/javadoc/testSourceTab/SingleTab/C.java - test/com/sun/javadoc/testSourceTab/TestSourceTab.java - test/com/sun/javadoc/testStylesheet/TestStylesheet.java - test/com/sun/javadoc/testStylesheet/pkg/A.java - test/com/sun/javadoc/testSubTitle/TestSubTitle.java - test/com/sun/javadoc/testSubTitle/pkg/C.java - test/com/sun/javadoc/testSubTitle/pkg/package.html - test/com/sun/javadoc/testSummaryHeading/C.java - test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java - test/com/sun/javadoc/testSuperclassInSerialForm/TestSuperClassInSerialForm.java - test/com/sun/javadoc/testSuperclassInSerialForm/pkg/SubClass.java - test/com/sun/javadoc/testSuperclassInSerialForm/pkg/SuperClass.java - test/com/sun/javadoc/testSupplementary/C.java - test/com/sun/javadoc/testSupplementary/TestSupplementary.java - test/com/sun/javadoc/testTagHolderMethod/TestTagHolderMethod.java - test/com/sun/javadoc/testTagHolderMethod/pkg/C.java - test/com/sun/javadoc/testTagInheritence/TestTagInheritence.java - test/com/sun/javadoc/testTagInheritence/firstSentence/A.java - test/com/sun/javadoc/testTagInheritence/firstSentence/B.java - test/com/sun/javadoc/testTagInheritence/firstSentence2/A.java - test/com/sun/javadoc/testTagInheritence/firstSentence2/B.java - test/com/sun/javadoc/testTagInheritence/firstSentence2/C.java - test/com/sun/javadoc/testTagInheritence/pkg/TestAbstractClass.java - test/com/sun/javadoc/testTagInheritence/pkg/TestInterface.java - test/com/sun/javadoc/testTagInheritence/pkg/TestInterfaceForAbstractClass.java - test/com/sun/javadoc/testTagInheritence/pkg/TestSuperSuperClass.java - test/com/sun/javadoc/testTagInheritence/pkg/TestSuperSuperInterface.java - test/com/sun/javadoc/testTagInheritence/pkg/TestTagInheritence.java - test/com/sun/javadoc/testTagMisuse/TestTagMisuse.java - test/com/sun/javadoc/testTagOutput/TestTagOutput.java - test/com/sun/javadoc/testTagOutput/pkg1/DeprecatedTag.java - test/com/sun/javadoc/testTaglets/C.java - test/com/sun/javadoc/testTaglets/Child.java - test/com/sun/javadoc/testTaglets/Parent.java - test/com/sun/javadoc/testTaglets/TestTaglets.java - test/com/sun/javadoc/testTaglets/taglets/Foo.java - test/com/sun/javadoc/testThrowsHead/C.java - test/com/sun/javadoc/testThrowsHead/TestThrowsHead.java - test/com/sun/javadoc/testThrowsInheritence/C.java - test/com/sun/javadoc/testThrowsInheritence/Foo.java - test/com/sun/javadoc/testThrowsInheritence/I.java - test/com/sun/javadoc/testThrowsInheritence/Iface.java - test/com/sun/javadoc/testThrowsInheritence/TestThrowsTagInheritence.java - test/com/sun/javadoc/testThrowsTag/TestThrowsTag.java - test/com/sun/javadoc/testThrowsTag/pkg/C.java - test/com/sun/javadoc/testThrowsTag/pkg/P.java - test/com/sun/javadoc/testThrowsTag/pkg/T1.java - test/com/sun/javadoc/testThrowsTag/pkg/T2.java - test/com/sun/javadoc/testThrowsTag/pkg/T3.java - test/com/sun/javadoc/testThrowsTag/pkg/T4.java - test/com/sun/javadoc/testThrowsTag/pkg/T5.java - test/com/sun/javadoc/testThrowsTag/pkg/T6.java - test/com/sun/javadoc/testThrowsTag/pkg/T7.java - test/com/sun/javadoc/testThrowsTag/pkg/T8.java - test/com/sun/javadoc/testTitleInHref/TestTitleInHref.java - test/com/sun/javadoc/testTitleInHref/package-list - test/com/sun/javadoc/testTitleInHref/pkg/Class.java - test/com/sun/javadoc/testTitleInHref/pkg/Interface.java - test/com/sun/javadoc/testTitleInHref/pkg/Links.java - test/com/sun/javadoc/testTopOption/TestTopOption.java - test/com/sun/javadoc/testTopOption/overview.html - test/com/sun/javadoc/testTopOption/pkg/AnnotationType.java - test/com/sun/javadoc/testTopOption/pkg/Cl.java - test/com/sun/javadoc/testTypeAnnotations/TestTypeAnnotations.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/ClassExtends.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/ClassParameters.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Fields.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/MethodReturnType.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/MethodTypeParameters.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Parameters.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Receivers.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Throws.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/TypeParameters.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Varargs.java - test/com/sun/javadoc/testTypeAnnotations/typeannos/Wildcards.java - test/com/sun/javadoc/testTypeParams/TestTypeParameters.java - test/com/sun/javadoc/testTypeParams/pkg/C.java - test/com/sun/javadoc/testTypeParams/pkg/ClassUseTest3.java - test/com/sun/javadoc/testTypeParams/pkg/Foo4.java - test/com/sun/javadoc/testTypeParams/pkg/ParamTest2.java - test/com/sun/javadoc/testTypeParams/pkg/Parent.java - test/com/sun/javadoc/testUnnamedPackage/BadSource.java - test/com/sun/javadoc/testUnnamedPackage/C.java - test/com/sun/javadoc/testUnnamedPackage/TestUnnamedPackage.java - test/com/sun/javadoc/testUnnamedPackage/package.html - test/com/sun/javadoc/testUseOption/C.java - test/com/sun/javadoc/testUseOption/TestUseOption.java - test/com/sun/javadoc/testUseOption/UsedInC.java - test/com/sun/javadoc/testUseOption/pkg1/AnAbstract.java - test/com/sun/javadoc/testUseOption/pkg1/C1.java - test/com/sun/javadoc/testUseOption/pkg1/C10.java - test/com/sun/javadoc/testUseOption/pkg1/C2.java - test/com/sun/javadoc/testUseOption/pkg1/C4.java - test/com/sun/javadoc/testUseOption/pkg1/C5.java - test/com/sun/javadoc/testUseOption/pkg1/C6.java - test/com/sun/javadoc/testUseOption/pkg1/C7.java - test/com/sun/javadoc/testUseOption/pkg1/C8.java - test/com/sun/javadoc/testUseOption/pkg1/C9.java - test/com/sun/javadoc/testUseOption/pkg1/UsedClass.java - test/com/sun/javadoc/testUseOption/pkg1/UsedInterface.java - test/com/sun/javadoc/testUseOption/pkg1/UsedInterfaceA.java - test/com/sun/javadoc/testUseOption/pkg1/package.html - test/com/sun/javadoc/testUseOption/pkg2/C3.java - test/com/sun/javadoc/testUseOption/pkg2/package.html - test/com/sun/javadoc/testUseOption/unique/C1.java - test/com/sun/javadoc/testUseOption/unique/UseMe.java - test/com/sun/javadoc/testValueTag/TestValueTag.java - test/com/sun/javadoc/testValueTag/pkg1/Class1.java - test/com/sun/javadoc/testValueTag/pkg1/Class2.java - test/com/sun/javadoc/testValueTag/pkg1/CustomTagUsage.java - test/com/sun/javadoc/testValueTag/pkg2/Class3.java - test/com/sun/javadoc/testValueTag/pkg2/package.html - test/com/sun/javadoc/testWarnBadParamNames/C.java - test/com/sun/javadoc/testWarnBadParamNames/TestWarnBadParamNames.java - test/com/sun/javadoc/testWarnings/TestWarnings.java - test/com/sun/javadoc/testWarnings/pkg/X.java - test/com/sun/javadoc/testWarnings/pkg/package.html - test/com/sun/javadoc/testWindowTitle/TestWindowTitle.java - test/com/sun/javadoc/testWindowTitle/p1/C1.java - test/com/sun/javadoc/testWindowTitle/p2/C2.java - test/com/sun/javadoc/testXOption/TestXOption.java - test/com/sun/javadoc/typeAnnotations/smoke/TestSmoke.java - test/com/sun/javadoc/typeAnnotations/smoke/pkg/TargetTypes.java - test/tools/javadoc/6958836/errs/Errors.java - test/tools/javadoc/6958836/warns/Warnings.java - test/tools/javadoc/T4696488.java - test/tools/javadoc/T6551367.java - test/tools/javadoc/TestScriptInComment.java - test/tools/javadoc/api/basic/TagletPathTest.java - test/tools/javadoc/badSuper/BadSuper.java - test/tools/javadoc/badSuper/p/A.java - test/tools/javadoc/badSuper/p/B.java - test/tools/javadoc/sampleapi/SampleApiTest.java - test/tools/javadoc/sampleapi/res/fx.xml - test/tools/javadoc/sampleapi/res/simple.xml - test/tools/javadoc/sampleapi/res/sub.xml - test/tools/javadoc/sampleapi/res/tiny.xml Changeset: c70d35e16603 Author: lana Date: 2017-06-24 02:59 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/c70d35e16603 Added tag jdk-10+13 for changeset 123f40b60a18 ! .hgtags Changeset: 35ca6271f7d8 Author: rfield Date: 2017-06-25 13:38 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/35ca6271f7d8 8182489: jshell tool: rerun multiline snippet from history corrupts history Reviewed-by: jlahoda + test/jdk/jshell/ToolMultilineSnippetHistoryTest.java Changeset: 028d2b60d6f1 Author: rfield Date: 2017-06-25 13:42 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/028d2b60d6f1 8176110: JShell: completions with package results should, in most cases, be dot terminated Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/jshell/SourceCodeAnalysisImpl.java ! test/jdk/jshell/CompletionSuggestionTest.java Changeset: 204e92615c03 Author: rfield Date: 2017-06-26 14:16 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/204e92615c03 8182268: JShell: CompletionInfo.source() for CONSIDERED_INCOMPLETE missing semicolon Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/jshell/SourceCodeAnalysisImpl.java ! test/jdk/jshell/CompletenessTest.java ! test/jdk/jshell/KullaTesting.java Changeset: e9b5b77ad698 Author: rfield Date: 2017-06-26 18:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/e9b5b77ad698 8177847: jshell tool: retain delete of non-retained mode does not locally delete Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/Feedback.java ! test/jdk/jshell/ToolCommandOptionTest.java Changeset: c342fff3c5f7 Author: sadayapalam Date: 2017-06-27 15:30 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/c342fff3c5f7 8058408: Compiler should emit a clearer message for invalid parenthesized expression Reviewed-by: sadayapalam Contributed-by: priya.lakshmi.muthuswamy at oracle.com ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! test/tools/javac/Parens1.out ! test/tools/javac/Parens4.out + test/tools/javac/diags/examples/IllegalParanthesisExpression.java + test/tools/javac/expression/IllegalParenthesis.java + test/tools/javac/expression/IllegalParenthesis.out Changeset: bee16a697a56 Author: iris Date: 2017-06-28 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/bee16a697a56 8183142: Add bugids=dup to .jcheck/conf files for JDK 10 Reviewed-by: mr ! .jcheck/conf Changeset: 7b1789ef6956 Author: vromero Date: 2017-06-28 14:46 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/7b1789ef6956 8183148: cleanup ModuleSymbol.getSimpleName Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symbol.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Convert.java Changeset: 01789743ec58 Author: vromero Date: 2017-06-29 07:19 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/01789743ec58 8182747: javac crashes on bad annotation value Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/T8182747/BadAnnotationRegressionTest.java + test/tools/javac/T8182747/BadAnnotationRegressionTest.out + test/tools/javac/diags/examples/AnnoMustBeClasLiteral.java Changeset: 481439a86724 Author: vromero Date: 2017-06-29 08:24 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/481439a86724 8182649: Unable to integrate due to compilation error Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Infer.java + test/tools/javac/T8182649/AddCheckForPartiallyInferredTypesTest.java ! test/tools/javac/generics/inference/EagerReturnTypeResolution/EagerReturnTypeResolutionTestb.out ! test/tools/javac/lambda/8016177/T8016177g.out Changeset: 1f46ef818a64 Author: darcy Date: 2017-06-29 14:32 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/1f46ef818a64 8183255: Fix langtools TEST.groups file after fix for JDK-8177511 Reviewed-by: jjg ! test/TEST.groups Changeset: 0b74aa85c3c5 Author: vromero Date: 2017-06-30 05:47 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/0b74aa85c3c5 8182047: javac compile error on type-parameter-exceptions in lambda expressions Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/T8182047/CorrectGenerationOfExConstraintsTest.java Changeset: 34ad0d38103d Author: jlahoda Date: 2017-06-30 20:03 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/34ad0d38103d 8183021: JShell tests: Fix failing tests on Windows Reviewed-by: jjg, rfield ! test/jdk/jshell/ToolBasicTest.java ! test/jdk/jshell/ToolMultilineSnippetHistoryTest.java ! test/jdk/jshell/UITesting.java Changeset: add6717b655e Author: sadayapalam Date: 2017-07-03 12:58 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/add6717b655e 8068836: Error message should be updated when Override is used with static methods Summary: Issue a more direct, specific error when @Override annotation is used with a static method Reviewed-by: sadayapalam Contributed-by: priya.lakshmi.muthuswamy at oracle.com ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! test/tools/javac/annotations/6359949/T6359949a.java ! test/tools/javac/annotations/6359949/T6359949a.out + test/tools/javac/diags/examples/OverrideAnnotatedStaticMethod.java Changeset: 6f15d35d31df Author: ksrini Date: 2017-07-05 13:46 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/6f15d35d31df 8179704: doclet crashes with an empty package.html Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! test/jdk/javadoc/doclet/testPackageHtml/TestPackageHtml.java + test/jdk/javadoc/doclet/testPackageHtml/pkg2/X.java + test/jdk/javadoc/doclet/testPackageHtml/pkg2/package.html + test/jdk/javadoc/doclet/testPackageHtml/pkg3/X.java + test/jdk/javadoc/doclet/testPackageHtml/pkg3/package.html + test/jdk/javadoc/doclet/testPackageHtml/pkg4/X.java + test/jdk/javadoc/doclet/testPackageHtml/pkg4/package.html Changeset: 813863b6154b Author: jjg Date: 2017-07-05 14:36 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/813863b6154b 8183505: Update langtools tests to allow for unique test classes directory Reviewed-by: alanb ! test/tools/javadoc/8147801/T8147801.java ! test/tools/jdeprscan/tests/jdk/jdeprscan/TestLoad.java ! test/tools/jdeprscan/tests/jdk/jdeprscan/TestScan.java ! test/tools/jdeps/MultiReleaseJar.java From stanislav.smirnov at oracle.com Thu Jul 27 22:05:21 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Thu, 27 Jul 2017 22:05:21 +0000 Subject: hg: valhalla/valhalla/jaxp: 51 new changesets Message-ID: <201707272205.v6RM5MD9028047@aojmv0008.oracle.com> Changeset: 2fdbfbde3bc0 Author: joehw Date: 2017-04-17 16:24 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/2fdbfbde3bc0 8162572: Update License Header for all JAXP sources Reviewed-by: lancea ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/Constants.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/ExceptionConstants.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/Repository.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/AccessFlags.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Attribute.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/AttributeReader.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassFormatException.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassParser.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Code.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/CodeException.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Constant.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantCP.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantClass.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantDouble.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFieldref.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFloat.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInteger.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInterfaceMethodref.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantLong.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantMethodref.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantNameAndType.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantObject.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantPool.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantString.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantUtf8.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantValue.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Deprecated.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/DescendingVisitor.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/EmptyVisitor.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ExceptionTable.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Field.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/FieldOrMethod.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClass.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClasses.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/JavaClass.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumber.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumberTable.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariable.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariableTable.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Method.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Node.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/PMGClass.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Signature.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/SourceFile.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMap.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapEntry.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapType.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Synthetic.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Unknown.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Utility.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Visitor.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/AALOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/AASTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ACONST_NULL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ALOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ANEWARRAY.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ARETURN.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ARRAYLENGTH.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ASTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ATHROW.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/AllocationInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ArithmeticInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayType.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BALOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BASTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BIPUSH.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BREAKPOINT.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BasicType.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BranchHandle.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BranchInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CALOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CASTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CHECKCAST.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CPInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGen.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGenException.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ClassObserver.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CodeExceptionGen.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CompoundInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPoolGen.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPushInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ConversionInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/D2F.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/D2I.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/D2L.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DADD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DALOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DASTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPG.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DCONST.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DDIV.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DLOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DMUL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DNEG.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DREM.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DRETURN.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DSTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DSUB.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X1.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X2.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X1.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X2.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/EmptyVisitor.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ExceptionThrower.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/F2D.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/F2I.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/F2L.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FADD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FALOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FASTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPG.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FCONST.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FDIV.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FLOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FMUL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FNEG.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FREM.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FRETURN.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FSTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FSUB.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGen.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGenOrMethodGen.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldObserver.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldOrMethod.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GETFIELD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GETSTATIC.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO_W.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GotoInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2B.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2C.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2D.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2F.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2L.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2S.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IADD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IALOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IAND.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IASTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ICONST.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IDIV.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFEQ.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFGE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFGT.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFLE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFLT.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFNE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFNONNULL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFNULL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPEQ.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPNE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPEQ.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGT.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLT.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPNE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IINC.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ILOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP1.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP2.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IMUL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INEG.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INSTANCEOF.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEINTERFACE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESPECIAL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESTATIC.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEVIRTUAL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IOR.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IREM.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IRETURN.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ISHL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ISHR.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ISTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ISUB.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IUSHR.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IXOR.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IfInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IndexedInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/Instruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionComparator.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionConstants.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionFactory.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionHandle.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionList.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionListObserver.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionTargeter.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InvokeInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/JSR.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/JSR_W.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/JsrInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/L2D.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/L2F.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/L2I.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LADD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LALOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LAND.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LASTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LCMP.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LCONST.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LDC.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LDC2_W.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LDC_W.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LDIV.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LLOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LMUL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LNEG.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LOOKUPSWITCH.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LOR.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LREM.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LRETURN.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LSHL.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LSHR.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LSTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LSUB.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LUSHR.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LXOR.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LineNumberGen.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LoadClass.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LoadInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableGen.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MONITORENTER.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MONITOREXIT.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MULTIANEWARRAY.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MethodGen.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MethodObserver.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/NEW.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/NEWARRAY.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/NOP.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/NamedAndTyped.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ObjectType.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/POP.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/POP2.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PUSH.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PUTFIELD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PUTSTATIC.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PopInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PushInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/RET.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/RETURN.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ReferenceType.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnaddressType.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SALOAD.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SASTORE.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SIPUSH.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SWAP.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SWITCH.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/Select.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/StackConsumer.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/StackInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/StackProducer.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/StoreInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/TABLESWITCH.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/TargetLostException.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/Type.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/TypedInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/UnconditionalBranch.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/VariableLengthInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/Visitor.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/AttributeHTML.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/BCELFactory.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/BCELifier.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ByteSequence.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/Class2HTML.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoader.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoaderRepository.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassQueue.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassSet.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassStack.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassVector.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/CodeHTML.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ConstantHTML.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/MethodHTML.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/Repository.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/SecuritySupport.java ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/SyntheticRepository.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/extensions/ExpressionContext.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltBase.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltCommon.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDatetime.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDynamic.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltMath.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltStrings.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/Extensions.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/NodeInfo.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLMessages.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_en.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/templates/Constants.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/utils/ConfigurationError.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/utils/ObjectFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/utils/SecuritySupport.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/CollatorFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMCache.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMEnhancedForDTM.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/NodeIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/ProcessorVersion.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/StripFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/Translet.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/TransletException.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsoluteLocationPath.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsolutePathPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AlternativePattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AncestorPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyImports.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ArgumentList.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Attribute.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValue.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BinOpExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CallTemplate.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CastCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CeilingCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Closure.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Comment.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CompilerException.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ConcatCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ContainsCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Copy.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CopyOf.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CurrentCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DecimalFormatting.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DocumentCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ElementAvailableCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/EqualityExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Expression.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Fallback.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterParentPath.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilteredAbsoluteLocationPath.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FloorCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FlowList.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FormatNumberCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/GenerateIdCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdKeyPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/If.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IllegalCharException.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Instruction.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IntExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LangCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LastCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralAttribute.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocalNameCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocationPathPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LogicalExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Message.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameBase.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceAlias.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceUriCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NodeTest.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NotCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Number.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NumberCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Otherwise.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Output.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Param.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParameterRef.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentLocationPath.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Pattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/PositionCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Predicate.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstructionPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/QName.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RealExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelationalExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativeLocationPath.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativePathPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RoundCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SimpleAttributeValue.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SourceLoader.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StartsWithCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Step.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StepPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringLengthCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Text.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TopLevelElement.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnaryOpExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnionPathExpr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnparsedEntityUriCall.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnresolvedRef.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UseAttributeSets.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ValueOf.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Variable.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRef.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/When.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Whitespace.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/WithParam.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathLexer.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/AttributeSetMethodGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/BooleanType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/CompareGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ca.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_cs.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sk.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/FilterGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/IntType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/InternalError.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MarkerInstruction.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MatchGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NamedMethodGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeCounterGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSetType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordFactGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NumberType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/OutlineableChunkEnd.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/OutlineableChunkStart.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RealType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ReferenceType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ResultTreeType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RtMethodGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SlotAllocator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringStack.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TestGenerator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Type.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TypeCheckError.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Util.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/VoidType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AbsoluteIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AnyNodeCounter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ArrayNodeListIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/BitArray.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CachedNodeListIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ClonedNodeListIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CollatorFactoryBase.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMBuilder.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DupFilterIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/EmptyFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ExtendedSAX.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/Filter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilterIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilteredStepIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ForwardPositionIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/LoadDocument.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MatchingIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultiValuedNodeHeapIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultipleNodeCounter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeCounter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeIteratorBase.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecord.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecordFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NthIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SimpleResultTreeImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingleNodeCounter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingletonIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortSettings.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortingIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StepIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StripWhitespaceFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/UnionIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/XSLTCDTMManager.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Attributes.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Constants.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ca.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_cs.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_de.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_es.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_fr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_it.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ja.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_pt_BR.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sk.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_CN.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_TW.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/InternalRuntimeError.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/MessageHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Node.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Operators.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Parameter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/StringValueHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/OutputBuffer.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/StringOutputBuffer.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/TransletOutputHandlerFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/WriterOutputBuffer.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2TO.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/OutputSettings.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2DOM.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TrAXFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerHandlerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/XSLTCSource.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/util/IntegerArray.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/AttrImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/AttrNSImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/AttributeMap.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/CDATASectionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/CharacterDataImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/ChildNode.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/CommentImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMErrorImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationListImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationSourceImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMInputImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMLocatorImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMMessageFormatter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMOutputImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMXSImplementationSourceImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeepNodeListImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrNSImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCDATASectionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCommentImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDOMImplementationImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDocumentTypeImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementDefinitionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementNSImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityReferenceImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNode.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNotationImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredProcessingInstructionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredTextImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentFragmentImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/ElementDefinitionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/ElementNSImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/EntityImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/EntityReferenceImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/NamedNodeMapImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/NodeIteratorImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/NodeListCache.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/NotationImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDOMImplementationImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDocumentImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/ProcessingInstructionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/RangeExceptionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/RangeImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/TextImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/TreeWalkerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/events/EventImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/events/MutationEventImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/ExternalSubsetResolver.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/RevalidationHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NamespaceBinder.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityDescription.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNamespaceBinder.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDProcessor.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11NSDTDValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLAttributeDecl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLContentSpec.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDDescription.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDLoader.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDProcessor.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidatorFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLElementDecl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLEntityDecl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNSDTDValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNotationDecl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLSimpleType.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMAny.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMBinOp.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMLeaf.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMStateSet.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMUniOp.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/ContentModelValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/DFAContentModel.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/MixedContentModel.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/SimpleContentModel.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DVFactoryException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeFacetException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeValueException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/SchemaDVFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ValidationContext.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSFacets.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSSimpleType.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ENTITYDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDREFDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ListDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NMTOKENDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NOTATIONDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/StringDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDREFDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11NMTOKENDatatypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/Base64.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/HexBin.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AbstractDateTimeDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyAtomicDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnySimpleDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyURIDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/Base64BinaryDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseDVFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BooleanDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateTimeDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayTimeDurationDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DecimalDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DoubleDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DurationDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/EntityDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FloatDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FullDVFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/HexBinaryDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDREFDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IntegerDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/ListDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDayDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/PrecisionDecimalDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/QNameDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDVFactoryImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDateTimeException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/StringDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TimeDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TypeValidator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/UnionDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDurationDV.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/io/ASCIIReader.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/io/MalformedByteSequenceException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/io/UCSReader.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/io/UTF8Reader.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_de.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_es.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_fr.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_it.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ja.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_pt_BR.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_sv.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_CN.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_TW.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/validation/EntityState.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/validation/ValidationManager.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaNamespaceSupport.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaSymbols.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAnnotationImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeGroupDecl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDeclarationPool.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSGroupDecl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSImplementationImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSMessageFormatter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSModelGroupImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSNotationDecl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSParticleDecl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSWildcardDecl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/IdentityConstraint.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/KeyRef.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/Selector.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/UniqueOrKey.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/XPathMatcher.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/CMNodeFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMBinOp.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMLeaf.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMUniOp.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/AttrImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultDocument.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultElement.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultNode.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultText.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultXMLDocumentHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/ElementImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NamedNodeMapImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NodeImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOM.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/TextImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/SchemaContentHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAnnotationInfo.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractIDConstraintTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractParticleTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeGroupTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDComplexTypeTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDElementTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDGroupTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDKeyrefTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDNotationTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDUniqueOrKeyTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDWildcardTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDocumentInfo.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/ShortListImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/SimpleLocator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/StringListImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XInt.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XIntPool.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSGrammarPool.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMap4Types.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMapImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSObjectListImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/DefaultValidationErrorHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPConstants.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPValidatorComponent.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/SchemaValidatorConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/TeeXMLDocumentFilterImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/UnparsedEntityHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DatatypeFactoryImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/AbstractXMLSchema.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMDocumentHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultAugmentor.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultBuilder.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMValidatorHelper.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DraconianErrorHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/EmptyXMLSchema.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ErrorHandlerAdaptor.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/JAXPValidationMessageFormatter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ReadOnlyGrammarPool.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SimpleXMLSchema.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SoftReferenceGrammarPool.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHelper.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WeakReferenceXMLSchema.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WrappedSAXException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XSGrammarPoolContainer.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractDOMParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractXMLDocumentParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/BasicParserConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/CachingParserPool.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DTDParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/IntegratedParserConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/SAXParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/SecurityConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeAwareParserConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeParserConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configurable.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11DTDConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11NonValidatingConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLDocumentParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLParser.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XPointerParserConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/AttributesProxy.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMInputSource.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DatatypeMessageFormatter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DefaultErrorHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DraconianErrorHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerProxy.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerWrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/IntStack.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/LocatorProxy.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/LocatorWrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/MessageFormatter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/NamespaceSupport.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAX2XNI.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXInputSource.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXLocatorWrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXMessageFormatter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SecurityManager.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/ShadowedSymbolTable.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SynchronizedSymbolTable.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/TeeXMLDocumentFilterImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/URI.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XML11Char.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLChar.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLDocumentFilterImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLEntityDescriptionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLErrorCode.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLGrammarPoolImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLInputSourceAdaptor.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLResourceIdentifierImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLStringBuffer.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLSymbols.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/utils/ConfigurationError.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/utils/ObjectFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/MultipleScopeNamespaceSupport.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/SecuritySupport.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XInclude11TextReader.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeMessageFormatter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeNamespaceSupport.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeTextReader.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerElementHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerFramework.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/Augmentations.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/NamespaceContext.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/QName.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLAttributes.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDContentModelHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentFragmentHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLLocator.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLResourceIdentifier.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLString.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XNIException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/Grammar.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLDTDDescription.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarDescription.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarLoader.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarPool.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLSchemaDescription.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XSGrammar.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponent.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponentManager.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLConfigurationException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelSource.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDScanner.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDSource.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentScanner.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentSource.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLEntityResolver.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLErrorHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParseException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParserConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLPullParserConfiguration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/AttributePSVI.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/ElementPSVI.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/LSInputList.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/PSVIProvider.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/ShortList.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/StringList.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSAnnotation.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeGroupDefinition.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSComplexTypeDefinition.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSConstants.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSException.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSIDCDefinition.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSImplementation.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSLoader.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroup.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroupDefinition.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamedMap.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamespaceItemList.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSNotationDeclaration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSObject.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSObjectList.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSParticle.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSTerm.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSTypeDefinition.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSWildcard.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/ObjectList.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDateTime.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDecimal.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDouble.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSFloat.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSQName.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/Axis.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTM.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisTraverser.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMConfigurationException.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMDOMException.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMException.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMManager.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMWSFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ChunkedIntArray.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineManager.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineParser.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIterNodeList.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIteratorBase.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMChildIterNodeList.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseIterators.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseTraversers.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDocumentImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMManagerDefault.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNamedNodeMap.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeList.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeListBase.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeProxy.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMSafeStringPool.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMStringPool.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMTreeWalker.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/EmptyIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExpandedNameTable.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExtendedType.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Filter.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Xerces.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/NodeLocator.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTM.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2RTFDTM.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ca.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_cs.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_de.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_en.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_es.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_fr.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_it.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sk.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_tr.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_HK.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_TW.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLMessages.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/SecuritySupport.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/XHTMLSerializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/CharInfo.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/DOMSerializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ElemContext.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ElemDesc.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/EncodingInfo.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/Encodings.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedContentHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedLexicalHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/Method.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/NamespaceMappings.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertyUtils.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerConstants.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTrace.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTraceWriter.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLSAXHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextSAXHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextStream.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLSAXHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/TransformStateSetter.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/Version.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/WriterChain.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/WriterToASCI.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOM3SerializerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMConstants.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMErrorHandlerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMErrorImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMLocatorImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMOutputImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMStringListImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/LSSerializerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/NamespaceSupport.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/AttList.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/BoolStack.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/DOM2Helper.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/Messages.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_en.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/StringToIntTable.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SystemIDResolver.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/URI.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/WrappedRuntimeException.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/AttList.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/BoolStack.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/CharKey.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/Constants.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOM2Helper.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMBuilder.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMOrder.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DefaultErrorHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/FastStringBuffer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/IntStack.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/IntVector.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/ListingErrorHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/LocaleUtility.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/MutableAttrListImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/NSInfo.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/NameSpace.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/NodeConsumer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/NodeVector.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/ObjectPool.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/ObjectStack.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/ObjectVector.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolver.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolverDefault.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/QName.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/RawCharacterHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SAXSourceLocator.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SerializableLocatorImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StopParseException.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringBufferPool.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringComparable.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringToIntTable.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTable.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTableVector.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringVector.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StylesheetPIHandler.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedByteVector.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedIntVector.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SystemIDResolver.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/Trie.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/URI.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/UnImplNode.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/WrappedRuntimeException.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/WrongParserException.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XML11Char.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLChar.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLCharacterRecognizer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLString.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringDefault.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactoryDefault.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/CharArrayWrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/IntArrayWrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/LongArrayWrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/StringArrayWrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundle.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundleBase.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_de.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_en.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_es.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_fr.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_it.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_A.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HA.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HI.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_I.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_sv.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_CN.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_TW.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/Arg.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/CachedXPathAPI.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/Expression.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/ExpressionNode.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/ExpressionOwner.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/ExtensionsProvider.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/FoundIndex.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/NodeSet.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/NodeSetDTM.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/SourceTree.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/SourceTreeManager.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/VariableStack.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/WhitespaceStrippingElementMatcher.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPath.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathAPI.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathContext.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathException.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathProcessorException.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathVisitable.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathVisitor.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/AttributeIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/AxesWalker.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/BasicTestIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/ChildIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/ChildTestIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/ContextNodeList.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/DescendantIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIteratorSimple.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprWalker.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/HasPositionalPredChecker.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/IteratorPool.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/LocPathIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/MatchPatternIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/NodeSequence.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIteratorForward.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/PathComponent.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/PredicatedNodeTest.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/RTFIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/ReverseAxesWalker.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/SelfIteratorNoPredicate.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/SubContextList.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/UnionChildIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/UnionPathIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/WalkerFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIteratorSorted.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/Compiler.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/FuncLoader.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/Lexer.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/OpCodes.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMap.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMapVector.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/PsuedoNames.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathDumper.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathParser.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncBoolean.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCeiling.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncConcat.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncContains.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCount.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCurrent.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncDoclocation.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtElementAvailable.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunction.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunctionAvailable.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFalse.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFloor.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncGenerateId.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncId.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLang.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLast.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLocalPart.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNamespace.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNormalizeSpace.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNot.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNumber.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncPosition.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncQname.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncRound.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStartsWith.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncString.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStringLength.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstring.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringAfter.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringBefore.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSum.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSystemProperty.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTranslate.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTrue.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncUnparsedEntityURI.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/Function.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/Function2Args.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/Function3Args.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionDef1Arg.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionMultiArgs.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionOneArg.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/WrongNumberArgsException.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPPrefixResolver.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPVariableStack.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/DTMXRTreeFrag.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XBoolean.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XBooleanStatic.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XMLStringFactoryImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSet.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSetForDOM.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XNull.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XNumber.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XObject.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XObjectFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFrag.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFragSelectWrapper.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XString.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForChars.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForFSB.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/And.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Bool.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Div.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Equals.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Gt.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Gte.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Lt.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Lte.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Minus.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Mod.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Mult.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Neg.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/NotEquals.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Number.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Operation.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Or.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Plus.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Quo.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/String.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/UnaryOperation.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Variable.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/VariableSafeAbsRef.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/ContextMatchStepPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/FunctionPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTest.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTestFilter.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/StepPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/UnionPattern.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_en.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_es.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ja.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_pt_BR.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_CN.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHMessages.java ! src/java.xml/share/classes/com/sun/xml/internal/stream/Entity.java ! src/java.xml/share/classes/com/sun/xml/internal/stream/XMLEntityReader.java Changeset: b734fb659989 Author: jlahoda Date: 2017-04-19 13:38 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/b734fb659989 8178012: Finish removal of -Xmodule: Summary: Setting jtreg to use --patch-module instead of -Xmodule:. Reviewed-by: alanb ! test/TEST.ROOT Changeset: fc2d987bdeec Author: joehw Date: 2016-11-22 14:49 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/fc2d987bdeec 8169011: Resizing XML parse trees Reviewed-by: dfuchs, lancea, skoivu ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDTDScannerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java Changeset: 6573c99129a3 Author: joehw Date: 2017-01-18 11:47 -0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/6573c99129a3 8172875: Resizing XML parse trees test update Reviewed-by: dfuchs, lancea ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java Changeset: 836b1aeb7d06 Author: lana Date: 2017-04-21 03:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/836b1aeb7d06 Merge Changeset: 646567dcfa64 Author: aefimov Date: 2017-04-24 00:22 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/646567dcfa64 8176168: Performance drop due to SAXParser SymbolTable reset Reviewed-by: joehw, lancea ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java ! src/java.xml/share/classes/jdk/xml/internal/JdkXmlFeatures.java ! src/java.xml/share/classes/jdk/xml/internal/JdkXmlUtils.java ! test/javax/xml/jaxp/unittest/sax/SymbolTableResetTest.java Changeset: 23a87f409371 Author: lana Date: 2017-04-27 16:07 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/23a87f409371 Added tag jdk-9+167 for changeset 646567dcfa64 ! .hgtags Changeset: df63b2d22ac6 Author: lana Date: 2017-05-04 16:38 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/df63b2d22ac6 Added tag jdk-9+168 for changeset 23a87f409371 ! .hgtags Changeset: 09cae4c36242 Author: lana Date: 2017-05-05 04:50 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/09cae4c36242 Merge ! .hgtags Changeset: 60abb1d1cd1d Author: ihse Date: 2017-05-09 12:54 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/60abb1d1cd1d 8179889: Fix typographic errors in copyright headers Reviewed-by: erikj, dholmes ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAttributeChecker.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLStream.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLStream.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOM3TreeWalker.java Changeset: f9abe02cceda Author: joehw Date: 2017-05-09 10:34 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/f9abe02cceda 8150256: removing xerces-related dead code Reviewed-by: lancea - src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerElementHandler.java - src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerFramework.java - src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerSchema.java Changeset: 5d9d2a65fb26 Author: joehw Date: 2017-05-09 11:46 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/5d9d2a65fb26 8179863: Missing copyrights in some jaxp files Reviewed-by: lancea ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathParser.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/sym.java Changeset: f263aa7f60c3 Author: lana Date: 2017-05-11 16:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/f263aa7f60c3 Added tag jdk-9+169 for changeset 5d9d2a65fb26 ! .hgtags Changeset: f7a6f613d8bb Author: lana Date: 2017-05-11 20:23 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/f7a6f613d8bb Merge ! .hgtags Changeset: 856998840907 Author: iignatyev Date: 2017-05-16 09:05 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/856998840907 8180195: remove jaxp testlibrary Reviewed-by: fyuan, joehw ! test/TEST.ROOT - test/javax/xml/jaxp/libs/jdk/testlibrary/Asserts.java - test/javax/xml/jaxp/libs/jdk/testlibrary/CompilerUtils.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolFinder.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolLauncher.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputAnalyzer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputBuffer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Platform.java - test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java - test/javax/xml/jaxp/libs/jdk/testlibrary/README.txt - test/javax/xml/jaxp/libs/jdk/testlibrary/StreamPumper.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Utils.java ! test/javax/xml/jaxp/module/ServiceProviderTest/BasicModularXMLParserTest.java ! test/javax/xml/jaxp/module/ServiceProviderTest/LayerModularXMLParserTest.java ! test/javax/xml/jaxp/module/ServiceProviderTest/XMLReaderFactoryTest.java Changeset: e79b44a9d2bd Author: joehw Date: 2017-05-09 18:26 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/e79b44a9d2bd 8179868: Java API Docs of javax.xml.transform.stax contains TODOs Reviewed-by: lancea, bpb ! src/java.xml/share/classes/javax/xml/transform/stax/package.html Changeset: 8861f89ae4c0 Author: lana Date: 2017-05-11 18:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/8861f89ae4c0 Merge Changeset: 6e78f902f477 Author: joehw Date: 2017-05-15 20:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/6e78f902f477 8180060: Examine copyright header for some files Reviewed-by: lancea ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/FeatureState.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/ParserConfigurationSettings.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/PropertyState.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/Status.java ! src/java.xml/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLSimpleType.java Changeset: a5a3ac31f306 Author: lana Date: 2017-05-18 14:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/a5a3ac31f306 Added tag jdk-9+170 for changeset 6e78f902f477 ! .hgtags Changeset: 9be893378869 Author: lana Date: 2017-05-19 04:18 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/9be893378869 Merge ! .hgtags - test/javax/xml/jaxp/libs/jdk/testlibrary/Asserts.java - test/javax/xml/jaxp/libs/jdk/testlibrary/CompilerUtils.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolFinder.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolLauncher.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputAnalyzer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputBuffer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Platform.java - test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java - test/javax/xml/jaxp/libs/jdk/testlibrary/README.txt - test/javax/xml/jaxp/libs/jdk/testlibrary/StreamPumper.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Utils.java Changeset: 6a37b9c43881 Author: lana Date: 2017-05-23 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/6a37b9c43881 Added tag jdk-10+7 for changeset 09cae4c36242 ! .hgtags Changeset: 3c75f07b2a49 Author: lana Date: 2017-05-23 22:38 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/3c75f07b2a49 Added tag jdk-10+8 for changeset 856998840907 ! .hgtags Changeset: 7d0db86d4bf6 Author: lana Date: 2017-05-26 01:00 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/7d0db86d4bf6 Added tag jdk-10+9 for changeset 3c75f07b2a49 ! .hgtags Changeset: e6d6c8126a36 Author: jjg Date: 2017-05-16 17:36 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/e6d6c8126a36 8180385: Fix HTML5 issues in the java.xml module Reviewed-by: joehw, lancea ! src/java.xml/share/classes/javax/xml/catalog/CatalogFeatures.java ! src/java.xml/share/classes/javax/xml/catalog/package.html ! src/java.xml/share/classes/javax/xml/datatype/DatatypeFactory.java ! src/java.xml/share/classes/javax/xml/datatype/Duration.java ! src/java.xml/share/classes/javax/xml/datatype/XMLGregorianCalendar.java ! src/java.xml/share/classes/javax/xml/datatype/package.html ! src/java.xml/share/classes/javax/xml/namespace/NamespaceContext.java ! src/java.xml/share/classes/javax/xml/stream/XMLEventWriter.java ! src/java.xml/share/classes/javax/xml/stream/XMLInputFactory.java ! src/java.xml/share/classes/javax/xml/stream/XMLOutputFactory.java ! src/java.xml/share/classes/javax/xml/stream/XMLStreamReader.java ! src/java.xml/share/classes/javax/xml/stream/XMLStreamWriter.java ! src/java.xml/share/classes/javax/xml/transform/package.html ! src/java.xml/share/classes/javax/xml/validation/SchemaFactory.java ! src/java.xml/share/classes/javax/xml/validation/SchemaFactoryLoader.java ! src/java.xml/share/classes/javax/xml/validation/Validator.java ! src/java.xml/share/classes/javax/xml/validation/package.html ! src/java.xml/share/classes/javax/xml/xpath/XPath.java ! src/java.xml/share/classes/javax/xml/xpath/XPathExpression.java ! src/java.xml/share/classes/javax/xml/xpath/package.html ! src/java.xml/share/classes/org/w3c/dom/Attr.java ! src/java.xml/share/classes/org/w3c/dom/Document.java ! src/java.xml/share/classes/org/w3c/dom/Node.java ! src/java.xml/share/classes/org/w3c/dom/ranges/package.html ! src/java.xml/share/classes/org/xml/sax/package.html Changeset: c27321c889cf Author: lana Date: 2017-05-18 16:47 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/c27321c889cf Merge Changeset: e88a78db4c18 Author: lana Date: 2017-05-26 00:29 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/e88a78db4c18 Added tag jdk-9+171 for changeset c27321c889cf ! .hgtags Changeset: bd4b2c8835f3 Author: lana Date: 2017-05-31 17:44 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/bd4b2c8835f3 Merge ! .hgtags - test/javax/xml/jaxp/libs/jdk/testlibrary/Asserts.java - test/javax/xml/jaxp/libs/jdk/testlibrary/CompilerUtils.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolFinder.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolLauncher.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputAnalyzer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputBuffer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Platform.java - test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java - test/javax/xml/jaxp/libs/jdk/testlibrary/README.txt - test/javax/xml/jaxp/libs/jdk/testlibrary/StreamPumper.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Utils.java Changeset: 98faaae0c6ab Author: lana Date: 2017-06-02 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/98faaae0c6ab Added tag jdk-10+10 for changeset bd4b2c8835f3 ! .hgtags Changeset: 0f9c0239ff0c Author: lana Date: 2017-05-23 23:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/0f9c0239ff0c 8180167: JDK9 message drop 40 l10n resource file updates Reviewed-by: alanb, mchung, dfuchs, rfield, shinyafox, weijun, joehw Contributed-by: li.jiang at oracle.com ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_ko.properties ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_sv.properties ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_de.properties ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_es.properties ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_fr.properties ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_it.properties ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_ja.properties ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_ko.properties ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_pt_BR.properties ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_sv.properties ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_zh_CN.properties ! src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_zh_TW.properties Changeset: a208fa9beeee Author: joehw Date: 2017-05-24 14:10 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/a208fa9beeee 8180349: Review JAXP Java SE 9 API javadocs Reviewed-by: rriggs, lancea + src/java.xml/share/classes/javax/xml/catalog/package-info.java - src/java.xml/share/classes/javax/xml/catalog/package.html + src/java.xml/share/classes/javax/xml/datatype/package-info.java - src/java.xml/share/classes/javax/xml/datatype/package.html + src/java.xml/share/classes/javax/xml/namespace/package-info.java - src/java.xml/share/classes/javax/xml/namespace/package.html + src/java.xml/share/classes/javax/xml/package-info.java + src/java.xml/share/classes/javax/xml/parsers/package-info.java - src/java.xml/share/classes/javax/xml/parsers/package.html + src/java.xml/share/classes/javax/xml/stream/events/package-info.java + src/java.xml/share/classes/javax/xml/stream/package-info.java + src/java.xml/share/classes/javax/xml/stream/util/package-info.java + src/java.xml/share/classes/javax/xml/transform/dom/package-info.java - src/java.xml/share/classes/javax/xml/transform/dom/package.html + src/java.xml/share/classes/javax/xml/transform/package-info.java - src/java.xml/share/classes/javax/xml/transform/package.html + src/java.xml/share/classes/javax/xml/transform/sax/package-info.java - src/java.xml/share/classes/javax/xml/transform/sax/package.html + src/java.xml/share/classes/javax/xml/transform/stax/package-info.java - src/java.xml/share/classes/javax/xml/transform/stax/package.html + src/java.xml/share/classes/javax/xml/transform/stream/package-info.java - src/java.xml/share/classes/javax/xml/transform/stream/package.html + src/java.xml/share/classes/javax/xml/validation/package-info.java - src/java.xml/share/classes/javax/xml/validation/package.html + src/java.xml/share/classes/javax/xml/xpath/package-info.java - src/java.xml/share/classes/javax/xml/xpath/package.html + src/java.xml/share/classes/org/w3c/dom/bootstrap/package-info.java + src/java.xml/share/classes/org/w3c/dom/events/package-info.java + src/java.xml/share/classes/org/w3c/dom/ls/package-info.java + src/java.xml/share/classes/org/w3c/dom/package-info.java - src/java.xml/share/classes/org/w3c/dom/package.html + src/java.xml/share/classes/org/w3c/dom/ranges/package-info.java - src/java.xml/share/classes/org/w3c/dom/ranges/package.html + src/java.xml/share/classes/org/w3c/dom/traversal/package-info.java + src/java.xml/share/classes/org/w3c/dom/views/package-info.java + src/java.xml/share/classes/org/xml/sax/ext/package-info.java - src/java.xml/share/classes/org/xml/sax/ext/package.html + src/java.xml/share/classes/org/xml/sax/helpers/package-info.java - src/java.xml/share/classes/org/xml/sax/helpers/package.html + src/java.xml/share/classes/org/xml/sax/package-info.java - src/java.xml/share/classes/org/xml/sax/package.html Changeset: eedb6e54c8bd Author: lana Date: 2017-05-26 00:44 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/eedb6e54c8bd Merge - src/java.xml/share/classes/javax/xml/catalog/package.html - src/java.xml/share/classes/javax/xml/datatype/package.html - src/java.xml/share/classes/javax/xml/namespace/package.html - src/java.xml/share/classes/javax/xml/parsers/package.html - src/java.xml/share/classes/javax/xml/transform/dom/package.html - src/java.xml/share/classes/javax/xml/transform/package.html - src/java.xml/share/classes/javax/xml/transform/sax/package.html - src/java.xml/share/classes/javax/xml/transform/stax/package.html - src/java.xml/share/classes/javax/xml/transform/stream/package.html - src/java.xml/share/classes/javax/xml/validation/package.html - src/java.xml/share/classes/javax/xml/xpath/package.html - src/java.xml/share/classes/org/w3c/dom/package.html - src/java.xml/share/classes/org/w3c/dom/ranges/package.html - src/java.xml/share/classes/org/xml/sax/ext/package.html - src/java.xml/share/classes/org/xml/sax/helpers/package.html - src/java.xml/share/classes/org/xml/sax/package.html Changeset: 9788347e0629 Author: lana Date: 2017-06-01 18:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/9788347e0629 Added tag jdk-9+172 for changeset eedb6e54c8bd ! .hgtags Changeset: 95bab8bf9201 Author: lana Date: 2017-06-03 02:46 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/95bab8bf9201 Merge ! .hgtags - test/javax/xml/jaxp/libs/jdk/testlibrary/Asserts.java - test/javax/xml/jaxp/libs/jdk/testlibrary/CompilerUtils.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolFinder.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolLauncher.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputAnalyzer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputBuffer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Platform.java - test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java - test/javax/xml/jaxp/libs/jdk/testlibrary/README.txt - test/javax/xml/jaxp/libs/jdk/testlibrary/StreamPumper.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Utils.java Changeset: 5b16d75466f7 Author: lana Date: 2017-06-09 21:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/5b16d75466f7 Added tag jdk-10+11 for changeset 95bab8bf9201 ! .hgtags Changeset: 67ce05675aaf Author: lana Date: 2017-06-08 16:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/67ce05675aaf Added tag jdk-9+173 for changeset 9788347e0629 ! .hgtags Changeset: ebd51b1337d1 Author: lana Date: 2017-06-14 20:02 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/ebd51b1337d1 Merge ! .hgtags - test/javax/xml/jaxp/libs/jdk/testlibrary/Asserts.java - test/javax/xml/jaxp/libs/jdk/testlibrary/CompilerUtils.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolFinder.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolLauncher.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputAnalyzer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputBuffer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Platform.java - test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java - test/javax/xml/jaxp/libs/jdk/testlibrary/README.txt - test/javax/xml/jaxp/libs/jdk/testlibrary/StreamPumper.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Utils.java Changeset: ff293e39e833 Author: joehw Date: 2017-06-14 14:12 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/ff293e39e833 8181153: Fix lint warnings in JAXP repo: dep-ann Reviewed-by: lancea ! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ReferenceType.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltSets.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ForwardPositionIterator.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/KeyIndex.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecord.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecordFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/AttrImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/NodeImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/ItemPSVI.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeDeclaration.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeUse.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSElementDeclaration.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineParser.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/BaseMarkupSerializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/DOMSerializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/DOMSerializerImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/ElementState.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/EncodingInfo.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/Encodings.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLSerializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLdtd.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/IndentPrinter.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/LineSeparator.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/Method.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/OutputFormat.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/Printer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/Serializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/SerializerFactory.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/SerializerFactoryImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/TextSerializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/XHTMLSerializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/XML11Serializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/XMLSerializer.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/TreeWalker.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/AttList.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/DOM2Helper.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/AttList.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOM2Helper.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMHelper.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMOrder.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/TreeWalker.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Quo.java ! src/java.xml/share/classes/org/xml/sax/HandlerBase.java ! src/java.xml/share/classes/org/xml/sax/helpers/AttributeListImpl.java Changeset: 0ca686e3e26b Author: mchung Date: 2017-06-07 21:08 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/0ca686e3e26b 8181639: Add tool and services information to module summary Reviewed-by: alanb, psandoz, lancea ! src/java.xml/share/classes/module-info.java Changeset: b9c0b1050022 Author: lana Date: 2017-06-08 23:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/b9c0b1050022 Merge Changeset: c0b8bea54e91 Author: lana Date: 2017-06-15 17:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/c0b8bea54e91 Added tag jdk-9+174 for changeset b9c0b1050022 ! .hgtags Changeset: a9527d7b820f Author: lana Date: 2017-06-16 04:56 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/a9527d7b820f Merge ! .hgtags - src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/AttList.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/DOM2Helper.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMHelper.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMOrder.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Asserts.java - test/javax/xml/jaxp/libs/jdk/testlibrary/CompilerUtils.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolFinder.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolLauncher.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputAnalyzer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputBuffer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Platform.java - test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java - test/javax/xml/jaxp/libs/jdk/testlibrary/README.txt - test/javax/xml/jaxp/libs/jdk/testlibrary/StreamPumper.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Utils.java Changeset: 225ec5d17c74 Author: lana Date: 2017-06-17 00:15 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/225ec5d17c74 Added tag jdk-10+12 for changeset ff293e39e833 ! .hgtags Changeset: 5d374af9e78d Author: joehw Date: 2017-06-20 14:29 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/5d374af9e78d 8177561: Remove deprecated for removal portions of com.sun.org.apache Reviewed-by: lancea, rriggs - src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/Catalog.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogException.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogManager.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/Resolver.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Debug.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/FileURL.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Namespaces.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/PublicId.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/CatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogParser.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/ExtendedXMLCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/OASISXMLCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogParser.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXParserHandler.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TR9401CatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TextCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/XCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/tools/CatalogResolver.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingParser.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLFilter.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLReader.java Changeset: f0eb5431121e Author: joehw Date: 2017-06-15 12:40 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/f0eb5431121e 8182111: Package summary is missing in jdk.xml.dom module Reviewed-by: mchung + src/jdk.xml.dom/share/classes/org/w3c/dom/css/package-info.java + src/jdk.xml.dom/share/classes/org/w3c/dom/html/package-info.java + src/jdk.xml.dom/share/classes/org/w3c/dom/stylesheets/package-info.java + src/jdk.xml.dom/share/classes/org/w3c/dom/xpath/package-info.java Changeset: bc9aafd4cee2 Author: mchung Date: 2017-06-17 11:50 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/bc9aafd4cee2 8182416: Clean up module-info.java like move requires transitive adjacent to exports Reviewed-by: alanb ! src/java.xml/share/classes/module-info.java ! src/jdk.xml.dom/share/classes/module-info.java Changeset: 736412a8dcce Author: aefimov Date: 2017-06-18 23:10 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/736412a8dcce 8176508: Update JAX-WS RI integration to latest version Reviewed-by: lancea, mchung, alanb, iris ! src/java.xml/share/classes/module-info.java Changeset: 38cf34e23280 Author: lana Date: 2017-06-22 18:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/38cf34e23280 Added tag jdk-9+175 for changeset 736412a8dcce ! .hgtags Changeset: ed62413e803c Author: lana Date: 2017-06-24 00:30 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/ed62413e803c Merge ! .hgtags - src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/Catalog.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogException.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogManager.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/Resolver.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Debug.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/FileURL.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Namespaces.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/PublicId.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/CatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogParser.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/ExtendedXMLCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/OASISXMLCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogParser.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXParserHandler.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TR9401CatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TextCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/readers/XCatalogReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/tools/CatalogResolver.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingParser.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLFilter.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLReader.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/AttList.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/DOM2Helper.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMHelper.java - src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMOrder.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Asserts.java - test/javax/xml/jaxp/libs/jdk/testlibrary/CompilerUtils.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolFinder.java - test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolLauncher.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputAnalyzer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/OutputBuffer.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Platform.java - test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java - test/javax/xml/jaxp/libs/jdk/testlibrary/README.txt - test/javax/xml/jaxp/libs/jdk/testlibrary/StreamPumper.java - test/javax/xml/jaxp/libs/jdk/testlibrary/Utils.java Changeset: 3271b384a644 Author: lana Date: 2017-06-24 02:59 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/3271b384a644 Added tag jdk-10+13 for changeset 5d374af9e78d ! .hgtags Changeset: 4d05f673cf77 Author: iris Date: 2017-06-28 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/4d05f673cf77 8183142: Add bugids=dup to .jcheck/conf files for JDK 10 Reviewed-by: mr ! .jcheck/conf Changeset: f0aabb2fef5b Author: joehw Date: 2017-07-05 14:41 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jaxp/rev/f0aabb2fef5b 8183583: LSSerializer docs have invalid character Reviewed-by: lancea ! src/java.xml/share/classes/org/w3c/dom/ls/LSSerializer.java From paul.sandoz at oracle.com Thu Jul 27 22:57:44 2017 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 27 Jul 2017 15:57:44 -0700 Subject: RFR: [MVT] Rename DeriveValueType annotation In-Reply-To: <0f183bd5-cf02-d1bc-ce06-f03078602761@oracle.com> References: <0f183bd5-cf02-d1bc-ce06-f03078602761@oracle.com> Message-ID: Looks ok. Should the annotation be moved to a non-internal package? Paul. > On 24 Jul 2017, at 09:00, Maurizio Cimadamore wrote: > > Hi, > the special annotation that triggers generation of a derived value should be renamed from @DeriveValueType to @ValueCapableClass (which is also a term used in the spec draft). > > After some internal discussion we agreed that adding flags, or deprecating old annotation was not worth the extra interim complexity, so we're aiming for a straight rename. > > As this touches a lot of stuff, please double check :-) > > Webrevs: > > http://cr.openjdk.java.net/~mcimadamore/8185143-hotspot/ > > http://cr.openjdk.java.net/~mcimadamore/8185143-jdk/ > > http://cr.openjdk.java.net/~mcimadamore/8185143-langtools/ > > Maurizio > From maurizio.cimadamore at oracle.com Thu Jul 27 23:01:52 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 28 Jul 2017 00:01:52 +0100 Subject: RFR: [MVT] Rename DeriveValueType annotation In-Reply-To: References: <0f183bd5-cf02-d1bc-ce06-f03078602761@oracle.com> Message-ID: <2df0e290-7ca3-583f-4a19-c5d75803ca84@oracle.com> On 27/07/17 23:57, Paul Sandoz wrote: > Looks ok. > > Should the annotation be moved to a non-internal package? Sorry for the confusion, this was already pushed earlier today (in an attempt to push for spec parity). Regarding packages and names, I think an overhaul is needed. I'd like to rename ValueType to something like ValueHandles. Then, have a Lookup in there which can be constructed by passing the VCC: ValueHandles.Lookup(Point.class).findGetter(...) and the likes. I think that would make the transition towards real JDK easier in the long run. As for packages, I think it's also time we start to figure out how to do the 'incubator' bits - e.g. John's document speaks about value-capable modules, so we should probably start creating a new module and put all the values stuff in there maybe? Maurizio > > Paul. > >> On 24 Jul 2017, at 09:00, Maurizio Cimadamore wrote: >> >> Hi, >> the special annotation that triggers generation of a derived value should be renamed from @DeriveValueType to @ValueCapableClass (which is also a term used in the spec draft). >> >> After some internal discussion we agreed that adding flags, or deprecating old annotation was not worth the extra interim complexity, so we're aiming for a straight rename. >> >> As this touches a lot of stuff, please double check :-) >> >> Webrevs: >> >> http://cr.openjdk.java.net/~mcimadamore/8185143-hotspot/ >> >> http://cr.openjdk.java.net/~mcimadamore/8185143-jdk/ >> >> http://cr.openjdk.java.net/~mcimadamore/8185143-langtools/ >> >> Maurizio >> From stanislav.smirnov at oracle.com Fri Jul 28 00:44:16 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Fri, 28 Jul 2017 00:44:16 +0000 Subject: hg: valhalla/valhalla/hotspot: 8183039: Re-examine methodHandle methods uninlined by 8144256 Message-ID: <201707280044.v6S0iGK8025870@aojmv0008.oracle.com> Changeset: 6ad02163b738 Author: coleenp Date: 2017-07-27 18:06 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/6ad02163b738 8183039: Re-examine methodHandle methods uninlined by 8144256 Summary: Add more const references so out-of-line methodHandle destructor and copy ctor called infrequently Reviewed-by: hseigel, redestad ! src/cpu/aarch64/vm/interpreterRT_aarch64.cpp ! src/cpu/aarch64/vm/interpreterRT_aarch64.hpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/arm/vm/interpreterRT_arm.cpp ! src/cpu/arm/vm/interpreterRT_arm.hpp ! src/cpu/arm/vm/sharedRuntime_arm.cpp ! src/cpu/ppc/vm/interpreterRT_ppc.hpp ! src/cpu/ppc/vm/sharedRuntime_ppc.cpp ! src/cpu/s390/vm/interpreterRT_s390.hpp ! src/cpu/sparc/vm/interpreterRT_sparc.cpp ! src/cpu/sparc/vm/interpreterRT_sparc.hpp ! src/cpu/sparc/vm/sharedRuntime_sparc.cpp ! src/cpu/x86/vm/interpreterRT_x86.hpp ! src/cpu/x86/vm/interpreterRT_x86_32.cpp ! src/cpu/x86/vm/interpreterRT_x86_64.cpp ! src/cpu/x86/vm/sharedRuntime_x86.cpp ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/cpu/zero/vm/interpreterRT_zero.hpp ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethod.hpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/codeCache.hpp ! src/share/vm/compiler/compilerDirectives.cpp ! src/share/vm/compiler/compilerDirectives.hpp ! src/share/vm/compiler/compilerOracle.cpp ! src/share/vm/interpreter/abstractInterpreter.cpp ! src/share/vm/interpreter/abstractInterpreter.hpp ! src/share/vm/interpreter/bytecode.cpp ! src/share/vm/interpreter/bytecode.hpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/interpreter/interpreterRuntime.hpp ! src/share/vm/interpreter/invocationCounter.cpp ! src/share/vm/interpreter/invocationCounter.hpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/interpreter/linkResolver.hpp ! src/share/vm/interpreter/oopMapCache.cpp ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/interpreter/rewriter.hpp ! src/share/vm/jvmci/jvmciCompiler.cpp ! src/share/vm/jvmci/jvmciRuntime.cpp ! src/share/vm/jvmci/jvmciRuntime.hpp ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/cpCache.hpp ! src/share/vm/oops/klassVtable.cpp ! src/share/vm/oops/klassVtable.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/oops/methodCounters.cpp ! src/share/vm/oops/methodCounters.hpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiExport.cpp ! src/share/vm/runtime/advancedThresholdPolicy.cpp ! src/share/vm/runtime/advancedThresholdPolicy.hpp ! src/share/vm/runtime/compilationPolicy.cpp ! src/share/vm/runtime/compilationPolicy.hpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/deoptimization.hpp ! src/share/vm/runtime/javaCalls.cpp ! src/share/vm/runtime/javaCalls.hpp ! src/share/vm/runtime/reflection.cpp ! src/share/vm/runtime/sharedRuntime.hpp ! src/share/vm/runtime/simpleThresholdPolicy.cpp ! src/share/vm/runtime/simpleThresholdPolicy.hpp ! src/share/vm/utilities/xmlstream.cpp ! src/share/vm/utilities/xmlstream.hpp From mandy.chung at oracle.com Fri Jul 28 04:56:45 2017 From: mandy.chung at oracle.com (Mandy Chung) Date: Thu, 27 Jul 2017 21:56:45 -0700 Subject: Review Request: JDK-8185148: [MVT] Class.java's isValueClass causes all non-MVT enabled JVM executions to have an InstanceKlass created for __Value reference Message-ID: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> A class referencing java.lang.__Value would fail verification when value type is not enabled. Class::isValueType and MinimalValueTypes_1_0::getValueType both references java.lang.__Value but they may be loaded when value type is not enabled. VerifyError that Tobias has ran into [1] is related to this issue. A simple fix is to refactor the reference to java.lang.__Value in a separate class that will only be loaded when -XX:+EnableMVT and ?XX:+EnableValhalla is set. We may look into a cleaner fix in the future. Webrev: http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8185148/webrev.00/index.html Mandy [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003007.html From mandy.chung at oracle.com Fri Jul 28 04:58:39 2017 From: mandy.chung at oracle.com (Mandy Chung) Date: Thu, 27 Jul 2017 21:58:39 -0700 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <860b5cf9-17bc-f1b6-e688-d64dcaebead0@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> <08aeca80-be86-5b03-93cd-ed54c8c4a38e@oracle.com> <860b5cf9-17bc-f1b6-e688-d64dcaebead0@oracle.com> Message-ID: I have a patch for JDK-8185148 [1] that put the reference to __Value in a holder class and loads it only when -XX:+EnableMVT or ?XX:+EnableValhalla is set. This may be a good stop gap solution for now. Mandy [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003022.html > On Jul 27, 2017, at 11:19 AM, Maurizio Cimadamore wrote: > > A possible fix would be to restore my compiler based solution to avoid mangling on __Value - that would likely take care of this. > > Maurizio > > > On 27/07/17 19:18, Maurizio Cimadamore wrote: >> In other words, I believe this is, again, related to JDK-8185148 >> >> Maurizio >> >> >> On 27/07/17 19:16, Maurizio Cimadamore wrote: >>> This is just the test running with Xverify:all - the MinimalValueType_1_0 class has a reference to __Value, and that reference has the mangled ClassInfo, so that is causing the verifier to fail. >>> >>> Maurizio >>> >>> >>> On 27/07/17 19:09, Tobias Hartmann wrote: >>>> I updated the webrevs in place and will re-run JPRT. >>>> >>>> I'm also seeing lots of these: >>>> >>>> Error: A JNI error has occurred, please check your installation and try again >>>> Exception in thread "main" java.lang.VerifyError: Illegal type at constant pool entry 57 in class valhalla.shady.MinimalValueTypes_1_0 >>>> Exception Details: >>>> Location: >>>> valhalla/shady/MinimalValueTypes_1_0.getValueClass()Ljava/lang/Class; @0: ldc >>>> Reason: >>>> Constant pool index 57 is invalid >>>> Bytecode: >>>> 0000000: 1239 c000 3ab0 >>>> >>>> at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:368) >>>> at java.base/java.lang.invoke.MethodTypeForm.canonicalizeAll(MethodTypeForm.java:424) >>>> at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:348) >>>> at java.base/java.lang.invoke.MethodTypeForm.findForm(MethodTypeForm.java:320) >>>> at java.base/java.lang.invoke.MethodType.makeImpl(MethodType.java:325) >>>> at java.base/java.lang.invoke.MethodHandleNatives.findMethodHandleType(MethodHandleNatives.java:292) >>>> at java.base/java.util.ResourceBundle.getLoader(ResourceBundle.java:561) >>>> at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1560) >>>> at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1535) >>>> at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:836) >>>> at java.base/sun.launcher.LauncherHelper$ResourceBundleHolder.(LauncherHelper.java:128) >>>> at java.base/sun.launcher.LauncherHelper.getLocalizedMessage(LauncherHelper.java:352) >>>> at java.base/sun.launcher.LauncherHelper.abort(LauncherHelper.java:519) >>>> at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:677) >>>> at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:552) >>>> >>>> Best regards, >>>> Tobias >>>> >>>> On 27.07.2017 19:51, Tobias Hartmann wrote: >>>>> On 27.07.2017 19:50, Karen Kinnear wrote: >>>>>> We missed a change in byte codes.cpp: >>>>>> >>>>>> Need to move the def(_vgetfield down to the JVM byte codes and add the additional field which is _getfield as the java_code. >>>>> Okay, I'll fix that. >>>>> >>>>> Best regards, >>>>> Tobias >>>>> >>>>>> thanks, >>>>>> Karen >>>>>> >>>>>>> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann wrote: >>>>>>> >>>>>>> Hi Karen, >>>>>>> >>>>>>> On 27.07.2017 19:30, Karen Kinnear wrote: >>>>>>>> Do you want to change in ByteCodes.java - >>>>>>>> ByteCodeCount to 210 instead of 216? >>>>>>> Right, that count should be updated as well. >>>>>>> >>>>>>> I just run this through JPRT and I get dozens of failures: >>>>>>> >>>>>>> # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 >>>>>>> # assert(Bytecodes::is_java_code(code)) failed: sanity check >>>>>>> >>>>>>> Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k >>>>>>> Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) >>>>>>> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f >>>>>>> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f >>>>>>> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd >>>>>>> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >>>>>>> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 >>>>>>> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >>>>>>> V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba >>>>>>> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 >>>>>>> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb >>>>>>> V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a >>>>>>> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e >>>>>>> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a >>>>>>> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e >>>>>>> V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >>>>>>> V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >>>>>>> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 >>>>>>> V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 >>>>>>> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >>>>>>> V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed >>>>>>> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >>>>>>> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >>>>>>> V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f >>>>>>> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >>>>>>> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >>>>>>> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >>>>>>> >>>>>>> Maybe it's best to back out 8185349 for now. >>>>>>> >>>>>>> Best regards, >>>>>>> Tobias >>>>>>> >>>>>>>> Maurizio?s call - this is compiler sources, >>>>>>>> >>>>>>>> thanks, >>>>>>>> Karen >>>>>>>> >>>>>>>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >>>>>>>>> >>>>>>>>> Okay, it's getting complicated. Here are the webrevs: >>>>>>>>> >>>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>>>>>>> >>>>>>>>> What do you think? >>>>>>>>> >>>>>>>>> Best regards, >>>>>>>>> Tobias >>>>>>>>> >>>>>>>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>>>>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>>>>>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>>>>>>>>> >>>>>>>>>>> jdk.experimental.bytecode.Opcode >>>>>>>>>> Right: >>>>>>>>>> >>>>>>>>>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>>>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>>>>>>>>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>>>>>>>>> @@ -235,14 +235,11 @@ >>>>>>>>>> VSTORE(204), >>>>>>>>>> VALOAD(205), >>>>>>>>>> VASTORE(206), >>>>>>>>>> - VNEW(207), >>>>>>>>>> - VRETURN(210), >>>>>>>>>> - VGETFIELD(211), >>>>>>>>>> - TYPED(212), >>>>>>>>>> - VDEFAULT(214), >>>>>>>>>> - VWITHFIELD(215), >>>>>>>>>> - VBOX(216), >>>>>>>>>> - VUNBOX(217); >>>>>>>>>> + VRETURN(207), >>>>>>>>>> + VDEFAULT(208), >>>>>>>>>> + VWITHFIELD(209), >>>>>>>>>> + VBOX(210), >>>>>>>>>> + VUNBOX(211); >>>>>>>>>> >>>>>>>>>> int code; >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> And I guess we have to change this as well: >>>>>>>>>> >>>>>>>>>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>>>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>>>>>>>>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>>>>>>>>> @@ -247,13 +247,13 @@ >>>>>>>>>> VSTORE(204, LOCAL), >>>>>>>>>> VALOAD(205), >>>>>>>>>> VASTORE(206), >>>>>>>>>> - VRETURN(210), >>>>>>>>>> + VRETURN(207), >>>>>>>>>> >>>>>>>>>> - VDEFAULT(214, CPREF_W), >>>>>>>>>> - VWITHFIELD(215, CPREF_W), >>>>>>>>>> + VDEFAULT(208, CPREF_W), >>>>>>>>>> + VWITHFIELD(209, CPREF_W), >>>>>>>>>> >>>>>>>>>> - VBOX(216, CPREF_W), >>>>>>>>>> - VUNBOX(217, CPREF_W), >>>>>>>>>> + VBOX(210, CPREF_W), >>>>>>>>>> + VUNBOX(211, CPREF_W), >>>>>>>>>> >>>>>>>>>> // impdep 0xfe: PicoJava nonpriv >>>>>>>>>> // impdep 0xff: Picojava priv >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Tobias >>>>>>>>>> >>>>>>>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>>>>>>> Hi, >>>>>>>>>>>> >>>>>>>>>>>> seems like this is due to: >>>>>>>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>>>>>>> >>>>>>>>>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>>>>>>>>> >>>>>>>>>>>> We should reset the value type bytecode numbers: >>>>>>>>>>>> >>>>>>>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>>>>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>>>>>>>>> @@ -248,11 +248,11 @@ >>>>>>>>>>>> _vstore = 204, // 0xcc >>>>>>>>>>>> _vaload = 205, // 0xcd >>>>>>>>>>>> _vastore = 206, // 0xce >>>>>>>>>>>> - _vreturn = 210, // 0xd2 >>>>>>>>>>>> - _vdefault = 214, // 0xd6 >>>>>>>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>>>>>>> - _vbox = 216, // 0xd6 >>>>>>>>>>>> - _vunbox = 217, // 0xd7 >>>>>>>>>>>> + _vreturn = 207, // 0xcf >>>>>>>>>>>> + _vdefault = 208, // 0xd0 >>>>>>>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>>>>>>> + _vbox = 210, // 0xd2 >>>>>>>>>>>> + _vunbox = 211, // 0xd3 >>>>>>>>>>>> number_of_java_codes, >>>>>>>>>>>> >>>>>>>>>>>> Thanks, >>>>>>>>>>>> Tobias >>> >> > From tobias.hartmann at oracle.com Fri Jul 28 08:57:31 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Jul 2017 10:57:31 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> Message-ID: Hi, I found more problems: (1) C2 emits non value type specific code for _vgetfield because it looks at the Java bytecode (not the raw bytecode) which is now _getfield. -> Fixed by checking the field holder in parse3.cpp (2) Oop map generation is broken because there is no way to determine if the _getfield bytecode accesses a value type field. -> I had to temporarily disable verification. See changes in generateOopMap.cpp/hpp. Checking itr->raw_code() == Bytecodes::_vgetfield is not sufficient and also a constant pool lookup does not work in all cases. Any ideas on how to fix this? Here are the updated webrevs: http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ I'll run them through JPRT. Best regards, Tobias On 27.07.2017 20:09, Tobias Hartmann wrote: > I updated the webrevs in place and will re-run JPRT. > > I'm also seeing lots of these: > > Error: A JNI error has occurred, please check your installation and try again > Exception in thread "main" java.lang.VerifyError: Illegal type at constant pool entry 57 in class valhalla.shady.MinimalValueTypes_1_0 > Exception Details: > Location: > valhalla/shady/MinimalValueTypes_1_0.getValueClass()Ljava/lang/Class; @0: ldc > Reason: > Constant pool index 57 is invalid > Bytecode: > 0000000: 1239 c000 3ab0 > > at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:368) > at java.base/java.lang.invoke.MethodTypeForm.canonicalizeAll(MethodTypeForm.java:424) > at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:348) > at java.base/java.lang.invoke.MethodTypeForm.findForm(MethodTypeForm.java:320) > at java.base/java.lang.invoke.MethodType.makeImpl(MethodType.java:325) > at java.base/java.lang.invoke.MethodHandleNatives.findMethodHandleType(MethodHandleNatives.java:292) > at java.base/java.util.ResourceBundle.getLoader(ResourceBundle.java:561) > at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1560) > at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1535) > at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:836) > at java.base/sun.launcher.LauncherHelper$ResourceBundleHolder.(LauncherHelper.java:128) > at java.base/sun.launcher.LauncherHelper.getLocalizedMessage(LauncherHelper.java:352) > at java.base/sun.launcher.LauncherHelper.abort(LauncherHelper.java:519) > at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:677) > at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:552) > > Best regards, > Tobias > > On 27.07.2017 19:51, Tobias Hartmann wrote: >> >> On 27.07.2017 19:50, Karen Kinnear wrote: >>> We missed a change in byte codes.cpp: >>> >>> Need to move the def(_vgetfield down to the JVM byte codes and add the additional field which is _getfield as the java_code. >> >> Okay, I'll fix that. >> >> Best regards, >> Tobias >> >>> >>> thanks, >>> Karen >>> >>>> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann wrote: >>>> >>>> Hi Karen, >>>> >>>> On 27.07.2017 19:30, Karen Kinnear wrote: >>>>> Do you want to change in ByteCodes.java - >>>>> ByteCodeCount to 210 instead of 216? >>>> >>>> Right, that count should be updated as well. >>>> >>>> I just run this through JPRT and I get dozens of failures: >>>> >>>> # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 >>>> # assert(Bytecodes::is_java_code(code)) failed: sanity check >>>> >>>> Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k >>>> Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) >>>> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f >>>> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f >>>> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd >>>> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >>>> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 >>>> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >>>> V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba >>>> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 >>>> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb >>>> V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a >>>> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e >>>> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a >>>> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e >>>> V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >>>> V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >>>> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 >>>> V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 >>>> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >>>> V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed >>>> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >>>> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >>>> V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f >>>> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >>>> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >>>> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >>>> >>>> Maybe it's best to back out 8185349 for now. >>>> >>>> Best regards, >>>> Tobias >>>> >>>>> Maurizio?s call - this is compiler sources, >>>>> >>>>> thanks, >>>>> Karen >>>>> >>>>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >>>>>> >>>>>> Okay, it's getting complicated. Here are the webrevs: >>>>>> >>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>>>> >>>>>> What do you think? >>>>>> >>>>>> Best regards, >>>>>> Tobias >>>>>> >>>>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>>>> >>>>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>>>>>> >>>>>>>> jdk.experimental.bytecode.Opcode >>>>>>> >>>>>>> Right: >>>>>>> >>>>>>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>>>>>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>>>>>> @@ -235,14 +235,11 @@ >>>>>>> VSTORE(204), >>>>>>> VALOAD(205), >>>>>>> VASTORE(206), >>>>>>> - VNEW(207), >>>>>>> - VRETURN(210), >>>>>>> - VGETFIELD(211), >>>>>>> - TYPED(212), >>>>>>> - VDEFAULT(214), >>>>>>> - VWITHFIELD(215), >>>>>>> - VBOX(216), >>>>>>> - VUNBOX(217); >>>>>>> + VRETURN(207), >>>>>>> + VDEFAULT(208), >>>>>>> + VWITHFIELD(209), >>>>>>> + VBOX(210), >>>>>>> + VUNBOX(211); >>>>>>> >>>>>>> int code; >>>>>>> >>>>>>> >>>>>>> And I guess we have to change this as well: >>>>>>> >>>>>>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>>>>>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>>>>>> @@ -247,13 +247,13 @@ >>>>>>> VSTORE(204, LOCAL), >>>>>>> VALOAD(205), >>>>>>> VASTORE(206), >>>>>>> - VRETURN(210), >>>>>>> + VRETURN(207), >>>>>>> >>>>>>> - VDEFAULT(214, CPREF_W), >>>>>>> - VWITHFIELD(215, CPREF_W), >>>>>>> + VDEFAULT(208, CPREF_W), >>>>>>> + VWITHFIELD(209, CPREF_W), >>>>>>> >>>>>>> - VBOX(216, CPREF_W), >>>>>>> - VUNBOX(217, CPREF_W), >>>>>>> + VBOX(210, CPREF_W), >>>>>>> + VUNBOX(211, CPREF_W), >>>>>>> >>>>>>> // impdep 0xfe: PicoJava nonpriv >>>>>>> // impdep 0xff: Picojava priv >>>>>>> >>>>>>> >>>>>>> Thanks, >>>>>>> Tobias >>>>>>> >>>>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> seems like this is due to: >>>>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>>>> >>>>>>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>>>>>> >>>>>>>>> We should reset the value type bytecode numbers: >>>>>>>>> >>>>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>>>>>> @@ -248,11 +248,11 @@ >>>>>>>>> _vstore = 204, // 0xcc >>>>>>>>> _vaload = 205, // 0xcd >>>>>>>>> _vastore = 206, // 0xce >>>>>>>>> - _vreturn = 210, // 0xd2 >>>>>>>>> - _vdefault = 214, // 0xd6 >>>>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>>>> - _vbox = 216, // 0xd6 >>>>>>>>> - _vunbox = 217, // 0xd7 >>>>>>>>> + _vreturn = 207, // 0xcf >>>>>>>>> + _vdefault = 208, // 0xd0 >>>>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>>>> + _vbox = 210, // 0xd2 >>>>>>>>> + _vunbox = 211, // 0xd3 >>>>>>>>> number_of_java_codes, >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Tobias >>>>>>>> >>>>> >>> From tobias.hartmann at oracle.com Fri Jul 28 09:20:55 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Jul 2017 11:20:55 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> Message-ID: <0028a596-e5ae-e6c1-3167-611b8c74072a@oracle.com> On 28.07.2017 10:57, Tobias Hartmann wrote: > (2) Oop map generation is broken because there is no way to determine if the _getfield bytecode accesses a value type field. > -> I had to temporarily disable verification. See changes in generateOopMap.cpp/hpp. Checking itr->raw_code() == Bytecodes::_vgetfield is not sufficient and also a constant pool lookup does not work in all cases. > Any ideas on how to fix this? Okay, using the 'CellTypeState::refOrValueType' hack should do the job: http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/src/share/vm/oops/generateOopMap.cpp.sdiff.html Best regards, Tobias From tobias.hartmann at oracle.com Fri Jul 28 09:48:03 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Jul 2017 11:48:03 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> <08aeca80-be86-5b03-93cd-ed54c8c4a38e@oracle.com> <860b5cf9-17bc-f1b6-e688-d64dcaebead0@oracle.com> Message-ID: <2084788d-5d68-279e-8ea5-159e402bbab7@oracle.com> Hi Mandy, On 28.07.2017 06:58, Mandy Chung wrote: > I have a patch for JDK-8185148 [1] that put the reference to __Value in > a holder class and loads it only when -XX:+EnableMVT or ?XX:+EnableValhalla > is set. This may be a good stop gap solution for now. I've tested this on JPRT on top of my fix and it work fine! Thanks, Tobias > Mandy > [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003022.html > >> On Jul 27, 2017, at 11:19 AM, Maurizio Cimadamore wrote: >> >> A possible fix would be to restore my compiler based solution to avoid mangling on __Value - that would likely take care of this. >> >> Maurizio >> >> >> On 27/07/17 19:18, Maurizio Cimadamore wrote: >>> In other words, I believe this is, again, related to JDK-8185148 >>> >>> Maurizio >>> >>> >>> On 27/07/17 19:16, Maurizio Cimadamore wrote: >>>> This is just the test running with Xverify:all - the MinimalValueType_1_0 class has a reference to __Value, and that reference has the mangled ClassInfo, so that is causing the verifier to fail. >>>> >>>> Maurizio >>>> >>>> >>>> On 27/07/17 19:09, Tobias Hartmann wrote: >>>>> I updated the webrevs in place and will re-run JPRT. >>>>> >>>>> I'm also seeing lots of these: >>>>> >>>>> Error: A JNI error has occurred, please check your installation and try again >>>>> Exception in thread "main" java.lang.VerifyError: Illegal type at constant pool entry 57 in class valhalla.shady.MinimalValueTypes_1_0 >>>>> Exception Details: >>>>> Location: >>>>> valhalla/shady/MinimalValueTypes_1_0.getValueClass()Ljava/lang/Class; @0: ldc >>>>> Reason: >>>>> Constant pool index 57 is invalid >>>>> Bytecode: >>>>> 0000000: 1239 c000 3ab0 >>>>> >>>>> at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:368) >>>>> at java.base/java.lang.invoke.MethodTypeForm.canonicalizeAll(MethodTypeForm.java:424) >>>>> at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:348) >>>>> at java.base/java.lang.invoke.MethodTypeForm.findForm(MethodTypeForm.java:320) >>>>> at java.base/java.lang.invoke.MethodType.makeImpl(MethodType.java:325) >>>>> at java.base/java.lang.invoke.MethodHandleNatives.findMethodHandleType(MethodHandleNatives.java:292) >>>>> at java.base/java.util.ResourceBundle.getLoader(ResourceBundle.java:561) >>>>> at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1560) >>>>> at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1535) >>>>> at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:836) >>>>> at java.base/sun.launcher.LauncherHelper$ResourceBundleHolder.(LauncherHelper.java:128) >>>>> at java.base/sun.launcher.LauncherHelper.getLocalizedMessage(LauncherHelper.java:352) >>>>> at java.base/sun.launcher.LauncherHelper.abort(LauncherHelper.java:519) >>>>> at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:677) >>>>> at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:552) >>>>> >>>>> Best regards, >>>>> Tobias >>>>> >>>>> On 27.07.2017 19:51, Tobias Hartmann wrote: >>>>>> On 27.07.2017 19:50, Karen Kinnear wrote: >>>>>>> We missed a change in byte codes.cpp: >>>>>>> >>>>>>> Need to move the def(_vgetfield down to the JVM byte codes and add the additional field which is _getfield as the java_code. >>>>>> Okay, I'll fix that. >>>>>> >>>>>> Best regards, >>>>>> Tobias >>>>>> >>>>>>> thanks, >>>>>>> Karen >>>>>>> >>>>>>>> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann wrote: >>>>>>>> >>>>>>>> Hi Karen, >>>>>>>> >>>>>>>> On 27.07.2017 19:30, Karen Kinnear wrote: >>>>>>>>> Do you want to change in ByteCodes.java - >>>>>>>>> ByteCodeCount to 210 instead of 216? >>>>>>>> Right, that count should be updated as well. >>>>>>>> >>>>>>>> I just run this through JPRT and I get dozens of failures: >>>>>>>> >>>>>>>> # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 >>>>>>>> # assert(Bytecodes::is_java_code(code)) failed: sanity check >>>>>>>> >>>>>>>> Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k >>>>>>>> Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) >>>>>>>> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f >>>>>>>> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f >>>>>>>> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd >>>>>>>> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >>>>>>>> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 >>>>>>>> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >>>>>>>> V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba >>>>>>>> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 >>>>>>>> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb >>>>>>>> V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a >>>>>>>> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e >>>>>>>> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a >>>>>>>> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e >>>>>>>> V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >>>>>>>> V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >>>>>>>> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 >>>>>>>> V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 >>>>>>>> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >>>>>>>> V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed >>>>>>>> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >>>>>>>> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >>>>>>>> V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f >>>>>>>> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >>>>>>>> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >>>>>>>> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >>>>>>>> >>>>>>>> Maybe it's best to back out 8185349 for now. >>>>>>>> >>>>>>>> Best regards, >>>>>>>> Tobias >>>>>>>> >>>>>>>>> Maurizio?s call - this is compiler sources, >>>>>>>>> >>>>>>>>> thanks, >>>>>>>>> Karen >>>>>>>>> >>>>>>>>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >>>>>>>>>> >>>>>>>>>> Okay, it's getting complicated. Here are the webrevs: >>>>>>>>>> >>>>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>>>>>>>> >>>>>>>>>> What do you think? >>>>>>>>>> >>>>>>>>>> Best regards, >>>>>>>>>> Tobias >>>>>>>>>> >>>>>>>>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>>>>>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>>>>>>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>>>>>>>>>> >>>>>>>>>>>> jdk.experimental.bytecode.Opcode >>>>>>>>>>> Right: >>>>>>>>>>> >>>>>>>>>>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>>>>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>>>>>>>>>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>>>>>>>>>> @@ -235,14 +235,11 @@ >>>>>>>>>>> VSTORE(204), >>>>>>>>>>> VALOAD(205), >>>>>>>>>>> VASTORE(206), >>>>>>>>>>> - VNEW(207), >>>>>>>>>>> - VRETURN(210), >>>>>>>>>>> - VGETFIELD(211), >>>>>>>>>>> - TYPED(212), >>>>>>>>>>> - VDEFAULT(214), >>>>>>>>>>> - VWITHFIELD(215), >>>>>>>>>>> - VBOX(216), >>>>>>>>>>> - VUNBOX(217); >>>>>>>>>>> + VRETURN(207), >>>>>>>>>>> + VDEFAULT(208), >>>>>>>>>>> + VWITHFIELD(209), >>>>>>>>>>> + VBOX(210), >>>>>>>>>>> + VUNBOX(211); >>>>>>>>>>> >>>>>>>>>>> int code; >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> And I guess we have to change this as well: >>>>>>>>>>> >>>>>>>>>>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>>>>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>>>>>>>>>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>>>>>>>>>> @@ -247,13 +247,13 @@ >>>>>>>>>>> VSTORE(204, LOCAL), >>>>>>>>>>> VALOAD(205), >>>>>>>>>>> VASTORE(206), >>>>>>>>>>> - VRETURN(210), >>>>>>>>>>> + VRETURN(207), >>>>>>>>>>> >>>>>>>>>>> - VDEFAULT(214, CPREF_W), >>>>>>>>>>> - VWITHFIELD(215, CPREF_W), >>>>>>>>>>> + VDEFAULT(208, CPREF_W), >>>>>>>>>>> + VWITHFIELD(209, CPREF_W), >>>>>>>>>>> >>>>>>>>>>> - VBOX(216, CPREF_W), >>>>>>>>>>> - VUNBOX(217, CPREF_W), >>>>>>>>>>> + VBOX(210, CPREF_W), >>>>>>>>>>> + VUNBOX(211, CPREF_W), >>>>>>>>>>> >>>>>>>>>>> // impdep 0xfe: PicoJava nonpriv >>>>>>>>>>> // impdep 0xff: Picojava priv >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Thanks, >>>>>>>>>>> Tobias >>>>>>>>>>> >>>>>>>>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>>>>>>>> Hi, >>>>>>>>>>>>> >>>>>>>>>>>>> seems like this is due to: >>>>>>>>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>>>>>>>> >>>>>>>>>>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>>>>>>>>>> >>>>>>>>>>>>> We should reset the value type bytecode numbers: >>>>>>>>>>>>> >>>>>>>>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>>>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>>>>>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>>>>>>>>>> @@ -248,11 +248,11 @@ >>>>>>>>>>>>> _vstore = 204, // 0xcc >>>>>>>>>>>>> _vaload = 205, // 0xcd >>>>>>>>>>>>> _vastore = 206, // 0xce >>>>>>>>>>>>> - _vreturn = 210, // 0xd2 >>>>>>>>>>>>> - _vdefault = 214, // 0xd6 >>>>>>>>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>>>>>>>> - _vbox = 216, // 0xd6 >>>>>>>>>>>>> - _vunbox = 217, // 0xd7 >>>>>>>>>>>>> + _vreturn = 207, // 0xcf >>>>>>>>>>>>> + _vdefault = 208, // 0xd0 >>>>>>>>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>>>>>>>> + _vbox = 210, // 0xd2 >>>>>>>>>>>>> + _vunbox = 211, // 0xd3 >>>>>>>>>>>>> number_of_java_codes, >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks, >>>>>>>>>>>>> Tobias >>>> >>> >> > From maurizio.cimadamore at oracle.com Fri Jul 28 09:59:40 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 28 Jul 2017 10:59:40 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> Message-ID: <9cf1820c-931a-fed8-4feb-379f50db5eb1@oracle.com> If you are in search for more inspiration, please take a look at this earlier experiment I did: http://cr.openjdk.java.net/~mcimadamore/vgetfield-remove-hotspot/ This completely removed vgetfield from the picture, so it had workarounds for most of the stuff you found. Maurizio On 28/07/17 09:57, Tobias Hartmann wrote: > Hi, > > I found more problems: > (1) C2 emits non value type specific code for _vgetfield because it looks at the Java bytecode (not the raw bytecode) which is now _getfield. > -> Fixed by checking the field holder in parse3.cpp > > (2) Oop map generation is broken because there is no way to determine if the _getfield bytecode accesses a value type field. > -> I had to temporarily disable verification. See changes in generateOopMap.cpp/hpp. Checking itr->raw_code() == Bytecodes::_vgetfield is not sufficient and also a constant pool lookup does not work in all cases. > Any ideas on how to fix this? > > Here are the updated webrevs: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ > > I'll run them through JPRT. > > Best regards, > Tobias > > On 27.07.2017 20:09, Tobias Hartmann wrote: >> I updated the webrevs in place and will re-run JPRT. >> >> I'm also seeing lots of these: >> >> Error: A JNI error has occurred, please check your installation and try again >> Exception in thread "main" java.lang.VerifyError: Illegal type at constant pool entry 57 in class valhalla.shady.MinimalValueTypes_1_0 >> Exception Details: >> Location: >> valhalla/shady/MinimalValueTypes_1_0.getValueClass()Ljava/lang/Class; @0: ldc >> Reason: >> Constant pool index 57 is invalid >> Bytecode: >> 0000000: 1239 c000 3ab0 >> >> at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:368) >> at java.base/java.lang.invoke.MethodTypeForm.canonicalizeAll(MethodTypeForm.java:424) >> at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:348) >> at java.base/java.lang.invoke.MethodTypeForm.findForm(MethodTypeForm.java:320) >> at java.base/java.lang.invoke.MethodType.makeImpl(MethodType.java:325) >> at java.base/java.lang.invoke.MethodHandleNatives.findMethodHandleType(MethodHandleNatives.java:292) >> at java.base/java.util.ResourceBundle.getLoader(ResourceBundle.java:561) >> at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1560) >> at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1535) >> at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:836) >> at java.base/sun.launcher.LauncherHelper$ResourceBundleHolder.(LauncherHelper.java:128) >> at java.base/sun.launcher.LauncherHelper.getLocalizedMessage(LauncherHelper.java:352) >> at java.base/sun.launcher.LauncherHelper.abort(LauncherHelper.java:519) >> at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:677) >> at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:552) >> >> Best regards, >> Tobias >> >> On 27.07.2017 19:51, Tobias Hartmann wrote: >>> On 27.07.2017 19:50, Karen Kinnear wrote: >>>> We missed a change in byte codes.cpp: >>>> >>>> Need to move the def(_vgetfield down to the JVM byte codes and add the additional field which is _getfield as the java_code. >>> Okay, I'll fix that. >>> >>> Best regards, >>> Tobias >>> >>>> thanks, >>>> Karen >>>> >>>>> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann wrote: >>>>> >>>>> Hi Karen, >>>>> >>>>> On 27.07.2017 19:30, Karen Kinnear wrote: >>>>>> Do you want to change in ByteCodes.java - >>>>>> ByteCodeCount to 210 instead of 216? >>>>> Right, that count should be updated as well. >>>>> >>>>> I just run this through JPRT and I get dozens of failures: >>>>> >>>>> # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 >>>>> # assert(Bytecodes::is_java_code(code)) failed: sanity check >>>>> >>>>> Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k >>>>> Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) >>>>> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f >>>>> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f >>>>> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd >>>>> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >>>>> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 >>>>> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >>>>> V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba >>>>> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 >>>>> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb >>>>> V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a >>>>> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e >>>>> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a >>>>> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e >>>>> V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >>>>> V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >>>>> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 >>>>> V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 >>>>> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >>>>> V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed >>>>> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >>>>> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >>>>> V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f >>>>> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >>>>> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >>>>> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >>>>> >>>>> Maybe it's best to back out 8185349 for now. >>>>> >>>>> Best regards, >>>>> Tobias >>>>> >>>>>> Maurizio?s call - this is compiler sources, >>>>>> >>>>>> thanks, >>>>>> Karen >>>>>> >>>>>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >>>>>>> >>>>>>> Okay, it's getting complicated. Here are the webrevs: >>>>>>> >>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>>>>> >>>>>>> What do you think? >>>>>>> >>>>>>> Best regards, >>>>>>> Tobias >>>>>>> >>>>>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>>>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>>>>>>> >>>>>>>>> jdk.experimental.bytecode.Opcode >>>>>>>> Right: >>>>>>>> >>>>>>>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>>>>>>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>>>>>>> @@ -235,14 +235,11 @@ >>>>>>>> VSTORE(204), >>>>>>>> VALOAD(205), >>>>>>>> VASTORE(206), >>>>>>>> - VNEW(207), >>>>>>>> - VRETURN(210), >>>>>>>> - VGETFIELD(211), >>>>>>>> - TYPED(212), >>>>>>>> - VDEFAULT(214), >>>>>>>> - VWITHFIELD(215), >>>>>>>> - VBOX(216), >>>>>>>> - VUNBOX(217); >>>>>>>> + VRETURN(207), >>>>>>>> + VDEFAULT(208), >>>>>>>> + VWITHFIELD(209), >>>>>>>> + VBOX(210), >>>>>>>> + VUNBOX(211); >>>>>>>> >>>>>>>> int code; >>>>>>>> >>>>>>>> >>>>>>>> And I guess we have to change this as well: >>>>>>>> >>>>>>>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>>>>>>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>>>>>>> @@ -247,13 +247,13 @@ >>>>>>>> VSTORE(204, LOCAL), >>>>>>>> VALOAD(205), >>>>>>>> VASTORE(206), >>>>>>>> - VRETURN(210), >>>>>>>> + VRETURN(207), >>>>>>>> >>>>>>>> - VDEFAULT(214, CPREF_W), >>>>>>>> - VWITHFIELD(215, CPREF_W), >>>>>>>> + VDEFAULT(208, CPREF_W), >>>>>>>> + VWITHFIELD(209, CPREF_W), >>>>>>>> >>>>>>>> - VBOX(216, CPREF_W), >>>>>>>> - VUNBOX(217, CPREF_W), >>>>>>>> + VBOX(210, CPREF_W), >>>>>>>> + VUNBOX(211, CPREF_W), >>>>>>>> >>>>>>>> // impdep 0xfe: PicoJava nonpriv >>>>>>>> // impdep 0xff: Picojava priv >>>>>>>> >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Tobias >>>>>>>> >>>>>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>>>>> Hi, >>>>>>>>>> >>>>>>>>>> seems like this is due to: >>>>>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>>>>> >>>>>>>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>>>>>>> >>>>>>>>>> We should reset the value type bytecode numbers: >>>>>>>>>> >>>>>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>>>>>>> @@ -248,11 +248,11 @@ >>>>>>>>>> _vstore = 204, // 0xcc >>>>>>>>>> _vaload = 205, // 0xcd >>>>>>>>>> _vastore = 206, // 0xce >>>>>>>>>> - _vreturn = 210, // 0xd2 >>>>>>>>>> - _vdefault = 214, // 0xd6 >>>>>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>>>>> - _vbox = 216, // 0xd6 >>>>>>>>>> - _vunbox = 217, // 0xd7 >>>>>>>>>> + _vreturn = 207, // 0xcf >>>>>>>>>> + _vdefault = 208, // 0xd0 >>>>>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>>>>> + _vbox = 210, // 0xd2 >>>>>>>>>> + _vunbox = 211, // 0xd3 >>>>>>>>>> number_of_java_codes, >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Tobias From maurizio.cimadamore at oracle.com Fri Jul 28 12:28:43 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 28 Jul 2017 13:28:43 +0100 Subject: Review Request: JDK-8185148: [MVT] Class.java's isValueClass causes all non-MVT enabled JVM executions to have an InstanceKlass created for __Value reference In-Reply-To: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> References: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> Message-ID: Looks great - thanks! Maurizio On 28/07/17 05:56, Mandy Chung wrote: > A class referencing java.lang.__Value would fail verification when value type is not enabled. Class::isValueType and MinimalValueTypes_1_0::getValueType both references java.lang.__Value but they may be loaded when value type is not enabled. VerifyError that Tobias has ran into [1] is related to this issue. > > A simple fix is to refactor the reference to java.lang.__Value in a separate class that will only be loaded when -XX:+EnableMVT and ?XX:+EnableValhalla is set. We may look into a cleaner fix in the future. > > Webrev: > http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8185148/webrev.00/index.html > > Mandy > [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003007.html From tobias.hartmann at oracle.com Fri Jul 28 12:56:45 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 28 Jul 2017 12:56:45 +0000 Subject: hg: valhalla/valhalla/hotspot: 8185453: [MVT] Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" Message-ID: <201707281256.v6SCujmx010494@aojmv0008.oracle.com> Changeset: 9f87e6962c0d Author: thartmann Date: 2017-07-28 14:52 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9f87e6962c0d 8185453: [MVT] Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" Reviewed-by: mcimadamore, acorn ! src/share/vm/interpreter/bytecodes.cpp ! src/share/vm/interpreter/bytecodes.hpp ! src/share/vm/interpreter/templateTable.cpp ! src/share/vm/oops/generateOopMap.cpp ! src/share/vm/oops/generateOopMap.hpp ! src/share/vm/opto/parse.hpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/parse3.cpp From tobias.hartmann at oracle.com Fri Jul 28 12:56:58 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 28 Jul 2017 12:56:58 +0000 Subject: hg: valhalla/valhalla/jdk: 8185453: [MVT] Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" Message-ID: <201707281256.v6SCuxpO010736@aojmv0008.oracle.com> Changeset: 6e02ba8a52c1 Author: thartmann Date: 2017-07-28 14:52 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6e02ba8a52c1 8185453: [MVT] Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" Reviewed-by: mcimadamore, acorn ! src/java.base/share/classes/jdk/experimental/bytecode/CodeBuilder.java ! src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java ! src/java.base/share/classes/jdk/experimental/bytecode/TypedCodeBuilder.java From tobias.hartmann at oracle.com Fri Jul 28 12:57:04 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 28 Jul 2017 12:57:04 +0000 Subject: hg: valhalla/valhalla/langtools: 8185453: [MVT] Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" Message-ID: <201707281257.v6SCv4LY010800@aojmv0008.oracle.com> Changeset: 865bb73830a9 Author: thartmann Date: 2017-07-28 14:52 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/langtools/rev/865bb73830a9 8185453: [MVT] Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" Reviewed-by: mcimadamore, acorn ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ByteCodes.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Code.java ! src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java From tobias.hartmann at oracle.com Fri Jul 28 12:56:04 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Jul 2017 14:56:04 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <0028a596-e5ae-e6c1-3167-611b8c74072a@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> <0028a596-e5ae-e6c1-3167-611b8c74072a@oracle.com> Message-ID: <43ad86a1-3364-961c-7584-b60c47f35d1b@oracle.com> All tests passed. I've pushed the changes. With Mandy's fix for 8185148, the repo should be stable again. Best regards, Tobias On 28.07.2017 11:20, Tobias Hartmann wrote: > > On 28.07.2017 10:57, Tobias Hartmann wrote: >> (2) Oop map generation is broken because there is no way to determine if the _getfield bytecode accesses a value type field. >> -> I had to temporarily disable verification. See changes in generateOopMap.cpp/hpp. Checking itr->raw_code() == Bytecodes::_vgetfield is not sufficient and also a constant pool lookup does not work in all cases. >> Any ideas on how to fix this? > > Okay, using the 'CellTypeState::refOrValueType' hack should do the job: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/src/share/vm/oops/generateOopMap.cpp.sdiff.html > > Best regards, > Tobias > From tobias.hartmann at oracle.com Fri Jul 28 13:21:19 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Jul 2017 15:21:19 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <9cf1820c-931a-fed8-4feb-379f50db5eb1@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> <9cf1820c-931a-fed8-4feb-379f50db5eb1@oracle.com> Message-ID: <0a7138a8-6e23-35c9-cb27-b0fe2e30ae23@oracle.com> On 28.07.2017 11:59, Maurizio Cimadamore wrote: > If you are in search for more inspiration, please take a look at this earlier experiment I did: > > http://cr.openjdk.java.net/~mcimadamore/vgetfield-remove-hotspot/ > > This completely removed vgetfield from the picture, so it had workarounds for most of the stuff you found. Yes but it's not correct: + bool is_valuetype = cp->tag_at(idx).is_value_type() + + assert(!(!is_get && is_valuetype), "Invalid configuration: vputfield doesn't exist"); Misses a ";" after the first statement and otherwise breaks with: # Internal Error (/oracle/valhalla_cp/hotspot/src/share/vm/oops/array.hpp:118), pid=22366, tid=22383 # assert(i >= 0 && i< _length) failed: oob: 0 <= 65583 < 562 V [libjvm.so+0xb344ad] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd V [libjvm.so+0xdc9c44] GenerateOopMap::do_field(int, int, int, int)+0x94 V [libjvm.so+0xdcd87c] GenerateOopMap::interp_bb(BasicBlock*)+0x10c V [libjvm.so+0xdce81c] GenerateOopMap::do_interpretation()+0xdc [...] Also, all code that iterates over the java bytecodes, for example GraphKit::compute_stack_effects(), can never find a _vgetfield after your changes. These cases should be removed. Best regards, Tobias > On 28/07/17 09:57, Tobias Hartmann wrote: >> Hi, >> >> I found more problems: >> (1) C2 emits non value type specific code for _vgetfield because it looks at the Java bytecode (not the raw bytecode) which is now _getfield. >> -> Fixed by checking the field holder in parse3.cpp >> >> (2) Oop map generation is broken because there is no way to determine if the _getfield bytecode accesses a value type field. >> -> I had to temporarily disable verification. See changes in generateOopMap.cpp/hpp. Checking itr->raw_code() == Bytecodes::_vgetfield is not sufficient and also a constant pool lookup does not work in all cases. >> Any ideas on how to fix this? >> >> Here are the updated webrevs: >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >> >> I'll run them through JPRT. >> >> Best regards, >> Tobias >> >> On 27.07.2017 20:09, Tobias Hartmann wrote: >>> I updated the webrevs in place and will re-run JPRT. >>> >>> I'm also seeing lots of these: >>> >>> Error: A JNI error has occurred, please check your installation and try again >>> Exception in thread "main" java.lang.VerifyError: Illegal type at constant pool entry 57 in class valhalla.shady.MinimalValueTypes_1_0 >>> Exception Details: >>> Location: >>> valhalla/shady/MinimalValueTypes_1_0.getValueClass()Ljava/lang/Class; @0: ldc >>> Reason: >>> Constant pool index 57 is invalid >>> Bytecode: >>> 0000000: 1239 c000 3ab0 >>> >>> at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:368) >>> at java.base/java.lang.invoke.MethodTypeForm.canonicalizeAll(MethodTypeForm.java:424) >>> at java.base/java.lang.invoke.MethodTypeForm.canonicalize(MethodTypeForm.java:348) >>> at java.base/java.lang.invoke.MethodTypeForm.findForm(MethodTypeForm.java:320) >>> at java.base/java.lang.invoke.MethodType.makeImpl(MethodType.java:325) >>> at java.base/java.lang.invoke.MethodHandleNatives.findMethodHandleType(MethodHandleNatives.java:292) >>> at java.base/java.util.ResourceBundle.getLoader(ResourceBundle.java:561) >>> at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1560) >>> at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1535) >>> at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:836) >>> at java.base/sun.launcher.LauncherHelper$ResourceBundleHolder.(LauncherHelper.java:128) >>> at java.base/sun.launcher.LauncherHelper.getLocalizedMessage(LauncherHelper.java:352) >>> at java.base/sun.launcher.LauncherHelper.abort(LauncherHelper.java:519) >>> at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:677) >>> at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:552) >>> >>> Best regards, >>> Tobias >>> >>> On 27.07.2017 19:51, Tobias Hartmann wrote: >>>> On 27.07.2017 19:50, Karen Kinnear wrote: >>>>> We missed a change in byte codes.cpp: >>>>> >>>>> Need to move the def(_vgetfield down to the JVM byte codes and add the additional field which is _getfield as the java_code. >>>> Okay, I'll fix that. >>>> >>>> Best regards, >>>> Tobias >>>> >>>>> thanks, >>>>> Karen >>>>> >>>>>> On Jul 27, 2017, at 1:34 PM, Tobias Hartmann wrote: >>>>>> >>>>>> Hi Karen, >>>>>> >>>>>> On 27.07.2017 19:30, Karen Kinnear wrote: >>>>>>> Do you want to change in ByteCodes.java - >>>>>>> ByteCodeCount to 210 instead of 216? >>>>>> Right, that count should be updated as well. >>>>>> >>>>>> I just run this through JPRT and I get dozens of failures: >>>>>> >>>>>> # Internal Error (/scratch/opt/jprt/T/P1/170707.tohartma/s/hotspot/src/share/vm/interpreter/bytecodeStream.hpp:210), pid=10773, tid=10777 >>>>>> # assert(Bytecodes::is_java_code(code)) failed: sanity check >>>>>> >>>>>> Stack: [0x00007fc4238db000,0x00007fc4239db000], sp=0x00007fc4239d72d0, free space=1008k >>>>>> Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code) >>>>>> V [libjvm.so+0x16aee0f] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x15f >>>>>> V [libjvm.so+0x16afbbf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f >>>>>> V [libjvm.so+0xad92fd] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd >>>>>> V [libjvm.so+0xb0e5d8] BytecodeStream::next()+0x158 >>>>>> V [libjvm.so+0xd65088] RetTable::compute_ret_table(methodHandle const&)+0x48 >>>>>> V [libjvm.so+0xd67c7d] GenerateOopMap::compute_map(Thread*)+0x31d >>>>>> V [libjvm.so+0x1327c7a] OopMapForCacheEntry::compute_map(Thread*)+0xba >>>>>> V [libjvm.so+0x1329aa6] OopMapCacheEntry::fill(methodHandle, int)+0x136 >>>>>> V [libjvm.so+0x132b2ab] OopMapCache::lookup(methodHandle const&, int, InterpreterOopMap*) const+0x1bb >>>>>> V [libjvm.so+0x126587a] Method::mask_for(int, InterpreterOopMap*)+0x5a >>>>>> V [libjvm.so+0xc1e97e] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool)+0xb0e >>>>>> V [libjvm.so+0x15dd2ba] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x21a >>>>>> V [libjvm.so+0x15e799e] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x4e >>>>>> V [libjvm.so+0xd36be1] GenCollectedHeap::process_roots(StrongRootsScope*, GenCollectedHeap::ScanningOption, OopClosure*, OopClosure*, CLDClosure*, CLDClosure*, CodeBlobToOopClosure*)+0x81 >>>>>> V [libjvm.so+0xd36fdc] GenCollectedHeap::young_process_roots(StrongRootsScope*, OopsInGenClosure*, OopsInGenClosure*, CLDClosure*)+0x4c >>>>>> V [libjvm.so+0xaf22e4] DefNewGeneration::collect(bool, bool, unsigned long, bool)+0x554 >>>>>> V [libjvm.so+0xd3a576] GenCollectedHeap::collect_generation(Generation*, bool, unsigned long, bool, bool, bool, bool)+0x356 >>>>>> V [libjvm.so+0xd3bb28] GenCollectedHeap::do_collection(bool, bool, unsigned long, bool, GenCollectedHeap::GenerationType)+0x338 >>>>>> V [libjvm.so+0xa02ebd] GenCollectorPolicy::satisfy_failed_allocation(unsigned long, bool)+0xed >>>>>> V [libjvm.so+0x16b059d] VM_GenCollectForAllocation::doit()+0xcd >>>>>> V [libjvm.so+0x16ebfc9] VM_Operation::evaluate()+0xa9 >>>>>> V [libjvm.so+0x16e8fbf] VMThread::evaluate_operation(VM_Operation*)+0x34f >>>>>> V [libjvm.so+0x16e98a9] VMThread::loop()+0x269 >>>>>> V [libjvm.so+0x16e9f50] VMThread::run()+0xc0 >>>>>> V [libjvm.so+0x1347982] thread_native_entry(Thread*)+0x112 >>>>>> >>>>>> Maybe it's best to back out 8185349 for now. >>>>>> >>>>>> Best regards, >>>>>> Tobias >>>>>> >>>>>>> Maurizio?s call - this is compiler sources, >>>>>>> >>>>>>> thanks, >>>>>>> Karen >>>>>>> >>>>>>>> On Jul 27, 2017, at 12:18 PM, Tobias Hartmann wrote: >>>>>>>> >>>>>>>> Okay, it's getting complicated. Here are the webrevs: >>>>>>>> >>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.jdk/ >>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.langtools/ >>>>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/ >>>>>>>> >>>>>>>> What do you think? >>>>>>>> >>>>>>>> Best regards, >>>>>>>> Tobias >>>>>>>> >>>>>>>> On 27.07.2017 18:08, Tobias Hartmann wrote: >>>>>>>>> On 27.07.2017 17:58, Maurizio Cimadamore wrote: >>>>>>>>>> Wait - if you update these opcodes, then we need to update bytecode library as well - see >>>>>>>>>> >>>>>>>>>> jdk.experimental.bytecode.Opcode >>>>>>>>> Right: >>>>>>>>> >>>>>>>>> diff -r 2e4c9a8ae4e3 src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java >>>>>>>>> --- a/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 15:59:25 2017 +0100 >>>>>>>>> +++ b/src/java.base/share/classes/jdk/experimental/bytecode/Opcode.java Thu Jul 27 18:07:52 2017 +0200 >>>>>>>>> @@ -235,14 +235,11 @@ >>>>>>>>> VSTORE(204), >>>>>>>>> VALOAD(205), >>>>>>>>> VASTORE(206), >>>>>>>>> - VNEW(207), >>>>>>>>> - VRETURN(210), >>>>>>>>> - VGETFIELD(211), >>>>>>>>> - TYPED(212), >>>>>>>>> - VDEFAULT(214), >>>>>>>>> - VWITHFIELD(215), >>>>>>>>> - VBOX(216), >>>>>>>>> - VUNBOX(217); >>>>>>>>> + VRETURN(207), >>>>>>>>> + VDEFAULT(208), >>>>>>>>> + VWITHFIELD(209), >>>>>>>>> + VBOX(210), >>>>>>>>> + VUNBOX(211); >>>>>>>>> >>>>>>>>> int code; >>>>>>>>> >>>>>>>>> >>>>>>>>> And I guess we have to change this as well: >>>>>>>>> >>>>>>>>> diff -r 298730c35452 src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java >>>>>>>>> --- a/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 16:00:29 2017 +0100 >>>>>>>>> +++ b/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Opcode.java Thu Jul 27 18:08:20 2017 +0200 >>>>>>>>> @@ -247,13 +247,13 @@ >>>>>>>>> VSTORE(204, LOCAL), >>>>>>>>> VALOAD(205), >>>>>>>>> VASTORE(206), >>>>>>>>> - VRETURN(210), >>>>>>>>> + VRETURN(207), >>>>>>>>> >>>>>>>>> - VDEFAULT(214, CPREF_W), >>>>>>>>> - VWITHFIELD(215, CPREF_W), >>>>>>>>> + VDEFAULT(208, CPREF_W), >>>>>>>>> + VWITHFIELD(209, CPREF_W), >>>>>>>>> >>>>>>>>> - VBOX(216, CPREF_W), >>>>>>>>> - VUNBOX(217, CPREF_W), >>>>>>>>> + VBOX(210, CPREF_W), >>>>>>>>> + VUNBOX(211, CPREF_W), >>>>>>>>> >>>>>>>>> // impdep 0xfe: PicoJava nonpriv >>>>>>>>> // impdep 0xff: Picojava priv >>>>>>>>> >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Tobias >>>>>>>>> >>>>>>>>>> On 27/07/17 16:31, Tobias Hartmann wrote: >>>>>>>>>>> Hi, >>>>>>>>>>> >>>>>>>>>>> seems like this is due to: >>>>>>>>>>> http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/dbb31857c4d4 >>>>>>>>>>> >>>>>>>>>>> If I count correctly, adding _vgetfield at the end 'causes number_of_codes' to be 257 and thus we fail. >>>>>>>>>>> >>>>>>>>>>> We should reset the value type bytecode numbers: >>>>>>>>>>> >>>>>>>>>>> diff -r 5cd8d5559192 src/share/vm/interpreter/bytecodes.hpp >>>>>>>>>>> --- a/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 16:00:00 2017 +0100 >>>>>>>>>>> +++ b/src/share/vm/interpreter/bytecodes.hpp Thu Jul 27 17:23:40 2017 +0200 >>>>>>>>>>> @@ -248,11 +248,11 @@ >>>>>>>>>>> _vstore = 204, // 0xcc >>>>>>>>>>> _vaload = 205, // 0xcd >>>>>>>>>>> _vastore = 206, // 0xce >>>>>>>>>>> - _vreturn = 210, // 0xd2 >>>>>>>>>>> - _vdefault = 214, // 0xd6 >>>>>>>>>>> - _vwithfield = 215, // 0xd7 >>>>>>>>>>> - _vbox = 216, // 0xd6 >>>>>>>>>>> - _vunbox = 217, // 0xd7 >>>>>>>>>>> + _vreturn = 207, // 0xcf >>>>>>>>>>> + _vdefault = 208, // 0xd0 >>>>>>>>>>> + _vwithfield = 209, // 0xd1 >>>>>>>>>>> + _vbox = 210, // 0xd2 >>>>>>>>>>> + _vunbox = 211, // 0xd3 >>>>>>>>>>> number_of_java_codes, >>>>>>>>>>> >>>>>>>>>>> Thanks, >>>>>>>>>>> Tobias > From maurizio.cimadamore at oracle.com Fri Jul 28 13:29:15 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 28 Jul 2017 14:29:15 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <43ad86a1-3364-961c-7584-b60c47f35d1b@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> <0028a596-e5ae-e6c1-3167-611b8c74072a@oracle.com> <43ad86a1-3364-961c-7584-b60c47f35d1b@oracle.com> Message-ID: <4f20e136-80a0-e25c-4b5d-a9b8079154ed@oracle.com> Whohoo - thanks for looking after my breakages :-) Maurizio On 28/07/17 13:56, Tobias Hartmann wrote: > All tests passed. I've pushed the changes. > > With Mandy's fix for 8185148, the repo should be stable again. > > Best regards, > Tobias > > On 28.07.2017 11:20, Tobias Hartmann wrote: >> On 28.07.2017 10:57, Tobias Hartmann wrote: >>> (2) Oop map generation is broken because there is no way to determine if the _getfield bytecode accesses a value type field. >>> -> I had to temporarily disable verification. See changes in generateOopMap.cpp/hpp. Checking itr->raw_code() == Bytecodes::_vgetfield is not sufficient and also a constant pool lookup does not work in all cases. >>> Any ideas on how to fix this? >> Okay, using the 'CellTypeState::refOrValueType' hack should do the job: >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/src/share/vm/oops/generateOopMap.cpp.sdiff.html >> >> Best regards, >> Tobias >> From tobias.hartmann at oracle.com Fri Jul 28 13:39:04 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Jul 2017 15:39:04 +0200 Subject: Review Request: JDK-8185148: [MVT] Class.java's isValueClass causes all non-MVT enabled JVM executions to have an InstanceKlass created for __Value reference In-Reply-To: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> References: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> Message-ID: <82a0c8d9-dded-4450-f18a-38e531b6b395@oracle.com> Hi Mandy, this looks good to me! I tested this on top of my fix for 8185453 and all tests pass. Thanks, Tobias On 28.07.2017 06:56, Mandy Chung wrote: > A class referencing java.lang.__Value would fail verification when value type is not enabled. Class::isValueType and MinimalValueTypes_1_0::getValueType both references java.lang.__Value but they may be loaded when value type is not enabled. VerifyError that Tobias has ran into [1] is related to this issue. > > A simple fix is to refactor the reference to java.lang.__Value in a separate class that will only be loaded when -XX:+EnableMVT and ?XX:+EnableValhalla is set. We may look into a cleaner fix in the future. > > Webrev: > http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8185148/webrev.00/index.html > > Mandy > [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003007.html > From karen.kinnear at oracle.com Fri Jul 28 13:44:50 2017 From: karen.kinnear at oracle.com (Karen Kinnear) Date: Fri, 28 Jul 2017 09:44:50 -0400 Subject: Review Request: JDK-8185148: [MVT] Class.java's isValueClass causes all non-MVT enabled JVM executions to have an InstanceKlass created for __Value reference In-Reply-To: <82a0c8d9-dded-4450-f18a-38e531b6b395@oracle.com> References: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> <82a0c8d9-dded-4450-f18a-38e531b6b395@oracle.com> Message-ID: Looks good - thank you very much Mandy for jumping in on that. thanks, Karen > On Jul 28, 2017, at 9:39 AM, Tobias Hartmann wrote: > > Hi Mandy, > > this looks good to me! I tested this on top of my fix for 8185453 and all tests pass. > > Thanks, > Tobias > > On 28.07.2017 06:56, Mandy Chung wrote: >> A class referencing java.lang.__Value would fail verification when value type is not enabled. Class::isValueType and MinimalValueTypes_1_0::getValueType both references java.lang.__Value but they may be loaded when value type is not enabled. VerifyError that Tobias has ran into [1] is related to this issue. >> >> A simple fix is to refactor the reference to java.lang.__Value in a separate class that will only be loaded when -XX:+EnableMVT and ?XX:+EnableValhalla is set. We may look into a cleaner fix in the future. >> >> Webrev: >> http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8185148/webrev.00/index.html >> >> Mandy >> [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003007.html >> From karen.kinnear at oracle.com Fri Jul 28 14:07:03 2017 From: karen.kinnear at oracle.com (Karen Kinnear) Date: Fri, 28 Jul 2017 10:07:03 -0400 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <4f20e136-80a0-e25c-4b5d-a9b8079154ed@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> <0028a596-e5ae-e6c1-3167-611b8c74072a@oracle.com> <43ad86a1-3364-961c-7584-b60c47f35d1b@oracle.com> <4f20e136-80a0-e25c-4b5d-a9b8079154ed@oracle.com> Message-ID: <0025C475-AB5A-4DD2-9247-18EC94DBB355@oracle.com> Tobias, Frederic said that he would work on the cleaner vgetfield removal when he gets back if that is helpful - he was hoping to work on it with you - since it obviously needs JIT changes as well. thanks Karen > On Jul 28, 2017, at 9:29 AM, Maurizio Cimadamore wrote: > > Whohoo - thanks for looking after my breakages :-) > > Maurizio > > > On 28/07/17 13:56, Tobias Hartmann wrote: >> All tests passed. I've pushed the changes. >> >> With Mandy's fix for 8185148, the repo should be stable again. >> >> Best regards, >> Tobias >> >> On 28.07.2017 11:20, Tobias Hartmann wrote: >>> On 28.07.2017 10:57, Tobias Hartmann wrote: >>>> (2) Oop map generation is broken because there is no way to determine if the _getfield bytecode accesses a value type field. >>>> -> I had to temporarily disable verification. See changes in generateOopMap.cpp/hpp. Checking itr->raw_code() == Bytecodes::_vgetfield is not sufficient and also a constant pool lookup does not work in all cases. >>>> Any ideas on how to fix this? >>> Okay, using the 'CellTypeState::refOrValueType' hack should do the job: >>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/src/share/vm/oops/generateOopMap.cpp.sdiff.html >>> >>> Best regards, >>> Tobias >>> > From mandy.chung at oracle.com Fri Jul 28 14:26:22 2017 From: mandy.chung at oracle.com (Mandy Chung) Date: Fri, 28 Jul 2017 07:26:22 -0700 Subject: Review Request: JDK-8185148: [MVT] Class.java's isValueClass causes all non-MVT enabled JVM executions to have an InstanceKlass created for __Value reference In-Reply-To: References: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> Message-ID: One thing to mention: LambdaType.BasicType Q_TYPE: Q_TYPE('Q', MinimalValueTypes_1_0.getValueClass(), Wrapper.OBJECT), If value type is not enabled, Q_TYPE would have a null basic type Class. I expect Q_TYPE should not be used in that case. Do you see any issue? Mandy > On Jul 28, 2017, at 5:28 AM, Maurizio Cimadamore wrote: > > Looks great - thanks! > > Maurizio > > > On 28/07/17 05:56, Mandy Chung wrote: >> A class referencing java.lang.__Value would fail verification when value type is not enabled. Class::isValueType and MinimalValueTypes_1_0::getValueType both references java.lang.__Value but they may be loaded when value type is not enabled. VerifyError that Tobias has ran into [1] is related to this issue. >> >> A simple fix is to refactor the reference to java.lang.__Value in a separate class that will only be loaded when -XX:+EnableMVT and ?XX:+EnableValhalla is set. We may look into a cleaner fix in the future. >> >> Webrev: >> http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8185148/webrev.00/index.html >> >> Mandy >> [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003007.html > From rwestrel at redhat.com Fri Jul 28 14:29:51 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 28 Jul 2017 16:29:51 +0200 Subject: RFR(S): 8185266: [MVT] valhalla/mvt/WithFieldTest.java crashes with assert(will_link) failed: vdefault: typeflow responsibility In-Reply-To: <37a9932b-b516-b7cc-7104-14ca66de2f0f@oracle.com> References: <37a9932b-b516-b7cc-7104-14ca66de2f0f@oracle.com> Message-ID: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.34/ Looks good to me. Roland. From rwestrel at redhat.com Fri Jul 28 14:36:20 2017 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 28 Jul 2017 16:36:20 +0200 Subject: RFR(S): 8185443: [MVT] VectorTest fails with -Xcomp "can not load classes with compiler thread" In-Reply-To: <2343b235-7d0e-fa8d-32ad-c6b0a7609c8f@oracle.com> References: <2343b235-7d0e-fa8d-32ad-c6b0a7609c8f@oracle.com> Message-ID: > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.35/ > http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.35.jdk/ Looks ok to me. Roland. From maurizio.cimadamore at oracle.com Fri Jul 28 14:45:40 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 28 Jul 2017 15:45:40 +0100 Subject: Review Request: JDK-8185148: [MVT] Class.java's isValueClass causes all non-MVT enabled JVM executions to have an InstanceKlass created for __Value reference In-Reply-To: References: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> Message-ID: <00fcf313-ba34-c9e3-49b2-838c5f4c24fd@oracle.com> On 28/07/17 15:26, Mandy Chung wrote: > One thing to mention: > > LambdaType.BasicType Q_TYPE: > Q_TYPE('Q', MinimalValueTypes_1_0.getValueClass(), Wrapper.OBJECT), > > If value type is not enabled, Q_TYPE would have a null basic type Class. > I expect Q_TYPE should not be used in that case. Do you see any issue? I think that should be OK. I already too care of making sure that there's no eager initialization of Q-based lambda forms at startup, as this was creating issues in case value type support is disabled. So, yes, only way to have Q-typed lambda forms is to have MVT enabled (or at least that's how it should be). Of course, I can always make a mess, and try to do something like this: MethodHandles.constant(__Value.class) And that will likely blow up - but I think the core issue here is that __Value should NOT be part of java.base (or at least should not be part of an exported package), or there will always be escape hatches to get into troubles again. Maurizio > Mandy > >> On Jul 28, 2017, at 5:28 AM, Maurizio Cimadamore wrote: >> >> Looks great - thanks! >> >> Maurizio >> >> >> On 28/07/17 05:56, Mandy Chung wrote: >>> A class referencing java.lang.__Value would fail verification when value type is not enabled. Class::isValueType and MinimalValueTypes_1_0::getValueType both references java.lang.__Value but they may be loaded when value type is not enabled. VerifyError that Tobias has ran into [1] is related to this issue. >>> >>> A simple fix is to refactor the reference to java.lang.__Value in a separate class that will only be loaded when -XX:+EnableMVT and ?XX:+EnableValhalla is set. We may look into a cleaner fix in the future. >>> >>> Webrev: >>> http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8185148/webrev.00/index.html >>> >>> Mandy >>> [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003007.html From tobias.hartmann at oracle.com Fri Jul 28 15:54:24 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Jul 2017 17:54:24 +0200 Subject: RFR(S): 8185266: [MVT] valhalla/mvt/WithFieldTest.java crashes with assert(will_link) failed: vdefault: typeflow responsibility In-Reply-To: References: <37a9932b-b516-b7cc-7104-14ca66de2f0f@oracle.com> Message-ID: Thanks Roland. Best regards, Tobias On 28.07.2017 16:29, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.34/ > > Looks good to me. > > Roland. > From tobias.hartmann at oracle.com Fri Jul 28 15:54:33 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Jul 2017 17:54:33 +0200 Subject: RFR(S): 8185443: [MVT] VectorTest fails with -Xcomp "can not load classes with compiler thread" In-Reply-To: References: <2343b235-7d0e-fa8d-32ad-c6b0a7609c8f@oracle.com> Message-ID: Thanks Roland. Best regards, Tobias On 28.07.2017 16:36, Roland Westrelin wrote: > >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.35/ >> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.35.jdk/ > > Looks ok to me. > > Roland. > From tobias.hartmann at oracle.com Fri Jul 28 16:00:36 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 28 Jul 2017 16:00:36 +0000 Subject: hg: valhalla/valhalla/hotspot: 2 new changesets Message-ID: <201707281600.v6SG0a3l001788@aojmv0008.oracle.com> Changeset: e6b97a7f1d8f Author: thartmann Date: 2017-07-28 17:56 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e6b97a7f1d8f 8185266: [MVT] valhalla/mvt/WithFieldTest.java crashes with assert(will_link) failed: vdefault: typeflow responsibility Reviewed-by: roland ! src/share/vm/ci/ciTypeFlow.cpp Changeset: eba06bb9ed49 Author: thartmann Date: 2017-07-28 17:57 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/eba06bb9ed49 8185443: [MVT] VectorTest fails with -Xcomp "can not load classes with compiler thread" Reviewed-by: roland ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/signature.cpp From tobias.hartmann at oracle.com Fri Jul 28 16:00:50 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Fri, 28 Jul 2017 16:00:50 +0000 Subject: hg: valhalla/valhalla/jdk: 8185443: [MVT] VectorTest fails with -Xcomp "can not load classes with compiler thread" Message-ID: <201707281600.v6SG0o01001978@aojmv0008.oracle.com> Changeset: e682a263125d Author: thartmann Date: 2017-07-28 17:57 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e682a263125d 8185443: [MVT] VectorTest fails with -Xcomp "can not load classes with compiler thread" Reviewed-by: roland ! test/valhalla/mvt/MVTAccessCheck.java ! test/valhalla/mvt/MVTReflectionTest.java ! test/valhalla/mvt/MVTTest.java ! test/valhalla/mvt/modules/Driver.java ! test/valhalla/mvt/point/TestPoint.java ! test/valhalla/mvt/vector/VectorTest.java From tobias.hartmann at oracle.com Fri Jul 28 15:59:30 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Fri, 28 Jul 2017 17:59:30 +0200 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <0025C475-AB5A-4DD2-9247-18EC94DBB355@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <32F8E2E2-9888-472C-931C-C435D8AF0306@oracle.com> <58c45dd4-4a16-84c1-ecb3-648a9cf06e71@oracle.com> <400C0DCC-AF10-423D-8C39-A27D682D1CDD@oracle.com> <3a7e740d-e5e2-1fa5-8f36-00d25bd86a26@oracle.com> <0028a596-e5ae-e6c1-3167-611b8c74072a@oracle.com> <43ad86a1-3364-961c-7584-b60c47f35d1b@oracle.com> <4f20e136-80a0-e25c-4b5d-a9b8079154ed@oracle.com> <0025C475-AB5A-4DD2-9247-18EC94DBB355@oracle.com> Message-ID: <5045a25d-20a7-786e-466b-352389ec355d@oracle.com> Hi Karen, On 28.07.2017 16:07, Karen Kinnear wrote: > Frederic said that he would work on the cleaner vgetfield removal when he gets back if that is helpful - he was hoping > to work on it with you - since it obviously needs JIT changes as well. Okay, thanks for letting me know. I'll sync up with him. Best regards, Tobias >> On Jul 28, 2017, at 9:29 AM, Maurizio Cimadamore wrote: >> >> Whohoo - thanks for looking after my breakages :-) >> >> Maurizio >> >> >> On 28/07/17 13:56, Tobias Hartmann wrote: >>> All tests passed. I've pushed the changes. >>> >>> With Mandy's fix for 8185148, the repo should be stable again. >>> >>> Best regards, >>> Tobias >>> >>> On 28.07.2017 11:20, Tobias Hartmann wrote: >>>> On 28.07.2017 10:57, Tobias Hartmann wrote: >>>>> (2) Oop map generation is broken because there is no way to determine if the _getfield bytecode accesses a value type field. >>>>> -> I had to temporarily disable verification. See changes in generateOopMap.cpp/hpp. Checking itr->raw_code() == Bytecodes::_vgetfield is not sufficient and also a constant pool lookup does not work in all cases. >>>>> Any ideas on how to fix this? >>>> Okay, using the 'CellTypeState::refOrValueType' hack should do the job: >>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.36.hs/src/share/vm/oops/generateOopMap.cpp.sdiff.html >>>> >>>> Best regards, >>>> Tobias >>>> >> > From karen.kinnear at oracle.com Fri Jul 28 16:44:55 2017 From: karen.kinnear at oracle.com (Karen Kinnear) Date: Fri, 28 Jul 2017 12:44:55 -0400 Subject: Review Request: JDK-8185148: [MVT] Class.java's isValueClass causes all non-MVT enabled JVM executions to have an InstanceKlass created for __Value reference In-Reply-To: <00fcf313-ba34-c9e3-49b2-838c5f4c24fd@oracle.com> References: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> <00fcf313-ba34-c9e3-49b2-838c5f4c24fd@oracle.com> Message-ID: <7AF00F7D-05F6-47AB-A6C9-0F4E428A9DD2@oracle.com> Maurizio, Can you clarify for me where we ended up? __Value is not checked at the java level if neither EnableMVT or EnableValhalla flag -> system property is set. Does __Value contain ;Q syntax? Do bytecodes that refer to it need ;Q syntax? Or did we end up with a workaround here? I just want to be sure I understand what is generated when we do enable either valhalla version for other folks generating bytecodes. thanks, Karen > On Jul 28, 2017, at 10:45 AM, Maurizio Cimadamore wrote: > > > > On 28/07/17 15:26, Mandy Chung wrote: >> One thing to mention: >> >> LambdaType.BasicType Q_TYPE: >> Q_TYPE('Q', MinimalValueTypes_1_0.getValueClass(), Wrapper.OBJECT), >> >> If value type is not enabled, Q_TYPE would have a null basic type Class. >> I expect Q_TYPE should not be used in that case. Do you see any issue? > I think that should be OK. I already too care of making sure that there's no eager initialization of Q-based lambda forms at startup, as this was creating issues in case value type support is disabled. So, yes, only way to have Q-typed lambda forms is to have MVT enabled (or at least that's how it should be). Of course, I can always make a mess, and try to do something like this: > > MethodHandles.constant(__Value.class) > > And that will likely blow up - but I think the core issue here is that __Value should NOT be part of java.base (or at least should not be part of an exported package), or there will always be escape hatches to get into troubles again. > > Maurizio >> Mandy >> >>> On Jul 28, 2017, at 5:28 AM, Maurizio Cimadamore wrote: >>> >>> Looks great - thanks! >>> >>> Maurizio >>> >>> >>> On 28/07/17 05:56, Mandy Chung wrote: >>>> A class referencing java.lang.__Value would fail verification when value type is not enabled. Class::isValueType and MinimalValueTypes_1_0::getValueType both references java.lang.__Value but they may be loaded when value type is not enabled. VerifyError that Tobias has ran into [1] is related to this issue. >>>> >>>> A simple fix is to refactor the reference to java.lang.__Value in a separate class that will only be loaded when -XX:+EnableMVT and ?XX:+EnableValhalla is set. We may look into a cleaner fix in the future. >>>> >>>> Webrev: >>>> http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8185148/webrev.00/index.html >>>> >>>> Mandy >>>> [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003007.html > From maurizio.cimadamore at oracle.com Fri Jul 28 17:14:03 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 28 Jul 2017 18:14:03 +0100 Subject: Review Request: JDK-8185148: [MVT] Class.java's isValueClass causes all non-MVT enabled JVM executions to have an InstanceKlass created for __Value reference In-Reply-To: <7AF00F7D-05F6-47AB-A6C9-0F4E428A9DD2@oracle.com> References: <7CFE1EC0-0DDC-41AB-BA7B-B41AC2A93804@oracle.com> <00fcf313-ba34-c9e3-49b2-838c5f4c24fd@oracle.com> <7AF00F7D-05F6-47AB-A6C9-0F4E428A9DD2@oracle.com> Message-ID: <42411b6a-25c0-c87e-afce-228affb45790@oracle.com> On 28/07/17 17:44, Karen Kinnear wrote: > Maurizio, > > Can you clarify for me where we ended up? > __Value is not checked at the java level if neither EnableMVT or EnableValhalla flag -> system property is set. > > Does __Value contain ;Q syntax? yes, __Value contains mangled ClassInfo names. But it doesn't really use those in any meaningful way - it's this_class, mostly. > Do bytecodes that refer to it need ;Q syntax? Or did we end up with a workaround here? > > I just want to be sure I understand what is generated when we do enable either valhalla version for other folks > generating bytecodes. Well, __value is there and present in the same way, regardless of whether you enable MVT or not. It's a class in java.base (for now) and one that uses mangled ClassInfo. So, any attempt to refer to it will result in failures. While we got rid of accidental failures (indirect usages through reflection and MH API), if the user is really determined, he can always find ways to refer to this class when MVT suppor is disabled, hence causing a problem. Maurizio > > thanks, > Karen > >> On Jul 28, 2017, at 10:45 AM, Maurizio Cimadamore wrote: >> >> >> >> On 28/07/17 15:26, Mandy Chung wrote: >>> One thing to mention: >>> >>> LambdaType.BasicType Q_TYPE: >>> Q_TYPE('Q', MinimalValueTypes_1_0.getValueClass(), Wrapper.OBJECT), >>> >>> If value type is not enabled, Q_TYPE would have a null basic type Class. >>> I expect Q_TYPE should not be used in that case. Do you see any issue? >> I think that should be OK. I already too care of making sure that there's no eager initialization of Q-based lambda forms at startup, as this was creating issues in case value type support is disabled. So, yes, only way to have Q-typed lambda forms is to have MVT enabled (or at least that's how it should be). Of course, I can always make a mess, and try to do something like this: >> >> MethodHandles.constant(__Value.class) >> >> And that will likely blow up - but I think the core issue here is that __Value should NOT be part of java.base (or at least should not be part of an exported package), or there will always be escape hatches to get into troubles again. >> >> Maurizio >>> Mandy >>> >>>> On Jul 28, 2017, at 5:28 AM, Maurizio Cimadamore wrote: >>>> >>>> Looks great - thanks! >>>> >>>> Maurizio >>>> >>>> >>>> On 28/07/17 05:56, Mandy Chung wrote: >>>>> A class referencing java.lang.__Value would fail verification when value type is not enabled. Class::isValueType and MinimalValueTypes_1_0::getValueType both references java.lang.__Value but they may be loaded when value type is not enabled. VerifyError that Tobias has ran into [1] is related to this issue. >>>>> >>>>> A simple fix is to refactor the reference to java.lang.__Value in a separate class that will only be loaded when -XX:+EnableMVT and ?XX:+EnableValhalla is set. We may look into a cleaner fix in the future. >>>>> >>>>> Webrev: >>>>> http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8185148/webrev.00/index.html >>>>> >>>>> Mandy >>>>> [1] http://mail.openjdk.java.net/pipermail/valhalla-dev/2017-July/003007.html From mandy.chung at oracle.com Fri Jul 28 17:54:23 2017 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 28 Jul 2017 17:54:23 +0000 Subject: hg: valhalla/valhalla/hotspot: 8185148: [MVT] VerifierError when a class referencing __Value is loaded on non-MVT enabled JVM Message-ID: <201707281754.v6SHsN6I018764@aojmv0008.oracle.com> Changeset: 90de0b1060bb Author: mchung Date: 2017-07-28 10:51 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/90de0b1060bb 8185148: [MVT] VerifierError when a class referencing __Value is loaded on non-MVT enabled JVM Reviewed-by: mcimadamore, thartmann ! src/share/vm/runtime/arguments.cpp From mandy.chung at oracle.com Fri Jul 28 17:54:30 2017 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 28 Jul 2017 17:54:30 +0000 Subject: hg: valhalla/valhalla/jdk: 8185148: [MVT] VerifierError when a class referencing __Value is loaded on non-MVT enabled JVM Message-ID: <201707281754.v6SHsUw5018886@aojmv0008.oracle.com> Changeset: af0f4bcaf753 Author: mchung Date: 2017-07-28 10:51 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/af0f4bcaf753 8185148: [MVT] VerifierError when a class referencing __Value is loaded on non-MVT enabled JVM Reviewed-by: mcimadamore, thartmann ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/valhalla/shady/MinimalValueTypes_1_0.java From john.r.rose at oracle.com Fri Jul 28 21:15:51 2017 From: john.r.rose at oracle.com (John Rose) Date: Fri, 28 Jul 2017 14:15:51 -0700 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <6ea0cb6f-8fe9-907b-c672-481ac1ea6833@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <2da8c00f-0c7a-0b75-6e25-4a787464809c@oracle.com> <6ea0cb6f-8fe9-907b-c672-481ac1ea6833@oracle.com> Message-ID: <69D623A1-9D83-4A91-BEEC-FA828E8982F2@oracle.com> On Jul 27, 2017, at 8:57 AM, Tobias Hartmann wrote: > >> >> Also, why did I not see the issue when running all tests? > > Did you run with a debug build? Maybe your build cached some files. Re-building after changing bytecodes.hpp should take a long time. A test that fundamental (and cheap) should fail with "java -version" in a release build. If that's not the case, there should be this in our code: guarantee(number_of_codes <= 256, ""). From stanislav.smirnov at oracle.com Thu Jul 27 22:05:21 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Thu, 27 Jul 2017 22:05:21 +0000 Subject: hg: valhalla/valhalla/jdk: 259 new changesets Message-ID: <201707272205.v6RM5VJ5028074@aojmv0008.oracle.com> Changeset: f0adc10ed831 Author: ksrini Date: 2017-05-16 07:17 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f0adc10ed831 8180202: -XXaltjvm is not working anymore on MacOSX Reviewed-by: dholmes ! src/java.base/macosx/native/libjli/java_md_macosx.c Changeset: 6fdda797b5a3 Author: bpb Date: 2017-05-18 10:22 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6fdda797b5a3 8180519: Windows FILETIME should be converted to and from ULARGE_INTEGER not LARGE_INTEGER Summary: Change LARGE_INTEGER to ULARGE_INTEGER for FILETIMEs used with the GetFileTime() and SetFileTime() functions. Reviewed-by: rriggs ! src/java.base/windows/native/libjava/WinNTFileSystem_md.c Changeset: a1241271cb95 Author: iignatyev Date: 2017-05-18 10:22 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a1241271cb95 8180395: move FilterClassLoader and ParentLastURLClassLoader to top level testlibrary Reviewed-by: psandoz - test/lib/testlibrary/jdk/testlibrary/FilterClassLoader.java - test/lib/testlibrary/jdk/testlibrary/ParentLastURLClassLoader.java Changeset: 32cf37b2c18c Author: iignatyev Date: 2017-05-18 18:14 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/32cf37b2c18c Merge - test/lib/testlibrary/jdk/testlibrary/FilterClassLoader.java - test/lib/testlibrary/jdk/testlibrary/ParentLastURLClassLoader.java Changeset: 8e2030e03a61 Author: bpb Date: 2017-05-18 12:53 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/8e2030e03a61 8177809: File.lastModified() is losing milliseconds (always ends in 000) Summary: Use higher precision time values where available. Reviewed-by: bchristi, rriggs ! src/java.base/unix/native/libjava/UnixFileSystem_md.c ! test/java/io/File/SetLastModified.java Changeset: f6654aece3ac Author: iignatyev Date: 2017-05-18 15:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f6654aece3ac 8180391: move SerializationUtils to top level testlibrary Reviewed-by: psandoz ! test/java/lang/String/CompactString/SerializationTest.java ! test/java/lang/StringBuffer/CompactStringBufferSerialization.java ! test/java/lang/StringBuilder/CompactStringBuilderSerialization.java - test/lib/testlibrary/jdk/testlibrary/SerializationUtils.java Changeset: 6f90cf25c3cb Author: iignatyev Date: 2017-05-18 15:51 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6f90cf25c3cb 8180397: remove jdk.testlibrary.IOUtils Reviewed-by: alanb ! 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/IOUtils.java ! test/sun/security/tools/jarsigner/EntriesOrder.java Changeset: 2398559cd348 Author: iignatyev Date: 2017-05-18 17:07 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2398559cd348 8180621: remove jdk.testlibrary.management.InputArguments Reviewed-by: mchung - test/lib/testlibrary/jdk/testlibrary/management/InputArguments.java Changeset: 5e3de71d5aa1 Author: nishjain Date: 2017-05-19 11:06 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5e3de71d5aa1 6609740: [Fmt-De] format error in DecimalFormat Reviewed-by: naoto Contributed-by: nishit.jain at oracle.com ! src/java.base/share/classes/java/text/DecimalFormat.java + test/java/text/Format/DecimalFormat/Bug6609740.java Changeset: 3e92641a337d Author: psandoz Date: 2017-05-09 15:04 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/3e92641a337d 8177153: LambdaMetafactory has default constructor Reviewed-by: psandoz Contributed-by: ron.pressler at oracle.com ! src/java.base/share/classes/java/lang/invoke/LambdaMetafactory.java Changeset: 2c7616c8b7d8 Author: ihse Date: 2017-05-10 09:02 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2c7616c8b7d8 8178278: Move Standard Algorithm Names document to specs directory Reviewed-by: erikj, wetmore, mullan ! src/java.base/share/classes/java/security/AlgorithmParameterGenerator.java ! src/java.base/share/classes/java/security/AlgorithmParameters.java ! src/java.base/share/classes/java/security/DrbgParameters.java ! src/java.base/share/classes/java/security/KeyFactory.java ! src/java.base/share/classes/java/security/KeyPairGenerator.java ! src/java.base/share/classes/java/security/KeyStore.java ! src/java.base/share/classes/java/security/MessageDigest.java ! src/java.base/share/classes/java/security/Policy.java ! src/java.base/share/classes/java/security/SecureRandom.java ! src/java.base/share/classes/java/security/SecureRandomSpi.java ! src/java.base/share/classes/java/security/Security.java ! src/java.base/share/classes/java/security/Signature.java ! src/java.base/share/classes/java/security/cert/CertPath.java ! src/java.base/share/classes/java/security/cert/CertPathBuilder.java ! src/java.base/share/classes/java/security/cert/CertPathValidator.java ! src/java.base/share/classes/java/security/cert/CertStore.java ! src/java.base/share/classes/java/security/cert/Certificate.java ! src/java.base/share/classes/java/security/cert/CertificateFactory.java ! src/java.base/share/classes/java/security/cert/CertificateFactorySpi.java ! src/java.base/share/classes/java/security/cert/package-info.java ! src/java.base/share/classes/java/security/package-info.java ! src/java.base/share/classes/java/security/spec/EncodedKeySpec.java ! src/java.base/share/classes/java/security/spec/PKCS8EncodedKeySpec.java ! src/java.base/share/classes/java/security/spec/X509EncodedKeySpec.java ! src/java.base/share/classes/javax/crypto/Cipher.java ! src/java.base/share/classes/javax/crypto/ExemptionMechanism.java ! src/java.base/share/classes/javax/crypto/KeyAgreement.java ! src/java.base/share/classes/javax/crypto/KeyGenerator.java ! src/java.base/share/classes/javax/crypto/Mac.java ! src/java.base/share/classes/javax/crypto/SecretKeyFactory.java ! src/java.base/share/classes/javax/crypto/package-info.java ! src/java.base/share/classes/javax/net/ssl/SSLContext.java ! src/java.base/share/classes/javax/net/ssl/SSLEngine.java ! src/java.base/share/classes/javax/net/ssl/SSLParameters.java ! src/java.base/share/classes/javax/net/ssl/SSLServerSocket.java ! src/java.base/share/classes/javax/net/ssl/SSLServerSocketFactory.java ! src/java.base/share/classes/javax/net/ssl/SSLSocket.java ! src/java.base/share/classes/javax/net/ssl/SSLSocketFactory.java ! src/java.base/share/classes/javax/net/ssl/TrustManagerFactory.java ! src/java.base/share/classes/javax/net/ssl/package-info.java ! src/java.base/share/classes/javax/security/auth/login/Configuration.java ! src/java.base/share/classes/javax/security/auth/login/package-info.java ! src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSigner.java Changeset: 81ae2abfb49f Author: prappo Date: 2017-05-10 12:36 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/81ae2abfb49f 8179021: Latest bugfixes to WebSocket/HPACK from the sandbox repo Reviewed-by: dfuchs ! src/java.base/share/classes/module-info.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpRequestImpl.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PlainTunnelingConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/WebSocket.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/hpack/Decoder.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/hpack/HeaderTable.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/BuilderImpl.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/CooperativeHandler.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/Frame.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/FrameConsumer.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/OpeningHandshake.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/OutgoingMessage.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/Receiver.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/StatusCodes.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/Transmitter.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/WebSocketImpl.java ! test/java/net/httpclient/whitebox/Driver.java + test/java/net/httpclient/whitebox/jdk.incubator.httpclient/jdk/incubator/http/RawChannelTest.java Changeset: f12c83ece7ab Author: erikj Date: 2017-05-10 18:27 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f12c83ece7ab 8179867: JDK9 b167: demos exist in JDK bundles Reviewed-by: ihse ! make/CompileDemos.gmk Changeset: a3af889e7f65 Author: smarks Date: 2017-05-10 15:59 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a3af889e7f65 8180128: small errors in String javadoc Reviewed-by: lancea ! src/java.base/share/classes/java/lang/String.java Changeset: f895e36ce0e9 Author: msheppar Date: 2017-05-11 15:05 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f895e36ce0e9 7155591: test/java/net/MulticastSocket/SetOutgoingIf.java fails on macOS Reviewed-by: chegar, bpb ! test/java/net/MulticastSocket/SetOutgoingIf.java Changeset: 4e2a2733855d Author: bpb Date: 2017-05-11 07:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4e2a2733855d 8180085: (ch) java/nio/channels/SocketChannel/VectorIO.java: add debug instrumentation Summary: Add some print statements potentially useful in solving JDK-8177801. Reviewed-by: alanb ! test/java/nio/channels/SocketChannel/VectorIO.java Changeset: c17e1662bad1 Author: jjg Date: 2017-05-11 10:48 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c17e1662bad1 8179592: Update tables in java.base to be HTML 5-friendly. Reviewed-by: mchung, darcy, martin ! src/java.base/share/classes/java/io/DataInput.java ! src/java.base/share/classes/java/io/RandomAccessFile.java ! src/java.base/share/classes/java/io/SerializablePermission.java ! src/java.base/share/classes/java/lang/Character.java ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/Double.java ! src/java.base/share/classes/java/lang/Float.java ! src/java.base/share/classes/java/lang/RuntimePermission.java ! src/java.base/share/classes/java/lang/String.java ! src/java.base/share/classes/java/lang/System.java ! src/java.base/share/classes/java/lang/invoke/LambdaMetafactory.java ! src/java.base/share/classes/java/lang/invoke/MethodHandleInfo.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/lang/reflect/AnnotatedElement.java ! src/java.base/share/classes/java/lang/reflect/ReflectPermission.java ! src/java.base/share/classes/java/math/BigDecimal.java ! src/java.base/share/classes/java/math/RoundingMode.java ! src/java.base/share/classes/java/net/Inet4Address.java ! src/java.base/share/classes/java/net/Inet6Address.java ! src/java.base/share/classes/java/net/InetAddress.java ! src/java.base/share/classes/java/net/NetPermission.java ! src/java.base/share/classes/java/net/URI.java ! src/java.base/share/classes/java/net/URLConnection.java ! src/java.base/share/classes/java/net/URLPermission.java ! src/java.base/share/classes/java/nio/channels/AsynchronousChannelGroup.java ! src/java.base/share/classes/java/nio/channels/AsynchronousFileChannel.java ! src/java.base/share/classes/java/nio/channels/AsynchronousServerSocketChannel.java ! src/java.base/share/classes/java/nio/channels/AsynchronousSocketChannel.java ! src/java.base/share/classes/java/nio/channels/DatagramChannel.java ! src/java.base/share/classes/java/nio/channels/FileChannel.java ! src/java.base/share/classes/java/nio/channels/ServerSocketChannel.java ! src/java.base/share/classes/java/nio/channels/SocketChannel.java ! src/java.base/share/classes/java/nio/charset/Charset.java ! src/java.base/share/classes/java/nio/file/FileSystem.java ! src/java.base/share/classes/java/nio/file/Files.java ! src/java.base/share/classes/java/nio/file/LinkPermission.java ! src/java.base/share/classes/java/nio/file/attribute/AclFileAttributeView.java ! src/java.base/share/classes/java/nio/file/attribute/BasicFileAttributeView.java ! src/java.base/share/classes/java/nio/file/attribute/DosFileAttributeView.java ! src/java.base/share/classes/java/nio/file/attribute/PosixFileAttributeView.java ! src/java.base/share/classes/java/nio/file/spi/FileSystemProvider.java ! src/java.base/share/classes/java/security/DrbgParameters.java ! src/java.base/share/classes/java/security/Provider.java ! src/java.base/share/classes/java/security/SecurityPermission.java ! src/java.base/share/classes/java/security/cert/X509Extension.java ! src/java.base/share/classes/java/text/DecimalFormat.java ! src/java.base/share/classes/java/text/MessageFormat.java ! src/java.base/share/classes/java/text/SimpleDateFormat.java ! src/java.base/share/classes/java/time/chrono/HijrahChronology.java ! src/java.base/share/classes/java/time/chrono/IsoEra.java ! src/java.base/share/classes/java/time/chrono/MinguoEra.java ! src/java.base/share/classes/java/time/chrono/ThaiBuddhistEra.java ! src/java.base/share/classes/java/time/format/DateTimeFormatter.java ! src/java.base/share/classes/java/time/temporal/IsoFields.java ! src/java.base/share/classes/java/time/temporal/WeekFields.java ! src/java.base/share/classes/java/util/Deque.java ! src/java.base/share/classes/java/util/Formatter.java ! src/java.base/share/classes/java/util/GregorianCalendar.java ! src/java.base/share/classes/java/util/Locale.java ! src/java.base/share/classes/java/util/Queue.java ! src/java.base/share/classes/java/util/ResourceBundle.java ! src/java.base/share/classes/java/util/concurrent/BlockingDeque.java ! src/java.base/share/classes/java/util/concurrent/BlockingQueue.java ! src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java ! src/java.base/share/classes/java/util/regex/Pattern.java ! src/java.base/share/classes/java/util/spi/CalendarNameProvider.java ! src/java.base/share/classes/java/util/stream/StreamOpFlag.java ! src/java.base/share/classes/javax/net/ssl/SSLPermission.java Changeset: 5724641773d5 Author: lana Date: 2017-05-11 18:10 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5724641773d5 Merge Changeset: 93594ad5db2a Author: jjg Date: 2017-05-11 18:04 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/93594ad5db2a 8180256: Fix HTML 5 issues in java.sql and java.sql.rowset modules Reviewed-by: lancea ! src/java.sql.rowset/share/classes/javax/sql/rowset/package.html ! src/java.sql.rowset/share/classes/javax/sql/rowset/spi/package.html ! src/java.sql/share/classes/java/sql/SQLPermission.java ! src/java.sql/share/classes/java/sql/Statement.java Changeset: bb4cdc198dc0 Author: dl Date: 2017-05-11 19:34 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/bb4cdc198dc0 8179515: Class java.util.concurrent.ThreadLocalRandom fails to Initialize when using SecurityManager Summary: Break connection to security framework by using VM.getSavedProperty to read the proeprty. Reviewed-by: dholmes, martin, redestad, psandoz, mchung ! src/java.base/share/classes/java/util/concurrent/ThreadLocalRandom.java Changeset: 7fb801c87a25 Author: dholmes Date: 2017-05-12 02:06 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/7fb801c87a25 Merge Changeset: 0111d77e0170 Author: michaelm Date: 2017-05-12 17:38 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/0111d77e0170 8180303: Remove technote doc link from ProxySelector/B8035158.java test Reviewed-by: chegar ! test/java/net/ProxySelector/B8035158.java Changeset: 9364a094ce56 Author: ksrini Date: 2017-05-12 09:42 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/9364a094ce56 8179631: Fix Html5 errors in java.management, jdk.management, jdk.jdi and jdk.attach Reviewed-by: mchung ! src/java.management/share/classes/java/lang/management/ManagementPermission.java ! src/java.management/share/classes/java/lang/management/ThreadInfo.java ! src/java.management/share/classes/javax/management/Descriptor.java ! src/java.management/share/classes/javax/management/MXBean.java ! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanAttributeInfo.java ! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanConstructorInfo.java ! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanInfo.java ! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanNotificationInfo.java ! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanOperationInfo.java ! src/jdk.attach/share/classes/com/sun/tools/attach/AttachPermission.java ! src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java ! src/jdk.jdi/share/classes/com/sun/jdi/doc-files/signature.html ! src/jdk.management/share/classes/com/sun/management/DiagnosticCommandMBean.java ! src/jdk.management/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java ! src/jdk.management/share/classes/com/sun/management/GcInfo.java ! src/jdk.management/share/classes/com/sun/management/VMOption.java Changeset: 1beb24516aa1 Author: bchristi Date: 2017-05-12 10:11 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/1beb24516aa1 8177328: java/lang/ClassLoader/securityManager/ClassLoaderTest.java times out with -Xcomp Summary: remove unneeded automatic module tests; refactor into multiple @runs Reviewed-by: mchung ! test/java/lang/ClassLoader/securityManager/ClassLoaderTest.java Changeset: fb6138cce508 Author: ksrini Date: 2017-05-12 10:26 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/fb6138cce508 8179697: Fix Html5 errors in java.naming, java.logging, jdk.httpserver, jdk.net, jdk.sctp Reviewed-by: dfuchs ! src/java.logging/share/classes/java/util/logging/LogManager.java ! src/java.logging/share/classes/java/util/logging/SimpleFormatter.java ! src/java.naming/share/classes/javax/naming/CompositeName.java ! src/java.naming/share/classes/javax/naming/Context.java ! src/java.naming/share/classes/javax/naming/InitialContext.java ! src/java.naming/share/classes/javax/naming/directory/package.html ! src/java.naming/share/classes/javax/naming/event/package.html ! src/java.naming/share/classes/javax/naming/ldap/package.html ! src/java.naming/share/classes/javax/naming/package.html ! src/java.naming/share/classes/javax/naming/spi/ObjectFactory.java ! src/java.naming/share/classes/javax/naming/spi/package.html ! src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpServer.java ! src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsConfigurator.java ! src/jdk.net/share/classes/jdk/net/NetworkPermission.java ! src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpChannel.java ! src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpMultiChannel.java ! src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpServerChannel.java Changeset: 65e09a42b587 Author: jjg Date: 2017-04-28 15:41 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/65e09a42b587 8179460: Fix unnecessary uses of {@docRoot} in serviceability APIs Reviewed-by: mchung ! src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsolePlugin.java ! src/jdk.jdi/share/classes/com/sun/jdi/ThreadGroupReference.java ! src/jdk.management/share/classes/com/sun/management/DiagnosticCommandMBean.java ! src/jdk.management/share/classes/com/sun/management/package-info.java Changeset: 29e8713fdd03 Author: jjg Date: 2017-04-28 15:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/29e8713fdd03 Merge Changeset: e2b414957632 Author: jjg Date: 2017-05-12 10:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e2b414957632 Merge ! src/jdk.management/share/classes/com/sun/management/DiagnosticCommandMBean.java - test/demo/jvmti/Context.java - test/demo/jvmti/DemoRun.java - test/demo/jvmti/HeapUser.java - test/demo/jvmti/Hello.java - test/demo/jvmti/compiledMethodLoad/CompiledMethodLoadTest.java - test/demo/jvmti/gctest/BigHello.java - test/demo/jvmti/gctest/Gctest.java - test/demo/jvmti/heapTracker/HeapTrackerTest.java - test/demo/jvmti/heapViewer/HeapViewerTest.java - test/demo/jvmti/minst/MinstExample.java - test/demo/jvmti/minst/MinstTest.java - test/demo/jvmti/versionCheck/FailsWhenJvmtiVersionDiffers.java - test/demo/jvmti/waiters/WaitersTest.java - test/sample/TEST.properties - test/sample/chatserver/ChatTest.java - test/sample/mergesort/MergeSortTest.java - test/tools/launcher/modules/listmods/src/java.transaction/javax/transaction/atomic/Atomic.java Changeset: e8ee0b0489eb Author: dfuchs Date: 2017-05-12 19:06 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e8ee0b0489eb 8180176: Broken javadoc links in java.logging and java.naming Summary: Replace relative hrefs with {@extLink } taglets. Reviewed-by: chegar, mchung, vtewari ! src/java.logging/share/classes/java/util/logging/package.html ! src/java.naming/share/classes/javax/naming/directory/package.html ! src/java.naming/share/classes/javax/naming/event/package.html ! src/java.naming/share/classes/javax/naming/ldap/package.html ! src/java.naming/share/classes/javax/naming/package.html ! src/java.naming/share/classes/javax/naming/spi/package.html Changeset: 002321560796 Author: lancea Date: 2017-05-12 14:35 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/002321560796 8180309: Minor update to javax.sql.rowset package.html Reviewed-by: mchung ! src/java.sql.rowset/share/classes/javax/sql/rowset/package.html Changeset: a046521803b2 Author: rriggs Date: 2017-05-12 15:15 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a046521803b2 8180082: Broken javadoc links Reviewed-by: mchung, bpb, chegar, ihse ! src/java.base/share/classes/java/io/ObjectInputStream.java ! src/java.base/share/classes/java/io/ObjectOutputStream.java ! src/java.base/share/classes/java/io/ObjectStreamClass.java ! src/java.base/share/classes/java/io/package-info.java ! src/java.base/share/classes/java/lang/CharSequence.java ! src/java.base/share/classes/java/lang/ModuleLayer.java ! src/java.base/share/classes/java/lang/String.java ! src/java.base/share/classes/java/security/Key.java ! src/java.base/share/classes/java/security/KeyRep.java ! src/java.base/share/specs/serialization/output.md ! src/java.management/share/classes/java/lang/management/package.html ! src/jdk.management/share/classes/com/sun/management/package-info.java Changeset: 9fc68c99204d Author: mchung Date: 2017-05-12 13:29 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/9fc68c99204d 8180208: Provide a new docs bundle page Reviewed-by: ihse, jjg ! make/CompileModuleTools.gmk ! make/CompileTools.gmk ! make/ModuleTools.gmk + make/src/classes/build/tools/docs/GenDocsBundlePage.java + make/src/classes/build/tools/docs/docs-bundle-page.html + make/src/classes/build/tools/docs/docs-module-groups.properties Changeset: c5b0465f06d0 Author: psandoz Date: 2017-05-12 13:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c5b0465f06d0 8180075: Javadoc of MethodHandles.Lookup::bind should note the difference from MethodHandle::bindTo Reviewed-by: psandoz Contributed-by: ron.pressler at oracle.com ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java Changeset: 661765f8b131 Author: smarks Date: 2017-05-12 14:52 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/661765f8b131 8180137: fix broken link in java.lang.Iterable Reviewed-by: rriggs ! src/java.base/share/classes/java/lang/Iterable.java Changeset: ef9954f6896b Author: rriggs Date: 2017-05-16 09:42 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/ef9954f6896b 8180319: Update Serialization spec to omit obsolete serialver -show and change history Reviewed-by: chegar - src/java.base/share/specs/serialization/changelog.md ! src/java.base/share/specs/serialization/class.md - src/java.base/share/specs/serialization/images/class.gif ! src/java.base/share/specs/serialization/index.md ! src/java.base/share/specs/serialization/security.md ! src/java.base/share/specs/serialization/serial-arch.md Changeset: 1b3ea9753746 Author: lana Date: 2017-05-18 14:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/1b3ea9753746 Added tag jdk-9+170 for changeset ef9954f6896b ! .hgtags Changeset: 3df8675d352c Author: lana Date: 2017-05-19 04:17 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/3df8675d352c Merge ! .hgtags - src/java.base/macosx/native/launcher/jexec.c ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/System.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/net/URLConnection.java ! src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java - src/java.base/share/classes/sun/security/ssl/EllipticCurvesExtension.java - src/java.base/unix/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorOfIntDataBuilder.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/CollectorOps.java - test/java/util/stream/bootlib/java.base/java/util/stream/DefaultMethodStreams.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/FlagDeclaringOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntermediateTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestHelpers.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestMode.java - test/java/util/stream/bootlib/java.base/java/util/stream/LoggingTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/OpTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatefulTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatelessTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamOpFlagTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestData.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestFlagExpectedOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/ThrowableHelper.java - test/java/util/stream/test/org/openjdk/tests/java/util/NullArgsTestCase.java - test/lib/testlibrary/jdk/testlibrary/FilterClassLoader.java - test/lib/testlibrary/jdk/testlibrary/IOUtils.java - test/lib/testlibrary/jdk/testlibrary/ParentLastURLClassLoader.java - test/lib/testlibrary/jdk/testlibrary/SerializationUtils.java - test/lib/testlibrary/jdk/testlibrary/management/InputArguments.java Changeset: 6c18a41dc2d8 Author: lana Date: 2017-05-19 16:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6c18a41dc2d8 Merge ! src/java.base/share/classes/java/text/DecimalFormat.java - src/java.base/share/specs/serialization/changelog.md - src/java.base/share/specs/serialization/images/class.gif Changeset: fa6ce6c36768 Author: iignatyev Date: 2017-05-19 13:33 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/fa6ce6c36768 8180644: move jdk.testlibrary.NetworkConfiguration to the top level test library Reviewed-by: duke ! test/java/net/Inet6Address/B6206527.java ! test/java/net/Inet6Address/B6558853.java ! test/java/net/InetAddress/CheckJNI.java ! test/java/net/MulticastSocket/JoinLeave.java ! test/java/net/MulticastSocket/SetLoopbackMode.java ! test/java/net/NetworkConfigurationProbe.java ! test/java/net/Socket/LinkLocal.java ! test/java/net/SocketPermission/SocketPermissionTest.java ! test/java/net/ipv6tests/B6521014.java ! test/java/nio/channels/DatagramChannel/BasicMulticastTests.java ! test/java/nio/channels/DatagramChannel/MulticastSendReceiveTests.java - test/java/nio/channels/DatagramChannel/NetworkConfiguration.java ! test/java/nio/channels/DatagramChannel/Promiscuous.java - test/lib/testlibrary/jdk/testlibrary/NetworkConfiguration.java ! test/sun/net/www/protocol/https/HttpsURLConnection/B6216082.java Changeset: 5a1b4ff4f86c Author: jwilhelm Date: 2017-05-23 15:30 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5a1b4ff4f86c Merge ! src/java.base/macosx/native/libjli/java_md_macosx.c Changeset: 141bc610caed Author: lana Date: 2017-05-23 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/141bc610caed Added tag jdk-10+7 for changeset cbd65760a005 ! .hgtags Changeset: 63e5ff0f141f Author: lana Date: 2017-05-23 22:39 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/63e5ff0f141f Added tag jdk-10+8 for changeset f0adc10ed831 ! .hgtags Changeset: cc586b3b3907 Author: xuelei Date: 2017-05-24 16:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/cc586b3b3907 8180856: Remove RecordType.java Reviewed-by: weijun - src/java.base/share/classes/sun/security/ssl/RecordType.java Changeset: 875fa66a13a2 Author: jwilhelm Date: 2017-05-24 22:27 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/875fa66a13a2 Merge Changeset: 325c2fca7705 Author: coleenp Date: 2017-05-27 09:21 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/325c2fca7705 8174749: Use hash table/oops for MemberName table Summary: Add a Java type called ResolvedMethodName which is immutable and can be stored in a hashtable, that is weakly collected by gc Reviewed-by: sspitsyn, stefank, jrose ! src/java.base/share/classes/java/lang/invoke/MemberName.java Changeset: 54fd2bf77969 Author: iignatyev Date: 2017-05-24 13:55 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/54fd2bf77969 8180802: move jdk.testlibrary.management.ThreadMXBeanTool to top level testlibrary Reviewed-by: psandoz - test/lib/testlibrary/jdk/testlibrary/management/ThreadMXBeanTool.java Changeset: d37dbf3d0ee1 Author: iignatyev Date: 2017-05-24 14:16 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/d37dbf3d0ee1 8180724: move ModuleInfoMaker to the top level testlibrary Reviewed-by: psandoz, mchung - test/lib/testlibrary/ModuleInfoMaker.java ! test/tools/jmod/hashes/HashesTest.java ! test/tools/launcher/modules/addexports/AddExportsTestWarningError.java ! test/tools/launcher/modules/addreads/AddReadsTestWarningError.java Changeset: 746f9eae78e5 Author: iignatyev Date: 2017-05-24 15:24 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/746f9eae78e5 8180399: move jdk.testlibrary.LockFreeLogManager to the top level test library Reviewed-by: psandoz, mchung ! test/java/lang/Thread/ThreadStateController.java ! test/java/lang/Thread/ThreadStateTest.java ! test/java/lang/management/ThreadMXBean/Locks.java ! test/java/lang/management/ThreadMXBean/ThreadMXBeanStateTest.java - test/lib/testlibrary/jdk/testlibrary/LockFreeLogManager.java Changeset: b9409a7daa6c Author: apetcher Date: 2017-05-25 11:31 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/b9409a7daa6c 8172244: AIOOBE in KeyStore.getCertificateAlias on Windows Reviewed-by: vinnie ! src/jdk.crypto.mscapi/windows/classes/sun/security/mscapi/KeyStore.java + test/sun/security/mscapi/KeyStoreEmptyCertChain.java Changeset: ce47a9f27b52 Author: weijun Date: 2017-05-26 08:06 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/ce47a9f27b52 8178794: krb5 client should ignore sname in incoming tickets Reviewed-by: mullan ! src/java.security.jgss/share/classes/sun/security/krb5/KrbAsRep.java ! src/java.security.jgss/share/classes/sun/security/krb5/KrbTgsRep.java ! test/sun/security/krb5/auto/KDC.java + test/sun/security/krb5/auto/TicketSName.java Changeset: 3dc62effc984 Author: mli Date: 2017-05-25 18:16 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/3dc62effc984 8180732: add test to check temp file permission Reviewed-by: rriggs, bchristi + test/java/io/File/createTempFile/SecurityTest.java + test/java/io/File/createTempFile/java.policy Changeset: 669bb5305371 Author: lana Date: 2017-05-26 01:00 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/669bb5305371 Added tag jdk-10+9 for changeset b9409a7daa6c ! .hgtags Changeset: aaec70640891 Author: lana Date: 2017-05-26 02:03 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/aaec70640891 Merge Changeset: 031bd1c66382 Author: amlu Date: 2017-05-26 17:36 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/031bd1c66382 8173905: Test tools/jar/multiRelease/RuntimeTest.java fails under JDK 10 Reviewed-by: psandoz, redestad ! test/ProblemList.txt ! test/tools/jar/multiRelease/RuntimeTest.java - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/base/versionResource + test/tools/jar/multiRelease/data/runtimetest/testpackage/Helper.java.template + test/tools/jar/multiRelease/data/runtimetest/testpackage/Main.java.template - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v10/versionResource - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v9/versionResource + test/tools/jar/multiRelease/data/runtimetest/versionResource.template Changeset: 094ec7143f50 Author: ksrini Date: 2017-05-26 07:39 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/094ec7143f50 8180286: Remove the launchers data model flags -d32/-d64 Reviewed-by: alanb, dholmes, mchung ! src/java.base/share/classes/sun/launcher/LauncherHelper.java ! src/java.base/share/classes/sun/launcher/resources/launcher.properties Changeset: 77922fe08bec Author: iignatyev Date: 2017-05-26 22:30 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/77922fe08bec 8180895: java/security/AccessController/DoPrivAccompliceTest.java has to be improved Reviewed-by: asmotrak ! test/java/security/AccessController/DoPrivAccompliceTest.java Changeset: e0211fd49ad0 Author: iignatyev Date: 2017-05-26 22:53 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e0211fd49ad0 8180890: move c.o.testlibrary.jsr292 classes to jdk/test/java/lang/invoke directory Reviewed-by: rriggs ! test/java/lang/invoke/ExplicitCastArgumentsTest.java ! test/java/lang/invoke/LFCaching/LFGarbageCollectedTest.java ! test/java/lang/invoke/LFCaching/LFMultiThreadCachingTest.java ! test/java/lang/invoke/LFCaching/LFSingleThreadCachingTest.java ! test/java/lang/invoke/LFCaching/LambdaFormTestCase.java ! test/java/lang/invoke/LFCaching/TestMethods.java ! test/java/lang/invoke/MethodHandles/CatchExceptionTest.java ! test/java/lang/invoke/MethodHandlesTest.java ! test/java/lang/invoke/PermuteArgsTest.java ! test/java/lang/invoke/TestCatchExceptionWithVarargs.java ! test/java/lang/invoke/VarargsArrayTest.java + test/java/lang/invoke/common/test/java/lang/invoke/lib/CodeCacheOverflowProcessor.java + test/java/lang/invoke/common/test/java/lang/invoke/lib/Helper.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/CodeCacheOverflowProcessor.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/Helper.java Changeset: 377078d17cad Author: mbaesken Date: 2017-05-26 16:35 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/377078d17cad 8181145: add platforms to test java/nio/ByteOrder/NativeOrder.java Reviewed-by: martin, mdoerr ! test/java/nio/ByteOrder/NativeOrder.java Changeset: 6e4a400d1f2c Author: jwilhelm Date: 2017-05-29 20:48 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6e4a400d1f2c Merge Changeset: 95517954a70c Author: xiaofeya Date: 2017-05-30 07:03 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/95517954a70c 8166139: Refactor java/net shell cases to java Reviewed-by: chegar, rriggs - test/java/net/Socket/OldSocketImpl.sh + test/java/net/Socket/OldSocketImplTestDriver.java ! test/java/net/URL/B5086147.java - test/java/net/URL/B5086147.sh - test/java/net/URLClassLoader/B5077773.java - test/java/net/URLClassLoader/B5077773.sh ! test/java/net/URLClassLoader/closetest/CloseTest.java ! test/java/net/URLClassLoader/closetest/GetResourceAsStream.java - test/java/net/URLClassLoader/closetest/build.sh - test/java/net/URLClassLoader/closetest/build2.sh + test/java/net/URLClassLoader/getresourceasstream/TestDriver.java + test/java/net/URLClassLoader/getresourceasstream/policy - test/java/net/URLClassLoader/getresourceasstream/test.sh ! test/java/net/URLClassLoader/sealing/CheckSealed.java + test/java/net/URLClassLoader/sealing/CheckSealedTest.java - test/java/net/URLClassLoader/sealing/checksealed.sh ! test/java/net/URLConnection/6212146/Test.java + test/java/net/URLConnection/6212146/TestDriver.java - test/java/net/URLConnection/6212146/test.sh ! test/java/net/URLConnection/UNCTest.java - test/java/net/URLConnection/UNCTest.sh Changeset: 81161a824e8f Author: iignatyev Date: 2017-05-30 15:05 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/81161a824e8f 8180887: move FileUtils to top level testlibrary Reviewed-by: psandoz ! test/com/sun/corba/7130985/CorbaExceptionsCompileTest.java ! test/java/io/Serializable/failureAtomicity/FailureAtomicity.java ! test/java/lang/Class/forName/modules/TestDriver.java ! test/java/net/URLClassLoader/closetest/Common.java ! test/java/net/URLClassLoader/closetest/GetResourceAsStream.java ! test/java/net/httpclient/RequestBodyTest.java ! test/java/net/spi/URLStreamHandlerProvider/Basic.java ! test/java/nio/file/FileStore/Basic.java ! test/java/nio/file/FileSystem/Basic.java ! test/java/util/logging/FileHandlerMaxLocksTest.java ! test/java/util/zip/ZipFile/MultiThreadedReadTest.java ! test/java/util/zip/ZipFile/ReadLongZipFileName.java ! test/java/util/zip/ZipFile/ZipEntryFreeTest.java ! test/jdk/internal/util/jar/TestVersionedStream.java ! test/jdk/modules/incubator/ImageModules.java - test/lib/testlibrary/jdk/testlibrary/FileUtils.java ! test/tools/jar/InputFilesTest.java ! test/tools/jar/ReleaseBeforeFiles.java ! test/tools/jar/compat/CLICompatibility.java ! test/tools/jar/mmrjar/Basic.java ! test/tools/jar/modularJar/Basic.java ! test/tools/jar/multiRelease/ApiValidatorTest.java ! test/tools/jar/multiRelease/Basic.java ! test/tools/jlink/plugins/SystemModuleDescriptors/CompiledVersionTest.java ! test/tools/jlink/plugins/SystemModuleDescriptors/UserModuleTest.java ! test/tools/jmod/JmodNegativeTest.java ! test/tools/jmod/JmodTest.java ! test/tools/launcher/LauncherMessageTest.java ! test/tools/launcher/modules/patch/systemmodules/PatchSystemModules.java Changeset: 6761592470d9 Author: iignatyev Date: 2017-05-30 21:07 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6761592470d9 8180888: move jdk.testlibrary.JarUtils to the top level testlibrary Reviewed-by: weijun ! test/java/security/AccessController/DoPrivAccompliceTest.java ! test/java/security/Policy/ExtensiblePolicy/ExtensiblePolicyWithJarTest.java ! test/jdk/security/jarsigner/Spec.java - test/lib/testlibrary/jdk/testlibrary/JarUtils.java ! test/sun/security/tools/jarsigner/AltProvider.java ! test/sun/security/tools/jarsigner/Options.java ! test/sun/security/tools/jarsigner/TimestampCheck.java ! test/sun/security/tools/jarsigner/TsacertOptionTest.java ! test/sun/security/tools/jarsigner/Warning.java ! test/sun/security/tools/jarsigner/warnings/AliasNotInStoreTest.java ! test/sun/security/tools/jarsigner/warnings/BadExtendedKeyUsageTest.java ! test/sun/security/tools/jarsigner/warnings/BadKeyUsageTest.java ! test/sun/security/tools/jarsigner/warnings/BadNetscapeCertTypeTest.java ! test/sun/security/tools/jarsigner/warnings/ChainNotValidatedTest.java ! test/sun/security/tools/jarsigner/warnings/HasExpiredCertTest.java ! test/sun/security/tools/jarsigner/warnings/HasExpiringCertTest.java ! test/sun/security/tools/jarsigner/warnings/HasUnsignedEntryTest.java ! test/sun/security/tools/jarsigner/warnings/MultipleWarningsTest.java ! test/sun/security/tools/jarsigner/warnings/NoTimestampTest.java ! test/sun/security/tools/jarsigner/warnings/NotSignedByAliasTest.java ! test/sun/security/tools/jarsigner/warnings/NotYetValidCertTest.java ! test/sun/security/tools/keytool/ReadJar.java Changeset: d586f8df84c2 Author: iignatyev Date: 2017-05-30 21:14 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/d586f8df84c2 8180805: move RandomFactory to the top level testlibrary Reviewed-by: bpb, rriggs ! test/com/sun/crypto/provider/CICO/PBEFunc/CipherNCFuncTest.java ! test/java/io/InputStream/ReadAllBytes.java ! test/java/io/InputStream/ReadNBytes.java ! test/java/lang/Double/ParseHexFloatingPoint.java ! test/java/lang/Integer/BitTwiddle.java ! test/java/lang/Long/BitTwiddle.java ! test/java/lang/Math/CubeRootTests.java ! test/java/lang/Math/HypotTests.java ! test/java/lang/Math/IeeeRecommendedTests.java ! test/java/lang/Math/Log1pTests.java ! test/java/lang/Math/MultiplicationTests.java ! test/java/lang/StackWalker/StackWalkTest.java ! test/java/lang/StrictMath/CubeRootTests.java ! test/java/lang/StrictMath/ExpTests.java ! test/java/lang/StrictMath/HypotTests.java ! test/java/lang/String/LiteralReplace.java ! test/java/math/BigDecimal/StringConstructor.java ! test/java/math/BigInteger/BigIntegerTest.java ! test/java/math/BigInteger/ModPow65537.java ! test/java/math/BigInteger/PrimeTest.java ! test/java/math/BigInteger/SymmetricRangeTests.java ! test/java/nio/channels/AsynchronousSocketChannel/Basic.java ! test/java/nio/channels/FileChannel/Transfer.java ! test/java/nio/channels/SocketChannel/VectorIO.java ! test/java/nio/file/Files/CopyAndMove.java ! test/java/nio/file/Files/StreamLinesTest.java ! test/java/nio/file/WatchService/LotsOfEvents.java ! test/java/security/KeyStore/PKCS12/EntryProtectionTest.java ! test/java/security/MessageDigest/TestDigestIOStream.java ! test/java/security/MessageDigest/TestSameLength.java ! test/java/security/MessageDigest/TestSameValue.java ! test/java/security/Signature/Offsets.java ! test/java/util/Base64/TestBase64.java ! test/java/util/List/SubList.java ! test/java/util/WeakHashMap/GCDuringIteration.java ! test/java/util/concurrent/ThreadPoolExecutor/ConfigChanges.java ! test/java/util/jar/JarFile/mrjar/MultiReleaseJarAPI.java ! test/java/util/regex/RegExTest.java ! test/java/util/zip/InflaterInputStream/TestAvailable.java ! test/javax/imageio/plugins/tiff/MultiPageTest/MultiPageTest.java ! test/javax/net/ssl/DTLS/DTLSIncorrectAppDataTest.java ! test/javax/net/ssl/DTLS/DTLSRehandshakeWithCipherChangeTest.java ! test/javax/net/ssl/DTLS/DTLSSequenceNumberTest.java ! test/javax/net/ssl/DTLSv10/DTLSv10IncorrectAppDataTest.java ! test/javax/net/ssl/DTLSv10/DTLSv10RehandshakeWithCipherChangeTest.java ! test/javax/net/ssl/TLS/TLSRehandshakeWithCipherChangeTest.java ! test/javax/net/ssl/TLSCommon/RehandshakeWithCipherChangeTest.java ! test/javax/net/ssl/TLSv1/TLSRehandshakeWithCipherChangeTest.java ! test/javax/net/ssl/TLSv11/TLSRehandshakeWithCipherChangeTest.java ! test/javax/swing/ToolTipManager/7123767/bug7123767.java ! test/lib/testlibrary/jdk/testlibrary/RandomFactory.java ! test/sun/nio/cs/FindDecoderBugs.java ! test/sun/nio/cs/FindEncoderBugs.java ! test/sun/security/ec/SignatureOffsets.java ! test/sun/security/mscapi/SignatureOffsets.java ! test/sun/security/pkcs11/rsa/TestKeyPairGenerator.java ! test/sun/security/rsa/SignatureOffsets.java ! test/sun/security/ssl/rsa/SignatureOffsets.java Changeset: 34aea64841b1 Author: amlu Date: 2017-05-31 14:00 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/34aea64841b1 8181126: Refactor shell test java/nio/Buffer/LimitDirectMemory.sh to java Reviewed-by: bchristi, psandoz, rriggs ! test/java/nio/Buffer/LimitDirectMemory.java - test/java/nio/Buffer/LimitDirectMemory.sh + test/java/nio/Buffer/LimitDirectMemoryNegativeTest.java Changeset: 2ffcd70fb446 Author: iignatyev Date: 2017-05-31 10:41 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2ffcd70fb446 8181307: tests added/changed by 8166139 should be updated to use the latest testlibrary Reviewed-by: rriggs ! test/java/net/URLClassLoader/closetest/CloseTest.java Changeset: 78ce7067aba9 Author: bpb Date: 2017-05-16 14:11 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/78ce7067aba9 8180431: Remove intermittent keyword from some no longer failing NIO tests Summary: Remove "intermittent" keyword from @key tag, Reviewed-by: alanb ! test/java/nio/channels/Selector/SelectAndClose.java ! test/java/nio/channels/Selector/WakeupAfterClose.java Changeset: 148a2cbe49a4 Author: darcy Date: 2017-05-16 18:23 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/148a2cbe49a4 8180452: Mark ClipCloseLoss.java as failing intermittently Reviewed-by: serb ! test/javax/sound/sampled/Clip/ClipCloseLoss.java Changeset: 09038ebee480 Author: mullan Date: 2017-05-17 08:51 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/09038ebee480 8180307: Update JDK 9 Required Cipher Algorithms Reviewed-by: valeriep ! src/java.base/share/classes/javax/crypto/Cipher.java Changeset: 93b0c398e243 Author: bpb Date: 2017-05-17 14:29 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/93b0c398e243 7086489: File.lastModified should accuracy as well as resolution Summary: Add an @apiNote indicating that the last-modified time might be of coarser than millisecond granularity. Reviewed-by: smarks ! src/java.base/share/classes/java/io/File.java Changeset: 13b7c6fdf864 Author: henryjen Date: 2017-05-17 16:26 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/13b7c6fdf864 8180447: Trailing space in JDK_JAVA_OPTIONS causes an application fail to launch Reviewed-by: alanb, mchung, ksrini ! src/java.base/share/native/libjli/args.c ! src/java.base/share/native/libjli/emessages.h ! test/tools/launcher/ArgsEnvVar.java Changeset: 7efb352c6765 Author: ihse Date: 2017-05-18 09:23 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/7efb352c6765 8180426: Use standard css file for new docs bundle index.html page Reviewed-by: mchung, erikj + make/data/docs-resources/resources/jdk-default.css - make/data/docs-resources/specs/resources/jdk-default.css ! make/src/classes/build/tools/docs/docs-bundle-page.html Changeset: 85ccf9e98ba0 Author: ihse Date: 2017-05-18 12:00 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/85ccf9e98ba0 8180486: extLink taglet needs escaped "&" Reviewed-by: dholmes ! make/src/classes/build/tools/taglet/ExtLink.java Changeset: ee3280639210 Author: lana Date: 2017-05-18 16:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/ee3280639210 Merge - make/data/docs-resources/specs/resources/jdk-default.css Changeset: f6553abdefb6 Author: bchristi Date: 2017-05-19 09:41 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f6553abdefb6 8180633: Remove intermittent key from java/lang/ClassLoader/Assert.java Reviewed-by: darcy, mchung ! test/java/lang/ClassLoader/Assert.java Changeset: 490393b435bb Author: stuefe Date: 2017-05-21 10:52 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/490393b435bb 8180424: Another build issue on AIX after 8034174 Reviewed-by: clanger, vtewari ! src/java.base/aix/native/libnet/aix_close.c Changeset: 698cb1c6c88e Author: michaelm Date: 2017-05-22 17:31 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/698cb1c6c88e 8180498: Remove httpclient internal APIs which supply ByteBuffers to read calls Reviewed-by: chegar, dfuchs ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/AsyncSSLConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Exchange.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Exchange.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Response.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PlainHttpConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PlainTunnelingConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ResponseContent.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ResponseHeaders.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLDelegate.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLTunnelConnection.java ! test/java/net/httpclient/whitebox/jdk.incubator.httpclient/jdk/incubator/http/ResponseHeadersTest.java Changeset: 29bbedd4cce8 Author: mchung Date: 2017-05-22 11:08 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/29bbedd4cce8 8180717: Upgrade the docs bundle index page Reviewed-by: jjg, ihse ! make/src/classes/build/tools/docs/GenDocsBundlePage.java ! make/src/classes/build/tools/docs/docs-bundle-page.html ! make/src/classes/build/tools/docs/docs-module-groups.properties Changeset: 2d94659f7ff3 Author: lana Date: 2017-05-26 00:29 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2d94659f7ff3 Added tag jdk-9+171 for changeset 29bbedd4cce8 ! .hgtags Changeset: c55124a3a93e Author: lana Date: 2017-05-31 17:47 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c55124a3a93e Merge ! .hgtags ! src/java.base/aix/native/libnet/aix_close.c - src/java.base/macosx/native/launcher/jexec.c - src/java.base/share/classes/sun/security/ssl/EllipticCurvesExtension.java - src/java.base/share/classes/sun/security/ssl/RecordType.java - src/java.base/unix/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java - test/java/net/Socket/OldSocketImpl.sh - test/java/net/URL/B5086147.sh - test/java/net/URLClassLoader/B5077773.java - test/java/net/URLClassLoader/B5077773.sh - test/java/net/URLClassLoader/closetest/build.sh - test/java/net/URLClassLoader/closetest/build2.sh - test/java/net/URLClassLoader/getresourceasstream/test.sh - test/java/net/URLClassLoader/sealing/checksealed.sh - test/java/net/URLConnection/6212146/test.sh - test/java/net/URLConnection/UNCTest.sh - test/java/nio/Buffer/LimitDirectMemory.sh - test/java/nio/channels/DatagramChannel/NetworkConfiguration.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorOfIntDataBuilder.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/CollectorOps.java - test/java/util/stream/bootlib/java.base/java/util/stream/DefaultMethodStreams.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/FlagDeclaringOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntermediateTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestHelpers.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestMode.java - test/java/util/stream/bootlib/java.base/java/util/stream/LoggingTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/OpTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatefulTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatelessTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamOpFlagTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestData.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestFlagExpectedOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/ThrowableHelper.java - test/java/util/stream/test/org/openjdk/tests/java/util/NullArgsTestCase.java - test/lib/testlibrary/ModuleInfoMaker.java - test/lib/testlibrary/jdk/testlibrary/FileUtils.java - test/lib/testlibrary/jdk/testlibrary/FilterClassLoader.java - test/lib/testlibrary/jdk/testlibrary/IOUtils.java - test/lib/testlibrary/jdk/testlibrary/JarUtils.java - test/lib/testlibrary/jdk/testlibrary/LockFreeLogManager.java - test/lib/testlibrary/jdk/testlibrary/NetworkConfiguration.java - test/lib/testlibrary/jdk/testlibrary/ParentLastURLClassLoader.java - test/lib/testlibrary/jdk/testlibrary/SerializationUtils.java - test/lib/testlibrary/jdk/testlibrary/management/InputArguments.java - test/lib/testlibrary/jdk/testlibrary/management/ThreadMXBeanTool.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/CodeCacheOverflowProcessor.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/Helper.java - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/base/versionResource - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v10/versionResource - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v9/versionResource Changeset: 28fb3762509b Author: lana Date: 2017-05-31 18:33 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/28fb3762509b Merge - make/data/docs-resources/specs/resources/jdk-default.css Changeset: c95feefeb563 Author: iignatyev Date: 2017-05-31 13:14 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c95feefeb563 8180898: remove JavaToolUtils testlibrary class Reviewed-by: alanb - test/lib/testlibrary/JavaToolUtils.java Changeset: 5d74c3a0f94c Author: mli Date: 2017-05-31 20:01 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5d74c3a0f94c 8166142: Refactor java.io.serialization shell tests to java Reviewed-by: rriggs - test/java/io/Serializable/evolution/AddedExternField/run.sh + test/java/io/Serializable/evolution/RenamePackage/RenamePackageTest.java - test/java/io/Serializable/evolution/RenamePackage/run.sh + test/java/io/Serializable/maskSyntheticModifier/MaskSyntheticModifierTest.java - test/java/io/Serializable/maskSyntheticModifier/Test.java - test/java/io/Serializable/maskSyntheticModifier/run.sh + test/java/io/Serializable/packageAccess/PackageAccessTest.java - test/java/io/Serializable/packageAccess/Test.java - test/java/io/Serializable/packageAccess/run.sh + test/java/io/Serializable/resolveClass/consTest/ConsTest.java + test/java/io/Serializable/resolveClass/consTest/SetupJar.java - test/java/io/Serializable/resolveClass/consTest/Test.java - test/java/io/Serializable/resolveClass/consTest/run.sh + test/java/io/Serializable/resolveClass/deserializeButton/DeserializeButtonTest.java - test/java/io/Serializable/resolveClass/deserializeButton/Test.java - test/java/io/Serializable/resolveClass/deserializeButton/run.sh + test/java/io/Serializable/serialver/classpath/ClasspathTest.java - test/java/io/Serializable/serialver/classpath/Test.java - test/java/io/Serializable/serialver/classpath/run.sh + test/java/io/Serializable/serialver/nested/NestedTest.java - test/java/io/Serializable/serialver/nested/Test.java - test/java/io/Serializable/serialver/nested/run.sh ! test/java/io/Serializable/subclass/Allow.policy + test/java/io/Serializable/subclass/SubclassTest.java - test/java/io/Serializable/subclass/Test.java - test/java/io/Serializable/subclass/run.sh + test/java/io/Serializable/superclassDataLoss/SuperclassDataLossTest.java - test/java/io/Serializable/superclassDataLoss/Test.java - test/java/io/Serializable/superclassDataLoss/run.sh - test/java/io/Serializable/unnamedPackageSwitch/Test.java + test/java/io/Serializable/unnamedPackageSwitch/UnnamedPackageSwitchTest.java - test/java/io/Serializable/unnamedPackageSwitch/run.sh Changeset: 552262f88b39 Author: amlu Date: 2017-06-01 11:10 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/552262f88b39 8181301: Refactor shell test AsynchronousChannelGroup/run_any_task.sh to java Reviewed-by: alanb ! test/java/nio/channels/AsynchronousChannelGroup/AsExecutor.java - test/java/nio/channels/AsynchronousChannelGroup/Attack.java - test/java/nio/channels/AsynchronousChannelGroup/PrivilegedThreadFactory.java + test/java/nio/channels/AsynchronousChannelGroup/SetupJar.java + test/java/nio/channels/AsynchronousChannelGroup/bootlib/Attack.java + test/java/nio/channels/AsynchronousChannelGroup/bootlib/PrivilegedThreadFactory.java - test/java/nio/channels/AsynchronousChannelGroup/run_any_task.sh Changeset: df64bd4757d0 Author: stuefe Date: 2017-06-01 08:59 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/df64bd4757d0 8181207: 8177809 breaks AIX 5.3, 6.1 builds Reviewed-by: vtewari, simonis, clanger ! src/java.base/unix/native/libjava/UnixFileSystem_md.c Changeset: b15ad6e7fbd9 Author: naoto Date: 2017-06-01 12:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/b15ad6e7fbd9 8176847: Calendar.checkDisplayNameParams() should check case of style == 3 Reviewed-by: martin ! src/java.base/share/classes/java/util/Calendar.java + test/java/util/Calendar/Bug8176847.java Changeset: 475d3593a653 Author: naoto Date: 2017-06-01 12:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/475d3593a653 8176853: Locale.Builder.removeUnicodeLocaleAttribute(null) should throw NullPointerException Reviewed-by: martin ! src/java.base/share/classes/java/util/Locale.java ! test/java/util/Locale/LocaleEnhanceTest.java Changeset: 4a3dc3496f6f Author: naoto Date: 2017-06-01 12:44 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4a3dc3496f6f 8176160: AbstractCalendar.getEra compares Era and String Reviewed-by: martin ! src/java.base/share/classes/sun/util/calendar/AbstractCalendar.java + test/sun/util/calendar/Bug8176160.java Changeset: 4056535f52f5 Author: sballal Date: 2017-06-02 12:31 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4056535f52f5 6760477: Update SA to include stack traces in the heap dump Summary: Update SA to include HPROF_TRACE and HPROF_FRAME records in the heap dump Reviewed-by: dsamersoff Contributed-by: sharath.ballal at oracle.com ! test/sun/tools/jhsdb/HeapDumpTest.java Changeset: 66e9436dbaf8 Author: mbaesken Date: 2017-05-16 10:52 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/66e9436dbaf8 8180413: avoid accessing NULL in jdk.jdwp.agent Reviewed-by: clanger, dsamersoff, sspitsyn ! src/jdk.jdwp.agent/share/native/libjdwp/util.c Changeset: e5db1aaa17d7 Author: lana Date: 2017-06-02 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e5db1aaa17d7 Added tag jdk-10+10 for changeset df64bd4757d0 ! .hgtags Changeset: 21b39b38974c Author: xuelei Date: 2017-06-03 02:44 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/21b39b38974c 8181439: Test the jdk.tls.namedGroups System Property Reviewed-by: valeriep ! test/sun/security/ssl/DHKeyExchange/UseStrongDHSizes.java Changeset: 82ab8dec02ae Author: dfuchs Date: 2017-05-23 11:33 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/82ab8dec02ae 8180428: Clarify implementation note in Clock.java to match implementation changes made by JDK-8068730 Reviewed-by: dholmes, scolebourne ! src/java.base/share/classes/java/time/Clock.java Changeset: 54e8bad0022c Author: bpb Date: 2017-05-23 11:47 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/54e8bad0022c 8180353: FileOutputStream documentation does not indicate properly whether files get truncated or not Summary: Update documentation of FileOutputStream(String) Reviewed-by: chegar, dfuchs ! src/java.base/share/classes/java/io/FileOutputStream.java Changeset: 321f66c89406 Author: lancea Date: 2017-05-23 16:14 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/321f66c89406 8180728: DatabaseMeta.getRowIdLifetime returns an enum but javadoc refers to int Reviewed-by: joehw, rriggs ! src/java.sql/share/classes/java/sql/DatabaseMetaData.java Changeset: 47032f7eebb1 Author: darcy Date: 2017-05-23 14:34 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/47032f7eebb1 8074977: Constructor.getAnnotatedParameterTypes returns wrong value Summary: Additional comments from plevart and forax Reviewed-by: mchung, alanb ! src/java.base/share/classes/java/lang/reflect/Constructor.java ! src/java.base/share/classes/java/lang/reflect/Executable.java ! src/java.base/share/classes/java/lang/reflect/Method.java ! src/java.base/share/classes/sun/reflect/annotation/TypeAnnotationParser.java + test/java/lang/annotation/TestConstructorParameterAnnotations.java + test/java/lang/annotation/typeAnnotations/TestConstructorParameterTypeAnnotations.java Changeset: d0d971960744 Author: robm Date: 2017-05-24 17:25 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/d0d971960744 8175131: sun.rmi.transport.tcp.TCPChannel.createConnection close connection on timeout Reviewed-by: rriggs, msheppar ! src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPChannel.java Changeset: c162df937880 Author: bpb Date: 2017-05-24 10:52 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c162df937880 8180885: Create test to detect if TimeZone.setDefault affects File.setLastModifiedTime Summary: Check whether File.lastModified is affected by not setting the default time zone or by setting to any of the available time zones. Reviewed-by: dfuchs, rriggs + test/java/io/File/TimeZoneLastModified.java Changeset: e3446d4c7fd2 Author: lana Date: 2017-05-23 23:25 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e3446d4c7fd2 8180167: JDK9 message drop 40 l10n resource file updates Reviewed-by: alanb, mchung, dfuchs, rfield, shinyafox, weijun, joehw Contributed-by: li.jiang at oracle.com ! src/java.base/share/classes/sun/launcher/resources/launcher_de.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_es.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_fr.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_it.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_ja.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_ko.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_pt_BR.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_sv.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_zh_CN.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_zh_TW.properties ! src/java.base/share/classes/sun/security/tools/keytool/Resources_de.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_es.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_fr.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_it.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_ja.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_ko.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_pt_BR.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_sv.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_CN.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_TW.java ! src/java.base/share/classes/sun/security/util/AuthResources_ko.java ! src/java.base/share/classes/sun/security/util/AuthResources_sv.java ! src/java.base/share/classes/sun/security/util/Resources_sv.java ! src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_sv.properties ! src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_ko.java ! src/java.desktop/share/classes/sun/awt/resources/awt_sv.properties ! src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_ko.properties ! src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_sv.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_de.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_es.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_fr.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_it.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ja.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ko.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_pt_BR.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_sv.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_CN.properties ! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_TW.properties ! src/jdk.jlink/share/classes/jdk/tools/jlink/resources/jlink_ja.properties ! src/jdk.jlink/share/classes/jdk/tools/jlink/resources/jlink_zh_CN.properties ! src/jdk.jlink/share/classes/jdk/tools/jmod/resources/jmod_ja.properties ! src/jdk.jlink/share/classes/jdk/tools/jmod/resources/jmod_zh_CN.properties ! src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_sv.java Changeset: 3f350fe1bec8 Author: robm Date: 2017-05-24 22:07 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/3f350fe1bec8 8180949: Correctly handle exception in TCPChannel.createConnection Reviewed-by: rriggs ! src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPChannel.java Changeset: 4e167bc5be91 Author: mli Date: 2017-05-24 19:02 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4e167bc5be91 8180807: java.io.Serializable class-level readObject description error Reviewed-by: chegar, rriggs ! src/java.base/share/classes/java/io/Serializable.java Changeset: bdf91a08aa79 Author: dfuchs Date: 2017-05-25 11:54 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/bdf91a08aa79 8180279: java/net/httpclient/whitebox/Driver.java failed due to timeout Summary: fixed a race condition in RawChannelTest.java Reviewed-by: prappo, michaelm ! test/java/net/httpclient/whitebox/jdk.incubator.httpclient/jdk/incubator/http/RawChannelTest.java Changeset: 400428c4be8b Author: mchung Date: 2017-05-25 10:40 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/400428c4be8b 8181033: Confusing message: A JNI error has occurred, please check your installation and try again Reviewed-by: alanb, dholmes, ksrini ! src/java.base/share/classes/sun/launcher/LauncherHelper.java ! src/java.base/share/classes/sun/launcher/resources/launcher.properties ! test/tools/launcher/MainClassCantBeLoadedTest.java Changeset: 8c879b07e43e Author: lana Date: 2017-05-26 00:45 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/8c879b07e43e Merge Changeset: 7b5027da67f7 Author: serb Date: 2017-05-06 13:17 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/7b5027da67f7 8178383: Validation of FileIO in the tests for JavaSound should be stricter Reviewed-by: prr ! test/ProblemList.txt ! test/javax/sound/midi/Gervill/RiffReaderWriter/Available.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/Close.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/GetFilePointer.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/GetSize.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/HasNextChunk.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/Read.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadByte.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadByteArrayIntInt.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadInt.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadLong.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadShort.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadString.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadUnsignedByte.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadUnsignedInt.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadUnsignedShort.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/Skip.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/WriteOutputStream.java ! test/javax/sound/sampled/AudioInputStream/FrameLengthAfterConversion.java ! test/javax/sound/sampled/spi/AudioFileReader/ShortHeader.java ! test/javax/sound/sampled/spi/AudioFileWriter/WriterCloseInput.java Changeset: b0d3c98013d0 Author: prr Date: 2017-05-09 12:19 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/b0d3c98013d0 Merge ! test/ProblemList.txt - test/sample/TEST.properties - test/sample/chatserver/ChatTest.java - test/sample/mergesort/MergeSortTest.java Changeset: a7c8147f1891 Author: pkbalakr Date: 2017-05-11 12:41 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a7c8147f1891 8179014: JFileChooser with Windows look and feel crashes on win 10 Reviewed-by: prr, serb Contributed-by: ajit.ghaisas at oracle.com ! src/java.desktop/windows/native/libawt/windows/ShellFolder2.cpp + test/javax/swing/JFileChooser/GodMode/JFileChooserTest.java Changeset: e4d6ad2be5df Author: psadhukhan Date: 2017-05-12 12:28 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e4d6ad2be5df 8169897: [PIT] javax/swing/plaf/basic/BasicGraphicsUtils/8132119/bug8132119.java fails Reviewed-by: alexsch ! test/javax/swing/plaf/basic/BasicGraphicsUtils/8132119/bug8132119.java Changeset: 4a610c6d0b9c Author: azvegint Date: 2017-05-12 15:01 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4a610c6d0b9c 8178996: [macos] JComboBox doesn't display popup in mixed JavaFX Swing Application on 8u131 and Mac OS 10.12 Reviewed-by: serb, ssadetsky ! src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java Changeset: 828d3f3728a2 Author: mcherkas Date: 2017-05-15 15:32 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/828d3f3728a2 8175915: NullPointerException from JComboBox and JList when Accessibility enabled Reviewed-by: serb, prr ! src/jdk.accessibility/windows/classes/com/sun/java/accessibility/internal/AccessBridge.java Changeset: 85d12636d9f6 Author: prr Date: 2017-05-17 11:01 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/85d12636d9f6 Merge - src/java.base/share/specs/serialization/changelog.md - src/java.base/share/specs/serialization/images/class.gif Changeset: 046ac3fa2792 Author: ssadetsky Date: 2017-05-19 07:06 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/046ac3fa2792 8179665: [Windows] java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location Reviewed-by: prr, serb ! src/java.desktop/windows/classes/sun/awt/windows/WInputMethod.java ! src/java.desktop/windows/native/libawt/windows/awt_Component.cpp + test/javax/swing/JFrame/AlwaysOnTop/AlwaysOnTopImeTest.java Changeset: c1ddb97ee2ab Author: prr Date: 2017-05-19 14:57 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c1ddb97ee2ab 8177393: Result of RescaleOp for 4BYTE_ABGR images may be 25% black Reviewed-by: flar, psadhukhan ! src/java.desktop/share/classes/java/awt/image/RescaleOp.java + test/java/awt/image/RescaleOp/ImageRescaleOpTest.java Changeset: a09827296150 Author: prr Date: 2017-05-22 08:54 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a09827296150 Merge - make/data/docs-resources/specs/resources/jdk-default.css Changeset: e748c6a2d2e6 Author: serb Date: 2017-05-22 19:54 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e748c6a2d2e6 8177628: Opensource unit/regression tests for ImageIO Reviewed-by: prr, pnarayanan + test/javax/imageio/AllowSearch.java + test/javax/imageio/AppContextTest.java + test/javax/imageio/AppletResourceTest.html + test/javax/imageio/AppletResourceTest.java + test/javax/imageio/GetNumImages.java + test/javax/imageio/GetReaderWriterInfo.java + test/javax/imageio/IIOImageConstructor.java + test/javax/imageio/ITSDataType.java + test/javax/imageio/ImageIOGetImageReaders.java + test/javax/imageio/ImageIOWriteFile.java + test/javax/imageio/ImageIOWriteNull.java + test/javax/imageio/ImageReadParamPasses.java + test/javax/imageio/ImageReaderGetDestination.java + test/javax/imageio/ImageReaderReadAll.java + test/javax/imageio/ImageStreamFromRAF.java + test/javax/imageio/ImageTypeSpecifierBitsPerBand.java + test/javax/imageio/ImageTypeSpecifierTest.java + test/javax/imageio/ImageWriteParamMisc.java + test/javax/imageio/NullInputOutput.java + test/javax/imageio/PNGSpiStreamMetadata.java + test/javax/imageio/PNGSuffixes.java + test/javax/imageio/ReadBitsTest.java + test/javax/imageio/SetOutput.java + test/javax/imageio/WriteNullImageTest.java + test/javax/imageio/event/WriteProgressListenerTest.java + test/javax/imageio/plugins/bmp/BMPCompressionTest.java + test/javax/imageio/plugins/bmp/BMPPluginTest.java + test/javax/imageio/plugins/bmp/BMPWriteParamTest.java + test/javax/imageio/plugins/bmp/BmpBigDestinationTest.java + test/javax/imageio/plugins/bmp/BmpDefaultImageMetadataTest.java + test/javax/imageio/plugins/bmp/CompressionModeTest.java + test/javax/imageio/plugins/bmp/EmbeddedFormatTest.java + test/javax/imageio/plugins/bmp/EmptyInputBmpMetadataTest.java + test/javax/imageio/plugins/bmp/NoExtraBytesTest.java + test/javax/imageio/plugins/bmp/RLECompressionTest.java + test/javax/imageio/plugins/bmp/ReaderListenersTest.java + test/javax/imageio/plugins/bmp/RleEncodingTest.java + test/javax/imageio/plugins/bmp/TestCompressionBI_BITFIELDS.java + test/javax/imageio/plugins/bmp/Write3ByteBgrTest.java + test/javax/imageio/plugins/bmp/WriteProgressListenerTest.java + test/javax/imageio/plugins/bmp/WritingColorChangeTest.java + test/javax/imageio/plugins/gif/AnimationTest.java + test/javax/imageio/plugins/gif/DisableCompressionTest.java + test/javax/imageio/plugins/gif/EndWriteSequenceTest.java + test/javax/imageio/plugins/gif/IndexingTest.java + test/javax/imageio/plugins/gif/LogicalScreenDimensionTest.java + test/javax/imageio/plugins/gif/OddPaletteTest.java + test/javax/imageio/plugins/gif/PrepareWriteSequenceTest.java + test/javax/imageio/plugins/gif/RGBAnimationTest.java + test/javax/imageio/plugins/gif/RGBImageTest.java + test/javax/imageio/plugins/gif/StreamMetadataTest.java + test/javax/imageio/plugins/gif/TransparencyTest.java + test/javax/imageio/plugins/gif/UshortOutOfMemoryTest.java + test/javax/imageio/plugins/gif/WriteMetadataTest.java + test/javax/imageio/plugins/gif/WriterResetTest.java + test/javax/imageio/plugins/gif/WriterReuseTest.java + test/javax/imageio/plugins/jpeg/ByteBinaryTest.java + test/javax/imageio/plugins/jpeg/CanEncodeIndexed.java + test/javax/imageio/plugins/jpeg/CompressionBug.java + test/javax/imageio/plugins/jpeg/CompressionVals.java + test/javax/imageio/plugins/jpeg/CrashAfterDispose.java + test/javax/imageio/plugins/jpeg/DestTypeTest.java + test/javax/imageio/plugins/jpeg/JPEGsNotAcceleratedTest.java + test/javax/imageio/plugins/jpeg/MergeTreeTest.java + test/javax/imageio/plugins/jpeg/RasterWithMinXTest.java + test/javax/imageio/plugins/jpeg/ResetOutOfMemory.java + test/javax/imageio/plugins/jpeg/UshortGrayTest.java + test/javax/imageio/plugins/png/CanEncodeShort.java + test/javax/imageio/plugins/png/ImageCompare.java + test/javax/imageio/plugins/png/PngPremultAlphaTest.java + test/javax/imageio/plugins/png/ShortPaletteTest.java + test/javax/imageio/plugins/png/WriteProgressive.java + test/javax/imageio/plugins/wbmp/EmptyInputWbmpMetadataTest.java + test/javax/imageio/plugins/wbmp/GetImageTypesTest.java + test/javax/imageio/plugins/wbmp/ValidWbmpTest.java + test/javax/imageio/plugins/wbmp/WBMPPluginTest.java + test/javax/imageio/plugins/wbmp/WbmpBigDestinationTest.java + test/javax/imageio/plugins/wbmp/WbmpDefaultImageMetadataTest.java + test/javax/imageio/spi/AppletContextTest/BadPluginConfigurationTest.sh + test/javax/imageio/spi/AppletContextTest/DummyReaderPluginSpi.java + test/javax/imageio/spi/AppletContextTest/IIOPluginTest.java + test/javax/imageio/spi/CreateMemoryCacheOutputStream.java + test/javax/imageio/spi/DeregisterAllSpiTest.java + test/javax/imageio/spi/DeregisterOrderedSpiTest.java + test/javax/imageio/spi/OrderingTest.java + test/javax/imageio/spi/PluginSpiTest.java + test/javax/imageio/spi/RegisterPluginTwiceTest.java + test/javax/imageio/spi/SpiTest.java + test/javax/imageio/spi/SpiVersionNumbers.java + test/javax/imageio/stream/BitPadding.java + test/javax/imageio/stream/DeleteOnExitTest.java + test/javax/imageio/stream/DeleteOnExitTest.sh + test/javax/imageio/stream/FileCacheImageInputStreamNullTest.java + test/javax/imageio/stream/FlushBefore.java + test/javax/imageio/stream/MemoryCacheImageOutputStreamTest.java + test/javax/imageio/stream/ReadBytesIIOByteBuffer.java + test/javax/imageio/stream/ReadFullyTest.java + test/javax/imageio/stream/ReadUnsignedIntTest.java + test/javax/imageio/stream/StreamFlush.java + test/javax/imageio/stream/WriteBitsTest.java Changeset: de18b4a5ded2 Author: prr Date: 2017-05-26 08:22 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/de18b4a5ded2 Merge Changeset: b41e9d22a754 Author: serb Date: 2017-05-24 13:53 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/b41e9d22a754 8066005: java.awt.event.KeyEvent.originalSource doesn't have "since" tag in Serialized Form Reviewed-by: prr ! src/java.desktop/share/classes/java/awt/event/KeyEvent.java Changeset: 99014f394c0c Author: prr Date: 2017-05-26 09:07 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/99014f394c0c Merge Changeset: 92d5e94796d9 Author: mchung Date: 2017-05-26 21:20 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/92d5e94796d9 8180574: tools/launcher/modules/patch/systemmodules/PatchSystemModules.java failed in upgradeHashedModule() and patchHashedModule() intermittently Reviewed-by: alanb, bchristi ! test/tools/launcher/modules/patch/systemmodules/PatchSystemModules.java + test/tools/launcher/modules/patch/systemmodules/src1/m1/module-info.java + test/tools/launcher/modules/patch/systemmodules/src1/m1/p1/Main.java Changeset: 0ff9ad7d067c Author: ihse Date: 2017-05-29 09:18 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/0ff9ad7d067c 8175824: Adapt javadoc generation to different requirements for JDK and JavaSE Reviewed-by: erikj, mchung - src/java.base/share/classes/overview-core.html Changeset: a2894068c221 Author: lana Date: 2017-06-01 18:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a2894068c221 Added tag jdk-9+172 for changeset 0ff9ad7d067c ! .hgtags Changeset: 68e2d03c6c8d Author: lana Date: 2017-06-03 02:49 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/68e2d03c6c8d Merge ! .hgtags - src/java.base/macosx/native/launcher/jexec.c ! src/java.base/share/classes/sun/launcher/LauncherHelper.java ! src/java.base/share/classes/sun/launcher/resources/launcher.properties - src/java.base/share/classes/sun/security/ssl/EllipticCurvesExtension.java - src/java.base/share/classes/sun/security/ssl/RecordType.java - src/java.base/unix/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java ! test/ProblemList.txt - test/java/io/Serializable/evolution/AddedExternField/run.sh - test/java/io/Serializable/evolution/RenamePackage/run.sh - test/java/io/Serializable/maskSyntheticModifier/Test.java - test/java/io/Serializable/maskSyntheticModifier/run.sh - test/java/io/Serializable/packageAccess/Test.java - test/java/io/Serializable/packageAccess/run.sh - test/java/io/Serializable/resolveClass/consTest/Test.java - test/java/io/Serializable/resolveClass/consTest/run.sh - test/java/io/Serializable/resolveClass/deserializeButton/Test.java - test/java/io/Serializable/resolveClass/deserializeButton/run.sh - test/java/io/Serializable/serialver/classpath/Test.java - test/java/io/Serializable/serialver/classpath/run.sh - test/java/io/Serializable/serialver/nested/Test.java - test/java/io/Serializable/serialver/nested/run.sh - test/java/io/Serializable/subclass/Test.java - test/java/io/Serializable/subclass/run.sh - test/java/io/Serializable/superclassDataLoss/Test.java - test/java/io/Serializable/superclassDataLoss/run.sh - test/java/io/Serializable/unnamedPackageSwitch/Test.java - test/java/io/Serializable/unnamedPackageSwitch/run.sh - test/java/net/Socket/OldSocketImpl.sh - test/java/net/URL/B5086147.sh - test/java/net/URLClassLoader/B5077773.java - test/java/net/URLClassLoader/B5077773.sh - test/java/net/URLClassLoader/closetest/build.sh - test/java/net/URLClassLoader/closetest/build2.sh - test/java/net/URLClassLoader/getresourceasstream/test.sh - test/java/net/URLClassLoader/sealing/checksealed.sh - test/java/net/URLConnection/6212146/test.sh - test/java/net/URLConnection/UNCTest.sh - test/java/nio/Buffer/LimitDirectMemory.sh - test/java/nio/channels/AsynchronousChannelGroup/Attack.java - test/java/nio/channels/AsynchronousChannelGroup/PrivilegedThreadFactory.java - test/java/nio/channels/AsynchronousChannelGroup/run_any_task.sh - test/java/nio/channels/DatagramChannel/NetworkConfiguration.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorOfIntDataBuilder.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/CollectorOps.java - test/java/util/stream/bootlib/java.base/java/util/stream/DefaultMethodStreams.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/FlagDeclaringOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntermediateTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestHelpers.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestMode.java - test/java/util/stream/bootlib/java.base/java/util/stream/LoggingTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/OpTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatefulTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatelessTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamOpFlagTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestData.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestFlagExpectedOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/ThrowableHelper.java - test/java/util/stream/test/org/openjdk/tests/java/util/NullArgsTestCase.java - test/lib/testlibrary/JavaToolUtils.java - test/lib/testlibrary/ModuleInfoMaker.java - test/lib/testlibrary/jdk/testlibrary/FileUtils.java - test/lib/testlibrary/jdk/testlibrary/FilterClassLoader.java - test/lib/testlibrary/jdk/testlibrary/IOUtils.java - test/lib/testlibrary/jdk/testlibrary/JarUtils.java - test/lib/testlibrary/jdk/testlibrary/LockFreeLogManager.java - test/lib/testlibrary/jdk/testlibrary/NetworkConfiguration.java - test/lib/testlibrary/jdk/testlibrary/ParentLastURLClassLoader.java - test/lib/testlibrary/jdk/testlibrary/SerializationUtils.java - test/lib/testlibrary/jdk/testlibrary/management/InputArguments.java - test/lib/testlibrary/jdk/testlibrary/management/ThreadMXBeanTool.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/CodeCacheOverflowProcessor.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/Helper.java - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/base/versionResource - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v10/versionResource - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v9/versionResource ! test/tools/launcher/modules/patch/systemmodules/PatchSystemModules.java Changeset: 5c1aea2b133d Author: lana Date: 2017-06-03 03:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5c1aea2b133d Merge - src/java.base/share/classes/overview-core.html Changeset: bca4ca56de81 Author: xiaofeya Date: 2017-06-04 18:42 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/bca4ca56de81 8181414: Refactor misc test/sun/net/www/protocol/jar shell tests to plain java tests Reviewed-by: psandoz ! test/sun/net/www/protocol/jar/B5105410.java - test/sun/net/www/protocol/jar/B5105410.sh ! test/sun/net/www/protocol/jar/B6449504.java ! test/sun/net/www/protocol/jar/GetContentType.java + test/sun/net/www/protocol/jar/GetContentTypeTest.java - test/sun/net/www/protocol/jar/copyin.sh - test/sun/net/www/protocol/jar/getcontenttype.sh Changeset: 129efb64cb37 Author: amlu Date: 2017-06-05 14:07 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/129efb64cb37 8181393: Refactor shell test Selector/lots_of_updates.sh and SocketChannel/Open.sh to java Reviewed-by: psandoz ! test/java/nio/channels/Selector/LotsOfUpdates.java + test/java/nio/channels/Selector/LotsOfUpdatesTest.java - test/java/nio/channels/Selector/lots_of_updates.sh ! test/java/nio/channels/SocketChannel/Open.java - test/java/nio/channels/SocketChannel/Open.sh + test/java/nio/channels/SocketChannel/OpenSocketChannelTest.java Changeset: 0dceac8bfaee Author: xiaofeya Date: 2017-06-05 18:02 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/0dceac8bfaee 8181413: Refactor test/sun/net/www/protocol/jar/jarbug/run.sh to plain java tests Reviewed-by: psandoz + test/sun/net/www/protocol/jar/jarbug/TestDriver.java - test/sun/net/www/protocol/jar/jarbug/run.sh - test/sun/net/www/protocol/jar/jarbug/src/test/RunAllTests.java ! test/sun/net/www/protocol/jar/jarbug/src/test/TestBug4361044.java ! test/sun/net/www/protocol/jar/jarbug/src/test/TestBug4523159.java Changeset: 054be711a9ac Author: mli Date: 2017-06-05 18:58 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/054be711a9ac 8180927: refactor ./java/io/Serializable/class/run.sh to java test Reviewed-by: psandoz - test/java/io/Serializable/class/NonSerialA_1.java + test/java/io/Serializable/class/NonSerialA_1/A.java - test/java/io/Serializable/class/NonSerialA_2.java + test/java/io/Serializable/class/NonSerialA_2/A.java + test/java/io/Serializable/class/NonSerializableTest.java - test/java/io/Serializable/class/SerialA.java - test/java/io/Serializable/class/SerialA_1.java + test/java/io/Serializable/class/SerialA_1/A.java - test/java/io/Serializable/class/SerialA_2.java + test/java/io/Serializable/class/SerialA_2/A.java - test/java/io/Serializable/class/SerialA_3.java + test/java/io/Serializable/class/SerialA_3/A.java - test/java/io/Serializable/class/Test.java + test/java/io/Serializable/class/TestEntry.java - test/java/io/Serializable/class/run.sh Changeset: ecdb7c08efac Author: xiaofeya Date: 2017-06-06 01:33 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/ecdb7c08efac 8181635: sun/net/www/protocol/jar/B6449504.java fails at Windows platform (after JDK-8181414) Reviewed-by: chegar ! test/sun/net/www/protocol/jar/B6449504.java Changeset: 5a9409e5069d Author: naoto Date: 2017-06-06 10:34 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5a9409e5069d 8181586: DateTimeTextProvider.getInstance() returns a new instance every time Reviewed-by: rriggs ! src/java.base/share/classes/java/time/format/DateTimeTextProvider.java Changeset: 102e2120a2b3 Author: amlu Date: 2017-06-07 10:58 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/102e2120a2b3 8181396: Refactor shell test java/nio/file/Files/delete_on_close.sh to java Reviewed-by: alanb ! test/java/nio/file/Files/DeleteOnClose.java - test/java/nio/file/Files/delete_on_close.sh Changeset: 7bd3829a7a08 Author: iignatyev Date: 2017-06-06 19:54 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/7bd3829a7a08 8181335: remove packageless CompilerUtils Reviewed-by: alanb ! test/java/io/FilePermission/ReadFileOnPath.java ! test/java/lang/Class/forName/modules/TestDriver.java ! test/java/lang/Class/getResource/ResourcesTest.java ! test/java/lang/ClassLoader/getResource/modules/ResourcesTest.java ! test/java/lang/ModuleLayer/LayerAndLoadersTest.java ! test/java/lang/ModuleTests/access/AccessTest.java ! test/java/lang/StackTraceElement/WithClassLoaderName.java ! test/java/lang/System/LoggerFinder/modules/Base.java ! test/java/lang/System/LoggerFinder/modules/JDKLoggerForImageTest.java ! test/java/lang/System/LoggerFinder/modules/JDKLoggerForJDKTest.java ! test/java/lang/System/LoggerFinder/modules/LoggerInImageTest.java ! test/java/lang/System/LoggerFinder/modules/NamedLoggerForImageTest.java ! test/java/lang/System/LoggerFinder/modules/NamedLoggerForJDKTest.java ! test/java/lang/System/LoggerFinder/modules/UnnamedLoggerForImageTest.java ! test/java/lang/System/LoggerFinder/modules/UnnamedLoggerForJDKTest.java ! test/java/lang/module/ModuleReader/ModuleReaderTest.java ! test/java/lang/reflect/Proxy/ProxyClassAccessTest.java ! test/java/lang/reflect/Proxy/ProxyLayerTest.java ! test/java/lang/reflect/Proxy/ProxyTest.java ! test/java/net/URLClassLoader/closetest/CloseTest.java ! test/java/net/URLClassLoader/closetest/GetResourceAsStream.java ! test/java/net/URLClassLoader/definePackage/SplitPackage.java ! test/java/rmi/module/ModuleTest.java ! test/java/security/Provider/SecurityProviderModularTest.java ! test/java/util/ResourceBundle/modules/cache/CacheTest.java ! test/java/util/ResourceBundle/modules/casesensitive/CaseInsensitiveNameClash.java ! test/java/util/ResourceBundle/modules/security/TestPermission.java ! test/java/util/ServiceLoader/modules/BadProvidersTest.java ! test/java/util/logging/modules/GetResourceBundleTest.java ! test/javax/security/auth/login/modules/JaasModularClientTest.java ! test/javax/security/auth/login/modules/JaasModularDefaultHandlerTest.java ! test/jdk/modules/incubator/DefaultImage.java ! test/jdk/modules/incubator/ImageModules.java ! test/jdk/modules/scenarios/automaticmodules/RunWithAutomaticModules.java ! test/jdk/modules/scenarios/container/ContainerTest.java ! test/jdk/modules/scenarios/overlappingpackages/OverlappingPackagesTest.java - test/lib/testlibrary/CompilerUtils.java ! test/sun/net/www/protocol/jar/jarbug/TestDriver.java ! test/sun/security/tools/jarsigner/AltProvider.java ! test/sun/security/tools/jarsigner/multiRelease/MVJarSigningTest.java ! test/tools/jlink/basic/AllModulePath.java ! test/tools/jlink/basic/BasicTest.java ! test/tools/jlink/bindservices/BindServices.java ! test/tools/jlink/bindservices/SuggestProviders.java ! test/tools/jlink/plugins/ExcludeJmodSectionPluginTest.java ! test/tools/jlink/plugins/LegalFilePluginTest.java ! test/tools/jlink/plugins/SystemModuleDescriptors/CompiledVersionTest.java ! test/tools/jlink/plugins/SystemModuleDescriptors/UserModuleTest.java ! test/tools/jmod/JmodNegativeTest.java ! test/tools/jmod/JmodTest.java ! test/tools/launcher/modules/addexports/AddExportsTest.java ! test/tools/launcher/modules/addmods/AddModsTest.java ! test/tools/launcher/modules/addreads/AddReadsTest.java ! test/tools/launcher/modules/basic/BasicTest.java ! test/tools/launcher/modules/classpath/JavaClassPathTest.java ! test/tools/launcher/modules/dryrun/DryRunTest.java ! test/tools/launcher/modules/limitmods/LimitModsTest.java ! test/tools/launcher/modules/listmods/ListModsTest.java ! test/tools/launcher/modules/patch/basic/PatchTest.java ! test/tools/launcher/modules/patch/basic/PatchTestWarningError.java ! test/tools/launcher/modules/patch/systemmodules/PatchSystemModules.java ! test/tools/launcher/modules/upgrademodulepath/UpgradeModulePathTest.java ! test/tools/schemagen/MultiReleaseJarTest.java ! test/tools/wsgen/MultiReleaseJarTest.java Changeset: bbe5d4868e9c Author: xuelei Date: 2017-06-07 05:52 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/bbe5d4868e9c 8178728: Check the AlgorithmParameters in algorithm constraints Reviewed-by: valeriep, ascarpino ! src/java.base/share/classes/sun/security/util/AlgorithmDecomposer.java ! src/java.base/share/classes/sun/security/util/DisabledAlgorithmConstraints.java ! src/java.base/share/classes/sun/security/util/KeyUtil.java ! test/sun/security/ssl/DHKeyExchange/UseStrongDHSizes.java Changeset: 7c54889c0ec6 Author: iignatyev Date: 2017-06-06 23:38 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/7c54889c0ec6 8181715: sun/net/www/protocol/jar/jarbug/TestDriver.java fails after 8181335 Reviewed-by: alanb ! test/sun/net/www/protocol/jar/jarbug/TestDriver.java Changeset: 8d381ca2a358 Author: iignatyev Date: 2017-06-07 08:58 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/8d381ca2a358 8180386: remove jdk.testlibrary.TimeLimitedRunner Reviewed-by: rriggs, mchung ! test/TEST.ROOT ! test/java/lang/invoke/LFCaching/LFMultiThreadCachingTest.java ! test/java/lang/invoke/LFCaching/LFSingleThreadCachingTest.java ! test/java/lang/invoke/LFCaching/LambdaFormTestCase.java ! test/java/lang/invoke/MethodHandles/CatchExceptionTest.java - test/lib/testlibrary/jdk/testlibrary/TimeLimitedRunner.java Changeset: 520ef194f196 Author: rgoel Date: 2017-06-08 12:15 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/520ef194f196 8178872: Decimal form is inconsistent between CLDR and Java in some special locales Reviewed-by: naoto ! make/src/classes/build/tools/cldrconverter/LDMLParseHandler.java ! test/sun/text/resources/LocaleData.cldr ! test/sun/text/resources/LocaleDataTest.java Changeset: 124c7c462ce4 Author: jwilhelm Date: 2017-06-08 14:49 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/124c7c462ce4 Merge ! src/java.base/aix/native/libnet/aix_close.c Changeset: afbec24a44ee Author: gtriantafill Date: 2017-06-12 13:22 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/afbec24a44ee 8166748: Clean out Windows IA64 support Reviewed-by: kbarrett, coleenp, bobv, mdoerr ! src/java.base/share/native/libfdlibm/fdlibm.h ! src/java.base/windows/native/libjava/java_props_md.c ! src/java.desktop/share/native/libjavajpeg/jpegdecoder.c Changeset: 4697dce587f1 Author: kvn Date: 2017-06-21 10:28 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4697dce587f1 8181823: [AOT] jaotc doesn't work with Graal Summary: add new flag to indicate when to calculate class fingerprint Reviewed-by: iklam, iveresov ! make/launcher/Launcher-jdk.aot.gmk Changeset: 8a2cafc1ada7 Author: robm Date: 2017-06-09 16:26 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/8a2cafc1ada7 8173654: Regression since 8u60: System.getenv doesn't return env var set in JNI code Reviewed-by: erikj ! make/lib/CoreLibraries.gmk Changeset: 44bbfbf28399 Author: ksrini Date: 2017-06-09 09:54 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/44bbfbf28399 8180334: Unable to build jaotc launcher on windows Reviewed-by: erikj, ihse, mchung ! make/launcher/Launcher-jdk.aot.gmk ! make/launcher/LauncherCommon.gmk ! src/java.base/share/native/launcher/defines.h ! src/java.base/share/native/launcher/main.c ! src/java.base/share/native/libjli/args.c ! src/java.base/share/native/libjli/java.c ! src/java.base/share/native/libjli/jli_util.h Changeset: 807d57adf594 Author: lana Date: 2017-06-09 21:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/807d57adf594 Added tag jdk-10+11 for changeset 7c54889c0ec6 ! .hgtags Changeset: 9200df3d3c0b Author: xiaofeya Date: 2017-06-11 18:36 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/9200df3d3c0b 8181080: Refactor several sun/net shell tests to plain java tests Reviewed-by: chegar, alanb + test/sun/net/InetAddress/nameservice/dns/CNameTest.java - test/sun/net/InetAddress/nameservice/dns/cname.sh ! test/sun/net/ftp/MarkResetTest.java - test/sun/net/ftp/MarkResetTest.sh ! test/sun/net/www/protocol/file/DirPermissionDenied.java - test/sun/net/www/protocol/file/DirPermissionDenied.sh + test/sun/net/www/protocol/jrt/OtherResourcesTest.java - test/sun/net/www/protocol/jrt/other_resources.sh Changeset: e0129da12f92 Author: iignatyev Date: 2017-06-12 12:40 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e0129da12f92 8181759: add explicit @build actions for jdk.test.lib classes in all :tier1 tests Reviewed-by: alanb ! test/java/lang/Class/forName/modules/TestDriver.java ! test/java/lang/Double/ParseHexFloatingPoint.java ! test/java/lang/Integer/BitTwiddle.java ! test/java/lang/Long/BitTwiddle.java ! test/java/lang/Math/CubeRootTests.java ! test/java/lang/Math/HypotTests.java ! test/java/lang/Math/IeeeRecommendedTests.java ! test/java/lang/Math/Log1pTests.java ! test/java/lang/Math/MultiplicationTests.java ! test/java/lang/ProcessHandle/Basic.java ! test/java/lang/ProcessHandle/InfoTest.java ! test/java/lang/ProcessHandle/OnExitTest.java ! test/java/lang/ProcessHandle/TreeTest.java ! test/java/lang/StackTraceElement/WithClassLoaderName.java ! test/java/lang/StackWalker/StackWalkTest.java ! test/java/lang/StrictMath/CubeRootTests.java ! test/java/lang/StrictMath/ExpTests.java ! test/java/lang/StrictMath/HypotTests.java ! test/java/lang/String/CompactString/SerializationTest.java ! test/java/lang/String/LiteralReplace.java ! test/java/lang/StringBuffer/CompactStringBufferSerialization.java ! test/java/lang/StringBuilder/CompactStringBuilderSerialization.java ! test/java/lang/Thread/ThreadStateTest.java ! test/java/lang/invoke/LFCaching/LFGarbageCollectedTest.java ! test/java/lang/invoke/LFCaching/LFMultiThreadCachingTest.java ! test/java/lang/invoke/LFCaching/LFSingleThreadCachingTest.java ! test/java/lang/invoke/MethodHandles/CatchExceptionTest.java ! test/java/lang/ref/CleanerTest.java ! test/java/math/BigDecimal/StringConstructor.java ! test/java/math/BigInteger/BigIntegerTest.java ! test/java/math/BigInteger/ModPow65537.java ! test/java/math/BigInteger/PrimeTest.java ! test/java/nio/Buffer/LimitDirectMemoryNegativeTest.java ! test/java/util/Base64/TestBase64.java ! test/java/util/List/SubList.java ! test/java/util/WeakHashMap/GCDuringIteration.java ! test/java/util/concurrent/ThreadPoolExecutor/ConfigChanges.java ! test/java/util/jar/JarFile/mrjar/MultiReleaseJarAPI.java ! test/java/util/logging/FileHandlerMaxLocksTest.java ! test/java/util/regex/RegExTest.java ! test/java/util/zip/InflaterInputStream/TestAvailable.java ! test/java/util/zip/ZipFile/MultiThreadedReadTest.java ! test/java/util/zip/ZipFile/ReadLongZipFileName.java ! test/java/util/zip/ZipFile/ZipEntryFreeTest.java ! test/jdk/internal/ref/Cleaner/ExitOnThrow.java ! test/jdk/internal/util/jar/TestVersionedStream.java ! test/jdk/modules/incubator/ImageModules.java ! test/sun/misc/SunMiscSignalTest.java Changeset: e4ba845822d5 Author: iignatyev Date: 2017-06-12 12:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e4ba845822d5 8181761: add explicit @build actions for jdk.test.lib classes in all :tier2 tests Reviewed-by: alanb ! test/com/sun/corba/7130985/CorbaExceptionsCompileTest.java ! test/com/sun/crypto/provider/CICO/PBEFunc/CipherNCFuncTest.java ! test/java/io/FilePermission/FilePermissionCollectionMerge.java ! test/java/io/FilePermission/Invalid.java ! test/java/io/FilePermission/MergeName.java ! test/java/io/FilePermission/ReadFileOnPath.java ! test/java/io/InputStream/ReadAllBytes.java ! test/java/io/InputStream/ReadNBytes.java ! test/java/io/Serializable/class/NonSerializableTest.java ! test/java/io/Serializable/evolution/RenamePackage/RenamePackageTest.java ! test/java/io/Serializable/failureAtomicity/FailureAtomicity.java ! test/java/io/Serializable/serialver/classpath/ClasspathTest.java ! test/java/io/Serializable/serialver/nested/NestedTest.java ! test/java/net/Inet6Address/B6206527.java ! test/java/net/Inet6Address/B6558853.java ! test/java/net/InetAddress/CheckJNI.java ! test/java/net/InetAddress/ptr/Lookup.java ! test/java/net/MulticastSocket/JoinLeave.java ! test/java/net/MulticastSocket/SetLoopbackMode.java ! test/java/net/NetworkConfigurationProbe.java ! test/java/net/ServerSocket/AcceptCauseFileDescriptorLeak.java ! test/java/net/Socket/LinkLocal.java ! test/java/net/Socket/OldSocketImplTestDriver.java ! test/java/net/SocketPermission/SocketPermissionTest.java ! test/java/net/URLClassLoader/closetest/CloseTest.java ! test/java/net/URLClassLoader/closetest/GetResourceAsStream.java ! test/java/net/URLClassLoader/getresourceasstream/TestDriver.java ! test/java/net/URLClassLoader/sealing/CheckSealedTest.java ! test/java/net/URLConnection/6212146/TestDriver.java ! test/java/net/httpclient/RequestBodyTest.java ! test/java/net/ipv6tests/B6521014.java ! test/java/net/spi/URLStreamHandlerProvider/Basic.java ! test/java/nio/channels/AsynchronousSocketChannel/Basic.java ! test/java/nio/channels/DatagramChannel/BasicMulticastTests.java ! test/java/nio/channels/DatagramChannel/MulticastSendReceiveTests.java ! test/java/nio/channels/DatagramChannel/Promiscuous.java ! test/java/nio/channels/FileChannel/Transfer.java ! test/java/nio/channels/Selector/LotsOfUpdatesTest.java ! test/java/nio/channels/SocketChannel/VectorIO.java ! test/java/nio/file/FileStore/Basic.java ! test/java/nio/file/FileSystem/Basic.java ! test/java/nio/file/Files/CopyAndMove.java ! test/java/nio/file/Files/DeleteOnClose.java ! test/java/nio/file/Files/StreamLinesTest.java ! test/java/nio/file/WatchService/LotsOfEvents.java ! test/java/security/AccessController/DoPrivAccompliceTest.java ! test/java/security/KeyStore/PKCS12/EntryProtectionTest.java ! test/java/security/MessageDigest/TestDigestIOStream.java ! test/java/security/MessageDigest/TestSameLength.java ! test/java/security/MessageDigest/TestSameValue.java ! test/java/security/Policy/ExtensiblePolicy/ExtensiblePolicyWithJarTest.java ! test/java/security/SecureRandom/DrbgParametersSpec.java ! test/java/security/Signature/Offsets.java ! test/javax/net/ssl/DTLS/DTLSIncorrectAppDataTest.java ! test/javax/net/ssl/DTLS/DTLSRehandshakeWithCipherChangeTest.java ! test/javax/net/ssl/DTLS/DTLSSequenceNumberTest.java ! test/javax/net/ssl/DTLSv10/DTLSv10RehandshakeWithCipherChangeTest.java ! test/javax/net/ssl/TLS/TLSRehandshakeWithCipherChangeTest.java ! test/javax/net/ssl/TLSv1/TLSRehandshakeWithCipherChangeTest.java ! test/javax/net/ssl/TLSv11/TLSRehandshakeWithCipherChangeTest.java ! test/jdk/security/jarsigner/Spec.java ! test/sun/net/www/protocol/https/HttpsURLConnection/B6216082.java ! test/sun/net/www/protocol/https/HttpsURLConnection/PostThruProxy.java ! test/sun/net/www/protocol/https/HttpsURLConnection/PostThruProxyWithAuth.java ! test/sun/net/www/protocol/jar/GetContentTypeTest.java ! test/sun/net/www/protocol/jar/jarbug/TestDriver.java ! test/sun/nio/cs/FindDecoderBugs.java ! test/sun/nio/cs/FindEncoderBugs.java ! test/sun/security/ec/SignatureOffsets.java ! test/sun/security/krb5/auto/ModuleName.java ! test/sun/security/krb5/auto/ReplayCacheTestProc.java ! test/sun/security/krb5/auto/rcache_usemd5.sh ! test/sun/security/mscapi/SignatureOffsets.java ! test/sun/security/pkcs11/rsa/TestKeyPairGenerator.java ! test/sun/security/rsa/SignatureOffsets.java ! test/sun/security/ssl/CertPathRestrictions/TLSRestrictions.java ! test/sun/security/ssl/rsa/SignatureOffsets.java ! test/sun/security/tools/jarsigner/AltProvider.java ! test/sun/security/tools/jarsigner/Options.java ! test/sun/security/tools/jarsigner/TimestampCheck.java ! test/sun/security/tools/jarsigner/TsacertOptionTest.java ! test/sun/security/tools/jarsigner/Warning.java ! test/sun/security/tools/jarsigner/multiRelease/MVJarSigningTest.java ! test/sun/security/tools/jarsigner/warnings/AliasNotInStoreTest.java ! test/sun/security/tools/jarsigner/warnings/BadExtendedKeyUsageTest.java ! test/sun/security/tools/jarsigner/warnings/BadKeyUsageTest.java ! test/sun/security/tools/jarsigner/warnings/BadNetscapeCertTypeTest.java ! test/sun/security/tools/jarsigner/warnings/ChainNotValidatedTest.java ! test/sun/security/tools/jarsigner/warnings/HasExpiredCertTest.java ! test/sun/security/tools/jarsigner/warnings/HasExpiringCertTest.java ! test/sun/security/tools/jarsigner/warnings/HasUnsignedEntryTest.java ! test/sun/security/tools/jarsigner/warnings/MultipleWarningsTest.java ! test/sun/security/tools/jarsigner/warnings/NoTimestampTest.java ! test/sun/security/tools/jarsigner/warnings/NotSignedByAliasTest.java ! test/sun/security/tools/jarsigner/warnings/NotYetValidCertTest.java ! test/sun/security/tools/keytool/ImportPrompt.java ! test/sun/security/tools/keytool/PrintSSL.java ! test/sun/security/tools/keytool/ReadJar.java ! test/sun/security/tools/keytool/WeakAlg.java ! test/tools/jar/InputFilesTest.java ! test/tools/jar/ReleaseBeforeFiles.java ! test/tools/jar/compat/CLICompatibility.java ! test/tools/jar/mmrjar/Basic.java ! test/tools/jar/modularJar/Basic.java ! test/tools/jar/multiRelease/ApiValidatorTest.java ! test/tools/jar/multiRelease/Basic.java ! test/tools/jar/multiRelease/Basic1.java ! test/tools/jar/multiRelease/RuntimeTest.java ! test/tools/jlink/multireleasejar/JLinkMultiReleaseJarTest.java ! test/tools/jlink/plugins/SystemModuleDescriptors/CompiledVersionTest.java ! test/tools/jlink/plugins/SystemModuleDescriptors/UserModuleTest.java ! test/tools/jmod/JmodNegativeTest.java ! test/tools/jmod/JmodTest.java ! test/tools/jmod/hashes/HashesTest.java ! test/tools/launcher/LauncherMessageTest.java ! test/tools/launcher/modules/addexports/AddExportsTestWarningError.java ! test/tools/launcher/modules/addreads/AddReadsTestWarningError.java ! test/tools/launcher/modules/patch/systemmodules/PatchSystemModules.java Changeset: 3801153e1036 Author: iignatyev Date: 2017-06-12 12:45 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/3801153e1036 8181762: add explicit @build actions for jdk.test.lib classes in all :tier3 tests Reviewed-by: alanb ! test/javax/imageio/plugins/tiff/MultiPageTest/MultiPageTest.java Changeset: 5d0f3ac4547e Author: mli Date: 2017-06-12 21:56 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5d0f3ac4547e 8179564: Missing @bug for tests added with JDK-8165367 Summary: Add @bug 8165367 Reviewed-by: weijun Contributed-by: John Jiang ! test/sun/security/ssl/CertPathRestrictions/TLSRestrictions.java Changeset: 83aed9f22b33 Author: rpressler Date: 2017-06-13 01:34 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/83aed9f22b33 8161207: remove extra MethodHandle subclass in MethodHandleImpl Summary: Add intrinsic name to LambdaForm.NamedFunction, but keep IntrinsicMethodHandle; interim solution Reviewed-by: psandoz Contributed-by: ron.pressler at oracle.com, vladimir.x.ivanov at oracle.com ! src/java.base/share/classes/java/lang/invoke/LambdaForm.java ! src/java.base/share/classes/java/lang/invoke/LambdaFormEditor.java ! src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java Changeset: 77f85eb3eb15 Author: amlu Date: 2017-06-14 11:55 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/77f85eb3eb15 8181394: Refactor shell test java/nio/file/Files/walkFileTree/find.sh to java Reviewed-by: alanb + test/java/nio/file/Files/walkFileTree/FindTest.java - test/java/nio/file/Files/walkFileTree/PrintFileTree.java - test/java/nio/file/Files/walkFileTree/find.sh Changeset: 8be1b92492d2 Author: weijun Date: 2017-06-14 12:32 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/8be1b92492d2 8181841: A TSA server returns timestamp with precision higher than milliseconds Reviewed-by: vinnie ! src/java.base/share/classes/sun/security/util/DerInputBuffer.java ! test/sun/security/util/DerInputBuffer/TimeParsing.java Changeset: 54551ea84184 Author: mchung Date: 2017-05-30 14:12 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/54551ea84184 8181148: Update the jdeps tool to list exported packages instead of just internal APIs Reviewed-by: psandoz + make/src/classes/build/tools/jigsaw/ListPackages.java Changeset: 4c0054896900 Author: jjg Date: 2017-05-30 15:48 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4c0054896900 8181290: Invalid HTML 5 in core-libs docs Reviewed-by: mchung, lancea ! src/java.base/share/classes/java/lang/invoke/package-info.java ! src/java.base/share/classes/java/lang/module/package-info.java ! src/java.base/share/classes/java/lang/package-info.java ! src/java.base/share/classes/java/net/doc-files/net-properties.html ! src/java.base/share/classes/java/nio/channels/package-info.java ! src/java.base/share/classes/java/nio/file/package-info.java ! src/java.base/share/classes/java/nio/package-info.java ! src/java.base/share/classes/java/util/package-info.java ! src/java.base/share/classes/java/util/zip/package-info.java Changeset: 02bd39544ff1 Author: mli Date: 2017-05-31 19:54 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/02bd39544ff1 8181082: class-level since tag issues in java.base & java.datatransfer module Reviewed-by: alanb, serb ! src/java.base/share/classes/java/lang/RuntimePermission.java ! src/java.base/share/classes/java/lang/reflect/Array.java ! src/java.base/share/classes/java/lang/reflect/Constructor.java ! src/java.base/share/classes/java/lang/reflect/Field.java ! src/java.base/share/classes/java/lang/reflect/InvocationTargetException.java ! src/java.base/share/classes/java/lang/reflect/Member.java ! src/java.base/share/classes/java/lang/reflect/Method.java ! src/java.base/share/classes/java/lang/reflect/Modifier.java ! src/java.base/share/classes/java/math/BigDecimal.java ! src/java.base/share/classes/java/net/NetPermission.java ! src/java.base/share/classes/java/net/SocketOptions.java ! src/java.base/share/classes/java/net/SocketPermission.java ! src/java.base/share/classes/java/security/AccessControlContext.java ! src/java.base/share/classes/java/security/AccessControlException.java ! src/java.base/share/classes/java/security/AccessController.java ! src/java.base/share/classes/java/security/AllPermission.java ! src/java.base/share/classes/java/security/BasicPermission.java ! src/java.base/share/classes/java/security/Certificate.java ! src/java.base/share/classes/java/security/CodeSource.java ! src/java.base/share/classes/java/security/DigestException.java ! src/java.base/share/classes/java/security/DigestInputStream.java ! src/java.base/share/classes/java/security/DigestOutputStream.java ! src/java.base/share/classes/java/security/GeneralSecurityException.java ! src/java.base/share/classes/java/security/Guard.java ! src/java.base/share/classes/java/security/GuardedObject.java ! src/java.base/share/classes/java/security/Identity.java ! src/java.base/share/classes/java/security/IdentityScope.java ! src/java.base/share/classes/java/security/InvalidKeyException.java ! src/java.base/share/classes/java/security/InvalidParameterException.java ! src/java.base/share/classes/java/security/Key.java ! src/java.base/share/classes/java/security/KeyException.java ! src/java.base/share/classes/java/security/KeyManagementException.java ! src/java.base/share/classes/java/security/KeyPair.java ! src/java.base/share/classes/java/security/KeyPairGenerator.java ! src/java.base/share/classes/java/security/KeyPairGeneratorSpi.java ! src/java.base/share/classes/java/security/MessageDigest.java ! src/java.base/share/classes/java/security/MessageDigestSpi.java ! src/java.base/share/classes/java/security/NoSuchAlgorithmException.java ! src/java.base/share/classes/java/security/NoSuchProviderException.java ! src/java.base/share/classes/java/security/Permission.java ! src/java.base/share/classes/java/security/PermissionCollection.java ! src/java.base/share/classes/java/security/Permissions.java ! src/java.base/share/classes/java/security/Policy.java ! src/java.base/share/classes/java/security/Principal.java ! src/java.base/share/classes/java/security/PrivateKey.java ! src/java.base/share/classes/java/security/PrivilegedAction.java ! src/java.base/share/classes/java/security/PrivilegedActionException.java ! src/java.base/share/classes/java/security/PrivilegedExceptionAction.java ! src/java.base/share/classes/java/security/ProtectionDomain.java ! src/java.base/share/classes/java/security/Provider.java ! src/java.base/share/classes/java/security/ProviderException.java ! src/java.base/share/classes/java/security/PublicKey.java ! src/java.base/share/classes/java/security/SecureClassLoader.java ! src/java.base/share/classes/java/security/SecureRandom.java ! src/java.base/share/classes/java/security/Security.java ! src/java.base/share/classes/java/security/SecurityPermission.java ! src/java.base/share/classes/java/security/Signature.java ! src/java.base/share/classes/java/security/SignatureException.java ! src/java.base/share/classes/java/security/SignatureSpi.java ! src/java.base/share/classes/java/security/SignedObject.java ! src/java.base/share/classes/java/security/Signer.java ! src/java.base/share/classes/java/security/UnresolvedPermission.java ! src/java.base/share/classes/java/security/UnresolvedPermissionCollection.java ! src/java.base/share/classes/java/security/acl/Acl.java ! src/java.base/share/classes/java/security/acl/AclEntry.java ! src/java.base/share/classes/java/security/acl/AclNotFoundException.java ! src/java.base/share/classes/java/security/acl/Group.java ! src/java.base/share/classes/java/security/acl/LastOwnerException.java ! src/java.base/share/classes/java/security/acl/NotOwnerException.java ! src/java.base/share/classes/java/security/acl/Owner.java ! src/java.base/share/classes/java/security/acl/Permission.java ! src/java.base/share/classes/java/security/cert/CRLException.java ! src/java.base/share/classes/java/security/cert/Certificate.java ! src/java.base/share/classes/java/security/cert/CertificateEncodingException.java ! src/java.base/share/classes/java/security/cert/CertificateException.java ! src/java.base/share/classes/java/security/cert/CertificateExpiredException.java ! src/java.base/share/classes/java/security/cert/CertificateNotYetValidException.java ! src/java.base/share/classes/java/security/cert/CertificateParsingException.java ! src/java.base/share/classes/java/security/cert/X509CRL.java ! src/java.base/share/classes/java/security/cert/X509CRLEntry.java ! src/java.base/share/classes/java/security/cert/X509Certificate.java ! src/java.base/share/classes/java/security/cert/X509Extension.java ! src/java.base/share/classes/java/security/interfaces/DSAKey.java ! src/java.base/share/classes/java/security/interfaces/DSAKeyPairGenerator.java ! src/java.base/share/classes/java/security/interfaces/DSAParams.java ! src/java.base/share/classes/java/security/interfaces/DSAPrivateKey.java ! src/java.base/share/classes/java/security/interfaces/DSAPublicKey.java ! src/java.base/share/classes/java/security/interfaces/RSAPrivateCrtKey.java ! src/java.base/share/classes/java/security/interfaces/RSAPrivateKey.java ! src/java.base/share/classes/java/security/interfaces/RSAPublicKey.java ! src/java.base/share/classes/java/security/spec/RSAPrivateCrtKeySpec.java ! src/java.base/share/classes/java/security/spec/RSAPrivateKeySpec.java ! src/java.base/share/classes/java/security/spec/RSAPublicKeySpec.java ! src/java.base/share/classes/java/text/BreakIterator.java ! src/java.base/share/classes/java/text/CharacterIterator.java ! src/java.base/share/classes/java/text/ChoiceFormat.java ! src/java.base/share/classes/java/text/CollationElementIterator.java ! src/java.base/share/classes/java/text/CollationKey.java ! src/java.base/share/classes/java/text/Collator.java ! src/java.base/share/classes/java/text/DateFormat.java ! src/java.base/share/classes/java/text/DateFormatSymbols.java ! src/java.base/share/classes/java/text/DecimalFormat.java ! src/java.base/share/classes/java/text/DecimalFormatSymbols.java ! src/java.base/share/classes/java/text/FieldPosition.java ! src/java.base/share/classes/java/text/Format.java ! src/java.base/share/classes/java/text/MessageFormat.java ! src/java.base/share/classes/java/text/NumberFormat.java ! src/java.base/share/classes/java/text/ParseException.java ! src/java.base/share/classes/java/text/ParsePosition.java ! src/java.base/share/classes/java/text/RuleBasedCollator.java ! src/java.base/share/classes/java/text/SimpleDateFormat.java ! src/java.base/share/classes/java/text/StringCharacterIterator.java ! src/java.base/share/classes/java/util/concurrent/CompletionService.java ! src/java.base/share/classes/java/util/concurrent/ExecutorCompletionService.java ! src/java.base/share/classes/java/util/concurrent/locks/LockSupport.java ! src/java.base/share/classes/java/util/jar/JarEntry.java ! src/java.base/share/classes/java/util/zip/Adler32.java ! src/java.base/share/classes/java/util/zip/CRC32.java ! src/java.base/share/classes/java/util/zip/CheckedInputStream.java ! src/java.base/share/classes/java/util/zip/CheckedOutputStream.java ! src/java.base/share/classes/java/util/zip/Checksum.java ! src/java.base/share/classes/java/util/zip/DataFormatException.java ! src/java.base/share/classes/java/util/zip/Deflater.java ! src/java.base/share/classes/java/util/zip/DeflaterOutputStream.java ! src/java.base/share/classes/java/util/zip/GZIPInputStream.java ! src/java.base/share/classes/java/util/zip/GZIPOutputStream.java ! src/java.base/share/classes/java/util/zip/Inflater.java ! src/java.base/share/classes/java/util/zip/InflaterInputStream.java ! src/java.base/share/classes/java/util/zip/ZipConstants.java ! src/java.base/share/classes/java/util/zip/ZipEntry.java ! src/java.base/share/classes/java/util/zip/ZipFile.java ! src/java.base/share/classes/java/util/zip/ZipInputStream.java ! src/java.base/share/classes/java/util/zip/ZipOutputStream.java ! src/java.base/share/classes/javax/security/auth/AuthPermission.java ! src/java.base/share/classes/javax/security/auth/DestroyFailedException.java ! src/java.base/share/classes/javax/security/auth/Destroyable.java ! src/java.base/share/classes/javax/security/auth/Policy.java ! src/java.base/share/classes/javax/security/auth/PrivateCredentialPermission.java ! src/java.base/share/classes/javax/security/auth/RefreshFailedException.java ! src/java.base/share/classes/javax/security/auth/Refreshable.java ! src/java.base/share/classes/javax/security/auth/Subject.java ! src/java.base/share/classes/javax/security/auth/SubjectDomainCombiner.java ! src/java.base/share/classes/javax/security/auth/callback/Callback.java ! src/java.base/share/classes/javax/security/auth/callback/CallbackHandler.java ! src/java.base/share/classes/javax/security/auth/callback/ChoiceCallback.java ! src/java.base/share/classes/javax/security/auth/callback/ConfirmationCallback.java ! src/java.base/share/classes/javax/security/auth/callback/LanguageCallback.java ! src/java.base/share/classes/javax/security/auth/callback/NameCallback.java ! src/java.base/share/classes/javax/security/auth/callback/PasswordCallback.java ! src/java.base/share/classes/javax/security/auth/callback/TextInputCallback.java ! src/java.base/share/classes/javax/security/auth/callback/TextOutputCallback.java ! src/java.base/share/classes/javax/security/auth/callback/UnsupportedCallbackException.java ! src/java.base/share/classes/javax/security/auth/login/AccountExpiredException.java ! src/java.base/share/classes/javax/security/auth/login/AppConfigurationEntry.java ! src/java.base/share/classes/javax/security/auth/login/Configuration.java ! src/java.base/share/classes/javax/security/auth/login/CredentialExpiredException.java ! src/java.base/share/classes/javax/security/auth/login/FailedLoginException.java ! src/java.base/share/classes/javax/security/auth/login/LoginContext.java ! src/java.base/share/classes/javax/security/auth/login/LoginException.java ! src/java.base/share/classes/javax/security/auth/spi/LoginModule.java ! src/java.base/share/classes/javax/security/auth/x500/X500PrivateCredential.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/Clipboard.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/ClipboardOwner.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/DataFlavor.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/StringSelection.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/Transferable.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/UnsupportedFlavorException.java Changeset: 6435d673ea25 Author: valeriep Date: 2017-06-01 03:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6435d673ea25 8180635: (doc) Clarify the compatibility and interoperability issue when using provider default values Summary: updated the javadoc of KeyPairGenerator, KeyGenerator, AlgorithmParameterGenerator and their Spi classes Reviewed-by: mullan ! src/java.base/share/classes/java/security/AlgorithmParameterGenerator.java ! src/java.base/share/classes/java/security/AlgorithmParameterGeneratorSpi.java ! src/java.base/share/classes/java/security/KeyPairGenerator.java ! src/java.base/share/classes/java/security/KeyPairGeneratorSpi.java ! src/java.base/share/classes/javax/crypto/KeyGenerator.java ! src/java.base/share/classes/javax/crypto/KeyGeneratorSpi.java Changeset: 1f820f4aff3e Author: rriggs Date: 2017-05-31 23:45 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/1f820f4aff3e 8180582: The bind to rmiregistry is rejected by registryFilter even though registryFilter is set Summary: The Registry MAXDEPTH should allow binding more complex objects Reviewed-by: dfuchs, smarks ! src/java.rmi/share/classes/sun/rmi/registry/RegistryImpl.java ! test/java/rmi/registry/serialFilter/RegistryFilterTest.java Changeset: a24583f5e4bf Author: rriggs Date: 2017-06-01 09:28 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a24583f5e4bf 8181156: html5 issues in java.base javadoc Reviewed-by: alanb ! src/java.base/share/classes/java/lang/invoke/package-info.java ! src/java.base/share/classes/java/net/InetAddress.java ! src/java.base/share/classes/java/net/URI.java ! src/java.base/share/classes/java/nio/channels/package-info.java ! src/java.base/share/classes/java/nio/charset/package-info.java ! src/java.base/share/classes/java/nio/file/attribute/package-info.java ! src/java.base/share/classes/java/nio/package-info.java ! src/java.base/share/classes/java/util/spi/CalendarNameProvider.java Changeset: 3a73b3d5318e Author: lana Date: 2017-06-01 18:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/3a73b3d5318e Merge Changeset: fb80de0ea690 Author: naoto Date: 2017-06-01 14:52 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/fb80de0ea690 8180375: Rename Provider to .spi.Provider Reviewed-by: mchung ! src/java.base/share/classes/java/util/ResourceBundle.java ! src/java.base/share/classes/java/util/spi/ResourceBundleProvider.java ! test/java/util/ResourceBundle/modules/appbasic/src/asiabundles/jdk/test/resources/asia/MyResourcesAsia.java ! test/java/util/ResourceBundle/modules/appbasic/src/asiabundles/module-info.java ! test/java/util/ResourceBundle/modules/appbasic/src/eubundles/jdk/test/resources/eu/MyResourcesEU.java ! test/java/util/ResourceBundle/modules/appbasic/src/eubundles/module-info.java - test/java/util/ResourceBundle/modules/appbasic/src/test/jdk/test/resources/MyResourcesProvider.java ! test/java/util/ResourceBundle/modules/appbasic/src/test/jdk/test/resources/MyResourcesProviderImpl.java + test/java/util/ResourceBundle/modules/appbasic/src/test/jdk/test/resources/spi/MyResourcesProvider.java ! test/java/util/ResourceBundle/modules/appbasic/src/test/module-info.java ! test/java/util/ResourceBundle/modules/appbasic2/src/asiabundles/jdk/test/resources/asia/MyResourcesAsia.java ! test/java/util/ResourceBundle/modules/appbasic2/src/asiabundles/module-info.java ! test/java/util/ResourceBundle/modules/appbasic2/src/eubundles/jdk/test/resources/eu/MyResourcesEU.java ! test/java/util/ResourceBundle/modules/appbasic2/src/eubundles/module-info.java - test/java/util/ResourceBundle/modules/appbasic2/src/test/jdk/test/resources/MyResourcesProvider.java ! test/java/util/ResourceBundle/modules/appbasic2/src/test/jdk/test/resources/MyResourcesProviderImpl.java + test/java/util/ResourceBundle/modules/appbasic2/src/test/jdk/test/resources/spi/MyResourcesProvider.java ! test/java/util/ResourceBundle/modules/appbasic2/src/test/module-info.java ! test/java/util/ResourceBundle/modules/basic/src/asiabundles/jdk/test/resources/asia/MyResourcesAsia.java ! test/java/util/ResourceBundle/modules/basic/src/asiabundles/module-info.java ! test/java/util/ResourceBundle/modules/basic/src/eubundles/jdk/test/resources/eu/MyResourcesEU.java ! test/java/util/ResourceBundle/modules/basic/src/eubundles/module-info.java ! test/java/util/ResourceBundle/modules/basic/src/mainbundles/jdk/test/resources/MyResourcesMain.java - test/java/util/ResourceBundle/modules/basic/src/mainbundles/jdk/test/resources/MyResourcesProvider.java + test/java/util/ResourceBundle/modules/basic/src/mainbundles/jdk/test/resources/spi/MyResourcesProvider.java ! test/java/util/ResourceBundle/modules/basic/src/mainbundles/module-info.java ! test/java/util/ResourceBundle/modules/basic/src/test/module-info.java + test/java/util/ResourceBundle/modules/layer/run.sh + test/java/util/ResourceBundle/modules/layer/src/Main.java + test/java/util/ResourceBundle/modules/layer/src/m1/module-info.java + test/java/util/ResourceBundle/modules/layer/src/m1/p/Main.java + test/java/util/ResourceBundle/modules/layer/src/m1/p/internal/BundleProvider.java + test/java/util/ResourceBundle/modules/layer/src/m1/p/resources/MyResource.properties + test/java/util/ResourceBundle/modules/layer/src/m1/p/resources/spi/MyResourceProvider.java + test/java/util/ResourceBundle/modules/layer/src/m2/module-info.java + test/java/util/ResourceBundle/modules/layer/src/m2/p/internal/BundleProvider.java + test/java/util/ResourceBundle/modules/layer/src/m2/p/resources/MyResource_ja.properties - test/java/util/ResourceBundle/modules/simple/src/bundles/jdk/test/resources/MyResourcesProvider.java + test/java/util/ResourceBundle/modules/simple/src/bundles/jdk/test/resources/spi/MyResourcesProvider.java ! test/java/util/ResourceBundle/modules/simple/src/bundles/module-info.java ! test/java/util/ResourceBundle/modules/simple/src/test/module-info.java - test/java/util/ResourceBundle/modules/visibility/src/exported.named.bundles/jdk/test/resources/exported/classes/MyResourcesProvider.java + test/java/util/ResourceBundle/modules/visibility/src/exported.named.bundles/jdk/test/resources/exported/classes/spi/MyResourcesProvider.java ! test/java/util/ResourceBundle/modules/visibility/src/exported.named.bundles/module-info.java - test/java/util/ResourceBundle/modules/visibility/src/named.bundles/jdk/test/resources/classes/MyResourcesProvider.java + test/java/util/ResourceBundle/modules/visibility/src/named.bundles/jdk/test/resources/classes/spi/MyResourcesProvider.java - test/java/util/ResourceBundle/modules/visibility/src/named.bundles/jdk/test/resources/props/MyResourcesProvider.java + test/java/util/ResourceBundle/modules/visibility/src/named.bundles/jdk/test/resources/props/spi/MyResourcesProvider.java ! test/java/util/ResourceBundle/modules/visibility/src/named.bundles/module-info.java ! test/java/util/ResourceBundle/modules/visibility/src/test/module-info.java - test/java/util/ResourceBundle/modules/xmlformat/src/bundles/jdk/test/resources/MyResourcesProvider.java + test/java/util/ResourceBundle/modules/xmlformat/src/bundles/jdk/test/resources/spi/MyResourcesProvider.java ! test/java/util/ResourceBundle/modules/xmlformat/src/bundles/module-info.java ! test/java/util/ResourceBundle/modules/xmlformat/src/test/module-info.java Changeset: a5506b425f1b Author: prappo Date: 2017-06-02 18:32 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a5506b425f1b 8180155: WebSocket secure connection get stuck after onOpen 8156518: WebSocket.Builder.connectTimeout(long timeout, TimeUnit unit) implicitly affect websocket connection timeout Reviewed-by: dfuchs ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/MultiExchange.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLDelegate.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/Receiver.java Changeset: 23721aa1d87f Author: lana Date: 2017-06-08 16:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/23721aa1d87f Added tag jdk-9+173 for changeset a5506b425f1b ! .hgtags Changeset: 2017d678aa50 Author: lana Date: 2017-06-14 19:58 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2017d678aa50 Merge ! .hgtags - src/java.base/macosx/native/launcher/jexec.c ! src/java.base/share/classes/java/security/cert/X509CRL.java ! src/java.base/share/classes/java/security/cert/X509Certificate.java ! src/java.base/share/classes/java/text/DecimalFormat.java - src/java.base/share/classes/sun/security/ssl/EllipticCurvesExtension.java - src/java.base/share/classes/sun/security/ssl/RecordType.java - src/java.base/unix/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java - test/java/io/Serializable/class/NonSerialA_1.java - test/java/io/Serializable/class/NonSerialA_2.java - test/java/io/Serializable/class/SerialA.java - test/java/io/Serializable/class/SerialA_1.java - test/java/io/Serializable/class/SerialA_2.java - test/java/io/Serializable/class/SerialA_3.java - test/java/io/Serializable/class/Test.java - test/java/io/Serializable/class/run.sh - test/java/io/Serializable/evolution/AddedExternField/run.sh - test/java/io/Serializable/evolution/RenamePackage/run.sh - test/java/io/Serializable/maskSyntheticModifier/Test.java - test/java/io/Serializable/maskSyntheticModifier/run.sh - test/java/io/Serializable/packageAccess/Test.java - test/java/io/Serializable/packageAccess/run.sh - test/java/io/Serializable/resolveClass/consTest/Test.java - test/java/io/Serializable/resolveClass/consTest/run.sh - test/java/io/Serializable/resolveClass/deserializeButton/Test.java - test/java/io/Serializable/resolveClass/deserializeButton/run.sh - test/java/io/Serializable/serialver/classpath/Test.java - test/java/io/Serializable/serialver/classpath/run.sh - test/java/io/Serializable/serialver/nested/Test.java - test/java/io/Serializable/serialver/nested/run.sh - test/java/io/Serializable/subclass/Test.java - test/java/io/Serializable/subclass/run.sh - test/java/io/Serializable/superclassDataLoss/Test.java - test/java/io/Serializable/superclassDataLoss/run.sh - test/java/io/Serializable/unnamedPackageSwitch/Test.java - test/java/io/Serializable/unnamedPackageSwitch/run.sh - test/java/net/Socket/OldSocketImpl.sh - test/java/net/URL/B5086147.sh - test/java/net/URLClassLoader/B5077773.java - test/java/net/URLClassLoader/B5077773.sh - test/java/net/URLClassLoader/closetest/build.sh - test/java/net/URLClassLoader/closetest/build2.sh - test/java/net/URLClassLoader/getresourceasstream/test.sh - test/java/net/URLClassLoader/sealing/checksealed.sh - test/java/net/URLConnection/6212146/test.sh - test/java/net/URLConnection/UNCTest.sh - test/java/nio/Buffer/LimitDirectMemory.sh - test/java/nio/channels/AsynchronousChannelGroup/Attack.java - test/java/nio/channels/AsynchronousChannelGroup/PrivilegedThreadFactory.java - test/java/nio/channels/AsynchronousChannelGroup/run_any_task.sh - test/java/nio/channels/DatagramChannel/NetworkConfiguration.java - test/java/nio/channels/Selector/lots_of_updates.sh - test/java/nio/channels/SocketChannel/Open.sh - test/java/nio/file/Files/delete_on_close.sh - test/java/nio/file/Files/walkFileTree/PrintFileTree.java - test/java/nio/file/Files/walkFileTree/find.sh - test/java/util/stream/bootlib/java.base/java/util/SpliteratorOfIntDataBuilder.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/CollectorOps.java - test/java/util/stream/bootlib/java.base/java/util/stream/DefaultMethodStreams.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/FlagDeclaringOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntermediateTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestHelpers.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestMode.java - test/java/util/stream/bootlib/java.base/java/util/stream/LoggingTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/OpTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatefulTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatelessTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamOpFlagTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestData.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestFlagExpectedOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/ThrowableHelper.java - test/java/util/stream/test/org/openjdk/tests/java/util/NullArgsTestCase.java - test/lib/testlibrary/CompilerUtils.java - test/lib/testlibrary/JavaToolUtils.java - test/lib/testlibrary/ModuleInfoMaker.java - test/lib/testlibrary/jdk/testlibrary/FileUtils.java - test/lib/testlibrary/jdk/testlibrary/FilterClassLoader.java - test/lib/testlibrary/jdk/testlibrary/IOUtils.java - test/lib/testlibrary/jdk/testlibrary/JarUtils.java - test/lib/testlibrary/jdk/testlibrary/LockFreeLogManager.java - test/lib/testlibrary/jdk/testlibrary/NetworkConfiguration.java - test/lib/testlibrary/jdk/testlibrary/ParentLastURLClassLoader.java - test/lib/testlibrary/jdk/testlibrary/SerializationUtils.java - test/lib/testlibrary/jdk/testlibrary/TimeLimitedRunner.java - test/lib/testlibrary/jdk/testlibrary/management/InputArguments.java - test/lib/testlibrary/jdk/testlibrary/management/ThreadMXBeanTool.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/CodeCacheOverflowProcessor.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/Helper.java - test/sun/net/InetAddress/nameservice/dns/cname.sh - test/sun/net/ftp/MarkResetTest.sh - test/sun/net/www/protocol/file/DirPermissionDenied.sh - test/sun/net/www/protocol/jar/B5105410.sh - test/sun/net/www/protocol/jar/copyin.sh - test/sun/net/www/protocol/jar/getcontenttype.sh - test/sun/net/www/protocol/jar/jarbug/run.sh - test/sun/net/www/protocol/jar/jarbug/src/test/RunAllTests.java - test/sun/net/www/protocol/jrt/other_resources.sh - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/base/versionResource - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v10/versionResource - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v9/versionResource Changeset: d57abb4a6701 Author: weijun Date: 2017-06-15 08:34 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/d57abb4a6701 8181501: KeyTool help does not show -ext for -certreq Reviewed-by: vinnie ! src/java.base/share/classes/sun/security/tools/keytool/Main.java Changeset: 5f504872a75b Author: mli Date: 2017-06-14 19:29 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5f504872a75b 8179242: OutOfMemoryError in java/util/Arrays/ParallelPrefix.java Reviewed-by: psandoz ! test/TEST.ROOT ! test/TEST.groups - test/java/util/Arrays/ParallelPrefix.java + test/java/util/Arrays/largeMemory/ParallelPrefix.java Changeset: 3d52a1fd3eea Author: vtewari Date: 2017-06-15 17:50 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/3d52a1fd3eea 8176192: Incorrect usage of Iterator in Java 8 In com.sun.jndi.ldap.EventSupport.removeNamingListener Reviewed-by: psandoz ! src/java.naming/share/classes/com/sun/jndi/ldap/EventSupport.java + test/com/sun/jndi/ldap/RemoveNamingListenerTest.java Changeset: d6e163b08d8c Author: asmotrak Date: 2017-06-15 15:00 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/d6e163b08d8c 8182143: SHA224-based signature algorithms are not enabled for TLSv12 on Windows Reviewed-by: xuelei ! src/java.base/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java ! test/javax/net/ssl/TLSv12/SignatureAlgorithms.java Changeset: ffa11326afd5 Author: psandoz Date: 2017-06-05 16:05 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/ffa11326afd5 8181292: Backport Rename internal Unsafe.compare methods from 10 to 9 Reviewed-by: psandoz, dholmes, mchung Contributed-by: ron.pressler at oracle.com ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/ClassLoader.java ! src/java.base/share/classes/java/lang/invoke/X-VarHandle.java.template ! src/java.base/share/classes/java/lang/invoke/X-VarHandleByteArrayView.java.template ! src/java.base/share/classes/java/util/concurrent/ConcurrentHashMap.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicInteger.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicLong.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicLongFieldUpdater.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java ! src/java.base/share/classes/jdk/internal/misc/Unsafe.java ! src/jdk.unsupported/share/classes/sun/misc/Unsafe.java Changeset: 915b8df0afbb Author: weijun Date: 2017-06-07 10:03 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/915b8df0afbb 8181461: sun/security/krb5/auto/KdcPolicy.java fails with java.lang.Exception: Does not match Reviewed-by: xuelei ! test/sun/security/krb5/auto/KdcPolicy.java Changeset: e4a4f89bbca3 Author: alitvinov Date: 2017-06-02 18:40 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e4a4f89bbca3 8181192: [macos] javafx.print.PrinterJob.showPrintDialog() hangs on macOS Reviewed-by: prr, serb ! src/java.desktop/macosx/native/libawt_lwawt/awt/CPrinterJob.m ! src/java.desktop/share/classes/sun/print/RasterPrinterJob.java ! test/java/awt/print/PageFormat/WrongPaperPrintingTest.java Changeset: 80aecb2f0ac7 Author: prr Date: 2017-06-05 11:00 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/80aecb2f0ac7 Merge - src/java.base/share/classes/overview-core.html - test/java/util/ResourceBundle/modules/appbasic/src/test/jdk/test/resources/MyResourcesProvider.java - test/java/util/ResourceBundle/modules/appbasic2/src/test/jdk/test/resources/MyResourcesProvider.java - test/java/util/ResourceBundle/modules/basic/src/mainbundles/jdk/test/resources/MyResourcesProvider.java - test/java/util/ResourceBundle/modules/simple/src/bundles/jdk/test/resources/MyResourcesProvider.java - test/java/util/ResourceBundle/modules/visibility/src/exported.named.bundles/jdk/test/resources/exported/classes/MyResourcesProvider.java - test/java/util/ResourceBundle/modules/visibility/src/named.bundles/jdk/test/resources/classes/MyResourcesProvider.java - test/java/util/ResourceBundle/modules/visibility/src/named.bundles/jdk/test/resources/props/MyResourcesProvider.java - test/java/util/ResourceBundle/modules/xmlformat/src/bundles/jdk/test/resources/MyResourcesProvider.java Changeset: 510301a824d4 Author: psadhukhan Date: 2017-06-06 11:11 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/510301a824d4 8181401: Error in Javadoc for JTabbedPane getAccessibleName() Reviewed-by: serb, ssadetsky ! src/java.desktop/share/classes/javax/swing/JTabbedPane.java Changeset: e7ede182f86f Author: psadhukhan Date: 2017-06-06 11:56 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e7ede182f86f 8181640: Spelling mistake in javadoc javax.swing.JEditorPane.scrollToReference(String) Reviewed-by: serb ! src/java.desktop/share/classes/javax/swing/JEditorPane.java Changeset: 92d4889c9b57 Author: mhalder Date: 2017-06-06 14:38 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/92d4889c9b57 8172510: This test fails for me on OS X consistently with result: Expected : 01230123 Actual : 001122303011223 Reviewed-by: serb, prr Contributed-by: manajit.halder at oracle.com ! test/java/awt/List/ItemEventTest/ItemEventTest.java Changeset: ed1e99c1bba2 Author: prr Date: 2017-06-07 06:45 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/ed1e99c1bba2 Merge Changeset: 67ad6b89dd96 Author: lancea Date: 2017-06-07 15:05 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/67ad6b89dd96 8181195: Mark java.se.ee aggregator module deprecated and for removal Reviewed-by: joehw, alanb, mchung ! src/java.se.ee/share/classes/module-info.java Changeset: 4ecceb2dcc01 Author: mchung Date: 2017-06-07 18:54 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4ecceb2dcc01 8181696: Package versioning link does not exist in JAR file specification Reviewed-by: alanb ! src/java.base/share/classes/java/lang/ClassLoader.java ! src/java.base/share/classes/java/lang/Package.java Changeset: 0f734ac5ddb1 Author: mchung Date: 2017-06-07 21:15 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/0f734ac5ddb1 8181639: Add tool and services information to module summary Reviewed-by: alanb, psandoz, lancea ! make/src/classes/build/tools/docs/docs-module-groups.properties ! src/java.base/share/classes/module-info.java ! src/java.desktop/share/classes/module-info.java ! src/java.management.rmi/share/classes/module-info.java ! src/java.management/share/classes/module-info.java ! src/java.prefs/share/classes/module-info.java ! src/java.rmi/share/classes/module-info.java ! src/java.scripting/share/classes/module-info.java ! src/java.se/share/classes/module-info.java ! src/java.sql.rowset/share/classes/module-info.java ! src/java.sql/share/classes/module-info.java ! src/jdk.attach/share/classes/module-info.java ! src/jdk.charsets/share/classes/module-info.java ! src/jdk.crypto.cryptoki/share/classes/module-info.java ! src/jdk.crypto.ec/share/classes/module-info.java ! src/jdk.crypto.mscapi/windows/classes/module-info.java ! src/jdk.crypto.ucrypto/solaris/classes/module-info.java ! src/jdk.editpad/share/classes/module-info.java ! src/jdk.httpserver/share/classes/module-info.java ! src/jdk.jartool/share/classes/module-info.java ! src/jdk.jcmd/share/classes/module-info.java ! src/jdk.jconsole/share/classes/module-info.java ! src/jdk.jdi/share/classes/module-info.java ! src/jdk.jdwp.agent/share/classes/module-info.java ! src/jdk.jlink/share/classes/module-info.java ! src/jdk.jstatd/share/classes/module-info.java ! src/jdk.localedata/share/classes/module-info.java ! src/jdk.management.agent/share/classes/module-info.java ! src/jdk.naming.dns/share/classes/module-info.java ! src/jdk.naming.rmi/share/classes/module-info.java ! src/jdk.pack/share/classes/module-info.java ! src/jdk.policytool/share/classes/module-info.java ! src/jdk.rmic/share/classes/module-info.java ! src/jdk.security.auth/share/classes/module-info.java ! src/jdk.zipfs/share/classes/module-info.java Changeset: 2637d816e17a Author: ihse Date: 2017-06-08 11:24 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2637d816e17a 8181776: Move back specs to closed Reviewed-by: erikj - src/java.base/share/specs/serialization/class.md - src/java.base/share/specs/serialization/examples.md - src/java.base/share/specs/serialization/exceptions.md - src/java.base/share/specs/serialization/images/version.gif - src/java.base/share/specs/serialization/index.md - src/java.base/share/specs/serialization/input.md - src/java.base/share/specs/serialization/output.md - src/java.base/share/specs/serialization/protocol.md - src/java.base/share/specs/serialization/security.md - src/java.base/share/specs/serialization/serial-arch.md - src/java.base/share/specs/serialization/version.md - src/java.desktop/share/specs/AWT_Native_Interface.html - src/java.management/share/specs/JVM-MANAGEMENT-MIB.mib Changeset: 4287c7853433 Author: dfuchs Date: 2017-06-08 12:24 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4287c7853433 8181430: HTTP/2 client might deadlock when receiving data during the initial handshake Summary: CountDownLatch removed. Data produced during the handshake is instead buffered until the preface is sent. Reviewed-by: michaelm, msheppar, prappo ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http2Connection.java Changeset: ea0146845b79 Author: dfuchs Date: 2017-06-08 12:41 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/ea0146845b79 8180044: java/net/httpclient/ManyRequests.java failed due to timeout Summary: Fixes several race conditions observed while testing. Reviewed-by: michaelm, msheppar, prappo ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpClientImpl.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PlainHttpConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Stream.java ! test/com/sun/net/httpserver/FileServerHandler.java ! test/java/net/httpclient/ManyRequests.java + test/java/net/httpclient/ManyRequests2.java Changeset: 3abaf7610609 Author: ihse Date: 2017-06-08 13:49 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/3abaf7610609 8180300: Move JDWP specs to specs directory Reviewed-by: sspitsyn ! src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/Connection.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/TransportService.java Changeset: 890af73c1fe4 Author: erikj Date: 2017-06-08 14:53 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/890af73c1fe4 8178064: OpenJDK RI binary should include the license file for freetype Reviewed-by: tbell, ihse ! make/copy/Copy-java.desktop.gmk Changeset: 9a344811dba9 Author: lana Date: 2017-06-08 23:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/9a344811dba9 Merge - src/java.base/share/specs/serialization/class.md - src/java.base/share/specs/serialization/examples.md - src/java.base/share/specs/serialization/exceptions.md - src/java.base/share/specs/serialization/images/version.gif - src/java.base/share/specs/serialization/index.md - src/java.base/share/specs/serialization/input.md - src/java.base/share/specs/serialization/output.md - src/java.base/share/specs/serialization/protocol.md - src/java.base/share/specs/serialization/security.md - src/java.base/share/specs/serialization/serial-arch.md - src/java.base/share/specs/serialization/version.md - src/java.desktop/share/specs/AWT_Native_Interface.html - src/java.management/share/specs/JVM-MANAGEMENT-MIB.mib Changeset: 78c003bd010f Author: dfuchs Date: 2017-06-09 16:52 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/78c003bd010f 8181867: [tests] Reorganize EchoHandlers Summary: This fix reorganize some test files and rename some test classes. Several classes named EchoHandler in the unnamed package are renamed to make it clear what classes (and sources) tests that use these EchoHandler implementations effectively depend on. Reviewed-by: chegar + test/com/sun/net/httpserver/EchoHandler.java ! test/com/sun/net/httpserver/FileServerHandler.java + test/com/sun/net/httpserver/SimpleFileServer.java + test/java/net/httpclient/HttpEchoHandler.java ! test/java/net/httpclient/LightWeightHttpServer.java ! test/java/net/httpclient/ManyRequests.java ! test/java/net/httpclient/ManyRequests2.java ! test/java/net/httpclient/RequestBodyTest.java ! test/java/net/httpclient/SmokeTest.java ! test/java/net/httpclient/http2/BasicTest.java ! test/java/net/httpclient/http2/ErrorTest.java ! test/java/net/httpclient/http2/FixedThreadPoolTest.java ! test/java/net/httpclient/http2/RedirectTest.java + test/java/net/httpclient/http2/server/Http2EchoHandler.java Changeset: 42f18c931bd4 Author: psandoz Date: 2017-06-09 11:26 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/42f18c931bd4 8181824: Broken javadoc link in java.util.BitSet Reviewed-by: martin ! src/java.base/share/classes/java/util/BitSet.java Changeset: c31ac0b8a60e Author: lana Date: 2017-06-15 17:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c31ac0b8a60e Added tag jdk-9+174 for changeset 42f18c931bd4 ! .hgtags Changeset: 7e00a8933b99 Author: lana Date: 2017-06-16 04:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/7e00a8933b99 Merge ! .hgtags - src/java.base/macosx/native/launcher/jexec.c ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/ClassLoader.java ! src/java.base/share/classes/java/util/concurrent/ConcurrentHashMap.java - src/java.base/share/classes/sun/security/ssl/EllipticCurvesExtension.java - src/java.base/share/classes/sun/security/ssl/RecordType.java - src/java.base/unix/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java - test/java/io/Serializable/class/NonSerialA_1.java - test/java/io/Serializable/class/NonSerialA_2.java - test/java/io/Serializable/class/SerialA.java - test/java/io/Serializable/class/SerialA_1.java - test/java/io/Serializable/class/SerialA_2.java - test/java/io/Serializable/class/SerialA_3.java - test/java/io/Serializable/class/Test.java - test/java/io/Serializable/class/run.sh - test/java/io/Serializable/evolution/AddedExternField/run.sh - test/java/io/Serializable/evolution/RenamePackage/run.sh - test/java/io/Serializable/maskSyntheticModifier/Test.java - test/java/io/Serializable/maskSyntheticModifier/run.sh - test/java/io/Serializable/packageAccess/Test.java - test/java/io/Serializable/packageAccess/run.sh - test/java/io/Serializable/resolveClass/consTest/Test.java - test/java/io/Serializable/resolveClass/consTest/run.sh - test/java/io/Serializable/resolveClass/deserializeButton/Test.java - test/java/io/Serializable/resolveClass/deserializeButton/run.sh - test/java/io/Serializable/serialver/classpath/Test.java - test/java/io/Serializable/serialver/classpath/run.sh - test/java/io/Serializable/serialver/nested/Test.java - test/java/io/Serializable/serialver/nested/run.sh - test/java/io/Serializable/subclass/Test.java - test/java/io/Serializable/subclass/run.sh - test/java/io/Serializable/superclassDataLoss/Test.java - test/java/io/Serializable/superclassDataLoss/run.sh - test/java/io/Serializable/unnamedPackageSwitch/Test.java - test/java/io/Serializable/unnamedPackageSwitch/run.sh - test/java/net/Socket/OldSocketImpl.sh - test/java/net/URL/B5086147.sh - test/java/net/URLClassLoader/B5077773.java - test/java/net/URLClassLoader/B5077773.sh - test/java/net/URLClassLoader/closetest/build.sh - test/java/net/URLClassLoader/closetest/build2.sh - test/java/net/URLClassLoader/getresourceasstream/test.sh - test/java/net/URLClassLoader/sealing/checksealed.sh - test/java/net/URLConnection/6212146/test.sh - test/java/net/URLConnection/UNCTest.sh ! test/java/net/httpclient/RequestBodyTest.java - test/java/nio/Buffer/LimitDirectMemory.sh - test/java/nio/channels/AsynchronousChannelGroup/Attack.java - test/java/nio/channels/AsynchronousChannelGroup/PrivilegedThreadFactory.java - test/java/nio/channels/AsynchronousChannelGroup/run_any_task.sh - test/java/nio/channels/DatagramChannel/NetworkConfiguration.java - test/java/nio/channels/Selector/lots_of_updates.sh - test/java/nio/channels/SocketChannel/Open.sh - test/java/nio/file/Files/delete_on_close.sh - test/java/nio/file/Files/walkFileTree/PrintFileTree.java - test/java/nio/file/Files/walkFileTree/find.sh - test/java/util/Arrays/ParallelPrefix.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorOfIntDataBuilder.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/CollectorOps.java - test/java/util/stream/bootlib/java.base/java/util/stream/DefaultMethodStreams.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/FlagDeclaringOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntermediateTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestHelpers.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestMode.java - test/java/util/stream/bootlib/java.base/java/util/stream/LoggingTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/OpTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatefulTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatelessTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamOpFlagTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestData.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestFlagExpectedOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/ThrowableHelper.java - test/java/util/stream/test/org/openjdk/tests/java/util/NullArgsTestCase.java - test/lib/testlibrary/CompilerUtils.java - test/lib/testlibrary/JavaToolUtils.java - test/lib/testlibrary/ModuleInfoMaker.java - test/lib/testlibrary/jdk/testlibrary/FileUtils.java - test/lib/testlibrary/jdk/testlibrary/FilterClassLoader.java - test/lib/testlibrary/jdk/testlibrary/IOUtils.java - test/lib/testlibrary/jdk/testlibrary/JarUtils.java - test/lib/testlibrary/jdk/testlibrary/LockFreeLogManager.java - test/lib/testlibrary/jdk/testlibrary/NetworkConfiguration.java - test/lib/testlibrary/jdk/testlibrary/ParentLastURLClassLoader.java - test/lib/testlibrary/jdk/testlibrary/SerializationUtils.java - test/lib/testlibrary/jdk/testlibrary/TimeLimitedRunner.java - test/lib/testlibrary/jdk/testlibrary/management/InputArguments.java - test/lib/testlibrary/jdk/testlibrary/management/ThreadMXBeanTool.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/CodeCacheOverflowProcessor.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/Helper.java - test/sun/net/InetAddress/nameservice/dns/cname.sh - test/sun/net/ftp/MarkResetTest.sh - test/sun/net/www/protocol/file/DirPermissionDenied.sh - test/sun/net/www/protocol/jar/B5105410.sh - test/sun/net/www/protocol/jar/copyin.sh - test/sun/net/www/protocol/jar/getcontenttype.sh - test/sun/net/www/protocol/jar/jarbug/run.sh - test/sun/net/www/protocol/jar/jarbug/src/test/RunAllTests.java - test/sun/net/www/protocol/jrt/other_resources.sh - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/base/versionResource - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v10/versionResource - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v9/versionResource Changeset: c0f1d48e3ffa Author: clanger Date: 2017-06-16 14:09 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c0f1d48e3ffa 8181417: Code cleanups in com.sun.jdi Reviewed-by: alanb, stuefe, sspitsyn ! src/jdk.jdi/share/classes/com/sun/jdi/AbsentInformationException.java ! src/jdk.jdi/share/classes/com/sun/jdi/ArrayType.java ! src/jdk.jdi/share/classes/com/sun/jdi/Bootstrap.java ! src/jdk.jdi/share/classes/com/sun/jdi/ClassNotLoadedException.java ! src/jdk.jdi/share/classes/com/sun/jdi/ClassNotPreparedException.java ! src/jdk.jdi/share/classes/com/sun/jdi/ClassType.java ! src/jdk.jdi/share/classes/com/sun/jdi/IncompatibleThreadStateException.java ! src/jdk.jdi/share/classes/com/sun/jdi/InconsistentDebugInfoException.java ! src/jdk.jdi/share/classes/com/sun/jdi/InterfaceType.java ! src/jdk.jdi/share/classes/com/sun/jdi/InternalException.java ! src/jdk.jdi/share/classes/com/sun/jdi/InvalidCodeIndexException.java ! src/jdk.jdi/share/classes/com/sun/jdi/InvalidLineNumberException.java ! src/jdk.jdi/share/classes/com/sun/jdi/InvalidModuleException.java ! src/jdk.jdi/share/classes/com/sun/jdi/InvalidStackFrameException.java ! src/jdk.jdi/share/classes/com/sun/jdi/InvalidTypeException.java ! src/jdk.jdi/share/classes/com/sun/jdi/InvocationException.java ! src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java ! src/jdk.jdi/share/classes/com/sun/jdi/Locatable.java ! src/jdk.jdi/share/classes/com/sun/jdi/Location.java ! src/jdk.jdi/share/classes/com/sun/jdi/Mirror.java ! src/jdk.jdi/share/classes/com/sun/jdi/ModuleReference.java ! src/jdk.jdi/share/classes/com/sun/jdi/NativeMethodException.java ! src/jdk.jdi/share/classes/com/sun/jdi/ObjectCollectedException.java ! src/jdk.jdi/share/classes/com/sun/jdi/ObjectReference.java ! src/jdk.jdi/share/classes/com/sun/jdi/PathSearchingVirtualMachine.java ! src/jdk.jdi/share/classes/com/sun/jdi/ReferenceType.java ! src/jdk.jdi/share/classes/com/sun/jdi/StackFrame.java ! src/jdk.jdi/share/classes/com/sun/jdi/StringReference.java ! src/jdk.jdi/share/classes/com/sun/jdi/ThreadReference.java ! src/jdk.jdi/share/classes/com/sun/jdi/VMCannotBeModifiedException.java ! src/jdk.jdi/share/classes/com/sun/jdi/VMDisconnectedException.java ! src/jdk.jdi/share/classes/com/sun/jdi/VMMismatchException.java ! src/jdk.jdi/share/classes/com/sun/jdi/VMOutOfMemoryException.java ! src/jdk.jdi/share/classes/com/sun/jdi/Value.java ! src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachine.java ! src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/AttachingConnector.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/Connector.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/IllegalConnectorArgumentsException.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/LaunchingConnector.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/ListeningConnector.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/Transport.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/TransportTimeoutException.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/VMStartException.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/ClosedConnectionException.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/Connection.java ! src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/TransportService.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/AccessWatchpointEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/BreakpointEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/ClassPrepareEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/ClassUnloadEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/Event.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/EventIterator.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/EventQueue.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/EventSet.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/ExceptionEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/LocatableEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/MethodEntryEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/MethodExitEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/ModificationWatchpointEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnterEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnteredEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitedEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/StepEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadDeathEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadStartEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/VMDeathEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/VMDisconnectEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/VMStartEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/event/WatchpointEvent.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/AccessWatchpointRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/BreakpointRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/ClassPrepareRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/ClassUnloadRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/DuplicateRequestException.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequestManager.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/ExceptionRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/InvalidRequestStateException.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/MethodEntryRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/MethodExitRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/ModificationWatchpointRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnterRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnteredRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitedRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/StepRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadDeathRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadStartRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/VMDeathRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/WatchpointRequest.java Changeset: 89535fe6d030 Author: xiaofeya Date: 2017-06-16 08:00 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/89535fe6d030 8182321: Mark java/lang/ProcessHandle/OnExitTest.java as intermittent Reviewed-by: rriggs ! test/java/lang/ProcessHandle/OnExitTest.java Changeset: 30aee270cdb9 Author: asmotrak Date: 2017-06-16 17:06 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/30aee270cdb9 8182388: Backout 8182143 Reviewed-by: xuelei ! src/java.base/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java ! test/javax/net/ssl/TLSv12/SignatureAlgorithms.java Changeset: a4afa05eac85 Author: lana Date: 2017-06-17 00:15 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a4afa05eac85 Added tag jdk-10+12 for changeset 5f504872a75b ! .hgtags Changeset: 8589556e5eb6 Author: amlu Date: 2017-06-19 09:27 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/8589556e5eb6 8181309: Refactor shell test AsynchronousChannelProvider/custom_provider.sh to java Reviewed-by: alanb ! test/java/nio/channels/spi/AsynchronousChannelProvider/CheckProvider.java ! test/java/nio/channels/spi/AsynchronousChannelProvider/Provider1.java ! test/java/nio/channels/spi/AsynchronousChannelProvider/Provider2.java - test/java/nio/channels/spi/AsynchronousChannelProvider/custom_provider.sh Changeset: f63d939ff236 Author: amlu Date: 2017-06-19 09:41 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f63d939ff236 8181395: Refactor locale related shell tests Charset/default.sh and CheckSJISMappingProp.sh to java Reviewed-by: alanb ! test/TEST.groups + test/java/nio/charset/Charset/DefaultCharsetTest.java - test/java/nio/charset/Charset/default.sh - test/java/nio/charset/coders/CheckSJISMappingProp.sh + test/java/nio/charset/coders/SJISMappingPropTest.java ! test/java/nio/charset/coders/SJISPropTest.java Changeset: a5a067dc9101 Author: mli Date: 2017-06-18 18:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a5a067dc9101 8181912: Refactor locale related shell test test/java/io/File/MacPathTest.sh to java test Reviewed-by: alanb, naoto, psandoz, xiaofeya + test/java/io/File/MacPath.java ! test/java/io/File/MacPathTest.java - test/java/io/File/MacPathTest.sh Changeset: dd7aebecf65f Author: amlu Date: 2017-06-19 15:48 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/dd7aebecf65f 8182421: Add @modules to java/nio/charset/coders/SJISMappingPropTest.java Reviewed-by: alanb ! test/java/nio/charset/coders/SJISMappingPropTest.java Changeset: f0ab9960bcfd Author: redestad Date: 2017-06-19 09:29 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f0ab9960bcfd 8181147: JNI_GetStringPlatformChars should have a fast path for UTF-8 8182451: Inconsistency between String.getBytes("Cp1252") and JNU_GetStringPlatformChars Reviewed-by: martin, erikj, sherman, chegar, mikael ! make/test/JtregNative.gmk ! src/java.base/share/classes/java/lang/String.java ! src/java.base/share/native/libjava/jni_util.c ! src/java.base/share/native/libjava/jni_util.h + test/java/lang/String/nativeEncoding/StringPlatformChars.java + test/java/lang/String/nativeEncoding/libstringPlatformChars.c Changeset: b0d1ada042b6 Author: stuefe Date: 2017-06-19 11:52 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/b0d1ada042b6 8181419: Race in jdwp invoker handling may lead to crashes or invalid results Reviewed-by: sspitsyn, sgehwolf, clanger ! src/jdk.jdwp.agent/share/native/libjdwp/invoker.c Changeset: 3f34f8fdd67f Author: jwilhelm Date: 2017-06-21 21:50 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/3f34f8fdd67f Merge ! make/launcher/Launcher-jdk.aot.gmk ! make/test/JtregNative.gmk ! src/java.base/share/native/libjli/java.c Changeset: d48a95113663 Author: redestad Date: 2017-06-22 15:53 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/d48a95113663 8182487: Add Unsafe.objectFieldOffset(Class, String) Reviewed-by: dsimms, twisti, bchristi, mgerdin, chegar, psandoz ! src/java.base/share/classes/java/io/File.java ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/ClassLoader.java ! src/java.base/share/classes/java/lang/invoke/CallSite.java ! src/java.base/share/classes/java/lang/invoke/MethodHandle.java ! src/java.base/share/classes/java/lang/invoke/MethodType.java ! src/java.base/share/classes/java/lang/invoke/VarHandle.java ! src/java.base/share/classes/java/lang/invoke/VarHandleByteArrayBase.java ! src/java.base/share/classes/java/math/BigDecimal.java ! src/java.base/share/classes/java/math/BigInteger.java ! src/java.base/share/classes/java/net/Inet6Address.java ! src/java.base/share/classes/java/net/InetAddress.java ! src/java.base/share/classes/java/net/InetSocketAddress.java ! src/java.base/share/classes/java/util/concurrent/ConcurrentHashMap.java ! src/java.base/share/classes/java/util/concurrent/ThreadLocalRandom.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicInteger.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicLong.java ! src/java.base/share/classes/java/util/concurrent/locks/LockSupport.java ! src/java.base/share/classes/jdk/internal/misc/InnocuousThread.java ! src/java.base/share/classes/jdk/internal/misc/Unsafe.java ! src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java Changeset: 228f0dc4d21a Author: phh Date: 2017-06-30 16:42 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/228f0dc4d21a 8182299: Enable disabled clang warnings, build on OSX 10 + Xcode 8 8182656: Make the required changes in GC code to build on OSX 10 + Xcode 8 8182657: Make the required changes in Runtime code to build on OSX 10 + Xcode 8 8182658: Make the required changes in Compiler code to build on OSX 10 + Xcode 8 Reviewed-by: jwilhelm, ehelin ! src/java.base/macosx/native/libjli/java_md_macosx.c ! src/java.desktop/macosx/native/libosxapp/NSApplicationAWT.m ! src/java.desktop/macosx/native/libsplashscreen/splashscreen_sys.m ! src/java.desktop/share/native/libjavajpeg/jdhuff.c ! src/java.desktop/share/native/libjavajpeg/jdphuff.c Changeset: 2f3b89d2883a Author: mli Date: 2017-06-19 18:02 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2f3b89d2883a 8181478: Refactor java/io shell tests to plain java tests Reviewed-by: alanb, psandoz ! test/java/io/File/Basic.java - test/java/io/File/basic.sh - test/java/io/FileOutputStream/FileOpen.sh - test/java/io/FileOutputStream/FileOpenNeg.java - test/java/io/FileOutputStream/FileOpenPos.java + test/java/io/FileOutputStream/FileOpenTest.java Changeset: 77ad59329987 Author: jjg Date: 2017-06-20 13:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/77ad59329987 8182611: extLink ignores text after first newline. Reviewed-by: ksrini ! make/src/classes/build/tools/taglet/ExtLink.java Changeset: 5e58a4d34a48 Author: amlu Date: 2017-06-21 10:30 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/5e58a4d34a48 8182376: Refactor shell test java/nio/file/Path/MacPathTest.sh to java Reviewed-by: alanb + test/java/nio/file/Path/MacPath.java ! test/java/nio/file/Path/MacPathTest.java - test/java/nio/file/Path/MacPathTest.sh Changeset: f82bc23b4ec2 Author: amlu Date: 2017-06-21 12:09 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f82bc23b4ec2 8181575: Refactor locale related shell test java/nio/charset/spi/basic.sh to java Reviewed-by: psandoz + test/java/nio/charset/spi/CharsetProviderBasicTest.java + test/java/nio/charset/spi/CharsetTest.java ! test/java/nio/charset/spi/FooProvider.java + test/java/nio/charset/spi/SetupJar.java - test/java/nio/charset/spi/Test.java - test/java/nio/charset/spi/basic.sh Changeset: 43583297dbbe Author: amlu Date: 2017-06-21 14:40 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/43583297dbbe 8182465: Refactor shell test java/nio/channels/spi/SelectorProvider/inheritedChannel/run_tests.sh to java Reviewed-by: alanb ! test/java/nio/channels/spi/SelectorProvider/inheritedChannel/CloseTest.java ! test/java/nio/channels/spi/SelectorProvider/inheritedChannel/EchoService.java ! test/java/nio/channels/spi/SelectorProvider/inheritedChannel/EchoTest.java + test/java/nio/channels/spi/SelectorProvider/inheritedChannel/InheritedChannelTest.java ! test/java/nio/channels/spi/SelectorProvider/inheritedChannel/Launcher.java ! test/java/nio/channels/spi/SelectorProvider/inheritedChannel/StateTest.java ! test/java/nio/channels/spi/SelectorProvider/inheritedChannel/StateTestService.java ! test/java/nio/channels/spi/SelectorProvider/inheritedChannel/Util.java - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/run_tests.sh Changeset: 46f0e039b36a Author: xiaofeya Date: 2017-06-20 23:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/46f0e039b36a 8182620: Problem list java/lang/String/nativeEncoding/StringPlatformChars.java for JDK-8182569 Reviewed-by: darcy ! test/ProblemList.txt Changeset: 4540d6376f3e Author: iignatyev Date: 2017-06-21 11:41 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4540d6376f3e 8182565: remove jdk.testlibrary.Utils::tryFindJvmPid and waitForJvmPid methods Reviewed-by: rriggs ! test/lib/testlibrary/jdk/testlibrary/Utils.java Changeset: 839cc492ef61 Author: uvangapally Date: 2017-06-22 11:53 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/839cc492ef61 8178508: Co-locate remaining MM tests Summary: converted Tonga test to JTREG and added an additional check for setUsageThreshold Reviewed-by: mchung, hb, iignatyev Contributed-by: ujwal.vangapally at oracle.com + test/java/lang/management/MemoryPoolMXBean/LargeHeapThresholdTest.java Changeset: 890d3db7a25d Author: coffeys Date: 2017-06-23 17:43 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/890d3db7a25d 8182672: Java 8u121 on Linux intermittently returns null for MAC address Reviewed-by: chegar, clanger, msheppar, vtewari ! src/java.base/unix/native/libnet/NetworkInterface.c + test/java/net/NetworkInterface/GetMacAddress.java Changeset: e8f3a872e69a Author: psandoz Date: 2017-06-12 14:30 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e8f3a872e69a 8181442: Deprecate sun.misc.Unsafe.defineClass Reviewed-by: shade, mchung ! src/jdk.unsupported/share/classes/sun/misc/Unsafe.java Changeset: 573efb47b310 Author: vinnie Date: 2017-06-13 13:31 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/573efb47b310 8181978: Keystore probing mechanism fails for large PKCS12 keystores Reviewed-by: mullan ! src/java.base/share/classes/sun/security/pkcs12/PKCS12KeyStore.java + test/sun/security/pkcs12/ProbeLargeKeystore.java Changeset: 9b69584ea554 Author: dl Date: 2017-06-13 09:13 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/9b69584ea554 8181104: Fix specs for updateAndGet and related methods Reviewed-by: martin, psandoz, dholmes, chegar ! src/java.base/share/classes/java/lang/invoke/VarHandle.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicInteger.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicIntegerArray.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicLong.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicLongArray.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicLongFieldUpdater.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicReference.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicReferenceArray.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java Changeset: 0ffdaa7668ad Author: mchung Date: 2017-06-13 10:44 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/0ffdaa7668ad 8182029: Make the top-level docs index.html to a HTML-level redirect to the API overview page Reviewed-by: alanb, erikj, ihse ! make/ModuleTools.gmk - make/src/classes/build/tools/docs/GenDocsBundlePage.java - make/src/classes/build/tools/docs/docs-bundle-page.html - make/src/classes/build/tools/docs/docs-module-groups.properties Changeset: 59902f12fb70 Author: bpb Date: 2017-06-13 13:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/59902f12fb70 6791812: (file spec) Incompatible File.lastModified() and setLastModified() for negative time Summary: Amend verbiage describing return value to explain negative values. Reviewed-by: rriggs, smarks ! src/java.base/share/classes/java/io/File.java Changeset: 6391a43c89ee Author: mchung Date: 2017-06-14 09:21 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6391a43c89ee 8182137: Missing permissions in deprivileged java.xml.bind and java.xml.ws modules Reviewed-by: alanb, mullan ! src/java.base/share/lib/security/default.policy Changeset: e43d0498a4ac Author: lancea Date: 2017-06-14 12:46 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e43d0498a4ac 8181832: Broken link in javax/sql/rowset/spi/package-summary.html Reviewed-by: alanb, mchung ! src/java.sql.rowset/share/classes/javax/sql/rowset/spi/package.html Changeset: 6b8f8ab175ff Author: lana Date: 2017-06-15 17:43 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6b8f8ab175ff Merge - make/src/classes/build/tools/docs/GenDocsBundlePage.java - make/src/classes/build/tools/docs/docs-bundle-page.html - make/src/classes/build/tools/docs/docs-module-groups.properties Changeset: 28d099962ee2 Author: mchung Date: 2017-06-15 11:54 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/28d099962ee2 8182032: Make java.compiler upgradeable Reviewed-by: alanb, erikj + test/jdk/modules/etc/UpgradeableModules.java ! test/jdk/modules/etc/VerifyModuleDelegation.java Changeset: dfeb383db3bb Author: herrick Date: 2017-06-15 15:03 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/dfeb383db3bb 8181821: Broken link in javadoc for JSObject.getWindow Reviewed-by: mchung ! src/jdk.jsobject/share/classes/netscape/javascript/JSObject.java Changeset: 82ed25c3cea9 Author: ksrini Date: 2017-06-15 14:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/82ed25c3cea9 8182185: Add Copyright notices to pack 200 spec Reviewed-by: mchung ! src/java.base/share/classes/java/util/jar/Pack200.java Changeset: e23c712e1d94 Author: poonam Date: 2017-06-16 22:10 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e23c712e1d94 8178536: OOM ERRORS + SERVICE-THREAD TAKES A PROCESSOR TO 100% Summary: Clear the pending OOM exception in SensorInfo::trigger() Reviewed-by: mchung, dcubed ! src/java.management/share/classes/sun/management/MemoryPoolImpl.java Changeset: bec8ca52804c Author: smarks Date: 2017-05-19 14:46 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/bec8ca52804c 8177788: migrate collections technotes/guides into java/util/doc-files Reviewed-by: mchung, bchristi, martin + src/java.base/share/classes/java/util/doc-files/coll-designfaq.html + src/java.base/share/classes/java/util/doc-files/coll-index.html + src/java.base/share/classes/java/util/doc-files/coll-overview.html + src/java.base/share/classes/java/util/doc-files/coll-reference.html ! src/java.base/share/classes/java/util/package-info.java Changeset: 6e591955c8a8 Author: serb Date: 2017-06-08 22:07 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6e591955c8a8 8180326: Update the tables in java.desktop to be HTML-5 friendly Reviewed-by: prr, azvegint ! src/java.desktop/share/classes/java/applet/AppletContext.java ! src/java.desktop/share/classes/java/awt/AWTKeyStroke.java ! src/java.desktop/share/classes/java/awt/AWTPermission.java ! src/java.desktop/share/classes/java/awt/AlphaComposite.java ! src/java.desktop/share/classes/java/awt/Component.java ! src/java.desktop/share/classes/java/awt/Container.java ! src/java.desktop/share/classes/java/awt/EventQueue.java ! src/java.desktop/share/classes/java/awt/GridBagLayout.java ! src/java.desktop/share/classes/java/awt/GridLayout.java ! src/java.desktop/share/classes/java/awt/KeyboardFocusManager.java ! src/java.desktop/share/classes/java/awt/Scrollbar.java ! src/java.desktop/share/classes/java/awt/SystemTray.java ! src/java.desktop/share/classes/java/awt/font/NumericShaper.java ! src/java.desktop/share/classes/java/awt/font/TextAttribute.java ! src/java.desktop/share/classes/java/awt/geom/Path2D.java ! src/java.desktop/share/classes/javax/print/DocFlavor.java ! src/java.desktop/share/classes/javax/print/attribute/standard/Chromaticity.java ! src/java.desktop/share/classes/javax/print/attribute/standard/Finishings.java ! src/java.desktop/share/classes/javax/print/attribute/standard/JobKOctets.java ! src/java.desktop/share/classes/javax/sound/midi/MidiSystem.java ! src/java.desktop/share/classes/javax/sound/sampled/AudioFormat.java ! src/java.desktop/share/classes/javax/sound/sampled/AudioPermission.java ! src/java.desktop/share/classes/javax/sound/sampled/AudioSystem.java ! src/java.desktop/share/classes/javax/sound/sampled/ReverbType.java ! src/java.desktop/share/classes/javax/swing/Action.java ! src/java.desktop/share/classes/javax/swing/BoxLayout.java ! src/java.desktop/share/classes/javax/swing/JFormattedTextField.java ! src/java.desktop/share/classes/javax/swing/JLayeredPane.java ! src/java.desktop/share/classes/javax/swing/JList.java ! src/java.desktop/share/classes/javax/swing/JOptionPane.java ! src/java.desktop/share/classes/javax/swing/JRootPane.java ! src/java.desktop/share/classes/javax/swing/JScrollPane.java ! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicListUI.java ! src/java.desktop/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java ! src/java.desktop/share/classes/javax/swing/plaf/metal/MetalTreeUI.java ! src/java.desktop/share/classes/javax/swing/text/JTextComponent.java ! src/java.desktop/share/classes/javax/swing/text/MaskFormatter.java ! src/java.desktop/share/classes/javax/swing/text/html/FormView.java ! src/java.desktop/share/classes/javax/swing/text/html/HTMLDocument.java ! src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/java.desktop/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java ! src/java.desktop/share/classes/javax/swing/undo/UndoManager.java Changeset: 415b0831244f Author: serb Date: 2017-06-13 02:27 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/415b0831244f 8181877: Cleanup of javadoc in javax.accessibility package Reviewed-by: prr ! src/java.desktop/share/classes/javax/accessibility/AccessibilityProvider.java ! src/java.desktop/share/classes/javax/accessibility/Accessible.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleAction.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleAttributeSequence.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleBundle.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleComponent.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleContext.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleEditableText.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleExtendedComponent.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleExtendedTable.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleExtendedText.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleHyperlink.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleHypertext.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleIcon.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleKeyBinding.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleRelation.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleRelationSet.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleResourceBundle.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleRole.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleSelection.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleState.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleStateSet.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleStreamable.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleTable.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleTableModelChange.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleText.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleTextSequence.java ! src/java.desktop/share/classes/javax/accessibility/AccessibleValue.java ! src/java.desktop/share/classes/javax/accessibility/package-info.java Changeset: 757b830688e3 Author: ddehaven Date: 2017-06-16 17:41 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/757b830688e3 Merge Changeset: bd582963beb7 Author: dl Date: 2017-06-16 19:50 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/bd582963beb7 8181334: add spec for Deque.addAll Reviewed-by: martin, psandoz, smarks, darcy ! src/java.base/share/classes/java/util/Deque.java Changeset: f8b19df2115a Author: alanb Date: 2017-06-16 09:20 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f8b19df2115a 8181087: Module system implementation refresh (6/2017) Reviewed-by: plevart, mchung Contributed-by: alan.bateman at oracle.com, alex.buckley at oracle.com ! make/mapfiles/libjava/mapfile-vers ! make/src/classes/build/tools/jigsaw/technology-summary.html ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/ClassLoader.java ! src/java.base/share/classes/java/lang/LayerInstantiationException.java ! src/java.base/share/classes/java/lang/Module.java ! src/java.base/share/classes/java/lang/ModuleLayer.java ! src/java.base/share/classes/java/lang/System.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/lang/module/Configuration.java ! src/java.base/share/classes/java/lang/module/ModuleFinder.java ! src/java.base/share/classes/java/lang/module/package-info.java ! src/java.base/share/classes/java/lang/reflect/AccessibleObject.java ! src/java.base/share/classes/java/util/ServiceConfigurationError.java ! src/java.base/share/classes/java/util/ServiceLoader.java ! src/java.base/share/classes/jdk/internal/loader/BuiltinClassLoader.java ! src/java.base/share/classes/jdk/internal/loader/Loader.java ! src/java.base/share/classes/jdk/internal/misc/JavaLangAccess.java ! src/java.base/share/classes/jdk/internal/module/IllegalAccessLogger.java + src/java.base/share/classes/jdk/internal/module/IllegalAccessMaps.java ! src/java.base/share/classes/jdk/internal/module/ModuleBootstrap.java ! src/java.base/share/classes/jdk/internal/module/ModulePath.java ! src/java.base/share/classes/jdk/internal/module/ModuleReferenceImpl.java ! src/java.base/share/classes/jdk/internal/module/Modules.java ! src/java.base/share/classes/jdk/internal/module/SystemModules.java + src/java.base/share/classes/jdk/internal/module/jdk8_packages.dat ! src/java.base/share/classes/sun/launcher/LauncherHelper.java ! src/java.base/share/classes/sun/launcher/resources/launcher.properties ! src/java.base/share/native/include/jvm.h ! src/java.base/share/native/libjava/Module.c + src/java.instrument/share/classes/java/lang/instrument/package-info.java - src/java.instrument/share/classes/java/lang/instrument/package.html ! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/SystemModulesPlugin.java ! test/ProblemList.txt ! test/java/lang/ModuleLayer/BasicLayerTest.java ! test/java/lang/ModuleLayer/LayerAndLoadersTest.java ! test/java/lang/ModuleLayer/LayerControllerTest.java ! test/java/lang/ModuleTests/AnnotationsTest.java ! test/java/lang/ModuleTests/BasicModuleTest.java ! test/java/lang/ModuleTests/annotation/Basic.java ! test/java/lang/instrument/RedefineModuleTest.java ! test/java/lang/module/AutomaticModulesTest.java ! test/java/lang/reflect/AccessibleObject/CanAccessTest.java ! test/java/lang/reflect/AccessibleObject/ModuleSetAccessibleTest.java ! test/java/lang/reflect/AccessibleObject/TrySetAccessibleTest.java ! test/java/util/ResourceBundle/modules/cache/CacheTest.java + test/java/util/ServiceLoader/BadProvidersTest.java + test/java/util/ServiceLoader/ModulesTest.java + test/java/util/ServiceLoader/NoInterferenceTest.java + test/java/util/ServiceLoader/ReloadTest.java + test/java/util/ServiceLoader/badfactories/badreturntype/ProviderFactory.java + test/java/util/ServiceLoader/badfactories/classnotpublic/ProviderFactory.java + test/java/util/ServiceLoader/badfactories/classnotpublic/Service.java + test/java/util/ServiceLoader/badfactories/methodnotpublic/ProviderFactory.java + test/java/util/ServiceLoader/badfactories/methodnotpublic/Service.java + test/java/util/ServiceLoader/badfactories/returnsnull/ProviderFactory.java + test/java/util/ServiceLoader/badfactories/returnsnull/Service.java + test/java/util/ServiceLoader/badfactories/throwsexception/ProviderFactory.java + test/java/util/ServiceLoader/badfactories/throwsexception/Service.java + test/java/util/ServiceLoader/badproviders/ctornotpublic/Provider.java + test/java/util/ServiceLoader/badproviders/ctornotpublic/Service.java + test/java/util/ServiceLoader/badproviders/notasubtype/Provider.java + test/java/util/ServiceLoader/badproviders/notpublic/Provider.java + test/java/util/ServiceLoader/badproviders/notpublic/Service.java + test/java/util/ServiceLoader/badproviders/throwsexception/Provider.java + test/java/util/ServiceLoader/badproviders/throwsexception/Service.java + test/java/util/ServiceLoader/classpath/pearscript/META-INF/services/javax.script.ScriptEngineFactory + test/java/util/ServiceLoader/classpath/pearscript/org/pear/PearScript.java + test/java/util/ServiceLoader/classpath/pearscript/org/pear/PearScriptEngineFactory.java + test/java/util/ServiceLoader/inheritance/NoInheritanceTest.java + test/java/util/ServiceLoader/inheritance/test/module-info.java + test/java/util/ServiceLoader/inheritance/test/p/Main.java - test/java/util/ServiceLoader/modules/BadProvidersTest.java - test/java/util/ServiceLoader/modules/Basic.java - test/java/util/ServiceLoader/modules/badfactories/badreturntype/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/classnotpublic/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/classnotpublic/Service.java - test/java/util/ServiceLoader/modules/badfactories/methodnotpublic/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/methodnotpublic/Service.java - test/java/util/ServiceLoader/modules/badfactories/returnsnull/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/returnsnull/Service.java - test/java/util/ServiceLoader/modules/badfactories/throwsexception/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/throwsexception/Service.java - test/java/util/ServiceLoader/modules/badproviders/ctornotpublic/Provider.java - test/java/util/ServiceLoader/modules/badproviders/ctornotpublic/Service.java - test/java/util/ServiceLoader/modules/badproviders/notasubtype/Provider.java - test/java/util/ServiceLoader/modules/badproviders/notpublic/Provider.java - test/java/util/ServiceLoader/modules/badproviders/notpublic/Service.java - test/java/util/ServiceLoader/modules/badproviders/throwsexception/Provider.java - test/java/util/ServiceLoader/modules/badproviders/throwsexception/Service.java + test/java/util/ServiceLoader/modules/bananascript/module-info.java + test/java/util/ServiceLoader/modules/bananascript/org/banana/BananaScript.java + test/java/util/ServiceLoader/modules/bananascript/org/banana/BananaScriptEngineFactory.java - test/java/util/ServiceLoader/modules/modules/bananascript/module-info.java - test/java/util/ServiceLoader/modules/modules/bananascript/org/banana/BananaScript.java - test/java/util/ServiceLoader/modules/modules/bananascript/org/banana/BananaScriptEngineFactory.java - test/java/util/ServiceLoader/modules/modules/test1/module-info.java - test/java/util/ServiceLoader/modules/modules/test1/p/ProviderFactory.java - test/java/util/ServiceLoader/modules/modules/test1/p/Service.java - test/java/util/ServiceLoader/modules/modules/test2/module-info.java - test/java/util/ServiceLoader/modules/modules/test2/p/Provider.java - test/java/util/ServiceLoader/modules/modules/test2/p/Service.java + test/java/util/ServiceLoader/modules/p1/module-info.java + test/java/util/ServiceLoader/modules/p1/q/P.java + test/java/util/ServiceLoader/modules/p2/module-info.java + test/java/util/ServiceLoader/modules/p2/q/P.java + test/java/util/ServiceLoader/modules/s1/module-info.java + test/java/util/ServiceLoader/modules/s1/p/S.java + test/java/util/ServiceLoader/modules/s2/module-info.java + test/java/util/ServiceLoader/modules/s2/p/S.java - test/java/util/ServiceLoader/modules/src/pearscript/META-INF/services/javax.script.ScriptEngineFactory - test/java/util/ServiceLoader/modules/src/pearscript/org/pear/PearScript.java - test/java/util/ServiceLoader/modules/src/pearscript/org/pear/PearScriptEngineFactory.java + test/java/util/ServiceLoader/modules/test1/module-info.java + test/java/util/ServiceLoader/modules/test1/p/ProviderFactory.java + test/java/util/ServiceLoader/modules/test1/p/Service.java + test/java/util/ServiceLoader/modules/test2/module-info.java + test/java/util/ServiceLoader/modules/test2/p/Provider.java + test/java/util/ServiceLoader/modules/test2/p/Service.java + test/java/util/ServiceLoader/nouses/NoUsesTest.java + test/java/util/ServiceLoader/nouses/test/module-info.java + test/java/util/ServiceLoader/nouses/test/p/Main.java + test/java/util/ServiceLoader/security/SecurityTest.java + test/java/util/ServiceLoader/security/test/module-info.java + test/java/util/ServiceLoader/security/test/p/Tests.java ! test/jdk/modules/open/Basic.java ! test/tools/launcher/modules/addexports/manifest/AddExportsAndOpensInManifest.java + test/tools/launcher/modules/illegalaccess/IllegalAccessTest.java + test/tools/launcher/modules/illegalaccess/TryAccess.java + test/tools/launcher/modules/illegalaccess/modules/m/module-info.java + test/tools/launcher/modules/illegalaccess/modules/m/p/Type.java + test/tools/launcher/modules/illegalaccess/patchsrc/java.base/java/lang/Helper.java + test/tools/launcher/modules/illegalaccess/upgradesrc/java.activation/javax/activation/MimeTypeParameterList.java + test/tools/launcher/modules/illegalaccess/upgradesrc/java.activation/module-info.java ! test/tools/launcher/modules/patch/systemmodules/src1/java.base/jdk/internal/modules/SystemModules.java - test/tools/launcher/modules/permit/AttemptAccess.java - test/tools/launcher/modules/permit/PermitIllegalAccess.java Changeset: 14c177bb4ea4 Author: alanb Date: 2017-06-17 08:03 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/14c177bb4ea4 Merge - src/java.instrument/share/classes/java/lang/instrument/package.html - test/java/util/ServiceLoader/modules/BadProvidersTest.java - test/java/util/ServiceLoader/modules/Basic.java - test/java/util/ServiceLoader/modules/badfactories/badreturntype/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/classnotpublic/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/classnotpublic/Service.java - test/java/util/ServiceLoader/modules/badfactories/methodnotpublic/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/methodnotpublic/Service.java - test/java/util/ServiceLoader/modules/badfactories/returnsnull/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/returnsnull/Service.java - test/java/util/ServiceLoader/modules/badfactories/throwsexception/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/throwsexception/Service.java - test/java/util/ServiceLoader/modules/badproviders/ctornotpublic/Provider.java - test/java/util/ServiceLoader/modules/badproviders/ctornotpublic/Service.java - test/java/util/ServiceLoader/modules/badproviders/notasubtype/Provider.java - test/java/util/ServiceLoader/modules/badproviders/notpublic/Provider.java - test/java/util/ServiceLoader/modules/badproviders/notpublic/Service.java - test/java/util/ServiceLoader/modules/badproviders/throwsexception/Provider.java - test/java/util/ServiceLoader/modules/badproviders/throwsexception/Service.java - test/java/util/ServiceLoader/modules/modules/bananascript/module-info.java - test/java/util/ServiceLoader/modules/modules/bananascript/org/banana/BananaScript.java - test/java/util/ServiceLoader/modules/modules/bananascript/org/banana/BananaScriptEngineFactory.java - test/java/util/ServiceLoader/modules/modules/test1/module-info.java - test/java/util/ServiceLoader/modules/modules/test1/p/ProviderFactory.java - test/java/util/ServiceLoader/modules/modules/test1/p/Service.java - test/java/util/ServiceLoader/modules/modules/test2/module-info.java - test/java/util/ServiceLoader/modules/modules/test2/p/Provider.java - test/java/util/ServiceLoader/modules/modules/test2/p/Service.java - test/java/util/ServiceLoader/modules/src/pearscript/META-INF/services/javax.script.ScriptEngineFactory - test/java/util/ServiceLoader/modules/src/pearscript/org/pear/PearScript.java - test/java/util/ServiceLoader/modules/src/pearscript/org/pear/PearScriptEngineFactory.java - test/tools/launcher/modules/permit/AttemptAccess.java - test/tools/launcher/modules/permit/PermitIllegalAccess.java Changeset: a59b6b3fc4dd Author: mchung Date: 2017-06-17 11:50 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a59b6b3fc4dd 8182416: Clean up module-info.java like move requires transitive adjacent to exports Reviewed-by: alanb ! src/java.base/share/classes/module-info.java ! src/java.datatransfer/share/classes/module-info.java ! src/java.desktop/share/classes/module-info.java ! src/java.logging/share/classes/module-info.java ! src/java.management.rmi/share/classes/module-info.java ! src/java.management/share/classes/module-info.java ! src/java.naming/share/classes/module-info.java ! src/java.prefs/share/classes/module-info.java ! src/java.rmi/share/classes/module-info.java ! src/java.scripting/share/classes/module-info.java ! src/java.se.ee/share/classes/module-info.java ! src/java.security.jgss/share/classes/module-info.java ! src/java.security.sasl/share/classes/module-info.java ! src/java.smartcardio/share/classes/module-info.java ! src/java.sql.rowset/share/classes/module-info.java ! src/java.sql/share/classes/module-info.java ! src/java.transaction/share/classes/module-info.java ! src/java.xml.crypto/share/classes/module-info.java ! src/jdk.accessibility/share/classes/module-info.java ! src/jdk.attach/share/classes/module-info.java ! src/jdk.charsets/share/classes/module-info.java ! src/jdk.crypto.cryptoki/share/classes/module-info.java ! src/jdk.editpad/share/classes/module-info.java ! src/jdk.httpserver/share/classes/module-info.java ! src/jdk.incubator.httpclient/share/classes/module-info.java ! src/jdk.internal.ed/share/classes/module-info.java ! src/jdk.internal.jvmstat/share/classes/module-info.java ! src/jdk.jartool/share/classes/module-info.java ! src/jdk.jconsole/share/classes/module-info.java ! src/jdk.jsobject/share/classes/module-info.java ! src/jdk.jstatd/share/classes/module-info.java ! src/jdk.naming.dns/share/classes/module-info.java ! src/jdk.naming.rmi/share/classes/module-info.java ! src/jdk.policytool/share/classes/module-info.java ! src/jdk.security.auth/share/classes/module-info.java ! src/jdk.security.jgss/share/classes/module-info.java ! src/jdk.unsupported/share/classes/module-info.java ! src/jdk.zipfs/share/classes/module-info.java Changeset: 875f8e460638 Author: serb Date: 2017-06-18 17:33 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/875f8e460638 8180889: Cleanup of javadoc in java.datatransfer module Reviewed-by: prr, azvegint ! src/java.datatransfer/share/classes/java/awt/datatransfer/Clipboard.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/ClipboardOwner.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/DataFlavor.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/FlavorEvent.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/FlavorListener.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/FlavorMap.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/FlavorTable.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/MimeType.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/MimeTypeParameterList.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/MimeTypeParseException.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/StringSelection.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/SystemFlavorMap.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/Transferable.java ! src/java.datatransfer/share/classes/java/awt/datatransfer/UnsupportedFlavorException.java ! src/java.datatransfer/share/classes/sun/datatransfer/DataFlavorUtil.java ! src/java.datatransfer/share/classes/sun/datatransfer/DesktopDatatransferService.java Changeset: 4fbcae493269 Author: aefimov Date: 2017-06-18 23:10 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/4fbcae493269 8176508: Update JAX-WS RI integration to latest version Reviewed-by: lancea, mchung, alanb, iris ! test/jdk/modules/etc/JdkQualifiedExportTest.java Changeset: 6a4875229b96 Author: serb Date: 2017-06-19 07:19 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6a4875229b96 8181894: java.desktop module documentation has links to technotes Reviewed-by: mchung ! src/java.desktop/share/classes/javax/imageio/spi/IIORegistry.java ! src/java.desktop/share/classes/javax/imageio/spi/ServiceRegistry.java ! src/java.desktop/share/classes/javax/print/StreamPrintServiceFactory.java ! src/java.desktop/share/classes/javax/print/package-info.java ! src/java.desktop/share/classes/javax/swing/filechooser/package-info.java Changeset: d0a0f9e3cf9f Author: mullan Date: 2017-06-19 08:16 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/d0a0f9e3cf9f 8181295: Document that SecurityManager::checkPackageAccess may be called by the VM Reviewed-by: mchung ! src/java.base/share/classes/java/lang/SecurityManager.java Changeset: 2cd9961940f9 Author: weijun Date: 2017-06-19 22:54 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2cd9961940f9 8182118: Package summary is missing in jdk.security.auth module Reviewed-by: mullan, mchung ! src/jdk.security.auth/share/classes/com/sun/security/auth/callback/package-info.java ! src/jdk.security.auth/share/classes/com/sun/security/auth/login/package-info.java ! src/jdk.security.auth/share/classes/com/sun/security/auth/module/package-info.java ! src/jdk.security.auth/share/classes/com/sun/security/auth/package-info.java ! src/jdk.security.auth/share/classes/module-info.java Changeset: fd2e6410fd7a Author: mchung Date: 2017-06-19 13:59 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/fd2e6410fd7a 8181834: Broken link in jdk.jdi module documentation Reviewed-by: sspitsyn ! src/jdk.jdi/share/classes/module-info.java Changeset: 6fcde0dd00b2 Author: alanb Date: 2017-06-20 15:22 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/6fcde0dd00b2 8182482: Module System spec updates Reviewed-by: darcy, mr, mchung Contributed-by: alex.buckley at oracle.com, alan.bateman at oracle.com ! src/java.base/share/classes/java/lang/module/package-info.java ! src/java.base/share/classes/java/util/ServiceLoader.java Changeset: 79db2bd40baf Author: mchung Date: 2017-06-20 08:42 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/79db2bd40baf 8182596: Fix broken links in com.sun.tools.attach.VirtualMachine Reviewed-by: alanb ! src/jdk.attach/share/classes/com/sun/tools/attach/VirtualMachine.java Changeset: 51f5d60713b5 Author: psandoz Date: 2017-06-20 08:52 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/51f5d60713b5 8182023: some java.util.jar docs contain links to technotes Reviewed-by: mchung Contributed-by: brent.christian at oracle.com, paul.sandoz at oracle.com ! src/java.base/share/classes/java/lang/ClassLoader.java ! src/java.base/share/classes/java/lang/Package.java ! src/java.base/share/classes/java/util/jar/Attributes.java ! src/java.base/share/classes/java/util/jar/Manifest.java ! src/java.base/share/classes/java/util/jar/package-info.java ! src/java.management/share/classes/javax/management/remote/JMXConnectorFactory.java ! src/java.management/share/classes/javax/management/remote/JMXConnectorServerFactory.java Changeset: b252dd92a359 Author: mullan Date: 2017-06-20 14:11 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/b252dd92a359 8182609: Update ECC license file Reviewed-by: mchung Contributed-by: jeannette.hung at oracle.com ! src/jdk.crypto.ec/share/legal/ecc.md Changeset: e6c4f6ef717d Author: wetmore Date: 2017-06-20 12:57 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e6c4f6ef717d 8178114: Fix guide links in security APIs Reviewed-by: xuelei, mullan, weijun ! src/java.base/share/classes/java/lang/SecurityManager.java ! src/java.base/share/classes/java/security/AlgorithmParameterGenerator.java ! src/java.base/share/classes/java/security/AlgorithmParameterGeneratorSpi.java ! src/java.base/share/classes/java/security/Key.java ! src/java.base/share/classes/java/security/KeyPairGenerator.java ! src/java.base/share/classes/java/security/KeyPairGeneratorSpi.java ! src/java.base/share/classes/java/security/Provider.java ! src/java.base/share/classes/java/security/Security.java ! src/java.base/share/classes/java/security/cert/CRL.java ! src/java.base/share/classes/java/security/cert/package-info.java ! src/java.base/share/classes/java/security/interfaces/package-info.java ! src/java.base/share/classes/java/security/package-info.java ! src/java.base/share/classes/java/security/spec/package-info.java ! src/java.base/share/classes/javax/crypto/Cipher.java ! src/java.base/share/classes/javax/crypto/EncryptedPrivateKeyInfo.java ! src/java.base/share/classes/javax/crypto/KeyGenerator.java ! src/java.base/share/classes/javax/crypto/KeyGeneratorSpi.java ! src/java.base/share/classes/javax/crypto/interfaces/package-info.java ! src/java.base/share/classes/javax/crypto/package-info.java ! src/java.base/share/classes/javax/crypto/spec/SecretKeySpec.java ! src/java.base/share/classes/javax/crypto/spec/package-info.java ! src/java.base/share/classes/javax/net/ssl/ExtendedSSLSession.java ! src/java.base/share/classes/javax/net/ssl/KeyManagerFactory.java ! src/java.base/share/classes/javax/net/ssl/SSLParameters.java ! src/java.base/share/classes/javax/net/ssl/TrustManagerFactory.java ! src/java.security.jgss/share/classes/javax/security/auth/kerberos/KerberosPrincipal.java ! src/java.security.jgss/share/classes/org/ietf/jgss/package.html ! src/java.security.sasl/share/classes/javax/security/sasl/Sasl.java ! src/java.security.sasl/share/classes/javax/security/sasl/package-info.java ! src/java.xml.crypto/share/classes/javax/xml/crypto/dsig/TransformService.java ! src/java.xml.crypto/share/classes/javax/xml/crypto/dsig/XMLSignatureFactory.java ! src/java.xml.crypto/share/classes/javax/xml/crypto/dsig/keyinfo/KeyInfoFactory.java Changeset: f3cf7fd26baa Author: lana Date: 2017-06-22 18:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f3cf7fd26baa Added tag jdk-9+175 for changeset e6c4f6ef717d ! .hgtags Changeset: a4efcc9f4fb9 Author: lana Date: 2017-06-23 23:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/a4efcc9f4fb9 Merge ! .hgtags - src/java.base/macosx/native/launcher/jexec.c ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/ClassLoader.java ! src/java.base/share/classes/java/lang/System.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/sun/launcher/LauncherHelper.java ! src/java.base/share/classes/sun/launcher/resources/launcher.properties - src/java.base/share/classes/sun/security/ssl/EllipticCurvesExtension.java - src/java.base/share/classes/sun/security/ssl/RecordType.java - src/java.base/unix/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java ! test/ProblemList.txt - test/java/io/File/MacPathTest.sh - test/java/io/File/basic.sh - test/java/io/FileOutputStream/FileOpen.sh - test/java/io/FileOutputStream/FileOpenNeg.java - test/java/io/FileOutputStream/FileOpenPos.java - test/java/io/Serializable/class/NonSerialA_1.java - test/java/io/Serializable/class/NonSerialA_2.java - test/java/io/Serializable/class/SerialA.java - test/java/io/Serializable/class/SerialA_1.java - test/java/io/Serializable/class/SerialA_2.java - test/java/io/Serializable/class/SerialA_3.java - test/java/io/Serializable/class/Test.java - test/java/io/Serializable/class/run.sh - test/java/io/Serializable/evolution/AddedExternField/run.sh - test/java/io/Serializable/evolution/RenamePackage/run.sh - test/java/io/Serializable/maskSyntheticModifier/Test.java - test/java/io/Serializable/maskSyntheticModifier/run.sh - test/java/io/Serializable/packageAccess/Test.java - test/java/io/Serializable/packageAccess/run.sh - test/java/io/Serializable/resolveClass/consTest/Test.java - test/java/io/Serializable/resolveClass/consTest/run.sh - test/java/io/Serializable/resolveClass/deserializeButton/Test.java - test/java/io/Serializable/resolveClass/deserializeButton/run.sh - test/java/io/Serializable/serialver/classpath/Test.java - test/java/io/Serializable/serialver/classpath/run.sh - test/java/io/Serializable/serialver/nested/Test.java - test/java/io/Serializable/serialver/nested/run.sh - test/java/io/Serializable/subclass/Test.java - test/java/io/Serializable/subclass/run.sh - test/java/io/Serializable/superclassDataLoss/Test.java - test/java/io/Serializable/superclassDataLoss/run.sh - test/java/io/Serializable/unnamedPackageSwitch/Test.java - test/java/io/Serializable/unnamedPackageSwitch/run.sh ! test/java/lang/ModuleLayer/LayerAndLoadersTest.java - test/java/net/Socket/OldSocketImpl.sh - test/java/net/URL/B5086147.sh - test/java/net/URLClassLoader/B5077773.java - test/java/net/URLClassLoader/B5077773.sh - test/java/net/URLClassLoader/closetest/build.sh - test/java/net/URLClassLoader/closetest/build2.sh - test/java/net/URLClassLoader/getresourceasstream/test.sh - test/java/net/URLClassLoader/sealing/checksealed.sh - test/java/net/URLConnection/6212146/test.sh - test/java/net/URLConnection/UNCTest.sh - test/java/nio/Buffer/LimitDirectMemory.sh - test/java/nio/channels/AsynchronousChannelGroup/Attack.java - test/java/nio/channels/AsynchronousChannelGroup/PrivilegedThreadFactory.java - test/java/nio/channels/AsynchronousChannelGroup/run_any_task.sh - test/java/nio/channels/DatagramChannel/NetworkConfiguration.java - test/java/nio/channels/Selector/lots_of_updates.sh - test/java/nio/channels/SocketChannel/Open.sh - test/java/nio/channels/spi/AsynchronousChannelProvider/custom_provider.sh - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/run_tests.sh - test/java/nio/charset/Charset/default.sh - test/java/nio/charset/coders/CheckSJISMappingProp.sh - test/java/nio/charset/spi/Test.java - test/java/nio/charset/spi/basic.sh - test/java/nio/file/Files/delete_on_close.sh - test/java/nio/file/Files/walkFileTree/PrintFileTree.java - test/java/nio/file/Files/walkFileTree/find.sh - test/java/nio/file/Path/MacPathTest.sh - test/java/util/Arrays/ParallelPrefix.java ! test/java/util/ResourceBundle/modules/cache/CacheTest.java ! test/java/util/ServiceLoader/BadProvidersTest.java ! test/java/util/ServiceLoader/NoInterferenceTest.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorOfIntDataBuilder.java - test/java/util/stream/bootlib/java.base/java/util/SpliteratorTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/CollectorOps.java - test/java/util/stream/bootlib/java.base/java/util/stream/DefaultMethodStreams.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/DoubleStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/FlagDeclaringOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/IntermediateTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestHelpers.java - test/java/util/stream/bootlib/java.base/java/util/stream/LambdaTestMode.java - test/java/util/stream/bootlib/java.base/java/util/stream/LoggingTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/LongStreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/OpTestCase.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatefulTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StatelessTestOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamOpFlagTestHelper.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestDataProvider.java - test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestScenario.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestData.java - test/java/util/stream/bootlib/java.base/java/util/stream/TestFlagExpectedOp.java - test/java/util/stream/bootlib/java.base/java/util/stream/ThrowableHelper.java - test/java/util/stream/test/org/openjdk/tests/java/util/NullArgsTestCase.java - test/lib/testlibrary/CompilerUtils.java - test/lib/testlibrary/JavaToolUtils.java - test/lib/testlibrary/ModuleInfoMaker.java - test/lib/testlibrary/jdk/testlibrary/FileUtils.java - test/lib/testlibrary/jdk/testlibrary/FilterClassLoader.java - test/lib/testlibrary/jdk/testlibrary/IOUtils.java - test/lib/testlibrary/jdk/testlibrary/JarUtils.java - test/lib/testlibrary/jdk/testlibrary/LockFreeLogManager.java - test/lib/testlibrary/jdk/testlibrary/NetworkConfiguration.java - test/lib/testlibrary/jdk/testlibrary/ParentLastURLClassLoader.java - test/lib/testlibrary/jdk/testlibrary/SerializationUtils.java - test/lib/testlibrary/jdk/testlibrary/TimeLimitedRunner.java - test/lib/testlibrary/jdk/testlibrary/management/InputArguments.java - test/lib/testlibrary/jdk/testlibrary/management/ThreadMXBeanTool.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/CodeCacheOverflowProcessor.java - test/lib/testlibrary/jsr292/com/oracle/testlibrary/jsr292/Helper.java - test/sun/net/InetAddress/nameservice/dns/cname.sh - test/sun/net/ftp/MarkResetTest.sh - test/sun/net/www/protocol/file/DirPermissionDenied.sh - test/sun/net/www/protocol/jar/B5105410.sh - test/sun/net/www/protocol/jar/copyin.sh - test/sun/net/www/protocol/jar/getcontenttype.sh - test/sun/net/www/protocol/jar/jarbug/run.sh - test/sun/net/www/protocol/jar/jarbug/src/test/RunAllTests.java - test/sun/net/www/protocol/jrt/other_resources.sh - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/base/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/base/versionResource - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v10/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v10/versionResource - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Helper.java - test/tools/jar/multiRelease/data/runtimetest/v9/testpackage/Main.java - test/tools/jar/multiRelease/data/runtimetest/v9/versionResource ! test/tools/launcher/modules/illegalaccess/IllegalAccessTest.java Changeset: d59cf7c393b3 Author: lana Date: 2017-06-24 02:59 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/d59cf7c393b3 Added tag jdk-10+13 for changeset 4540d6376f3e ! .hgtags Changeset: 9c96287c4ffd Author: rfield Date: 2017-06-25 13:35 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/9c96287c4ffd 8182854: jshell tool: rerun multiline snippet from history corrupts history (jdk part) Summary: jdk sub-repo part of fix for parent issue 8182489, test in parent commit (langtools) Reviewed-by: jlahoda ! src/jdk.internal.le/share/classes/jdk/internal/jline/extra/EditingHistory.java Changeset: b2baca7462d0 Author: xiaofeya Date: 2017-06-25 23:51 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/b2baca7462d0 8178699: Fail to send async requests if server doesn't response the first one Reviewed-by: dfuchs ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Exchange.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ExchangeImpl.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Exchange.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Request.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/RequestProcessors.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ResponseProcessors.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Stream.java ! test/java/net/httpclient/SmokeTest.java Changeset: 2a6422d32050 Author: iignatyev Date: 2017-06-27 08:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/2a6422d32050 8182154: merge jdk.testlibrary.Platform and jdk.test.lib.Platform Reviewed-by: sspitsyn, plevart ! test/java/awt/image/MultiResolutionImageTest.java ! test/java/awt/xembed/server/RunTestXEmbed.java ! test/java/lang/ClassLoader/LibraryPathProperty.java ! test/java/lang/System/OsVersionTest.java ! test/javax/management/remote/mandatory/notif/ListenerScaleTest.java ! test/javax/swing/plaf/windows/6921687/bug6921687.java ! test/lib/testlibrary/jdk/testlibrary/JDKToolFinder.java - test/lib/testlibrary/jdk/testlibrary/Platform.java ! test/sun/management/jmxremote/bootstrap/AbstractFilePermissionTest.java ! test/sun/management/jmxremote/bootstrap/PasswordFilePermissionTest.java ! test/sun/management/jmxremote/bootstrap/SSLConfigFilePermissionTest.java ! test/sun/tools/jstack/DeadlockDetectionTest.java Changeset: c150ee32ec89 Author: iris Date: 2017-06-28 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c150ee32ec89 8183142: Add bugids=dup to .jcheck/conf files for JDK 10 Reviewed-by: mr ! .jcheck/conf Changeset: f2ed4092e952 Author: darcy Date: 2017-06-28 17:23 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/f2ed4092e952 8183173: Add private constructors to Fdlibm-internal classes Reviewed-by: bpb ! src/java.base/share/classes/java/lang/FdLibm.java Changeset: 7cef1c3f1dbe Author: darcy Date: 2017-06-28 17:57 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/7cef1c3f1dbe 8183175: Add explicit constructors to MalformedParameterizedTypeException Reviewed-by: bpb ! src/java.base/share/classes/java/lang/reflect/MalformedParameterizedTypeException.java Changeset: b3918ac80748 Author: michaelm Date: 2017-06-29 11:10 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/b3918ac80748 8182589: TLS SNI in new Java 9 client is not available Reviewed-by: dfuchs ! src/java.base/share/classes/module-info.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/AsyncSSLConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/AsyncSSLDelegate.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpRequestImpl.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ResponseHeaders.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLDelegate.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLTunnelConnection.java ! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/common/Utils.java ! test/java/net/httpclient/http2/TLSConnection.java ! test/java/net/httpclient/http2/server/Http2TestServer.java ! test/java/net/httpclient/http2/server/Http2TestServerConnection.java Changeset: fabd68add4d0 Author: clanger Date: 2017-06-29 12:59 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/fabd68add4d0 8183012: Code cleanup in com.sun.tools.jdi Reviewed-by: sspitsyn, stuefe ! src/jdk.jdi/share/classes/com/sun/tools/jdi/AbstractLauncher.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ArrayReferenceImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ArrayTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/BaseLineInfo.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/BooleanTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/BooleanValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ByteTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ByteValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/CharTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/CharValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ClassLoaderReferenceImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ClassObjectReferenceImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ClassTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/CommandSender.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ConcreteMethodImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ConnectorImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/DoubleTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/DoubleValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/EventQueueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/EventRequestManagerImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/EventSetImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/FieldImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/FloatTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/FloatValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/GenericAttachingConnector.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/GenericListeningConnector.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/IntegerTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/IntegerValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/InterfaceTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/InternalEventHandler.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/InvokableTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/JDWPException.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/JNITypeParser.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/LineInfo.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/LocalVariableImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/LocationImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/LockObject.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/LongTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/LongValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/MethodImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/MirrorImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ModuleReferenceImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/MonitorInfoImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/NonConcreteMethodImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ObjectReferenceImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ObsoleteMethodImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/Packet.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/PacketStream.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/PrimitiveTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/PrimitiveValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ProcessAttachingConnector.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/RawCommandLineLauncher.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ReferenceTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/SDE.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ShortTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ShortValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/SocketAttachingConnector.java + src/jdk.jdi/share/classes/com/sun/tools/jdi/SocketConnection.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/SocketListeningConnector.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/SocketTransportService.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/StackFrameImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/StratumLineInfo.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/StringReferenceImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/SunCommandLineLauncher.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/TargetVM.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ThreadAction.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ThreadGroupReferenceImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ThreadReferenceImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/TypeComponentImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/TypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/VMAction.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/VMListener.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/VMModifiers.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/VMState.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ValueContainer.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/ValueImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/VirtualMachineManagerImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/VirtualMachineManagerService.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/VoidTypeImpl.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/VoidValueImpl.java Changeset: 9065d9d6c3e0 Author: bpb Date: 2017-06-29 13:40 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/9065d9d6c3e0 8182710: File.listRoots() always returns the root of CD drive Summary: Include only logical drives with an extant filesystem location Reviewed-by: clanger, rriggs, plevart, tvaleev ! src/java.base/windows/classes/java/io/WinNTFileSystem.java Changeset: 76ff72bb6a4a Author: xiaofeya Date: 2017-06-29 18:42 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/76ff72bb6a4a 8182975: Mark http2/BasicTest.java and FixedThreadPoolTest.java as intermittently failing Reviewed-by: rriggs ! test/java/net/httpclient/http2/BasicTest.java ! test/java/net/httpclient/http2/FixedThreadPoolTest.java Changeset: e48ebdce5b14 Author: rriggs Date: 2017-06-30 13:28 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e48ebdce5b14 8183019: Diagnostics for onExitTest Reviewed-by: clanger ! test/java/lang/ProcessHandle/OnExitTest.java Changeset: 7a2bc0a80087 Author: clanger Date: 2017-07-01 20:35 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/7a2bc0a80087 8182743: Ineffective use of volatile hurts performance of Charset.atBugLevel() Reviewed-by: clanger, redestad, plevart, coffeys Contributed-by: ogatak at jp.ibm.com ! src/java.base/share/classes/java/nio/charset/Charset-X-Coder.java.template ! src/java.base/share/classes/java/nio/charset/Charset.java ! test/java/nio/charset/Charset/EmptyCharsetName.java ! test/java/nio/charset/CharsetDecoder/AverageMax.java Changeset: e99004ee6f13 Author: naoto Date: 2017-07-03 12:54 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/e99004ee6f13 8160199: Language's script should be reflected in user.script on Mac OS X Reviewed-by: bchristi, sherman ! src/java.base/macosx/native/libjava/java_props_macosx.c ! src/java.base/macosx/native/libjava/java_props_macosx.h ! src/java.base/unix/native/libjava/locale_str.h Changeset: c59351ecfea3 Author: amlu Date: 2017-07-05 08:26 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/c59351ecfea3 8183531: Wrong @modules in test javax/net/ssl/ciphersuites/ECCurvesconstraints.java Reviewed-by: wetmore, xuelei ! test/javax/net/ssl/ciphersuites/ECCurvesconstraints.java Changeset: 92772660d9dc Author: amlu Date: 2017-07-05 08:30 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/92772660d9dc 8183512: Remove intermittent key from nio test Transfer4GBFile.java TransferTo6GBFile.java and StressLoopback.java Reviewed-by: alanb ! test/java/nio/channels/AsynchronousSocketChannel/StressLoopback.java ! test/java/nio/channels/FileChannel/Transfer4GBFile.java ! test/java/nio/channels/FileChannel/TransferTo6GBFile.java Changeset: 36746d41ce49 Author: xiaofeya Date: 2017-07-04 18:49 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/36746d41ce49 8183514: Remove intermittent key from httpclient test TimeoutOrdering and ErrorTest Reviewed-by: dfuchs ! test/java/net/httpclient/TimeoutOrdering.java ! test/java/net/httpclient/http2/ErrorTest.java Changeset: 9dcc29929c85 Author: alanb Date: 2017-07-05 13:30 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/9dcc29929c85 8183536: Update jdk tests to allow for unique test classes directory Reviewed-by: lancea ! test/java/lang/ModuleTests/AnnotationsTest.java ! test/java/lang/invoke/DefineClassTest.java ! test/java/lang/module/ConfigurationTest.java ! test/java/lang/module/customfs/ModulesInCustomFileSystem.java ! test/java/nio/channels/AsynchronousChannelGroup/SetupJar.java ! test/java/util/ServiceLoader/ModulesTest.java Changeset: bc66790be378 Author: kvn Date: 2017-07-05 18:22 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/bc66790be378 Merge - make/src/classes/build/tools/docs/GenDocsBundlePage.java - make/src/classes/build/tools/docs/docs-bundle-page.html - make/src/classes/build/tools/docs/docs-module-groups.properties ! src/java.base/share/classes/java/io/File.java ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/ClassLoader.java ! src/java.base/share/classes/java/lang/Module.java ! src/java.base/share/classes/java/lang/invoke/VarHandle.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicInteger.java ! src/java.base/share/classes/java/util/concurrent/atomic/AtomicLong.java ! src/java.desktop/share/classes/javax/accessibility/package-info.java ! src/java.desktop/share/classes/javax/print/package-info.java ! src/java.desktop/share/classes/javax/swing/filechooser/package-info.java - src/java.instrument/share/classes/java/lang/instrument/package.html - test/java/io/File/basic.sh - test/java/io/FileOutputStream/FileOpen.sh - test/java/io/FileOutputStream/FileOpenNeg.java - test/java/io/FileOutputStream/FileOpenPos.java - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/run_tests.sh - test/java/nio/charset/spi/Test.java - test/java/nio/charset/spi/basic.sh - test/java/nio/file/Path/MacPathTest.sh - test/java/util/ServiceLoader/modules/BadProvidersTest.java - test/java/util/ServiceLoader/modules/Basic.java - test/java/util/ServiceLoader/modules/badfactories/badreturntype/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/classnotpublic/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/classnotpublic/Service.java - test/java/util/ServiceLoader/modules/badfactories/methodnotpublic/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/methodnotpublic/Service.java - test/java/util/ServiceLoader/modules/badfactories/returnsnull/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/returnsnull/Service.java - test/java/util/ServiceLoader/modules/badfactories/throwsexception/ProviderFactory.java - test/java/util/ServiceLoader/modules/badfactories/throwsexception/Service.java - test/java/util/ServiceLoader/modules/badproviders/ctornotpublic/Provider.java - test/java/util/ServiceLoader/modules/badproviders/ctornotpublic/Service.java - test/java/util/ServiceLoader/modules/badproviders/notasubtype/Provider.java - test/java/util/ServiceLoader/modules/badproviders/notpublic/Provider.java - test/java/util/ServiceLoader/modules/badproviders/notpublic/Service.java - test/java/util/ServiceLoader/modules/badproviders/throwsexception/Provider.java - test/java/util/ServiceLoader/modules/badproviders/throwsexception/Service.java - test/java/util/ServiceLoader/modules/modules/bananascript/module-info.java - test/java/util/ServiceLoader/modules/modules/bananascript/org/banana/BananaScript.java - test/java/util/ServiceLoader/modules/modules/bananascript/org/banana/BananaScriptEngineFactory.java - test/java/util/ServiceLoader/modules/modules/test1/module-info.java - test/java/util/ServiceLoader/modules/modules/test1/p/ProviderFactory.java - test/java/util/ServiceLoader/modules/modules/test1/p/Service.java - test/java/util/ServiceLoader/modules/modules/test2/module-info.java - test/java/util/ServiceLoader/modules/modules/test2/p/Provider.java - test/java/util/ServiceLoader/modules/modules/test2/p/Service.java - test/java/util/ServiceLoader/modules/src/pearscript/META-INF/services/javax.script.ScriptEngineFactory - test/java/util/ServiceLoader/modules/src/pearscript/org/pear/PearScript.java - test/java/util/ServiceLoader/modules/src/pearscript/org/pear/PearScriptEngineFactory.java - test/lib/testlibrary/jdk/testlibrary/Platform.java - test/tools/launcher/modules/permit/AttemptAccess.java - test/tools/launcher/modules/permit/PermitIllegalAccess.java Changeset: 739b540ab924 Author: kvn Date: 2017-07-05 20:15 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/jdk/rev/739b540ab924 Merge From stanislav.smirnov at oracle.com Thu Jul 27 22:05:26 2017 From: stanislav.smirnov at oracle.com (stanislav.smirnov at oracle.com) Date: Thu, 27 Jul 2017 22:05:26 +0000 Subject: hg: valhalla/valhalla/hotspot: 331 new changesets Message-ID: <201707272205.v6RM5VF3028077@aojmv0008.oracle.com> Changeset: d8e357af49fa Author: hseigel Date: 2017-05-16 09:33 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d8e357af49fa 8178604: JVM does not allow defining boot loader modules in exploded build after module system initialization Summary: Allow defining of boot loader modules after initialization but add locks to synchronize access to exploded build list Reviewed-by: dholmes, lfoltan ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/classfile/modules.cpp Changeset: 5f99ef96e357 Author: coleenp Date: 2017-05-16 19:36 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5f99ef96e357 8180325: Use ClassLoaderData::classes_do for CDS classes Summary: Use closures and ClassLoaderData::classes_do instead of SystemDictionary::classes_do Reviewed-by: iklam, jiangli ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/memory/metaspaceShared.cpp ! src/share/vm/memory/metaspaceShared.hpp ! src/share/vm/oops/instanceKlass.cpp Changeset: fc8c54b03f82 Author: aph Date: 2017-05-11 13:11 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/fc8c54b03f82 8179954: AArch64: C1 and C2 volatile accesses are not sequentially consistent Reviewed-by: roland ! src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp ! src/cpu/aarch64/vm/templateTable_aarch64.cpp Changeset: 766249aa26cb Author: aph Date: 2017-05-16 18:33 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/766249aa26cb Merge Changeset: d793427a53ad Author: aph Date: 2017-05-17 12:29 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d793427a53ad Merge Changeset: 4d5a3c60886d Author: hseigel Date: 2017-05-17 07:55 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4d5a3c60886d 8152295: Redundant CLCs for classes resolved in both loaders Summary: Don't record loader constraints if both class loader classes are the same Reviewed-by: coleenp, vlivanov, gtriantafill, lfoltan ! src/share/vm/classfile/loaderConstraints.cpp Changeset: b44d34984f5a Author: redestad Date: 2017-05-17 11:41 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b44d34984f5a 8180423: Remove flag UseRelocIndex Reviewed-by: kvn, thartmann ! src/share/vm/asm/codeBuffer.cpp ! src/share/vm/code/codeBlob.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/relocInfo.cpp ! src/share/vm/code/relocInfo.hpp ! src/share/vm/runtime/globals.hpp Changeset: 85f2698e399d Author: redestad Date: 2017-05-17 12:13 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/85f2698e399d 8180479: [TESTBUG] Some hotspot tests broken after internal Unsafe name changes Reviewed-by: thartmann ! test/compiler/c2/cr8004867/TestIntUnsafeCAS.java ! test/compiler/profiling/UnsafeAccess.java Changeset: cfd190009b1a Author: redestad Date: 2017-05-17 12:20 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/cfd190009b1a Merge Changeset: 445d08e24553 Author: redestad Date: 2017-05-17 12:46 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/445d08e24553 Merge Changeset: eda288ccc872 Author: shade Date: 2017-05-17 23:18 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/eda288ccc872 8180482: Reformat -XX:+PrintSafepointStatistics table Reviewed-by: dholmes ! src/share/vm/runtime/safepoint.cpp Changeset: 85736adb8318 Author: rkennke Date: 2017-05-17 23:36 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/85736adb8318 8180175: ObjectSynchronizer only needs to iterate in-use monitors Summary: When using -XX:+MonitorInUseLists, then only iterate in-use monitors. Reviewed-by: zgu, dholmes, rehn ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/synchronizer.hpp ! src/share/vm/runtime/thread.cpp Changeset: b8b1c646f132 Author: coleenp Date: 2017-05-18 08:17 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b8b1c646f132 8166848: Performance bug: SystemDictionary - optimization Summary: Check instead that a bucket isn't 10x the average Reviewed-by: iklam, gziemski, sspitsyn ! src/share/vm/classfile/dictionary.cpp ! src/share/vm/classfile/dictionary.hpp ! src/share/vm/classfile/moduleEntry.cpp ! src/share/vm/classfile/packageEntry.cpp ! src/share/vm/classfile/protectionDomainCache.cpp ! src/share/vm/runtime/handles.hpp ! src/share/vm/utilities/hashtable.cpp ! src/share/vm/utilities/hashtable.hpp ! src/share/vm/utilities/hashtable.inline.hpp Changeset: fae0c4e970d0 Author: vkempik Date: 2017-05-18 08:14 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/fae0c4e970d0 8177522: -XX:OnOutOfMemoryError does not work if supplied twice on windows Summary: use cmd /c on windows to execute onError commands Reviewed-by: dholmes, hseigel ! src/os/windows/vm/os_windows.cpp ! src/share/vm/utilities/vmError.cpp ! test/runtime/ErrorHandling/TestOnOutOfMemoryError.java Changeset: cb2fce490729 Author: dbuck Date: 2017-05-18 13:17 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/cb2fce490729 Merge Changeset: 22ff239187e9 Author: zmajo Date: 2017-05-18 17:20 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/22ff239187e9 8180473: Use proper deallocation for FileBuff::_bigbuf Summary: Use the array-specific delete operator instead of the scalar delete operator. Reviewed-by: kvn ! src/share/vm/adlc/filebuff.cpp Changeset: 56cd142db169 Author: ysuenaga Date: 2017-05-18 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/56cd142db169 8180601: hsdis generates duplicate output for JVMCI installed code Summary: remove duplicated hsdis output Reviewed-by: dnsimon, kvn ! src/share/vm/jvmci/jvmciCodeInstaller.cpp Changeset: fc10f7e475c9 Author: epavlova Date: 2017-05-18 14:33 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/fc10f7e475c9 8180324: [JVMCI][TESTBUG] failed JVMCI junit test NativeCallTest.java Reviewed-by: iignatyev, mseledtsov, kvn ! test/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/NativeCallTest.java ! test/runtime/noClassDefFoundMsg/NoClassDefFoundMsg.java ! test/serviceability/jvmti/GetModulesInfo/JvmtiGetAllModulesTest.java Changeset: 1489bd995826 Author: ysuenaga Date: 2017-05-18 16:31 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1489bd995826 8180487: HotSpotResolvedJavaMethod.setNotInlineable() should be renamed to represent actual behavior Summary: rename setNotInlineable() to setNotInlineableOrCompileable() Reviewed-by: dnsimon, kvn ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/CompilerToVM.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedJavaMethod.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedJavaMethodImpl.java ! src/share/vm/jvmci/jvmciCompilerToVM.cpp ! test/compiler/jvmci/common/patches/jdk.internal.vm.ci/jdk/vm/ci/hotspot/CompilerToVMHelper.java ! test/compiler/jvmci/compilerToVM/DoNotInlineOrCompileTest.java Changeset: df5b8616a154 Author: thartmann Date: 2017-05-19 08:36 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/df5b8616a154 8180587: Assert in layout_helper_log2_element_size(jint) compares bits instead of bytes Summary: Fixed assert to compare log2 element size in bytes. Reviewed-by: zmajo, kvn ! src/share/vm/oops/klass.hpp Changeset: 094298f42cc7 Author: thartmann Date: 2017-05-19 06:50 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/094298f42cc7 Merge Changeset: e006ef516938 Author: rkennke Date: 2017-05-19 12:14 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e006ef516938 8180599: Possibly miss to iterate monitors on thread exit Summary: Move thread-local monitors to global lists before thread is removed from global threads list, to ensure all monitors get scanned Reviewed-by: dholmes, rehn ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/thread.cpp Changeset: ed5be7d0a965 Author: kvn Date: 2017-05-22 09:07 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ed5be7d0a965 8180654: Apply UL to PrintCodeCacheOnCompilation Reviewed-by: kvn Contributed-by: chihiro.ito at oracle.com ! src/share/vm/compiler/compileBroker.cpp Changeset: 8a0339df658b Author: goetz Date: 2017-04-28 14:34 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/8a0339df658b 8179618: Fixes for range of OptoLoopAlignment and Inlining flags Summary: OptoLoopAlignment must be multiple of NOP size. Inlining flags must not exceed WarmCallInfo::MAX_VALUE(). Reviewed-by: kvn, stuefe ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/runtime/commandLineFlagConstraintsCompiler.cpp Changeset: de34bab8ec05 Author: goetz Date: 2017-05-09 16:48 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/de34bab8ec05 8179953: [ppc] TLABWasteIncrement not loaded correctly Summary: Also fix TestOptionWithRanges to show the bug. Reviewed-by: dholmes, shade ! src/cpu/ppc/vm/templateTable_ppc_64.cpp ! test/runtime/CommandLine/OptionsValidation/common/optionsvalidation/JVMOption.java ! test/runtime/CommandLine/OptionsValidation/common/optionsvalidation/JVMOptionsUtils.java Changeset: 830c73c1bd96 Author: ihse Date: 2017-05-11 09:00 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/830c73c1bd96 8174848: Remove gpl templates from hotspot/make Reviewed-by: erikj - make/templates/gpl-cp-header - make/templates/gpl-header Changeset: cab132bfdaec Author: lana Date: 2017-05-11 18:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/cab132bfdaec Merge - make/templates/gpl-cp-header - make/templates/gpl-header Changeset: bffc9b76c590 Author: iignatyev Date: 2017-05-11 14:03 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/bffc9b76c590 8180037: move jdk.test.lib.InMemoryJavaCompiler to a separate package Reviewed-by: mseledtsov, vlivanov ! test/gc/metaspace/TestMetaspacePerfCounters.java ! test/runtime/BadObjectClass/BootstrapRedefine.java ! test/runtime/RedefineTests/ModifyAnonymous.java ! test/runtime/Unsafe/DefineClass.java ! test/runtime/Unsafe/NestedUnsafe.java ! test/runtime/defineAnonClass/NestedUnsafe.java ! test/runtime/defineAnonClass/NestedUnsafe2.java ! test/runtime/getSysPackage/GetSysPkgTest.java ! test/runtime/modules/ModuleStress/ModuleStress.java ! test/runtime/modules/PatchModule/PatchModule2Dirs.java ! test/runtime/modules/PatchModule/PatchModuleCDS.java ! test/runtime/modules/PatchModule/PatchModuleClassList.java ! test/runtime/modules/PatchModule/PatchModuleJavaBase.java ! test/runtime/modules/PatchModule/PatchModuleTest.java ! test/runtime/modules/PatchModule/PatchModuleTestJar.java ! test/runtime/modules/PatchModule/PatchModuleTestJarDir.java ! test/runtime/modules/PatchModule/PatchModuleTraceCL.java ! test/runtime/modules/Visibility/PatchModuleVisibility.java ! test/runtime/modules/Visibility/XbootcpNoVisibility.java ! test/runtime/modules/Visibility/XbootcpVisibility.java Changeset: 434139d1c85b Author: iignatyev Date: 2017-05-11 14:13 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/434139d1c85b 8180004: jdk.test.lib.DynamicVMOption should be moved to jdk.test.lib.management Reviewed-by: mseledtsov, vlivanov ! test/gc/arguments/TestDynMaxHeapFreeRatio.java ! test/gc/arguments/TestDynMinHeapFreeRatio.java ! test/gc/parallel/TestDynShrinkHeap.java ! test/runtime/CommandLine/OptionsValidation/TestJcmdOutput.java ! test/runtime/CommandLine/OptionsValidation/common/optionsvalidation/JVMOption.java ! test/runtime/CommandLine/VMOptionsFile/TestVMOptionsFile.java Changeset: d6d7e5caf497 Author: tschatzl Date: 2017-05-15 12:20 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d6d7e5caf497 8180048: Interned string and symbol table leak memory during parallel unlinking Summary: Make appending found dead BasicHashtableEntrys to the free list atomic. Reviewed-by: ehelin, shade, coleenp ! 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/runtime/vmStructs.cpp ! src/share/vm/utilities/hashtable.cpp ! src/share/vm/utilities/hashtable.hpp Changeset: 38a240fd58a2 Author: aph Date: 2017-05-11 13:11 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/38a240fd58a2 8179954: AArch64: C1 and C2 volatile accesses are not sequentially consistent Reviewed-by: roland ! src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp ! src/cpu/aarch64/vm/templateTable_aarch64.cpp Changeset: b3ee8ab233ed Author: lana Date: 2017-05-18 14:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b3ee8ab233ed Added tag jdk-9+170 for changeset 38a240fd58a2 ! .hgtags Changeset: 965e2378799f Author: lana Date: 2017-05-19 04:18 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/965e2378799f Merge ! .hgtags ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/utilities/hashtable.hpp - test/gc/arguments/TestExplicitGCInvokesConcurrentAndUnloadsClasses.java - test/gc/startup_warnings/TestDefNewCMS.java - test/gc/startup_warnings/TestParNewCMS.java - test/gc/startup_warnings/TestParNewSerialOld.java - test/gc/startup_warnings/TestUseAutoGCSelectPolicy.java - test/runtime/NMT/AutoshutdownNMT.java Changeset: 62553cb118f2 Author: jwilhelm Date: 2017-05-23 17:51 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/62553cb118f2 Merge - make/lib/Lib-jdk.aot.gmk - src/cpu/aarch64/vm/metaspaceShared_aarch64.cpp ! src/cpu/aarch64/vm/templateTable_aarch64.cpp - src/cpu/arm/vm/metaspaceShared_arm.cpp - src/cpu/ppc/vm/metaspaceShared_ppc.cpp - src/cpu/s390/vm/metaspaceShared_s390.cpp - src/cpu/sparc/vm/metaspaceShared_sparc.cpp - src/cpu/x86/vm/metaspaceShared_x86_32.cpp - src/cpu/x86/vm/metaspaceShared_x86_64.cpp - src/cpu/zero/vm/metaspaceShared_zero.cpp - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFSymbol.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFRelocation.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFTargetInfo.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNILibELFAPI.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/Pointer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/UnsafeAccess.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/linux/Elf_Cmd.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/sunos/Elf_Cmd.java - src/jdk.aot/unix/native/libjelfshim/jdk_tools_jaotc_jnilibelf_JNILibELFAPI.c - src/jdk.aot/unix/native/libjelfshim/shim_functions.c - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/CollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/DefaultCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/AllocationInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/IsMethodInlineDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/LockInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/RootNameDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/TinyInstrumentor.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/NumUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/PermanentBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/RetryableBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/CollectionsFactory.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LinkedIdentityHashMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LocationIdentity.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArrayMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArraySet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationLoadFieldConstantFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardEliminationCornerCasesTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/inlining/RecursiveInliningTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/DefaultNodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeNodeMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArchHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCDeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCUncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorld.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorldOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompressEncoding.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/PrintStreamOption.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/CompressionNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DeoptimizationFetchUnrollInfoCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DirectCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/EnterUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveCurrentStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveDeoptimizedStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/PushInterpreterFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SaveAllRegistersNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetAnchorNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetLocationProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/UncommonTrapCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/NarrowOopStamp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/FastSSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilderBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIConstructionPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIVerifier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationBeginNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationEndNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationInliningCallback.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/IsMethodInlinedNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/MonitorProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/RootNameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeLoadNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/CompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LoweredCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/DefaultNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/NodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/PiPushable.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/NestedBooleanOptionValueTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/TestOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/DerivedOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/EnumOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/NestedBooleanOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/StableOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/DominatorConditionalEliminationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/OptimizeGuardAnchorsPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/PushThroughPiPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ValueAnchorCleanupPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/ExtractInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/HighTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/InlineInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/MidTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/IntegerMulExactFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/InlineGraalDirectivesPlugin.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/WordOperationPlugin.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/DirectObjectStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/Salver.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverDebugConfigCustomizer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataDict.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataList.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractGraalDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractMethodScopeDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractSerializerDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/Dumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/GraphDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractGraalDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/DumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/GraphDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/package-info.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/AbstractSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/JSONSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/Serializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/ECIDUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/MethodContext.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/ChannelDumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/DumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicUnsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/ComparableWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Pointer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Signed.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Unsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/UnsignedUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/nodes/WordCastNode.java ! src/share/vm/classfile/stringTable.cpp ! src/share/vm/classfile/stringTable.hpp ! src/share/vm/runtime/vmStructs.cpp - src/share/vm/utilities/array.hpp ! src/share/vm/utilities/hashtable.cpp ! src/share/vm/utilities/hashtable.hpp - test/compiler/aot/jdk.tools.jaotc.jnilibelf.test/src/jdk/tools/jaotc/jnilibelf/test/JNILibELFTest.java - test/gc/stress/TestGCOld.java ! test/runtime/CommandLine/OptionsValidation/common/optionsvalidation/JVMOption.java - test/runtime/SharedArchiveFile/CDSTestUtils.java - test/runtime/modules/JVMGetModuleByPkgName.java ! test/runtime/modules/PatchModule/PatchModuleTraceCL.java + test/runtime/noClassDefFoundMsg/NoClassDefFoundMsg.java Changeset: 82d4003d20b2 Author: zgu Date: 2017-05-23 11:58 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/82d4003d20b2 8139673: NMT stack traces in output should show mtcomponent Summary: Show memory types of malloc site in detail report Reviewed-by: dholmes, shade, coleenp Contributed-by: max.ockner at oracle.com, zgu at redhat.com ! src/share/vm/services/mallocSiteTable.cpp ! src/share/vm/services/mallocSiteTable.hpp ! src/share/vm/services/mallocTracker.cpp ! src/share/vm/services/mallocTracker.hpp ! src/share/vm/services/memReporter.cpp ! src/share/vm/services/memReporter.hpp Changeset: d915adc43513 Author: coleenp Date: 2017-05-23 18:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d915adc43513 Merge - make/templates/gpl-cp-header - make/templates/gpl-header Changeset: d7060dc18f46 Author: mseledtsov Date: 2017-05-23 20:14 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d7060dc18f46 8180631: [TESTBUG] CDS tests should use CDSTestUtils.executeAndLog whenever spawning sub processes Summary: Updated all relevant call sites to use executeAndLog() Reviewed-by: iklam, ccheung ! test/runtime/SharedArchiveFile/DumpSymbolAndStringTable.java ! test/runtime/SharedArchiveFile/LargeSharedSpace.java ! test/runtime/SharedArchiveFile/LimitSharedSizes.java ! test/runtime/SharedArchiveFile/MaxMetaspaceSize.java ! test/runtime/SharedArchiveFile/SASymbolTableTest.java Changeset: 56d2166223f6 Author: redestad Date: 2017-05-24 12:42 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/56d2166223f6 8180763: Improve inlining of Symbol::equals(char*,int) into CompactHashtable Reviewed-by: iklam, jiangli ! src/share/vm/oops/symbol.cpp ! src/share/vm/oops/symbol.hpp Changeset: 65e24e3eedb1 Author: lana Date: 2017-05-23 21:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/65e24e3eedb1 Added tag jdk-10+7 for changeset 9d4746eca95a ! .hgtags Changeset: 233647e3d380 Author: lana Date: 2017-05-23 22:38 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/233647e3d380 Added tag jdk-10+8 for changeset f5ded0cf954c ! .hgtags Changeset: 407b7be4c065 Author: jwilhelm Date: 2017-05-24 22:27 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/407b7be4c065 Merge - make/lib/Lib-jdk.aot.gmk - src/cpu/aarch64/vm/metaspaceShared_aarch64.cpp - src/cpu/arm/vm/metaspaceShared_arm.cpp - src/cpu/ppc/vm/metaspaceShared_ppc.cpp - src/cpu/s390/vm/metaspaceShared_s390.cpp - src/cpu/sparc/vm/metaspaceShared_sparc.cpp - src/cpu/x86/vm/metaspaceShared_x86_32.cpp - src/cpu/x86/vm/metaspaceShared_x86_64.cpp - src/cpu/zero/vm/metaspaceShared_zero.cpp - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFSymbol.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFRelocation.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFTargetInfo.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNILibELFAPI.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/Pointer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/UnsafeAccess.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/linux/Elf_Cmd.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/sunos/Elf_Cmd.java - src/jdk.aot/unix/native/libjelfshim/jdk_tools_jaotc_jnilibelf_JNILibELFAPI.c - src/jdk.aot/unix/native/libjelfshim/shim_functions.c - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/CollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/DefaultCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/AllocationInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/IsMethodInlineDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/LockInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/RootNameDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/TinyInstrumentor.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/NumUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/PermanentBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/RetryableBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/CollectionsFactory.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LinkedIdentityHashMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LocationIdentity.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArrayMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArraySet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationLoadFieldConstantFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardEliminationCornerCasesTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/inlining/RecursiveInliningTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/DefaultNodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeNodeMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArchHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCDeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCUncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorld.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorldOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompressEncoding.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/PrintStreamOption.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/CompressionNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DeoptimizationFetchUnrollInfoCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DirectCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/EnterUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveCurrentStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveDeoptimizedStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/PushInterpreterFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SaveAllRegistersNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetAnchorNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetLocationProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/UncommonTrapCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/NarrowOopStamp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/FastSSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilderBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIConstructionPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIVerifier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationBeginNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationEndNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationInliningCallback.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/IsMethodInlinedNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/MonitorProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/RootNameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeLoadNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/CompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LoweredCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/DefaultNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/NodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/PiPushable.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/NestedBooleanOptionValueTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/TestOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/DerivedOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/EnumOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/NestedBooleanOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/StableOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/DominatorConditionalEliminationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/OptimizeGuardAnchorsPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/PushThroughPiPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ValueAnchorCleanupPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/ExtractInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/HighTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/InlineInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/MidTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/IntegerMulExactFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/InlineGraalDirectivesPlugin.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/WordOperationPlugin.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/DirectObjectStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/Salver.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverDebugConfigCustomizer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataDict.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataList.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractGraalDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractMethodScopeDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractSerializerDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/Dumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/GraphDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractGraalDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/DumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/GraphDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/package-info.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/AbstractSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/JSONSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/Serializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/ECIDUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/MethodContext.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/ChannelDumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/DumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicUnsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/ComparableWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Pointer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Signed.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Unsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/UnsignedUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/nodes/WordCastNode.java - src/share/vm/utilities/array.hpp - test/compiler/aot/jdk.tools.jaotc.jnilibelf.test/src/jdk/tools/jaotc/jnilibelf/test/JNILibELFTest.java - test/gc/stress/TestGCOld.java - test/runtime/SharedArchiveFile/CDSTestUtils.java - test/runtime/modules/JVMGetModuleByPkgName.java Changeset: f016b42568be Author: lucy Date: 2017-05-24 17:30 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f016b42568be 8180612: [ppc] assert failure in cpu/ppc/vm/assembler_ppc.hpp due to immediate value out of range Summary: change RTM flags type to 'int' and set value range Reviewed-by: simonis, kvn ! src/cpu/ppc/vm/globals_ppc.hpp ! src/cpu/ppc/vm/macroAssembler_ppc.cpp ! src/cpu/x86/vm/globals_x86.hpp ! src/cpu/x86/vm/macroAssembler_x86.cpp Changeset: 4c0e33beec05 Author: rehn Date: 2017-05-25 09:38 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4c0e33beec05 8152953: ForceSafepoint operations should be more specific Reviewed-by: dholmes, sspitsyn, rkennke, coleenp ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/code/icBuffer.cpp ! src/share/vm/prims/jvmtiEnv.cpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vm_operations.hpp Changeset: 21544e040ea4 Author: rehn Date: 2017-05-25 09:43 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/21544e040ea4 8152955: Many safepoints of "no vm operation" kind Reviewed-by: dholmes, rkennke, shade ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/vmThread.cpp ! src/share/vm/runtime/vmThread.hpp Changeset: 792941939a5f Author: iveresov Date: 2017-05-25 15:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/792941939a5f 8181115: Update suite.py after JDK-8180267 Reviewed-by: kvn ! src/jdk.internal.vm.compiler/.mx.graal/suite.py Changeset: d7aac8ef2b1b Author: iveresov Date: 2017-05-25 22:33 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d7aac8ef2b1b Merge - make/templates/gpl-cp-header - make/templates/gpl-header Changeset: 788f332052f4 Author: redestad Date: 2017-05-26 01:04 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/788f332052f4 8180614: Skip range and constraint checks on non-existent flags Reviewed-by: iklam, gziemski ! src/share/vm/runtime/commandLineFlagConstraintList.cpp ! src/share/vm/runtime/commandLineFlagConstraintList.hpp ! src/share/vm/runtime/commandLineFlagRangeList.cpp ! src/share/vm/runtime/commandLineFlagRangeList.hpp Changeset: a66dbca00de6 Author: redestad Date: 2017-05-25 23:20 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a66dbca00de6 Merge Changeset: 9d329d9f85c7 Author: mbaesken Date: 2017-05-25 20:55 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9d329d9f85c7 8180945: vmError.cpp : adjust dup and fclose Reviewed-by: dholmes ! src/share/vm/utilities/vmError.cpp Changeset: 853247754844 Author: tschatzl Date: 2017-05-26 13:46 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/853247754844 8180755: Remove use of bitMap.inline.hpp include from instanceKlass.hpp and c1_ValueSet.hpp Reviewed-by: ehelin, coleenp, dholmes ! src/share/vm/c1/c1_Compiler.cpp ! src/share/vm/c1/c1_Optimizer.cpp ! src/share/vm/c1/c1_ValueMap.cpp ! src/share/vm/c1/c1_ValueSet.hpp + src/share/vm/c1/c1_ValueSet.inline.hpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.inline.hpp ! src/share/vm/gc/g1/g1ConcurrentMark.inline.hpp ! src/share/vm/gc/parallel/parMarkBitMap.cpp ! src/share/vm/gc/parallel/parMarkBitMap.hpp + src/share/vm/gc/parallel/parMarkBitMap.inline.hpp ! src/share/vm/gc/parallel/parallelScavengeHeap.inline.hpp ! src/share/vm/gc/parallel/pcTasks.cpp ! src/share/vm/gc/parallel/psCompactionManager.cpp ! src/share/vm/gc/parallel/psCompactionManager.inline.hpp ! src/share/vm/gc/parallel/psMarkSweepDecorator.cpp ! src/share/vm/gc/parallel/psParallelCompact.cpp ! src/share/vm/gc/parallel/psParallelCompact.hpp ! src/share/vm/gc/parallel/psParallelCompact.inline.hpp ! src/share/vm/gc/parallel/psPromotionManager.inline.hpp ! src/share/vm/oops/generateOopMap.cpp ! src/share/vm/oops/generateOopMap.hpp ! src/share/vm/oops/instanceKlass.hpp ! test/native/gc/parallel/test_psParallelCompact.cpp Changeset: 27bd1e39d5fd Author: gtriantafill Date: 2017-05-26 09:48 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/27bd1e39d5fd 8179861: Missing copyrights in some hotspot files Reviewed-by: coleenp, dholmes, sspitsyn ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/GenericArray.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/IntArray.java ! test/runtime/6626217/IFace.java ! test/runtime/6626217/Loader2.java ! test/runtime/6626217/You_Have_Been_P0wned.java ! test/runtime/6626217/bug_21227.java ! test/runtime/6626217/from_loader2.java ! test/runtime/6626217/many_loader1.java.foo ! test/runtime/6626217/many_loader2.java.foo ! test/runtime/ClassUnload/classes/test/Empty.java ! test/testlibrary_tests/ctw/Bar.java ! test/testlibrary_tests/ctw/Foo.java Changeset: 4b93e1b1d5b7 Author: mikael Date: 2017-05-26 13:47 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4b93e1b1d5b7 8180032: Unaligned pointer dereference in ClassFileParser Reviewed-by: dholmes, hseigel ! src/cpu/aarch64/vm/bytes_aarch64.hpp ! src/cpu/arm/vm/bytes_arm.hpp ! src/cpu/ppc/vm/bytes_ppc.hpp ! src/cpu/s390/vm/bytes_s390.hpp ! src/cpu/sparc/vm/bytes_sparc.hpp ! src/cpu/x86/vm/bytes_x86.hpp ! src/cpu/zero/vm/bytes_zero.hpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/classfile/classFileStream.hpp ! src/share/vm/interpreter/abstractInterpreter.hpp ! src/share/vm/interpreter/bytecode.hpp ! src/share/vm/services/heapDumper.cpp ! src/share/vm/utilities/bytes.hpp ! src/share/vm/utilities/copy.cpp ! src/share/vm/utilities/copy.hpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: da4c9eef4316 Author: coleenp Date: 2017-05-27 09:21 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/da4c9eef4316 8174749: Use hash table/oops for MemberName table Summary: Add a Java type called ResolvedMethodName which is immutable and can be stored in a hashtable, that is weakly collected by gc Reviewed-by: sspitsyn, stefank, jrose ! src/cpu/aarch64/vm/methodHandles_aarch64.cpp ! src/cpu/arm/vm/methodHandles_arm.cpp ! src/cpu/ppc/vm/methodHandles_ppc.cpp ! src/cpu/s390/vm/methodHandles_s390.cpp ! src/cpu/sparc/vm/methodHandles_sparc.cpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotMethodHandleAccessProvider.java ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/classfile/javaClasses.inline.hpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1ConcurrentMark.cpp ! src/share/vm/gc/g1/g1MarkSweep.cpp ! src/share/vm/gc/parallel/psMarkSweep.cpp ! src/share/vm/gc/parallel/psParallelCompact.cpp ! src/share/vm/gc/serial/genMarkSweep.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/interpreter/linkResolver.hpp ! src/share/vm/jvmci/jvmciCompilerToVM.cpp ! src/share/vm/logging/logTag.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/jvmtiRedefineClasses.hpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/methodHandles.hpp + src/share/vm/prims/resolvedMethodTable.cpp + src/share/vm/prims/resolvedMethodTable.hpp ! src/share/vm/prims/stackwalk.cpp ! src/share/vm/prims/stackwalk.hpp ! src/share/vm/runtime/mutexLocker.cpp ! src/share/vm/runtime/mutexLocker.hpp ! src/share/vm/runtime/thread.cpp + test/runtime/MemberName/MemberNameLeak.java Changeset: 2227b968f5f8 Author: lana Date: 2017-05-26 01:00 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/2227b968f5f8 Added tag jdk-10+9 for changeset 233647e3d380 ! .hgtags Changeset: 55a34e4962e1 Author: jwilhelm Date: 2017-05-29 20:48 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/55a34e4962e1 Merge - make/lib/Lib-jdk.aot.gmk - src/cpu/aarch64/vm/metaspaceShared_aarch64.cpp - src/cpu/arm/vm/metaspaceShared_arm.cpp - src/cpu/ppc/vm/metaspaceShared_ppc.cpp - src/cpu/s390/vm/metaspaceShared_s390.cpp - src/cpu/sparc/vm/metaspaceShared_sparc.cpp - src/cpu/x86/vm/metaspaceShared_x86_32.cpp - src/cpu/x86/vm/metaspaceShared_x86_64.cpp - src/cpu/zero/vm/metaspaceShared_zero.cpp - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFSymbol.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFRelocation.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFTargetInfo.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNILibELFAPI.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/Pointer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/UnsafeAccess.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/linux/Elf_Cmd.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/sunos/Elf_Cmd.java - src/jdk.aot/unix/native/libjelfshim/jdk_tools_jaotc_jnilibelf_JNILibELFAPI.c - src/jdk.aot/unix/native/libjelfshim/shim_functions.c - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/CollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/DefaultCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/AllocationInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/IsMethodInlineDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/LockInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/RootNameDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/TinyInstrumentor.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/NumUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/PermanentBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/RetryableBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/CollectionsFactory.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LinkedIdentityHashMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LocationIdentity.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArrayMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArraySet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationLoadFieldConstantFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardEliminationCornerCasesTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/inlining/RecursiveInliningTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/DefaultNodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeNodeMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArchHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCDeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCUncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorld.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorldOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompressEncoding.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/PrintStreamOption.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/CompressionNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DeoptimizationFetchUnrollInfoCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DirectCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/EnterUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveCurrentStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveDeoptimizedStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/PushInterpreterFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SaveAllRegistersNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetAnchorNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetLocationProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/UncommonTrapCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/NarrowOopStamp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/FastSSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilderBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIConstructionPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIVerifier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationBeginNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationEndNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationInliningCallback.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/IsMethodInlinedNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/MonitorProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/RootNameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeLoadNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/CompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LoweredCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/DefaultNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/NodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/PiPushable.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/NestedBooleanOptionValueTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/TestOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/DerivedOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/EnumOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/NestedBooleanOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/StableOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/DominatorConditionalEliminationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/OptimizeGuardAnchorsPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/PushThroughPiPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ValueAnchorCleanupPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/ExtractInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/HighTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/InlineInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/MidTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/IntegerMulExactFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/InlineGraalDirectivesPlugin.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/WordOperationPlugin.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/DirectObjectStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/Salver.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverDebugConfigCustomizer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataDict.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataList.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractGraalDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractMethodScopeDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractSerializerDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/Dumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/GraphDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractGraalDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/DumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/GraphDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/package-info.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/AbstractSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/JSONSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/Serializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/ECIDUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/MethodContext.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/ChannelDumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/DumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicUnsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/ComparableWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Pointer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Signed.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Unsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/UnsignedUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/nodes/WordCastNode.java - src/share/vm/utilities/array.hpp - test/compiler/aot/jdk.tools.jaotc.jnilibelf.test/src/jdk/tools/jaotc/jnilibelf/test/JNILibELFTest.java - test/gc/stress/TestGCOld.java - test/runtime/SharedArchiveFile/CDSTestUtils.java - test/runtime/modules/JVMGetModuleByPkgName.java Changeset: 4e5902b7f92e Author: dholmes Date: 2017-05-30 17:14 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4e5902b7f92e 8174231: Factor out and share PlatformEvent and Parker code for POSIX systems Reviewed-by: stuefe, rehn, dcubed ! src/os/aix/vm/os_aix.cpp ! src/os/aix/vm/os_aix.hpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/bsd/vm/os_bsd.hpp ! src/os/linux/vm/os_linux.cpp ! src/os/linux/vm/os_linux.hpp ! src/os/posix/vm/os_posix.cpp ! src/os/posix/vm/os_posix.hpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/solaris/vm/os_solaris.hpp Changeset: 67e19eb00336 Author: mikael Date: 2017-05-30 15:41 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/67e19eb00336 8180184: Add DATA and FSIZE to os::Posix::print_rlimit_info Reviewed-by: dholmes, stuefe ! src/os/aix/vm/os_aix.cpp ! src/os/posix/vm/os_posix.cpp Changeset: 9ee4febb41aa Author: iveresov Date: 2017-05-31 18:20 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9ee4febb41aa 8181369: Update Graal Reviewed-by: kvn ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCArithmeticLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/HashCodeTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/deopt/RethrowDeoptMaterializeTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/Debug.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugDumpHandler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugEnvironment.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugVerifyHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/Fingerprint.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/DebugScope.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/.checkstyle_checks.xml ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/Graph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/Node.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeClass.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotGraalMBeanTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/ObjectCloneTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/OptionsInFileTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/RetryableCompilationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalMBean.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/NewObjectSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/ObjectCloneNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParserOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/FrameStateBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.sparc/src/org/graalvm/compiler/lir/sparc/SPARCArithmetic.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/FixedInterval.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/RegisterVerifier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceIntervalWalker.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanEliminateSpillMovePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanResolveDataFlowPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanWalker.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLocalMoveResolver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/FrameState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/InvokeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/InvokeWithExceptionNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/SignedDivNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/ExceptionObjectNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ConditionalEliminationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/InliningUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/BasePhase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/ClassTypeSequence.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/schedule/SchedulePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/verify/VerifyDebugUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/BinaryGraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/CFGPrinterObserver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/CanonicalStringGraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraalDebugConfigCustomizer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinterDumpHandler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/IdealGraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/NoDeadCodeVerifyHandler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ReplacementsParseTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/GraphKit.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/PEGraphDecoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/BasicArrayCopyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/BasicObjectCloneNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/SubprocessUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure.java Changeset: 2befe2aca4b4 Author: zgu Date: 2017-05-31 09:19 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/2befe2aca4b4 8181055: PPC64: "mbind: Invalid argument" still seen after 8175813 Summary: Use numa_interleave_memory v2 api when available Reviewed-by: dholmes, shade, gromero ! src/os/linux/vm/os_linux.cpp ! src/os/linux/vm/os_linux.hpp Changeset: 648cc127e907 Author: dholmes Date: 2017-06-01 02:21 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/648cc127e907 Merge Changeset: eae7835378cf Author: pliden Date: 2017-05-31 13:17 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/eae7835378cf 8181319: Make os::Linux::sched_getcpu() available even when UseNUMA is false Reviewed-by: dholmes, rehn ! src/os/linux/vm/os_linux.cpp ! src/os/linux/vm/os_linux.hpp Changeset: bcc3c04c2d15 Author: mikael Date: 2017-06-01 09:34 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/bcc3c04c2d15 8181377: Capture underlying type for unsafe/unaligned pointers in ClassFileParser Reviewed-by: dholmes, kbarrett ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp Changeset: 3002cac8eda3 Author: epavlova Date: 2017-06-01 17:33 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3002cac8eda3 8145728: compiler/cpuflags/TestAESIntrinsicsOnSupportedConfig.java Expected message not found Reviewed-by: kvn ! test/compiler/cpuflags/AESIntrinsicsBase.java ! test/compiler/cpuflags/TestAESIntrinsicsOnSupportedConfig.java ! test/compiler/cpuflags/TestAESIntrinsicsOnUnsupportedConfig.java - test/compiler/cpuflags/predicate/AESSupportPredicate.java Changeset: 654b74cac475 Author: epavlova Date: 2017-06-01 17:34 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/654b74cac475 8181124: Get rid of compiler.testlibrary.rtm.predicate Reviewed-by: kvn ! test/TEST.ROOT ! 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/TestRTMRetryCountOption.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 ! 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 - test/compiler/testlibrary/rtm/predicate/SupportedCPU.java - test/compiler/testlibrary/rtm/predicate/SupportedOS.java - test/compiler/testlibrary/rtm/predicate/SupportedVM.java Changeset: 23d7de876fc8 Author: dholmes Date: 2017-06-02 05:24 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/23d7de876fc8 8181451: JDK-8174231 broke some clang builds Reviewed-by: stuefe, kbarrett, iveresov ! src/os/bsd/vm/os_bsd.hpp Changeset: d64b3c79a92e Author: tschatzl Date: 2017-06-02 13:45 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d64b3c79a92e 8071280: Specialize HeapRegion::oops_on_card_seq_iterate_careful() for use during concurrent refinement and updating the rset Reviewed-by: kbarrett, sangheki, ehelin ! src/share/vm/gc/g1/g1CollectedHeap.hpp ! src/share/vm/gc/g1/g1CollectedHeap.inline.hpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/heapRegion.cpp ! src/share/vm/gc/g1/heapRegion.hpp ! src/share/vm/gc/g1/heapRegion.inline.hpp Changeset: c9b90b9282e3 Author: tschatzl Date: 2017-06-02 13:45 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c9b90b9282e3 8162928: Micro-optimizations in scanning the remembered sets Reviewed-by: ehelin, kbarrett ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSet.hpp ! src/share/vm/gc/g1/heapRegion.cpp ! src/share/vm/gc/g1/heapRegion.hpp Changeset: 096080998a09 Author: tschatzl Date: 2017-06-02 13:47 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/096080998a09 8177707: Specialize G1RemSet::refine_card for concurrent/during safepoint refinement Reviewed-by: ehelin, kbarrett ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1OopClosures.hpp ! src/share/vm/gc/g1/g1OopClosures.inline.hpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSet.hpp ! src/share/vm/gc/g1/g1_specialized_oop_closures.hpp Changeset: ffb526029fb6 Author: tschatzl Date: 2017-06-02 13:48 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ffb526029fb6 8177044: Remove _scan_top from HeapRegion Summary: Remove the _scan_top member from HeapRegion using a per-gc pre-calculated table of scan limits that also subsumes other checks. Reviewed-by: sangheki, kbarrett, ehelin ! src/share/vm/gc/g1/g1Allocator.cpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/heapRegion.cpp ! src/share/vm/gc/g1/heapRegion.hpp Changeset: 58c8ddc3efb8 Author: mdoerr Date: 2017-06-02 16:32 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/58c8ddc3efb8 8179527: Implement intrinsic code for reverseBytes with load/store Reviewed-by: simonis, mdoerr Contributed-by: Michihiro Horie ! src/cpu/ppc/vm/assembler_ppc.hpp ! src/cpu/ppc/vm/assembler_ppc.inline.hpp ! src/cpu/ppc/vm/ppc.ad ! src/cpu/ppc/vm/vm_version_ppc.cpp ! src/cpu/ppc/vm/vm_version_ppc.hpp Changeset: fdf10ffae99c Author: rprotacio Date: 2017-06-05 13:13 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/fdf10ffae99c 8176132: -XX:+PrintSharedSpaces should be converted to use Unified Logging. Summary: Converted -XX:+PrintSharedSpaces to -Xlog:cds=info Reviewed-by: iklam, jiangli, mseledtsov ! src/share/vm/classfile/compactHashtable.cpp ! src/share/vm/classfile/stringTable.cpp ! src/share/vm/logging/logTag.hpp ! src/share/vm/memory/filemap.cpp ! src/share/vm/memory/metadataFactory.hpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspaceShared.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! test/runtime/CDSCompressedKPtrs/XShareAuto.java ! test/runtime/SharedArchiveFile/DefaultUseWithClient.java ! test/runtime/SharedArchiveFile/SharedStrings.java Changeset: 5eaba310927e Author: kbarrett Date: 2017-06-05 19:07 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5eaba310927e 8166651: OrderAccess::load_acquire &etc should have const parameters Summary: Added const qualifiers to load/load_acquire source parameters. Reviewed-by: dholmes, coleenp, adinn, eosterlund ! src/os_cpu/aix_ppc/vm/atomic_aix_ppc.hpp ! src/os_cpu/aix_ppc/vm/orderAccess_aix_ppc.inline.hpp ! src/os_cpu/bsd_x86/vm/atomic_bsd_x86.hpp ! src/os_cpu/bsd_x86/vm/bsd_x86_32.s ! src/os_cpu/bsd_zero/vm/atomic_bsd_zero.hpp ! src/os_cpu/bsd_zero/vm/os_bsd_zero.hpp ! src/os_cpu/linux_aarch64/vm/atomic_linux_aarch64.hpp ! src/os_cpu/linux_aarch64/vm/orderAccess_linux_aarch64.inline.hpp ! src/os_cpu/linux_aarch64/vm/os_linux_aarch64.hpp ! src/os_cpu/linux_arm/vm/atomic_linux_arm.hpp ! src/os_cpu/linux_arm/vm/orderAccess_linux_arm.inline.hpp ! src/os_cpu/linux_arm/vm/os_linux_arm.cpp ! src/os_cpu/linux_arm/vm/os_linux_arm.hpp ! src/os_cpu/linux_ppc/vm/atomic_linux_ppc.hpp ! src/os_cpu/linux_ppc/vm/orderAccess_linux_ppc.inline.hpp ! src/os_cpu/linux_s390/vm/atomic_linux_s390.hpp ! src/os_cpu/linux_s390/vm/orderAccess_linux_s390.inline.hpp ! src/os_cpu/linux_sparc/vm/atomic_linux_sparc.inline.hpp ! src/os_cpu/linux_x86/vm/atomic_linux_x86.hpp ! src/os_cpu/linux_x86/vm/linux_x86_32.s ! src/os_cpu/linux_zero/vm/atomic_linux_zero.hpp ! src/os_cpu/linux_zero/vm/os_linux_zero.hpp ! src/os_cpu/solaris_sparc/vm/atomic_solaris_sparc.hpp ! src/os_cpu/solaris_x86/vm/atomic_solaris_x86.hpp ! src/os_cpu/solaris_x86/vm/solaris_x86_32.il ! src/os_cpu/windows_x86/vm/atomic_windows_x86.hpp ! src/share/vm/runtime/atomic.hpp ! src/share/vm/runtime/orderAccess.hpp ! src/share/vm/runtime/orderAccess.inline.hpp Changeset: cc3f3b782a1d Author: stuefe Date: 2017-06-06 17:07 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/cc3f3b782a1d 8171504: [aix] On AIX, -XXaltjvm= option is ignored Reviewed-by: clanger, mdoerr ! src/os/aix/vm/os_aix.cpp Changeset: df318ded5778 Author: roland Date: 2017-05-29 18:17 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/df318ded5778 8176506: C2: loop unswitching and unsafe accesses cause crash Reviewed-by: vlivanov, mcberg, kvn, simonis ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/arm/vm/arm.ad ! src/cpu/arm/vm/assembler_arm_32.hpp ! src/cpu/arm/vm/assembler_arm_64.hpp ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/assembler_x86.hpp ! src/cpu/x86/vm/x86.ad ! src/share/vm/opto/castnode.cpp ! src/share/vm/opto/castnode.hpp ! src/share/vm/opto/classes.hpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/escape.hpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/opaquenode.cpp ! src/share/vm/opto/opaquenode.hpp + test/compiler/unsafe/TestMaybeNullUnsafeAccess.java Changeset: b95c62a14ae7 Author: thartmann Date: 2017-06-07 12:23 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b95c62a14ae7 8181644: C1 crashes with -XX:+PrintCFGToFile Summary: CFGPrinterOutput should not be shared between C1 compiler threads. Reviewed-by: kvn ! src/share/vm/c1/c1_CFGPrinter.cpp ! src/share/vm/c1/c1_CFGPrinter.hpp ! src/share/vm/c1/c1_Compilation.cpp ! src/share/vm/c1/c1_Compilation.hpp Changeset: da2829940f9a Author: cjplummer Date: 2017-06-07 08:56 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/da2829940f9a 8171365: nsk/jvmti/scenarios/events/EM04/em04t001: many errors for missed events Summary: fix CodeCache:blobs_do() so it iterates over all code cache heaps Reviewed-by: sspitsyn, thartmann ! src/share/vm/code/codeCache.cpp Changeset: 78408191085a Author: vdeshpande Date: 2017-06-07 13:09 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/78408191085a 8181616: FMA Vectorization on x86 Reviewed-by: kvn ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/assembler_x86.hpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.hpp ! src/cpu/x86/vm/vm_version_x86.cpp ! src/cpu/x86/vm/vm_version_x86.hpp ! src/cpu/x86/vm/x86.ad ! src/share/vm/adlc/formssel.cpp ! src/share/vm/opto/classes.hpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/superword.cpp ! src/share/vm/opto/vectornode.cpp ! src/share/vm/opto/vectornode.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: c5c23d9dc61d Author: gtriantafill Date: 2017-06-08 13:17 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c5c23d9dc61d 8166748: Clean out Windows IA64 support Reviewed-by: kbarrett, coleenp, bobv, mdoerr ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/debugger/win32/coff/MachineTypes.java ! src/os/windows/vm/os_windows.cpp ! src/share/vm/oops/oop.inline.hpp Changeset: 507f8a7678b4 Author: mcberg Date: 2017-05-16 12:55 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/507f8a7678b4 8178800: compiler/c2/PolynomialRoot.java fails on Xeon Phi linux host with UseAVX=3 Summary: upper register bank support added for novl machines that emit EVEX Reviewed-by: kvn, thartmann ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.hpp Changeset: 6427ba02ae4b Author: lana Date: 2017-05-18 16:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/6427ba02ae4b Merge Changeset: c2314cb67e28 Author: twisti Date: 2017-05-18 16:39 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c2314cb67e28 8180453: [JVMCI] mx eclipseinit doesn't pick up generated sources Reviewed-by: kvn ! .mx.jvmci/mx_jvmci.py Changeset: 34c47915ae05 Author: uvangapally Date: 2017-05-19 15:32 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/34c47915ae05 8175845: Provide javadoc descriptions for jdk.hotspot.agent module Summary: Added description for jdk.hotspot.agent module Reviewed-by: mchung ! src/jdk.hotspot.agent/share/classes/module-info.java Changeset: 8f941bab493f Author: thartmann Date: 2017-05-22 09:14 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/8f941bab493f 8180565: Null pointer dereferences of ConstMethod::method() Summary: We need to check ConstMethod::method() for NULL before dereferencing. Reviewed-by: kvn, iignatyev ! src/share/vm/oops/constMethod.cpp Changeset: 0b218e675429 Author: thartmann Date: 2017-05-22 09:16 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/0b218e675429 8180617: Null pointer dereference in InitializeNode::complete_stores Summary: Fixed a missing null check on the return value of InitializeNode::allocation() found by Parfait. Reviewed-by: zmajo ! src/share/vm/opto/memnode.cpp Changeset: 1f917785fbe7 Author: thartmann Date: 2017-05-22 09:17 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1f917785fbe7 8180511: Null pointer dereference in Matcher::ReduceInst() Summary: Fixed a missing null check on the return value of MachNodeGenerator() found by Parfait. Reviewed-by: kvn ! src/share/vm/opto/matcher.cpp Changeset: 286c8e80795b Author: thartmann Date: 2017-05-22 09:18 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/286c8e80795b 8180576: Null pointer dereference in Matcher::xform() Summary: Fixed a missing null check on n->in(0) found by Parfait. Reviewed-by: kvn ! src/share/vm/opto/matcher.cpp Changeset: 31c842513336 Author: thartmann Date: 2017-05-22 09:23 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/31c842513336 8180575: Null pointer dereference in LoadNode::Identity() Summary: Fixed a missing null check on the return value of AddPNode::Ideal_base_and_offset() found by Parfait. Reviewed-by: kvn ! src/share/vm/opto/memnode.cpp Changeset: 79f53d722d58 Author: iignatyev Date: 2017-05-22 15:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/79f53d722d58 8180793: move jdk.test.lib.wrappers.* to jdk.test.lib package Reviewed-by: mchung ! test/compiler/codecache/stress/CodeCacheStressRunner.java ! test/compiler/codecache/stress/Helper.java ! test/compiler/compilercontrol/jcmd/StressAddJcmdBase.java ! test/compiler/whitebox/AllocationCodeBlobTest.java Changeset: d53171650a2c Author: iignatyev Date: 2017-05-22 15:28 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d53171650a2c 8180721: clean up ProblemList Reviewed-by: sspitsyn, gtriantafill ! test/ProblemList.txt ! test/serviceability/jdwp/AllModulesCommandTest.java Changeset: 385668275400 Author: lana Date: 2017-05-26 00:29 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/385668275400 Added tag jdk-9+171 for changeset d53171650a2c ! .hgtags Changeset: c6cd3ec8d46b Author: lana Date: 2017-05-31 17:45 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c6cd3ec8d46b Merge ! .hgtags - test/gc/arguments/TestExplicitGCInvokesConcurrentAndUnloadsClasses.java - test/gc/startup_warnings/TestDefNewCMS.java - test/gc/startup_warnings/TestParNewCMS.java - test/gc/startup_warnings/TestParNewSerialOld.java - test/gc/startup_warnings/TestUseAutoGCSelectPolicy.java - test/runtime/NMT/AutoshutdownNMT.java Changeset: c2084773d623 Author: sballal Date: 2017-06-02 12:30 +0530 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c2084773d623 6760477: Update SA to include stack traces in the heap dump Summary: Update SA to include HPROF_TRACE and HPROF_FRAME records in the heap dump Reviewed-by: dsamersoff Contributed-by: sharath.ballal at oracle.com ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/JavaThread.java + src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/StackFrameInfo.java + src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/ThreadStackTrace.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/HeapHprofBinWriter.java ! src/share/vm/runtime/vmStructs.cpp Changeset: c33f95815607 Author: lana Date: 2017-06-02 21:10 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c33f95815607 Added tag jdk-10+10 for changeset c6cd3ec8d46b ! .hgtags Changeset: 63ac6d565c21 Author: thartmann Date: 2017-05-24 16:53 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/63ac6d565c21 8180813: Null pointer dereference of CodeCache::find_blob() result Summary: Fixed missing null checks on the result of CodeCache::find_blob() found by Parfait. Reviewed-by: shade, kvn ! src/share/vm/code/relocInfo.cpp ! src/share/vm/runtime/sharedRuntime.cpp Changeset: 531cb9202a0f Author: lana Date: 2017-05-26 00:45 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/531cb9202a0f Merge Changeset: 1ae9e84f68b3 Author: zmajo Date: 2017-05-29 10:32 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1ae9e84f68b3 8180855: Null pointer dereference in OopMapSet::all_do of oopMap.cpp:394 Summary: Check for possible null-point dereference. Reviewed-by: kvn ! src/share/vm/compiler/oopMap.cpp Changeset: d5ed1e34de8b Author: lana Date: 2017-06-01 18:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d5ed1e34de8b Added tag jdk-9+172 for changeset 1ae9e84f68b3 ! .hgtags Changeset: 7f14e550f1e8 Author: lana Date: 2017-06-03 02:44 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7f14e550f1e8 Merge ! .hgtags - test/gc/arguments/TestExplicitGCInvokesConcurrentAndUnloadsClasses.java - test/gc/startup_warnings/TestDefNewCMS.java - test/gc/startup_warnings/TestParNewCMS.java - test/gc/startup_warnings/TestParNewSerialOld.java - test/gc/startup_warnings/TestUseAutoGCSelectPolicy.java - test/runtime/NMT/AutoshutdownNMT.java Changeset: 9c1d77cd9428 Author: jwilhelm Date: 2017-06-08 20:28 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9c1d77cd9428 Merge - make/lib/Lib-jdk.aot.gmk - src/cpu/aarch64/vm/metaspaceShared_aarch64.cpp - src/cpu/arm/vm/metaspaceShared_arm.cpp - src/cpu/ppc/vm/metaspaceShared_ppc.cpp - src/cpu/s390/vm/metaspaceShared_s390.cpp - src/cpu/sparc/vm/metaspaceShared_sparc.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.hpp - src/cpu/x86/vm/metaspaceShared_x86_32.cpp - src/cpu/x86/vm/metaspaceShared_x86_64.cpp - src/cpu/zero/vm/metaspaceShared_zero.cpp - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFSymbol.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFRelocation.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFTargetInfo.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNILibELFAPI.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/Pointer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/UnsafeAccess.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/linux/Elf_Cmd.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/sunos/Elf_Cmd.java - src/jdk.aot/unix/native/libjelfshim/jdk_tools_jaotc_jnilibelf_JNILibELFAPI.c - src/jdk.aot/unix/native/libjelfshim/shim_functions.c - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/CollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/DefaultCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/AllocationInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/IsMethodInlineDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/LockInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/RootNameDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/TinyInstrumentor.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/NumUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/PermanentBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/RetryableBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/CollectionsFactory.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LinkedIdentityHashMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LocationIdentity.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArrayMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArraySet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationLoadFieldConstantFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardEliminationCornerCasesTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/inlining/RecursiveInliningTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/Fingerprint.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/DefaultNodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeNodeMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArchHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCDeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCUncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorld.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorldOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompressEncoding.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/PrintStreamOption.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/CompressionNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DeoptimizationFetchUnrollInfoCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DirectCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/EnterUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveCurrentStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveDeoptimizedStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/PushInterpreterFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SaveAllRegistersNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetAnchorNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetLocationProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/UncommonTrapCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/NarrowOopStamp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceIntervalWalker.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/FastSSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilderBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIConstructionPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIVerifier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationBeginNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationEndNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationInliningCallback.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/IsMethodInlinedNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/MonitorProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/RootNameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeLoadNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/CompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LoweredCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/DefaultNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/NodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/PiPushable.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/NestedBooleanOptionValueTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/TestOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/DerivedOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/EnumOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/NestedBooleanOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/StableOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/DominatorConditionalEliminationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/OptimizeGuardAnchorsPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/PushThroughPiPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ValueAnchorCleanupPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/ExtractInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/HighTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/InlineInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/MidTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/IntegerMulExactFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/InlineGraalDirectivesPlugin.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/WordOperationPlugin.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/DirectObjectStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/Salver.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverDebugConfigCustomizer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataDict.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataList.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractGraalDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractMethodScopeDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractSerializerDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/Dumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/GraphDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractGraalDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/DumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/GraphDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/package-info.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/AbstractSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/JSONSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/Serializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/ECIDUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/MethodContext.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/ChannelDumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/DumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicUnsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/ComparableWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Pointer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Signed.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Unsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/UnsignedUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/nodes/WordCastNode.java ! src/share/vm/code/relocInfo.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/vmStructs.cpp - src/share/vm/utilities/array.hpp ! test/ProblemList.txt - test/compiler/aot/jdk.tools.jaotc.jnilibelf.test/src/jdk/tools/jaotc/jnilibelf/test/JNILibELFTest.java - test/compiler/cpuflags/predicate/AESSupportPredicate.java - test/compiler/testlibrary/rtm/predicate/SupportedCPU.java - test/compiler/testlibrary/rtm/predicate/SupportedOS.java - test/compiler/testlibrary/rtm/predicate/SupportedVM.java - test/gc/stress/TestGCOld.java - test/runtime/SharedArchiveFile/CDSTestUtils.java - test/runtime/modules/JVMGetModuleByPkgName.java Changeset: b2c61ed5bf0f Author: thartmann Date: 2017-06-09 09:20 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b2c61ed5bf0f 8181781: Replay compilation should ignore unresolved Klass with -XX:+ReplayIgnoreInitErrors Summary: Ignore unresolved Klass with -XX:+ReplayIgnoreInitErrors. Reviewed-by: kvn ! src/share/vm/ci/ciReplay.cpp Changeset: 55fd09ef3eda Author: thartmann Date: 2017-06-09 09:27 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/55fd09ef3eda 8181741: C2 compilation fails with "assert(i<_max) failed: oob" Summary: PhaseIdealLoop should not use type() or type_or_null(). Reviewed-by: roland, kvn ! src/share/vm/opto/castnode.cpp ! src/share/vm/opto/castnode.hpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/opto/phaseX.hpp Changeset: 257f689ac24d Author: fyang Date: 2017-06-10 16:01 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/257f689ac24d 8181906: AArch64: port bugfix for 7009641 to AArch64 Summary: Allocation in the code cache returns NULL instead of failing the entire VM Reviewed-by: aph Contributed-by: teng.lu at linaro.org ! src/cpu/aarch64/vm/vtableStubs_aarch64.cpp Changeset: bbf76069d7fc Author: kbarrett Date: 2017-06-13 07:30 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/bbf76069d7fc 8181787: Remove Solaris SPARC GCC code Summary: Remove obsolete code. Reviewed-by: kbarrett, coleenp, gtriantafill ! src/os/solaris/vm/os_solaris.inline.hpp ! src/os_cpu/solaris_sparc/vm/atomic_solaris_sparc.hpp ! src/os_cpu/solaris_sparc/vm/prefetch_solaris_sparc.inline.hpp ! src/os_cpu/solaris_x86/vm/atomic_solaris_x86.hpp ! src/os_cpu/solaris_x86/vm/bytes_solaris_x86.inline.hpp Changeset: 93edfbc19d0c Author: kbarrett Date: 2017-06-13 11:10 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/93edfbc19d0c 8086005: Define __STDC_xxx_MACROS config macros globally via build system Summary: Moved macro definitions to hotspot build configuration Reviewed-by: erikj, eosterlund ! src/os/aix/vm/jvm_aix.h ! src/os/aix/vm/loadlib_aix.cpp ! src/os/bsd/vm/jvm_bsd.h ! src/share/vm/utilities/globalDefinitions.hpp ! src/share/vm/utilities/globalDefinitions_gcc.hpp Changeset: 721637c92e1e Author: iveresov Date: 2017-06-13 09:19 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/721637c92e1e 8182018: Update Graal Reviewed-by: kvn ! src/jdk.internal.vm.compiler/.mx.graal/suite.py ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/AtomicUnsigned.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/AtomicWord.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/ComparableWord.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/LocationIdentity.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/Pointer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/PointerBase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/PointerUtils.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/Signed.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/Unsigned.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/UnsignedUtils.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/WordBase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/WordFactory.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64AddressLowering.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64AddressLoweringByUse.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64AddressNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64LIRGenerator.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64SuitesCreator.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64SuitesProvider.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64SuitesCreator.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64SuitesProvider.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCSuitesCreator.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCSuitesProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/GraalCompiler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotBackendFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotSuitesProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotBackendFactory.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotSuitesCreator.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotSuitesProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotBackendFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotGraalMBeanTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/ReplaceConstantNodesPhaseTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompilationTask.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotCodeCacheListener.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalCompiler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalCompilerFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalMBean.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalRuntime.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalVMEventListener.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/AddressLoweringHotSpotSuitesProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotSuitesProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/InitializeKlassNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/ResolveConstantNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/ResolveConstantStubCall.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/ResolveMethodAndLoadCountersNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/aot/ReplaceConstantNodesPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/InstanceOfSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/DefaultSuitesCreator.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/DefaultSuitesProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64AddressValue.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64Move.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64Unary.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIRInstruction.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/SaveCalleeSaveRegisters.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScan.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanEliminateSpillMovePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanOptimizeSpillPositionPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/MoveResolver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/TraceGlobalMoveResolver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/bu/BottomUpAllocator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanEliminateSpillMovePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/gen/LIRGenerationResult.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/SimplifyingGraphDecoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/RawLoadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/AbstractInliningPhase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/AddressLoweringByUsePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/LoweringPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/InliningUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/info/MultiTypeGuardInlineInfo.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/BasePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/verify/VerifyDebugUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/BinaryGraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/CFGPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/CFGPrinterObserver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/CanonicalStringGraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/IdealGraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ReplacementsParseTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/PEGraphDecoder.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionCategory.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionDescriptor.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionDescriptors.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionKey.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionType.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionValues.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/package-info.java Changeset: 1af241d802de Author: iveresov Date: 2017-06-13 16:29 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1af241d802de Merge - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64AddressLowering.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64SuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64SuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCSuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotSuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/DefaultSuitesProvider.java Changeset: 37361e056c90 Author: fyang Date: 2017-06-14 17:33 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/37361e056c90 8182161: aarch64: combine andr+cbnz into tbnz when possible Summary: Combine andr+cbnz into tbnz when possible to save one instruction Reviewed-by: aph ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/interp_masm_aarch64.cpp ! src/cpu/aarch64/vm/jniFastGetField_aarch64.cpp ! src/cpu/aarch64/vm/templateTable_aarch64.cpp Changeset: 5793813a17dd Author: eosterlund Date: 2017-06-14 01:30 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5793813a17dd 8181318: Allow C++ library headers on Solaris Studio Summary: Allow studio to compile but not link against the stlport4 C++ standard library Reviewed-by: dholmes, dcubed, erikj ! make/lib/CompileDtracePostJvm.gmk Changeset: 95bb99382705 Author: eosterlund Date: 2017-06-14 08:47 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/95bb99382705 8181785: Remove the experimental ClearFPUAtPark JVM Flag Summary: Removing the experimental and unstable ClearFPUAtPark optimization for SPARC Reviewed-by: kbarrett, tschatzl, rehn ! src/os/solaris/vm/os_share_solaris.hpp ! src/os/solaris/vm/os_solaris.cpp ! src/os_cpu/solaris_sparc/vm/os_solaris_sparc.cpp ! src/os_cpu/solaris_sparc/vm/solaris_sparc.il ! src/share/vm/runtime/globals.hpp Changeset: 06994badeb24 Author: rehn Date: 2017-06-15 09:52 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/06994badeb24 8181859: Monitor deflation is not checked in cleanup path Reviewed-by: sspitsyn, dcubed, shade, cvarming ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/synchronizer.hpp Changeset: b4438b96a1db Author: roland Date: 2017-06-09 10:51 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b4438b96a1db 8181211: C2: Use profiling data to optimize on/off heap unsafe accesses Reviewed-by: kvn ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethod.hpp ! src/share/vm/ci/ciMethodData.hpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/oops/methodData.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/parse2.cpp ! src/share/vm/opto/type.cpp ! src/share/vm/opto/type.hpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/deoptimization.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: fcee997502b3 Author: hseigel Date: 2017-06-15 14:34 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/fcee997502b3 8182089: build error in hotspot/src/share/vm/runtime/reflection.cpp Summary: Add const to argument in reflection.cpp so method signature matches the one in reflection.hpp Reviewed-by: zgu, coleenp, rprotacio ! src/share/vm/runtime/reflection.cpp Changeset: 26b8b77507a2 Author: hseigel Date: 2017-06-15 18:58 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/26b8b77507a2 Merge Changeset: 09fbbd907028 Author: coleenp Date: 2017-06-16 09:13 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/09fbbd907028 8181450: assert in BasicHashtable::verify_table Summary: remove assert as it has small probability of happening and added logging Reviewed-by: kbarrett, sspitsyn ! src/share/vm/classfile/placeholders.cpp ! src/share/vm/utilities/hashtable.cpp ! src/share/vm/utilities/hashtable.hpp Changeset: 1a8a88213ae8 Author: kvn Date: 2017-06-16 12:06 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1a8a88213ae8 8182114: assert(VM_Version::supports_sse()) failed Summary: restore UseSSE check for FMA Reviewed-by: dcubed ! src/cpu/x86/vm/vm_version_x86.cpp Changeset: 717a2b9c928a Author: rraghavan Date: 2017-06-19 01:23 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/717a2b9c928a 8016470: AllocatePrefetchDistance is not changed by command line Summary: Values from command line given preference for related flags, over default values based on platform Reviewed-by: thartmann, kvn ! src/cpu/arm/vm/vm_version_arm_32.cpp ! src/cpu/arm/vm/vm_version_arm_64.cpp ! 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/cpu/x86/vm/vm_version_x86.hpp Changeset: 94302da0a7be Author: njian Date: 2017-05-12 14:59 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/94302da0a7be 8179933: AArch64: Incorrect match rule for immL_255 Summary: The match rule fix will enable instructs like: SubExtL_uxtb_and and AddExtL_uxtb_and etc. Also rename immL_63 to the proper name: immI_63. Reviewed-by: aph Contributed-by: zhongwei.yao at linaro.org ! src/cpu/aarch64/vm/aarch64.ad Changeset: e1fa78be78a4 Author: rraghavan Date: 2017-06-19 03:10 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e1fa78be78a4 8044829: UseAES warning message generation differs on CPU architecture Summary: Fixed issue with feature flag setting when AES support disabled explicitly Reviewed-by: kvn ! src/cpu/x86/vm/vm_version_x86.cpp Changeset: 6f0b91fe40c0 Author: rraghavan Date: 2017-06-19 11:23 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/6f0b91fe40c0 Merge Changeset: 3df8ef613001 Author: iveresov Date: 2017-06-19 16:31 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3df8ef613001 8182557: Update Graal Reviewed-by: kvn ! make/CompileTools.gmk ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/GraalFilters.java ! src/jdk.internal.vm.compiler/share/classes/module-info.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/AtomicUnsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/AtomicWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/ComparableWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/LocationIdentity.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/Pointer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/PointerBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/PointerUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/Signed.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/Unsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/UnsignedUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/WordBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/WordFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64/src/org/graalvm/compiler/asm/aarch64/AArch64Assembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64/src/org/graalvm/compiler/asm/aarch64/AArch64MacroAssembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.amd64/src/org/graalvm/compiler/asm/amd64/AMD64Assembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.sparc/src/org/graalvm/compiler/asm/sparc/SPARCMacroAssembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.code/src/org/graalvm/compiler/code/CompilationResult.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64AddressNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64AddressNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/spi/ForeignCallsProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CheckGraalInvariants.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraalCompilerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ReferenceGetLoopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/tutorial/GraalTutorial.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/target/Backend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeSourcePosition.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotForeignCallsProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotForeignCallsProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotForeignCallsProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/WriteBarrierVerificationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompilationTask.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotForeignCallLinkage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotForeignCallLinkageImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotForeignCallsProviderImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotHostForeignCallsProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotWordOperationPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/BeginLockScopeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/EndLockScopeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/StubForeignCallNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/InitializeKlassNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/InitializeKlassStubCall.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/AESCryptSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/CRC32Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/CipherBlockChainingSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/ClassGetHubNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HashCodeSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HotSpotReplacementsUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/IdentityHashCodeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/LoadExceptionObjectSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/MonitorSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/NewObjectSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/SHA2Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/SHA5Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/SHASubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/StringToBytesSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/ThreadSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopyCallNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopySlowPathNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopySnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopyUnrollNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/CheckcastArrayCopyCallNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/UnsafeArrayCopyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/UnsafeArrayCopySnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/CreateExceptionStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/ExceptionHandlerStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/ForeignCallStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/NewArrayStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/NewInstanceStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/StubUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/UnwindExceptionToCallerStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/word/KlassPointer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/word/MetaspacePointer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/word/MethodPointer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/StaticFieldAccessTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/FieldLocationIdentity.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/InvokeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/InvokeWithExceptionNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/KillingBeginNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/NamedLocationIdentity.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/StartNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/StructuredGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/cfg/Block.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/cfg/HIRLoop.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/cfg/LocationSet.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/StringToBytesNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/BytecodeExceptionNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/ForeignCallNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/GuardedUnsafeLoadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/JavaReadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/JavaWriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/MembarNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/RawLoadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/RawStoreNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeAccessNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeCopyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeMemoryLoadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeMemoryStoreNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AbstractCompareAndSwapNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AccessFieldNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AtomicReadAndAddNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AtomicReadAndWriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/ExceptionObjectNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LogicCompareAndSwapNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LoweredAtomicReadAndWriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/MonitorEnterNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/MonitorExitNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/RawMonitorEnterNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/UnsafeCompareAndSwapNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/ValueCompareAndSwapNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/AbstractWriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/Access.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FixedAccessNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FloatableAccessNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FloatingAccessNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FloatingReadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryCheckpoint.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryMap.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryMapNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/MemoryPhiNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/ReadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/WriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/MemoryProxy.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/virtual/CommitAllocationNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/AddressLoweringByUsePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/FixReadsPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/FloatingReadPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/LoweringPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/schedule/MemoryScheduleVerification.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/schedule/SchedulePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/BinaryGraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.aarch64/src/org/graalvm/compiler/replacements/aarch64/AArch64IntegerArithmeticSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64GraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringIndexOfNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/DerivedOopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/MethodSubstitutionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/NewMultiArrayTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ObjectAccessTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/PEGraphDecoderTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/PointerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/WordTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/DefaultJavaLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/GraphKit.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/SnippetCounterNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/SnippetLowerableMemoryNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/SnippetTemplate.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/StandardGraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/ArrayEqualsNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/BasicArrayCopyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/MacroStateSplitNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/EarlyReadEliminationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/EffectsClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/ReadEliminationBlockState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/ReadEliminationClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/BarrieredAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/ObjectAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Word.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordOperationPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordTypes.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/AtomicUnsigned.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/AtomicWord.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/ComparableWord.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/LocationIdentity.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/Pointer.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/PointerBase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/PointerUtils.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/Signed.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/Unsigned.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/UnsignedUtils.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/WordBase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/WordFactory.java Changeset: 96306b520541 Author: fyang Date: 2017-06-20 17:00 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/96306b520541 8182581: aarch64: fix for crash caused by earlyret of compiled method Summary: fix jvm crash caused by earlyret of compiled method for aarch64 port Reviewed-by: aph Contributed-by: snazarkin at azul.com ! src/cpu/aarch64/vm/abstractInterpreter_aarch64.cpp Changeset: f20fd31ad61f Author: kvn Date: 2017-06-21 10:28 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f20fd31ad61f 8181823: [AOT] jaotc doesn't work with Graal Summary: add new flag to indicate when to calculate class fingerprint Reviewed-by: iklam, iveresov ! src/jdk.internal.vm.compiler/share/classes/module-info.java ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/java.cpp Changeset: 6cd49024a1e2 Author: lana Date: 2017-06-09 21:34 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/6cd49024a1e2 Added tag jdk-10+11 for changeset 7f14e550f1e8 ! .hgtags Changeset: e939acda146e Author: vlivanov Date: 2017-05-30 21:35 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e939acda146e 8179882: C2: Stale control info after cast node elimination during loop optimization pass Reviewed-by: kvn, roland ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopopts.cpp Changeset: c0501ae2ceda Author: lana Date: 2017-06-01 18:48 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c0501ae2ceda Merge Changeset: 3ee42d818496 Author: roland Date: 2017-06-02 09:08 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3ee42d818496 8179678: ArrayCopy with same src and dst can cause incorrect execution or compiler crash Summary: Replacing load on dst with load on src only valid if copy doesn't modify src element to load Reviewed-by: kvn, thartmann ! src/share/vm/opto/arraycopynode.cpp ! src/share/vm/opto/arraycopynode.hpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/macroArrayCopy.cpp ! src/share/vm/opto/memnode.cpp + test/compiler/arraycopy/TestACSameSrcDst.java Changeset: e5192b08213c Author: ihse Date: 2017-06-02 14:29 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e5192b08213c 8180322: Move JNI spec to specs directory Reviewed-by: mchung, dholmes ! src/share/vm/prims/jvmti.xml Changeset: e271f2b09a39 Author: bobv Date: 2017-06-02 10:35 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e271f2b09a39 8181093: assert(si->is_ldr_literal()) failed on arm64 test nsk/jdi/.../returnValue004 Reviewed-by: kvn, dlong ! src/cpu/arm/vm/relocInfo_arm.cpp Changeset: e64b1cb48d6e Author: bobv Date: 2017-06-02 10:37 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e64b1cb48d6e Merge Changeset: 7f45d3d72a9b Author: lana Date: 2017-06-08 16:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7f45d3d72a9b Added tag jdk-9+173 for changeset e64b1cb48d6e ! .hgtags Changeset: 070aa7a2eb14 Author: lana Date: 2017-06-14 20:05 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/070aa7a2eb14 Merge ! .hgtags - test/gc/arguments/TestExplicitGCInvokesConcurrentAndUnloadsClasses.java - test/gc/startup_warnings/TestDefNewCMS.java - test/gc/startup_warnings/TestParNewCMS.java - test/gc/startup_warnings/TestParNewSerialOld.java - test/gc/startup_warnings/TestUseAutoGCSelectPolicy.java - test/runtime/NMT/AutoshutdownNMT.java Changeset: bb5c32e2d31a Author: eosterlund Date: 2017-06-06 13:31 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/bb5c32e2d31a 8161145: The min/max macros make hotspot tests fail to build with GCC 6 Summary: Change min/max macros to expand (once) to self. Reviewed-by: sgehwolf, pliden, andrew ! src/share/vm/utilities/globalDefinitions.hpp Changeset: 5242609b8088 Author: psandoz Date: 2017-06-05 15:52 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5242609b8088 8181292: Backport Rename internal Unsafe.compare methods from 10 to 9 Reviewed-by: psandoz, dholmes, thartmann, kvn Contributed-by: ron.pressler at oracle.com, claes.redestad at oracle.com ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CheckGraalIntrinsics.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/StandardGraphBuilderPlugins.java ! src/share/vm/c1/c1_Compiler.cpp ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/classfile/vmSymbols.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/opto/c2compiler.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/shark/sharkIntrinsics.cpp ! src/share/vm/shark/sharkIntrinsics.hpp ! test/compiler/c2/cr8004867/TestIntUnsafeCAS.java ! test/compiler/intrinsics/unsafe/TestCAEAntiDep.java ! test/compiler/intrinsics/unsafe/UnsafeTwoCASLong.java ! test/compiler/profiling/UnsafeAccess.java ! test/compiler/unsafe/JdkInternalMiscUnsafeAccessTestBoolean.java ! test/compiler/unsafe/JdkInternalMiscUnsafeAccessTestByte.java ! test/compiler/unsafe/JdkInternalMiscUnsafeAccessTestChar.java ! test/compiler/unsafe/JdkInternalMiscUnsafeAccessTestDouble.java ! test/compiler/unsafe/JdkInternalMiscUnsafeAccessTestFloat.java ! test/compiler/unsafe/JdkInternalMiscUnsafeAccessTestInt.java ! test/compiler/unsafe/JdkInternalMiscUnsafeAccessTestLong.java ! test/compiler/unsafe/JdkInternalMiscUnsafeAccessTestObject.java ! test/compiler/unsafe/JdkInternalMiscUnsafeAccessTestShort.java ! test/compiler/unsafe/SunMiscUnsafeAccessTestBoolean.java ! test/compiler/unsafe/SunMiscUnsafeAccessTestByte.java ! test/compiler/unsafe/SunMiscUnsafeAccessTestChar.java ! test/compiler/unsafe/SunMiscUnsafeAccessTestDouble.java ! test/compiler/unsafe/SunMiscUnsafeAccessTestFloat.java ! test/compiler/unsafe/SunMiscUnsafeAccessTestInt.java ! test/compiler/unsafe/SunMiscUnsafeAccessTestLong.java ! test/compiler/unsafe/SunMiscUnsafeAccessTestObject.java ! test/compiler/unsafe/SunMiscUnsafeAccessTestShort.java ! test/compiler/unsafe/X-UnsafeAccessTest.java.template Changeset: 921359dbc96b Author: mchung Date: 2017-06-07 18:57 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/921359dbc96b 8181639: Add tool and services information to module summary Reviewed-by: alanb, psandoz, lancea ! src/jdk.hotspot.agent/share/classes/module-info.java Changeset: 944791f81601 Author: lana Date: 2017-06-08 23:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/944791f81601 Merge Changeset: ca47dcfdd351 Author: lana Date: 2017-06-15 17:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ca47dcfdd351 Added tag jdk-9+174 for changeset 944791f81601 ! .hgtags Changeset: 536f8cb71e48 Author: lana Date: 2017-06-16 04:55 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/536f8cb71e48 Merge ! .hgtags ! src/share/vm/classfile/vmSymbols.hpp - test/gc/arguments/TestExplicitGCInvokesConcurrentAndUnloadsClasses.java - test/gc/startup_warnings/TestDefNewCMS.java - test/gc/startup_warnings/TestParNewCMS.java - test/gc/startup_warnings/TestParNewSerialOld.java - test/gc/startup_warnings/TestUseAutoGCSelectPolicy.java - test/runtime/NMT/AutoshutdownNMT.java Changeset: a9da03357f19 Author: lana Date: 2017-06-17 00:15 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a9da03357f19 Added tag jdk-10+12 for changeset 070aa7a2eb14 ! .hgtags Changeset: ff6eb4e7a7f0 Author: jwilhelm Date: 2017-06-22 00:51 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ff6eb4e7a7f0 Merge - make/lib/Lib-jdk.aot.gmk - src/cpu/aarch64/vm/metaspaceShared_aarch64.cpp - src/cpu/arm/vm/metaspaceShared_arm.cpp - src/cpu/ppc/vm/metaspaceShared_ppc.cpp - src/cpu/s390/vm/metaspaceShared_s390.cpp - src/cpu/sparc/vm/metaspaceShared_sparc.cpp - src/cpu/x86/vm/metaspaceShared_x86_32.cpp - src/cpu/x86/vm/metaspaceShared_x86_64.cpp - src/cpu/zero/vm/metaspaceShared_zero.cpp - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/ELFSymbol.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFContainer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFRelocation.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNIELFTargetInfo.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/JNILibELFAPI.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/Pointer.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/UnsafeAccess.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/linux/Elf_Cmd.java - src/jdk.aot/share/classes/jdk.tools.jaotc.jnilibelf/src/jdk/tools/jaotc/jnilibelf/sunos/Elf_Cmd.java - src/jdk.aot/unix/native/libjelfshim/jdk_tools_jaotc_jnilibelf_JNILibELFAPI.c - src/jdk.aot/unix/native/libjelfshim/shim_functions.c - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/CollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.collections/src/org/graalvm/compiler/api/collections/DefaultCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/AllocationInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/IsMethodInlineDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/LockInstrumentationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/RootNameDirectiveTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/TinyInstrumentor.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/NumUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/PermanentBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.common/src/org/graalvm/compiler/common/RetryableBailoutException.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64AddressLowering.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64SuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64SuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/CollectionsFactory.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LinkedIdentityHashMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LocationIdentity.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArrayMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ArraySet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCSuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationLoadFieldConstantFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardEliminationCornerCasesTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/inlining/RecursiveInliningTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/Fingerprint.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/DefaultNodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeCollectionsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeNodeMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArchHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotSuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCDeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotEnterUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotLeaveUnpackFramesStackFrameOp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCUncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorld.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorldOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompressEncoding.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/PrintStreamOption.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/CompressionNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DeoptimizationFetchUnrollInfoCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DirectCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/EnterUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/HotSpotNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveCurrentStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveDeoptimizedStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/LeaveUnpackFramesStackFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/PushInterpreterFrameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SaveAllRegistersNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetAnchorNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/SnippetLocationProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/UncommonTrapCallNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/HotSpotLIRKindTool.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/type/NarrowOopStamp.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/DeoptimizationStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/UncommonTrapStub.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/DefaultSuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceIntervalWalker.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/FastSSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilder.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIBuilderBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIConstructionPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssi/SSIVerifier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationBeginNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationEndNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationInliningCallback.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/InstrumentationNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/IsMethodInlinedNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/MonitorProxyNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/debug/instrumentation/RootNameNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeLoadNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/UnsafeStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/CompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/LoweredCompareAndSwapNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/DefaultNodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/NodeCostProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/PiPushable.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/NestedBooleanOptionValueTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options.test/src/org/graalvm/compiler/options/test/TestOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/DerivedOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/EnumOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/NestedBooleanOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/StableOptionValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/DominatorConditionalEliminationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/OptimizeGuardAnchorsPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/PushThroughPiPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ValueAnchorCleanupPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/ExtractInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/HighTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/InlineInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/instrumentation/MidTierReconcileInstrumentationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/IntegerMulExactFoldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/InlineGraalDirectivesPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/StandardGraphBuilderPlugins.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/WordOperationPlugin.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/DirectObjectStoreNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/Salver.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverDebugConfigCustomizer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/SalverOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataDict.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/data/DataList.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractGraalDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractMethodScopeDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/AbstractSerializerDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/Dumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/dumper/GraphDumper.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/AbstractGraalDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/DumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/handler/GraphDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/package-info.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/AbstractSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/JSONSerializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/serialize/Serializer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/ECIDUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/util/MethodContext.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/ChannelDumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.salver/src/org/graalvm/compiler/salver/writer/DumpWriter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicUnsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/AtomicWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/ComparableWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Pointer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/PointerUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Signed.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Unsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/UnsignedUtils.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Word.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/nodes/WordCastNode.java ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/opto/macro.cpp - src/share/vm/utilities/array.hpp ! src/share/vm/utilities/globalDefinitions.hpp - test/compiler/aot/jdk.tools.jaotc.jnilibelf.test/src/jdk/tools/jaotc/jnilibelf/test/JNILibELFTest.java - test/compiler/cpuflags/predicate/AESSupportPredicate.java - test/compiler/testlibrary/rtm/predicate/SupportedCPU.java - test/compiler/testlibrary/rtm/predicate/SupportedOS.java - test/compiler/testlibrary/rtm/predicate/SupportedVM.java - test/gc/stress/TestGCOld.java - test/runtime/SharedArchiveFile/CDSTestUtils.java - test/runtime/modules/JVMGetModuleByPkgName.java Changeset: f025cf2a4a78 Author: mdoerr Date: 2017-06-22 18:33 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f025cf2a4a78 8181810: PPC64: Leverage extrdi for bitfield extract Reviewed-by: mdoerr, simonis Contributed-by: Matthew Brandyberry ! src/cpu/ppc/vm/ppc.ad Changeset: e14e15f39bae Author: twisti Date: 2017-06-22 13:59 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e14e15f39bae 8182729: [AOT] remove UseConcMarkSweepGC check when loading libraries Reviewed-by: kvn ! src/jdk.aot/share/classes/jdk.tools.jaotc.binformat/src/jdk/tools/jaotc/binformat/BinaryContainer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfig.java ! src/share/vm/aot/aotCodeHeap.cpp ! src/share/vm/aot/aotCodeHeap.hpp Changeset: f00bac053192 Author: kvn Date: 2017-06-22 15:26 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f00bac053192 8181113: jaotc options lost after 8177046 Reviewed-by: iveresov, dlong ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/Main.java Changeset: c57359443ca8 Author: stuefe Date: 2017-06-13 08:09 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c57359443ca8 8182034: os::Posix::is_valid_signal() should, if it uses sigaddset, initialize the signal set Summary: Added missing sigemptyset. Reviewed-by: kbarrett, clanger ! src/os/posix/vm/os_posix.cpp Changeset: 3b962efc6515 Author: kbarrett Date: 2017-06-22 23:39 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3b962efc6515 Merge Changeset: 7903df1b0c4f Author: kbarrett Date: 2017-06-22 20:47 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7903df1b0c4f 8181449: Fix debug.hpp / globalDefinitions.hpp dependency inversion Summary: Refactor debug.hpp and reverse include dependency. Reviewed-by: coleenp, stefank, dcubed ! make/lib/CompileJvm.gmk ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/arm/vm/methodHandles_arm.cpp ! src/cpu/arm/vm/vm_version_arm_32.cpp ! src/cpu/arm/vm/vm_version_arm_64.cpp ! src/cpu/ppc/vm/methodHandles_ppc.cpp ! src/cpu/ppc/vm/vm_version_ppc.cpp ! src/cpu/s390/vm/methodHandles_s390.cpp ! src/cpu/s390/vm/vm_version_s390.cpp ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/macroAssembler_sparc.hpp ! src/cpu/sparc/vm/methodHandles_sparc.cpp ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.hpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/cpu/x86/vm/vm_version_x86.cpp ! src/os/bsd/vm/decoder_machO.cpp ! src/share/vm/aot/aotLoader.cpp ! src/share/vm/c1/c1_CFGPrinter.cpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciReplay.cpp ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/classfile/modules.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/vmSymbols.cpp ! src/share/vm/code/codeBlob.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/compiler/compileLog.cpp ! src/share/vm/compiler/compilerOracle.cpp ! src/share/vm/gc/g1/heapRegionRemSet.cpp ! src/share/vm/gc/g1/satbMarkQueue.cpp ! src/share/vm/gc/parallel/psParallelCompact.cpp ! src/share/vm/gc/shared/ageTable.cpp ! src/share/vm/gc/shared/collectedHeap.hpp ! src/share/vm/gc/shared/gcId.cpp ! src/share/vm/gc/shared/genCollectedHeap.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/jvmci/jvmciCompiler.cpp ! src/share/vm/jvmci/jvmci_globals.cpp ! src/share/vm/logging/logConfiguration.cpp ! src/share/vm/logging/logDecorations.cpp ! src/share/vm/logging/logFileOutput.cpp ! src/share/vm/logging/logFileStreamOutput.cpp ! src/share/vm/logging/logOutput.cpp ! src/share/vm/logging/logTagSet.cpp ! src/share/vm/memory/filemap.cpp ! src/share/vm/memory/metaspaceShared.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/generateOopMap.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/klassVtable.cpp ! src/share/vm/prims/jniCheck.cpp ! src/share/vm/prims/methodHandles.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/commandLineFlagRangeList.cpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/frame.cpp ! src/share/vm/runtime/globals.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/perfData.cpp ! src/share/vm/runtime/perfMemory.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/services/attachListener.cpp ! src/share/vm/services/diagnosticArgument.cpp ! src/share/vm/services/diagnosticCommand.cpp ! src/share/vm/services/diagnosticFramework.cpp ! src/share/vm/services/heapDumper.cpp ! src/share/vm/services/management.cpp ! src/share/vm/services/memTracker.cpp ! src/share/vm/services/writeableFlags.hpp + src/share/vm/utilities/breakpoint.hpp + src/share/vm/utilities/compilerWarnings.hpp ! src/share/vm/utilities/debug.cpp ! src/share/vm/utilities/debug.hpp ! src/share/vm/utilities/elfStringTable.cpp ! src/share/vm/utilities/events.hpp + src/share/vm/utilities/formatBuffer.cpp + src/share/vm/utilities/formatBuffer.hpp ! src/share/vm/utilities/globalDefinitions.hpp ! src/share/vm/utilities/globalDefinitions_gcc.hpp ! src/share/vm/utilities/globalDefinitions_sparcWorks.hpp ! src/share/vm/utilities/globalDefinitions_visCPP.hpp ! src/share/vm/utilities/globalDefinitions_xlc.hpp ! src/share/vm/utilities/macros.hpp ! src/share/vm/utilities/ostream.cpp ! src/share/vm/utilities/vmError.cpp ! src/share/vm/utilities/vmError.hpp ! test/native/logging/logTestFixture.cpp ! test/native/logging/test_log.cpp ! test/native/logging/test_logConfiguration.cpp ! test/native/logging/test_logDecorators.cpp ! test/native/logging/test_logFileOutput.cpp ! test/native/logging/test_logMessageTest.cpp ! test/native/logging/test_logTagLevelExpression.cpp ! test/native/logging/test_logTagSetDescriptions.cpp ! test/native/runtime/test_arguments.cpp Changeset: 9326be322797 Author: kbarrett Date: 2017-06-23 01:08 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9326be322797 Merge Changeset: 3c1f505900ff Author: hseigel Date: 2017-06-23 09:54 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3c1f505900ff 8182720: In InstanceKlass.cpp, get init_lock from handle Summary: Replace init_lock() calls with h_init_lock() calls Reviewed-by: sspitsyn, coleenp ! src/share/vm/oops/instanceKlass.cpp Changeset: 26a2358e2796 Author: kvn Date: 2017-06-23 15:16 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/26a2358e2796 8182138: Disable generating INC and DEC instructions on Xeon Phi and ATOM CPUs Reviewed-by: kvn Contributed-by: rahul.kandu at intel.com ! src/cpu/x86/vm/vm_version_x86.cpp ! src/cpu/x86/vm/vm_version_x86.hpp Changeset: f0941295b402 Author: stefank Date: 2017-06-22 09:07 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f0941295b402 8182696: Remove gcTrace.hpp include from referenceProcessor.hpp Reviewed-by: tschatzl, kbarrett ! src/share/vm/gc/g1/g1CollectedHeap.hpp ! src/share/vm/gc/g1/g1ParScanThreadState.cpp ! src/share/vm/gc/parallel/generationSizer.cpp ! src/share/vm/gc/serial/tenuredGeneration.cpp ! src/share/vm/gc/shared/referenceProcessor.hpp ! src/share/vm/runtime/commandLineFlagConstraintList.cpp ! test/native/gc/shared/test_collectorPolicy.cpp Changeset: f82c9c680279 Author: stefank Date: 2017-04-11 23:45 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f82c9c680279 8178490: Usages of is_object_aligned with pointers are broken Reviewed-by: tschatzl, kbarrett ! src/share/vm/gc/parallel/asPSYoungGen.cpp ! src/share/vm/gc/parallel/mutableSpace.cpp ! src/share/vm/gc/parallel/psParallelCompact.inline.hpp ! src/share/vm/gc/parallel/psPromotionLAB.hpp ! src/share/vm/gc/parallel/psPromotionLAB.inline.hpp ! src/share/vm/gc/parallel/psYoungGen.cpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: 3c91140c49a7 Author: iveresov Date: 2017-06-26 16:10 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3c91140c49a7 8182883: Update Graal Reviewed-by: kvn ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ByteBufferTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/DirectByteBufferTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeClass.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CheckGraalIntrinsics.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotGraalMBeanTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfig.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/JVMCIVersionCheck.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotClassInitializationPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/aot/EliminateRedundantInitializationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/aot/ReplaceConstantNodesPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/NewObjectSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParserOptions.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/AddNodeTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/StaticFieldAccessTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/StructuredGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/DynamicNewArrayNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/DynamicNewInstanceNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/InliningUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionDescriptors.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionKey.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionValues.java ! test/compiler/aot/scripts/build-bootmodules.sh Changeset: 9c4f3c751cf7 Author: stuefe Date: 2017-06-27 07:52 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9c4f3c751cf7 8182864: [aix] os::print_native_callstack should not assert for primordial threadness Reviewed-by: clanger, mdoerr ! src/os/aix/vm/os_aix.cpp ! src/os/aix/vm/porting_aix.cpp Changeset: 095ddb857f7c Author: redestad Date: 2017-06-22 15:53 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/095ddb857f7c 8182487: Add Unsafe.objectFieldOffset(Class, String) Reviewed-by: dsimms, twisti, bchristi, mgerdin, psandoz, chegar ! src/share/vm/prims/unsafe.cpp Changeset: 7d3478491210 Author: redestad Date: 2017-06-27 12:27 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7d3478491210 Merge Changeset: df052f17f739 Author: iignatyev Date: 2017-05-24 18:28 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/df052f17f739 8181053: port basicvmtest to jtreg Reviewed-by: ehelin ! test/Makefile ! test/TEST.groups + test/sanity/BasicVMTest.java Changeset: 4307acc60c10 Author: tschatzl Date: 2017-06-14 11:26 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4307acc60c10 8178148: Log more detailed information about scan rs phase Summary: Add logging about the number of cards actually scanned, claimed and skipped during the Scan RS phase Reviewed-by: ehelin, sangheki ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1GCPhaseTimes.cpp ! src/share/vm/gc/g1/g1GCPhaseTimes.hpp ! src/share/vm/gc/g1/g1ParScanThreadState.cpp ! src/share/vm/gc/g1/g1ParScanThreadState.hpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSet.hpp ! src/share/vm/gc/g1/workerDataArray.hpp ! src/share/vm/gc/g1/workerDataArray.inline.hpp ! test/gc/g1/TestGCLogMessages.java ! test/native/gc/g1/test_workerDataArray.cpp Changeset: ddabaeb7d186 Author: tschatzl Date: 2017-06-28 10:58 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ddabaeb7d186 8175554: Improve G1UpdateRSOrPushRefClosure Summary: Micro-optimizations and improving naming for the G1UpdateRSOrPushRefClosure Reviewed-by: ehelin, sangheki ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1CollectedHeap.hpp ! src/share/vm/gc/g1/g1CollectedHeap.inline.hpp ! src/share/vm/gc/g1/g1OopClosures.cpp ! src/share/vm/gc/g1/g1OopClosures.hpp ! src/share/vm/gc/g1/g1OopClosures.inline.hpp ! src/share/vm/gc/g1/g1ParScanThreadState.hpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSet.hpp ! src/share/vm/gc/g1/g1RootProcessor.hpp ! src/share/vm/gc/g1/g1_specialized_oop_closures.hpp Changeset: e97bbff8901f Author: tschatzl Date: 2017-06-28 12:11 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e97bbff8901f 8183002: Remove unused concurrent parameter in HeapRegionManager::par_iterate Reviewed-by: ehelin, sjohanss ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1CollectedHeap.hpp ! src/share/vm/gc/g1/g1ConcurrentMark.cpp ! src/share/vm/gc/g1/heapRegionManager.cpp ! src/share/vm/gc/g1/heapRegionManager.hpp Changeset: 46d3ce319f37 Author: tschatzl Date: 2017-06-28 12:11 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/46d3ce319f37 8183006: Remove unused IterateOopClosureRegionClosure Reviewed-by: sjohanss, ehelin ! src/share/vm/gc/g1/g1CollectedHeap.cpp Changeset: 9072459a848c Author: tschatzl Date: 2017-06-28 14:15 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9072459a848c 8178151: Clean up G1RemSet files Summary: Remove unnecessary class members, improve method visibility and naming Reviewed-by: ehelin, sjohanss ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSet.hpp ! src/share/vm/gc/g1/g1RemSet.inline.hpp Changeset: 54010cf75b26 Author: stuefe Date: 2017-06-28 16:12 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/54010cf75b26 8182984: [aix] Make stack traces independent on successful vm initialization Reviewed-by: simonis, mdoerr, clanger ! src/os/aix/vm/os_aix.cpp ! src/os/aix/vm/porting_aix.cpp ! src/os/aix/vm/porting_aix.hpp Changeset: 140457698f02 Author: rehn Date: 2017-06-28 14:18 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/140457698f02 8180421: Change default value of BiasedLockingStartupDelay to 0 Summary: As CSR 8181778 Reviewed-by: tschatzl, redestad, coleenp, dcubed ! src/share/vm/runtime/globals.hpp Changeset: e0085377b49e Author: rehn Date: 2017-06-28 16:07 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e0085377b49e Merge Changeset: da14f480337c Author: rehn Date: 2017-06-28 17:16 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/da14f480337c Merge Changeset: bf98a9361853 Author: ehelin Date: 2017-06-28 14:17 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/bf98a9361853 8183122: Rename RefineRecordRefsIntoCSCardTableEntryClosure to G1RefineCardClosure Reviewed-by: sjohanss, tschatzl ! src/share/vm/gc/g1/g1RemSet.cpp Changeset: c1f01a37a652 Author: ehelin Date: 2017-06-28 15:21 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c1f01a37a652 Merge Changeset: 0b46fca86c83 Author: bobv Date: 2017-06-27 14:28 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/0b46fca86c83 8182053: Test compiler/aot/verification/ClassAndLibraryNotMatchTest.java fails in JPRT for jdk10/hs Reviewed-by: kvn ! test/compiler/aot/verification/ClassAndLibraryNotMatchTest.java Changeset: 1ceb4b6ed480 Author: bobv Date: 2017-06-27 14:29 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1ceb4b6ed480 8182052: Test compiler/aot/cli/jaotc/CompileJarTest.java fails in JPRT Reviewed-by: kvn ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/collect/FileSupport.java ! test/ProblemList.txt Changeset: 908353aff130 Author: bobv Date: 2017-06-27 14:34 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/908353aff130 Merge - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/AtomicUnsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/AtomicWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/ComparableWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/LocationIdentity.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/Pointer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/PointerBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/PointerUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/Signed.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/Unsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/UnsignedUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/WordBase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.api.word/src/org/graalvm/api/word/WordFactory.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64AddressLowering.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64SuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64SuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCSuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotSuitesProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/DefaultSuitesProvider.java Changeset: ac7a9072cd01 Author: bobv Date: 2017-06-28 14:13 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ac7a9072cd01 Merge Changeset: 8b1e00a74a37 Author: bobv Date: 2017-06-28 18:44 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/8b1e00a74a37 Merge Changeset: e1bb3d3d7ee2 Author: coleenp Date: 2017-06-28 16:14 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e1bb3d3d7ee2 8182554: Code for os::random() assumes long is 32 bits Summary: And make updating the _rand_seed thread safe. Reviewed-by: stuefe, kbarrett, stefank ! src/os/windows/vm/os_windows.cpp ! src/share/vm/classfile/altHashing.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/synchronizer.cpp ! test/native/runtime/test_os.cpp Changeset: 0fff12135bdb Author: coleenp Date: 2017-06-28 20:21 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/0fff12135bdb Merge Changeset: 4358b7205556 Author: coleenp Date: 2017-06-28 19:12 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4358b7205556 8182848: Some functions misplaced in debug.hpp Summary: moved to vmError.hpp,cpp where they seemed more appropriate Reviewed-by: stefank, stuefe - src/cpu/aarch64/vm/debug_aarch64.cpp ! src/cpu/aarch64/vm/frame_aarch64.cpp - src/cpu/arm/vm/debug_arm.cpp ! src/cpu/arm/vm/frame_arm.cpp - src/cpu/ppc/vm/debug_ppc.cpp ! src/cpu/ppc/vm/frame_ppc.cpp - src/cpu/s390/vm/debug_s390.cpp ! src/cpu/s390/vm/frame_s390.cpp - src/cpu/sparc/vm/debug_sparc.cpp ! src/cpu/sparc/vm/frame_sparc.cpp - src/cpu/x86/vm/debug_x86.cpp ! src/cpu/x86/vm/frame_x86.cpp - src/cpu/zero/vm/debug_zero.cpp ! src/cpu/zero/vm/frame_zero.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/attachListener_solaris.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/oops/method.cpp ! src/share/vm/opto/cfgnode.cpp ! src/share/vm/opto/machnode.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/multnode.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/frame.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/stubRoutines.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vmThread.cpp ! src/share/vm/utilities/debug.cpp ! src/share/vm/utilities/debug.hpp ! src/share/vm/utilities/ostream.cpp ! src/share/vm/utilities/vmError.cpp ! src/share/vm/utilities/vmError.hpp ! src/share/vm/utilities/xmlstream.cpp Changeset: 20d2ef97f175 Author: ehelin Date: 2017-06-28 14:38 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/20d2ef97f175 8183124: Remove OopsInHeapRegionClosure Reviewed-by: sjohanss, tschatzl ! src/share/vm/gc/g1/g1CollectedHeap.hpp ! src/share/vm/gc/g1/g1EvacFailure.cpp ! src/share/vm/gc/g1/g1OopClosures.cpp ! src/share/vm/gc/g1/g1OopClosures.hpp Changeset: fd3eb23de6b9 Author: neliasso Date: 2017-06-27 15:22 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/fd3eb23de6b9 8182711: Re/Introduce private interface for HW-specific prefetch options in SPARC VM_Version Summary: Re/Introduce private interface for HW-specific prefetch options in SPARC VM_Version Reviewed-by: kvn, neliasso Contributed-by: phedlin at oracle.com ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/cpu/sparc/vm/vm_version_sparc.hpp Changeset: 3a11d383f61e Author: neliasso Date: 2017-06-27 15:27 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3a11d383f61e 8172231: SPARC ISA/CPU feature detection is broken/insufficient (on Solaris) Summary: Update for new platforms Reviewed-by: kvn Contributed-by: phedlin at oracle.com ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/sparc.ad ! src/cpu/sparc/vm/vmStructs_sparc.hpp ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/cpu/sparc/vm/vm_version_sparc.hpp ! src/cpu/sparc/vm/vmreg_sparc.hpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot.sparc/src/jdk/vm/ci/hotspot/sparc/SPARCHotSpotJVMCIBackendFactory.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot.sparc/src/jdk/vm/ci/hotspot/sparc/SPARCHotSpotVMConfig.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.sparc/src/jdk/vm/ci/sparc/SPARC.java ! src/os_cpu/solaris_sparc/vm/vm_version_solaris_sparc.cpp ! src/share/vm/jvmci/vmStructs_jvmci.cpp Changeset: 45b1c821e688 Author: neliasso Date: 2017-06-27 15:31 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/45b1c821e688 8181852: Remove option 'UseV8InstrsOnly' Summary: Not supported Reviewed-by: kvn Contributed-by: phedlin at oracle.com ! src/cpu/sparc/vm/globals_sparc.hpp ! src/cpu/sparc/vm/vm_version_sparc.cpp Changeset: 74cc74532e58 Author: neliasso Date: 2017-06-27 15:34 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/74cc74532e58 8181853: Remove use of 'v9_only()' Summary: v9 is the only supported ISA Reviewed-by: kvn Contributed-by: phedlin at oracle.com ! src/cpu/sparc/vm/assembler_sparc.hpp ! src/cpu/sparc/vm/assembler_sparc.inline.hpp Changeset: 1f86ebfb7d88 Author: neliasso Date: 2017-06-27 15:36 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1f86ebfb7d88 8181868: Remove use of 'has_fast_fxtof()' Summary: No longer used Reviewed-by: kvn Contributed-by: phedlin at oracle.com ! src/cpu/sparc/vm/sparc.ad ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/cpu/sparc/vm/vm_version_sparc.hpp Changeset: e579e520b268 Author: neliasso Date: 2017-06-27 15:46 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e579e520b268 8144448: Avoid placing CTI immediately following or preceding RDPC instruction Summary: Best practice for new SPARC CPUs Reviewed-by: kvn Contributed-by: phedlin at oracle.com ! src/cpu/sparc/vm/assembler_sparc.cpp ! src/cpu/sparc/vm/assembler_sparc.hpp ! src/cpu/sparc/vm/assembler_sparc.inline.hpp ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/macroAssembler_sparc.hpp ! src/cpu/sparc/vm/macroAssembler_sparc.inline.hpp ! src/cpu/sparc/vm/methodHandles_sparc.hpp ! src/cpu/sparc/vm/nativeInst_sparc.hpp ! src/cpu/sparc/vm/sparc.ad Changeset: 8da47deb4602 Author: neliasso Date: 2017-06-27 15:50 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/8da47deb4602 8164888: Intrinsify fused mac operations on SPARC Summary: Such speed, much wow Reviewed-by: kvn Contributed-by: phedlin at oracle.com ! src/cpu/sparc/vm/abstractInterpreter_sparc.cpp ! src/cpu/sparc/vm/assembler_sparc.hpp ! src/cpu/sparc/vm/assembler_sparc.inline.hpp ! src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp ! src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp ! src/cpu/sparc/vm/c2_globals_sparc.hpp ! src/cpu/sparc/vm/sparc.ad ! src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/share/vm/runtime/stubRoutines.hpp Changeset: 06adb5bd5d7d Author: neliasso Date: 2017-06-29 12:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/06adb5bd5d7d Merge - src/cpu/aarch64/vm/debug_aarch64.cpp - src/cpu/arm/vm/debug_arm.cpp - src/cpu/ppc/vm/debug_ppc.cpp - src/cpu/s390/vm/debug_s390.cpp - src/cpu/sparc/vm/debug_sparc.cpp - src/cpu/x86/vm/debug_x86.cpp - src/cpu/zero/vm/debug_zero.cpp Changeset: b1a30c6a6dc4 Author: neliasso Date: 2017-06-29 14:54 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b1a30c6a6dc4 Merge Changeset: 7f295b857a02 Author: redestad Date: 2017-06-29 14:22 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7f295b857a02 8183001: Various inlining improvements Reviewed-by: iklam, mikael, ehelin, stefank ! src/share/vm/code/compressedStream.cpp ! src/share/vm/code/compressedStream.hpp ! src/share/vm/memory/metaspaceShared.cpp ! src/share/vm/memory/metaspaceShared.hpp ! src/share/vm/runtime/frame.cpp ! src/share/vm/runtime/frame.hpp ! src/share/vm/runtime/frame.inline.hpp Changeset: 39a52d12ff8a Author: redestad Date: 2017-06-29 17:32 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/39a52d12ff8a Merge Changeset: f608f5922882 Author: stuefe Date: 2017-06-29 12:35 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f608f5922882 8183228: Fix optimized build after JDK-8170933 Reviewed-by: mgerdin, coleenp ! src/share/vm/memory/metaspace.cpp Changeset: 10ccf0a5f63f Author: coleenp Date: 2017-06-29 19:09 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/10ccf0a5f63f Merge Changeset: 6adf6d235dd3 Author: mgerdin Date: 2017-06-26 15:25 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/6adf6d235dd3 8183198: Factor out thread state serialization into a proper helper function Reviewed-by: tschatzl, eosterlund, coleenp ! src/cpu/zero/vm/cppInterpreter_zero.cpp - src/os/aix/vm/interfaceSupport_aix.hpp - src/os/bsd/vm/interfaceSupport_bsd.hpp - src/os/linux/vm/interfaceSupport_linux.hpp ! src/os/posix/vm/os_posix.hpp - src/os/solaris/vm/interfaceSupport_solaris.hpp - src/os/windows/vm/interfaceSupport_windows.hpp ! src/os/windows/vm/os_windows.hpp ! src/share/vm/runtime/interfaceSupport.hpp ! src/share/vm/runtime/thread.cpp Changeset: 2bfe62d0ae69 Author: mgerdin Date: 2017-06-30 10:36 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/2bfe62d0ae69 8183203: Remove stubRoutines_os Reviewed-by: stefank, tschatzl - src/os/bsd/vm/stubRoutines_bsd.cpp - src/os/linux/vm/stubRoutines_linux.cpp - src/os/solaris/vm/stubRoutines_solaris.cpp - src/os/windows/vm/stubRoutines_windows.cpp Changeset: effb29c2c58f Author: njian Date: 2017-06-23 09:25 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/effb29c2c58f 8182583: AArch64: FMA Vectorization on aarch64 Reviewed-by: aph Contributed-by: yang.zhang at linaro.org ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/assembler_aarch64.hpp Changeset: c4fe451f52e5 Author: aharlap Date: 2017-06-29 14:35 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c4fe451f52e5 8178507: co-locate nsk.regression.gc tests Summary: convert four tonga tests into jtreg Reviewed-by: lmesnik, iignatyev ! make/test/JtregNative.gmk + test/gc/TestFullGCALot.java + test/gc/TestMemoryInitialization.java + test/gc/TestMemoryInitializationWithCMS.java + test/gc/TestMemoryInitializationWithSerial.java + test/gc/TestStackOverflow.java + test/gc/cslocker/TestCSLocker.java + test/gc/cslocker/libTestCSLocker.c Changeset: 16e7ba4b426e Author: redestad Date: 2017-07-03 09:01 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/16e7ba4b426e 8183232: Avoid resolving method_kind in AbstractInterpreter::can_be_compiled Reviewed-by: coleenp, mdoerr, neliasso ! src/cpu/aarch64/vm/abstractInterpreter_aarch64.cpp ! src/cpu/arm/vm/abstractInterpreter_arm.cpp ! src/cpu/ppc/vm/abstractInterpreter_ppc.cpp ! src/cpu/s390/vm/abstractInterpreter_s390.cpp ! src/cpu/sparc/vm/abstractInterpreter_sparc.cpp ! src/cpu/x86/vm/abstractInterpreter_x86.cpp ! src/cpu/zero/vm/abstractInterpreter_zero.cpp ! src/share/vm/interpreter/abstractInterpreter.hpp Changeset: af73809af802 Author: ehelin Date: 2017-07-03 14:24 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/af73809af802 8183281: Remove unnecessary call to increment_gc_time_stamp Reviewed-by: sjohanss, tschatzl ! src/share/vm/gc/g1/g1CollectedHeap.cpp Changeset: 28e384fe79fd Author: mgerdin Date: 2017-06-30 10:36 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/28e384fe79fd 8183229: Implement WindowsSemaphore::trywait Reviewed-by: redestad, stefank, kbarrett ! src/os/windows/vm/os_windows.cpp ! src/os/windows/vm/semaphore_windows.hpp ! src/share/vm/runtime/semaphore.hpp ! test/native/runtime/test_semaphore.cpp Changeset: da0ca6f7b762 Author: ehelin Date: 2017-07-03 17:19 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/da0ca6f7b762 8153360: G1HRRSFlushLogBuffersOnVerify with remembered set verification does not work Reviewed-by: sjohanss, tschatzl ! src/share/vm/gc/g1/g1HeapVerifier.cpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSet.hpp ! src/share/vm/gc/g1/g1_globals.hpp ! src/share/vm/gc/g1/heapRegion.cpp Changeset: 7b76d42c6419 Author: ehelin Date: 2017-07-03 17:43 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7b76d42c6419 Merge Changeset: 735ad5ece3d1 Author: tschatzl Date: 2017-07-04 09:15 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/735ad5ece3d1 8183394: Remove unused G1RemSet::n_workers() method Reviewed-by: mgerdin, ehelin ! src/share/vm/gc/g1/g1RemSet.hpp ! src/share/vm/gc/g1/g1RemSet.inline.hpp Changeset: 4bed521b3532 Author: tschatzl Date: 2017-07-04 09:16 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4bed521b3532 8179677: Let G1Remset::_conc_refined_cards only count number of cards concurrently refined Reviewed-by: sjohanss, ehelin ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSet.hpp ! src/share/vm/gc/g1/g1RemSetSummary.cpp ! src/share/vm/gc/g1/g1RemSetSummary.hpp Changeset: 62cc5f8a66e8 Author: mdoerr Date: 2017-07-04 15:11 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/62cc5f8a66e8 8181809: PPC64: Leverage mtfprd/mffprd on POWER8 Reviewed-by: mdoerr, simonis Contributed-by: Matthew Brandyberry ! src/cpu/ppc/vm/assembler_ppc.hpp ! src/cpu/ppc/vm/assembler_ppc.inline.hpp ! src/cpu/ppc/vm/c1_LIRAssembler_ppc.cpp ! src/cpu/ppc/vm/c1_LIRGenerator_ppc.cpp ! src/cpu/ppc/vm/interp_masm_ppc.hpp ! src/cpu/ppc/vm/interp_masm_ppc_64.cpp ! src/cpu/ppc/vm/ppc.ad ! src/cpu/ppc/vm/templateTable_ppc_64.cpp ! src/cpu/ppc/vm/vm_version_ppc.hpp Changeset: 17b9f0abe92f Author: stefank Date: 2017-04-11 23:45 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/17b9f0abe92f 8178491: -Xss and -XX:ThreadStackSize argument parsing truncates bits Reviewed-by: gziemski, kbarrett ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp ! src/share/vm/runtime/globals.hpp ! test/native/runtime/test_arguments.cpp Changeset: d83ba62a2916 Author: stefank Date: 2017-04-12 13:05 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d83ba62a2916 8178495: Bug in the align_size_up_ macro Reviewed-by: kbarrett, tschatzl, rehn ! src/share/vm/utilities/globalDefinitions.hpp + test/native/utilities/test_align.cpp Changeset: fcb4803050e8 Author: stefank Date: 2017-04-12 17:53 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/fcb4803050e8 8178489: Make align functions more type safe and consistent Reviewed-by: mgerdin, rehn ! src/cpu/ppc/vm/vm_version_ppc.cpp ! src/os/aix/vm/misc_aix.cpp ! src/os/aix/vm/os_aix.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/posix/vm/os_posix.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp ! src/share/vm/compiler/oopMap.cpp ! src/share/vm/gc/cms/compactibleFreeListSpace.hpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc/g1/g1AllocRegion.cpp ! src/share/vm/gc/g1/g1Allocator.cpp ! src/share/vm/gc/g1/g1CardLiveData.cpp ! src/share/vm/gc/g1/g1ConcurrentMark.cpp ! src/share/vm/gc/g1/g1PageBasedVirtualSpace.cpp ! src/share/vm/gc/parallel/cardTableExtension.cpp ! src/share/vm/gc/parallel/psAdaptiveSizePolicy.cpp ! src/share/vm/gc/serial/defNewGeneration.cpp ! src/share/vm/gc/shared/barrierSet.inline.hpp ! src/share/vm/gc/shared/cardTableModRefBS.cpp ! src/share/vm/gc/shared/cardTableModRefBS.hpp ! src/share/vm/gc/shared/collectedHeap.cpp ! src/share/vm/gc/shared/collectedHeap.inline.hpp ! src/share/vm/gc/shared/collectorPolicy.cpp ! src/share/vm/gc/shared/plab.cpp ! src/share/vm/gc/shared/space.cpp ! src/share/vm/gc/shared/space.hpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspaceShared.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/memory/virtualspace.cpp ! src/share/vm/oops/array.hpp ! src/share/vm/oops/constMethod.hpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/cpCache.hpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/method.hpp ! src/share/vm/oops/methodCounters.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/runtime/atomic.hpp ! src/share/vm/runtime/commandLineFlagConstraintsGC.cpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/utilities/globalDefinitions.hpp ! test/native/utilities/test_align.cpp Changeset: 7235bc30c0d7 Author: stefank Date: 2017-07-04 15:58 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7235bc30c0d7 8178499: Remove _ptr_ and _size_ infixes from align functions Reviewed-by: rehn, tschatzl ! src/cpu/ppc/vm/c1_MacroAssembler_ppc.cpp ! src/cpu/ppc/vm/c1_Runtime1_ppc.cpp ! src/cpu/ppc/vm/stubGenerator_ppc.cpp ! src/cpu/ppc/vm/vm_version_ppc.cpp ! src/cpu/sparc/vm/c1_Runtime1_sparc.cpp ! src/cpu/sparc/vm/jvmciCodeInstaller_sparc.cpp ! src/cpu/sparc/vm/memset_with_concurrent_readers_sparc.cpp ! src/cpu/x86/vm/bytes_x86.hpp ! src/cpu/zero/vm/interpreterFrame_zero.hpp ! src/cpu/zero/vm/interpreterRT_zero.cpp ! src/cpu/zero/vm/stack_zero.cpp ! src/cpu/zero/vm/stack_zero.hpp ! src/os/aix/vm/misc_aix.cpp ! src/os/aix/vm/os_aix.cpp ! src/os/aix/vm/porting_aix.cpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/posix/vm/os_posix.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/os_cpu/linux_zero/vm/os_linux_zero.cpp ! src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp ! src/share/vm/asm/codeBuffer.cpp ! src/share/vm/asm/codeBuffer.hpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/compiler/oopMap.cpp ! src/share/vm/gc/cms/compactibleFreeListSpace.cpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc/g1/g1AllocRegion.cpp ! src/share/vm/gc/g1/g1Allocator.cpp ! src/share/vm/gc/g1/g1CardLiveData.cpp ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1ConcurrentMark.cpp ! src/share/vm/gc/g1/g1PageBasedVirtualSpace.cpp ! src/share/vm/gc/g1/g1PageBasedVirtualSpace.hpp ! src/share/vm/gc/g1/g1RegionToSpaceMapper.cpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/ptrQueue.hpp ! src/share/vm/gc/g1/sparsePRT.hpp ! src/share/vm/gc/parallel/adjoiningGenerations.cpp ! src/share/vm/gc/parallel/asPSOldGen.cpp ! src/share/vm/gc/parallel/asPSYoungGen.cpp ! src/share/vm/gc/parallel/cardTableExtension.cpp ! src/share/vm/gc/parallel/mutableSpace.cpp ! src/share/vm/gc/parallel/objectStartArray.cpp ! src/share/vm/gc/parallel/parMarkBitMap.cpp ! src/share/vm/gc/parallel/psAdaptiveSizePolicy.cpp ! src/share/vm/gc/parallel/psAdaptiveSizePolicy.hpp ! src/share/vm/gc/parallel/psMarkSweep.cpp ! src/share/vm/gc/parallel/psOldGen.cpp ! src/share/vm/gc/parallel/psParallelCompact.cpp ! src/share/vm/gc/parallel/psParallelCompact.inline.hpp ! src/share/vm/gc/parallel/psPromotionLAB.hpp ! src/share/vm/gc/parallel/psPromotionLAB.inline.hpp ! src/share/vm/gc/parallel/psYoungGen.cpp ! src/share/vm/gc/serial/defNewGeneration.cpp ! src/share/vm/gc/serial/defNewGeneration.hpp ! src/share/vm/gc/shared/barrierSet.inline.hpp ! src/share/vm/gc/shared/cardTableModRefBS.cpp ! src/share/vm/gc/shared/cardTableModRefBS.hpp ! src/share/vm/gc/shared/collectedHeap.cpp ! src/share/vm/gc/shared/collectedHeap.inline.hpp ! src/share/vm/gc/shared/collectorPolicy.cpp ! src/share/vm/gc/shared/generationSpec.hpp ! src/share/vm/gc/shared/space.cpp ! src/share/vm/gc/shared/space.hpp ! src/share/vm/memory/allocation.inline.hpp ! src/share/vm/memory/filemap.cpp ! src/share/vm/memory/filemap.hpp ! src/share/vm/memory/heap.cpp ! src/share/vm/memory/metachunk.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspaceShared.cpp ! src/share/vm/memory/padded.hpp ! src/share/vm/memory/padded.inline.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/memory/virtualspace.cpp ! src/share/vm/oops/array.hpp ! src/share/vm/oops/arrayOop.hpp ! src/share/vm/oops/constMethod.cpp ! src/share/vm/oops/constMethod.hpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/cpCache.hpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/oops/methodCounters.hpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/oops/methodData.hpp ! src/share/vm/oops/objArrayOop.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/atomic.hpp ! src/share/vm/runtime/commandLineFlagConstraintsGC.cpp ! src/share/vm/runtime/jniHandles.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/perfMemory.cpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/services/nmtCommon.hpp ! src/share/vm/utilities/bitMap.hpp ! src/share/vm/utilities/copy.cpp ! src/share/vm/utilities/globalDefinitions.hpp ! src/share/vm/utilities/stack.inline.hpp ! test/native/gc/shared/test_collectorPolicy.cpp ! test/native/memory/test_metachunk.cpp ! test/native/runtime/test_arguments.cpp ! test/native/utilities/test_align.cpp Changeset: ebbb31f0437e Author: stefank Date: 2017-04-13 09:57 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ebbb31f0437e 8178500: Replace usages of round_to and round_down with align_up and align_down Reviewed-by: rehn, tschatzl ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/abstractInterpreter_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/arm/vm/abstractInterpreter_arm.cpp ! src/cpu/arm/vm/arm.ad ! src/cpu/arm/vm/c1_Runtime1_arm.cpp ! src/cpu/arm/vm/sharedRuntime_arm.cpp ! src/cpu/arm/vm/stubGenerator_arm.cpp ! src/cpu/arm/vm/templateInterpreterGenerator_arm.cpp ! src/cpu/ppc/vm/frame_ppc.inline.hpp ! src/cpu/ppc/vm/sharedRuntime_ppc.cpp ! src/cpu/s390/vm/c1_CodeStubs_s390.cpp ! src/cpu/s390/vm/frame_s390.inline.hpp ! src/cpu/s390/vm/sharedRuntime_s390.cpp ! src/cpu/sparc/vm/abstractInterpreter_sparc.cpp ! src/cpu/sparc/vm/c1_Runtime1_sparc.cpp ! src/cpu/sparc/vm/frame_sparc.inline.hpp ! src/cpu/sparc/vm/interp_masm_sparc.cpp ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/sharedRuntime_sparc.cpp ! src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp ! src/cpu/x86/vm/c1_CodeStubs_x86.cpp ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/cpu/x86/vm/x86_32.ad ! src/cpu/x86/vm/x86_64.ad ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/sparc/SPARCFrame.java ! src/os/posix/vm/os_posix.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/asm/codeBuffer.cpp ! src/share/vm/c1/c1_FrameMap.cpp ! src/share/vm/c1/c1_LinearScan.hpp ! src/share/vm/ci/bcEscapeAnalyzer.cpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/code/codeBlob.cpp ! src/share/vm/code/codeBlob.hpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/exceptionHandlerTable.hpp ! src/share/vm/code/icBuffer.hpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/stubs.cpp ! src/share/vm/code/vtableStubs.cpp ! src/share/vm/gc/cms/compactibleFreeListSpace.cpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.inline.hpp ! src/share/vm/gc/g1/sparsePRT.hpp ! src/share/vm/gc/parallel/generationSizer.cpp ! src/share/vm/gc/parallel/mutableNUMASpace.cpp ! src/share/vm/gc/parallel/mutableSpace.cpp ! src/share/vm/interpreter/bytecode.hpp ! src/share/vm/interpreter/bytecodeTracer.cpp ! src/share/vm/interpreter/bytecodes.cpp ! src/share/vm/interpreter/interpreter.hpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/jvmci/jvmciCodeInstaller.cpp ! src/share/vm/memory/virtualspace.cpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/opto/buildOopMap.cpp ! src/share/vm/opto/chaitin.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/macroArrayCopy.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/icache.cpp ! src/share/vm/runtime/stubRoutines.cpp ! src/share/vm/utilities/copy.hpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: bee7689fc399 Author: stefank Date: 2017-07-04 17:44 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/bee7689fc399 8183544: Missing parentheses in is_size_aligned_ macro Reviewed-by: mgerdin, tschatzl ! src/share/vm/utilities/globalDefinitions.hpp Changeset: 79d1fc5113d1 Author: stefank Date: 2017-04-24 09:14 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/79d1fc5113d1 8178501: Replace usages of align macros with calls to the align inline functions Reviewed-by: mgerdin, tschatzl ! src/os/posix/vm/os_posix.cpp ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/parallel/adjoiningGenerations.cpp ! src/share/vm/memory/padded.inline.hpp ! src/share/vm/runtime/arguments.cpp Changeset: 80834446b18b Author: redestad Date: 2017-07-04 18:36 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/80834446b18b 8183299: Improve inlining of CompiledMethod methods into frame::sender Reviewed-by: kvn, neliasso ! src/share/vm/code/compiledMethod.cpp + src/share/vm/code/compiledMethod.inline.hpp ! src/share/vm/runtime/frame.inline.hpp Changeset: 66db307acd6a Author: redestad Date: 2017-07-04 18:10 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/66db307acd6a Merge Changeset: a2753984d2c1 Author: stefank Date: 2017-07-05 11:33 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a2753984d2c1 8183552: Move align functions to align.hpp Reviewed-by: stuefe, pliden ! src/cpu/aarch64/vm/abstractInterpreter_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp ! src/cpu/arm/vm/abstractInterpreter_arm.cpp ! src/cpu/arm/vm/c1_Runtime1_arm.cpp ! src/cpu/arm/vm/sharedRuntime_arm.cpp ! src/cpu/arm/vm/stubGenerator_arm.cpp ! src/cpu/arm/vm/templateInterpreterGenerator_arm.cpp ! src/cpu/ppc/vm/c1_MacroAssembler_ppc.cpp ! src/cpu/ppc/vm/c1_Runtime1_ppc.cpp ! src/cpu/ppc/vm/frame_ppc.inline.hpp ! src/cpu/ppc/vm/sharedRuntime_ppc.cpp ! src/cpu/ppc/vm/stubGenerator_ppc.cpp ! src/cpu/ppc/vm/vm_version_ppc.cpp ! src/cpu/s390/vm/c1_CodeStubs_s390.cpp ! src/cpu/s390/vm/frame_s390.inline.hpp ! src/cpu/s390/vm/sharedRuntime_s390.cpp ! src/cpu/sparc/vm/abstractInterpreter_sparc.cpp ! src/cpu/sparc/vm/c1_Runtime1_sparc.cpp ! src/cpu/sparc/vm/frame_sparc.inline.hpp ! src/cpu/sparc/vm/interp_masm_sparc.cpp ! src/cpu/sparc/vm/jvmciCodeInstaller_sparc.cpp ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/memset_with_concurrent_readers_sparc.cpp ! src/cpu/sparc/vm/sharedRuntime_sparc.cpp ! src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp ! src/cpu/x86/vm/bytes_x86.hpp ! src/cpu/x86/vm/c1_CodeStubs_x86.cpp ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/cpu/zero/vm/interpreterFrame_zero.hpp ! src/cpu/zero/vm/interpreterRT_zero.cpp ! src/cpu/zero/vm/stack_zero.cpp ! src/cpu/zero/vm/stack_zero.hpp ! src/os/aix/vm/misc_aix.cpp ! src/os/aix/vm/os_aix.cpp ! src/os/aix/vm/porting_aix.cpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/posix/vm/os_posix.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/os_cpu/linux_zero/vm/os_linux_zero.cpp ! src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp ! src/share/vm/asm/codeBuffer.cpp ! src/share/vm/asm/codeBuffer.hpp ! src/share/vm/c1/c1_FrameMap.cpp ! src/share/vm/c1/c1_LinearScan.hpp ! src/share/vm/ci/bcEscapeAnalyzer.cpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/code/codeBlob.cpp ! src/share/vm/code/codeBlob.hpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/exceptionHandlerTable.hpp ! src/share/vm/code/icBuffer.hpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/stubs.cpp ! src/share/vm/code/vtableStubs.cpp ! src/share/vm/compiler/oopMap.cpp ! src/share/vm/gc/cms/compactibleFreeListSpace.cpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.inline.hpp ! src/share/vm/gc/g1/g1AllocRegion.cpp ! src/share/vm/gc/g1/g1Allocator.cpp ! src/share/vm/gc/g1/g1CardLiveData.cpp ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1ConcurrentMark.cpp ! src/share/vm/gc/g1/g1PageBasedVirtualSpace.cpp ! src/share/vm/gc/g1/g1PageBasedVirtualSpace.hpp ! src/share/vm/gc/g1/g1RegionToSpaceMapper.cpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/heapRegion.inline.hpp ! src/share/vm/gc/g1/ptrQueue.hpp ! src/share/vm/gc/g1/sparsePRT.hpp ! src/share/vm/gc/parallel/adjoiningGenerations.cpp ! src/share/vm/gc/parallel/asPSOldGen.cpp ! src/share/vm/gc/parallel/asPSYoungGen.cpp ! src/share/vm/gc/parallel/cardTableExtension.cpp ! src/share/vm/gc/parallel/generationSizer.cpp ! src/share/vm/gc/parallel/mutableNUMASpace.cpp ! src/share/vm/gc/parallel/mutableSpace.cpp ! src/share/vm/gc/parallel/objectStartArray.cpp ! src/share/vm/gc/parallel/parMarkBitMap.cpp ! src/share/vm/gc/parallel/psAdaptiveSizePolicy.cpp ! src/share/vm/gc/parallel/psAdaptiveSizePolicy.hpp ! src/share/vm/gc/parallel/psMarkSweep.cpp ! src/share/vm/gc/parallel/psOldGen.cpp ! src/share/vm/gc/parallel/psParallelCompact.cpp ! src/share/vm/gc/parallel/psPromotionLAB.inline.hpp ! src/share/vm/gc/parallel/psYoungGen.cpp ! src/share/vm/gc/serial/defNewGeneration.cpp ! src/share/vm/gc/serial/defNewGeneration.hpp ! src/share/vm/gc/shared/barrierSet.inline.hpp ! src/share/vm/gc/shared/cardTableModRefBS.cpp ! src/share/vm/gc/shared/cardTableModRefBS.hpp ! src/share/vm/gc/shared/collectedHeap.cpp ! src/share/vm/gc/shared/collectedHeap.inline.hpp ! src/share/vm/gc/shared/collectorPolicy.cpp ! src/share/vm/gc/shared/generationSpec.hpp ! src/share/vm/gc/shared/space.cpp ! src/share/vm/gc/shared/space.hpp ! src/share/vm/interpreter/bytecode.hpp ! src/share/vm/interpreter/bytecodeTracer.cpp ! src/share/vm/interpreter/bytecodes.cpp ! src/share/vm/interpreter/interpreter.hpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/jvmci/jvmciCodeInstaller.cpp ! src/share/vm/memory/allocation.hpp ! src/share/vm/memory/allocation.inline.hpp ! src/share/vm/memory/filemap.cpp ! src/share/vm/memory/filemap.hpp ! src/share/vm/memory/heap.cpp ! src/share/vm/memory/metachunk.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspaceShared.cpp ! src/share/vm/memory/padded.hpp ! src/share/vm/memory/padded.inline.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/memory/virtualspace.cpp ! src/share/vm/oops/array.hpp ! src/share/vm/oops/arrayOop.hpp ! src/share/vm/oops/constMethod.cpp ! src/share/vm/oops/constMethod.hpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/cpCache.hpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/oops/methodCounters.hpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/oops/methodData.hpp ! src/share/vm/oops/objArrayOop.hpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/opto/buildOopMap.cpp ! src/share/vm/opto/chaitin.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/macroArrayCopy.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/atomic.hpp ! src/share/vm/runtime/commandLineFlagConstraintsGC.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/icache.cpp ! src/share/vm/runtime/jniHandles.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/perfMemory.cpp ! src/share/vm/runtime/stubRoutines.cpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/services/nmtCommon.hpp + src/share/vm/utilities/align.hpp ! src/share/vm/utilities/bitMap.hpp ! src/share/vm/utilities/copy.cpp ! src/share/vm/utilities/copy.hpp ! src/share/vm/utilities/globalDefinitions.hpp ! src/share/vm/utilities/stack.inline.hpp ! test/native/gc/shared/test_collectorPolicy.cpp ! test/native/memory/test_metachunk.cpp ! test/native/runtime/test_arguments.cpp ! test/native/utilities/test_align.cpp Changeset: ce6d24a60d84 Author: stefank Date: 2017-07-05 09:38 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ce6d24a60d84 Merge Changeset: 117485a8a2f0 Author: aph Date: 2017-07-04 17:33 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/117485a8a2f0 8183547: AArch64: Better instruction sequence for stack bangs Reviewed-by: shade, adinn ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Changeset: 2ace7469c71c Author: mdoerr Date: 2017-07-05 17:19 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/2ace7469c71c 8183571: PPC64 build broken after 8178499 Reviewed-by: simonis ! src/cpu/ppc/vm/c1_Runtime1_ppc.cpp ! src/cpu/ppc/vm/frame_ppc.hpp ! src/cpu/ppc/vm/sharedRuntime_ppc.cpp ! src/cpu/ppc/vm/vm_version_ppc.cpp Changeset: d0cb3b17b413 Author: kvn Date: 2017-07-05 11:03 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d0cb3b17b413 8183262: noexecstack check in os::dll_load on Linux is too expensive Summary: convert ElfFile::specifies_noexecstack() to static method which read file header and check executable stack flag. Reviewed-by: iklam, stuefe ! src/os/linux/vm/os_linux.cpp ! src/share/vm/aot/aotLoader.cpp ! src/share/vm/utilities/elfFile.cpp ! src/share/vm/utilities/elfFile.hpp Changeset: c044f8d03932 Author: jwilhelm Date: 2017-07-06 01:50 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c044f8d03932 8182299: Enable disabled clang warnings, build on OSX 10 + Xcode 8 8182656: Make the required changes in GC code to build on OSX 10 + Xcode 8 8182657: Make the required changes in Runtime code to build on OSX 10 + Xcode 8 8182658: Make the required changes in Compiler code to build on OSX 10 + Xcode 8 Reviewed-by: jwilhelm, ehelin, phh Contributed-by: phh , jwilhelm ! make/gensrc/GensrcAdlc.gmk ! make/lib/CompileGtest.gmk ! make/lib/CompileJvm.gmk ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp ! src/cpu/x86/vm/c1_LIRGenerator_x86.cpp ! src/cpu/x86/vm/c1_LinearScan_x86.cpp ! src/cpu/x86/vm/c1_LinearScan_x86.hpp ! src/cpu/x86/vm/jniFastGetField_x86_64.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/cpu/x86/vm/nativeInst_x86.hpp ! src/cpu/x86/vm/templateTable_x86.cpp ! src/cpu/x86/vm/vm_version_x86.cpp ! src/jdk.hotspot.agent/macosx/native/libsaproc/MacosxDebuggerLocal.m ! src/os/aix/vm/decoder_aix.hpp ! src/os/bsd/vm/decoder_machO.hpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/windows/vm/decoder_windows.hpp ! src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ! src/share/vm/adlc/adlparse.cpp ! src/share/vm/adlc/archDesc.cpp ! src/share/vm/adlc/output_c.cpp ! src/share/vm/adlc/output_h.cpp ! src/share/vm/asm/assembler.cpp ! src/share/vm/c1/c1_Canonicalizer.cpp ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/c1/c1_Instruction.cpp ! src/share/vm/c1/c1_InstructionPrinter.cpp ! src/share/vm/c1/c1_LIR.cpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/c1/c1_LinearScan.cpp ! src/share/vm/c1/c1_ValueStack.hpp ! src/share/vm/c1/c1_ValueType.cpp ! src/share/vm/ci/bcEscapeAnalyzer.cpp ! src/share/vm/ci/ciArray.cpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciInstance.cpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethodBlocks.cpp ! src/share/vm/ci/ciMethodData.cpp ! src/share/vm/ci/ciReplay.cpp ! src/share/vm/ci/ciTypeFlow.cpp ! src/share/vm/classfile/classLoader.hpp ! src/share/vm/classfile/javaAssertions.cpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/stackMapTableFormat.hpp ! src/share/vm/classfile/vmSymbols.cpp ! src/share/vm/code/compiledMethod.cpp ! src/share/vm/code/compressedStream.cpp ! src/share/vm/code/debugInfo.cpp ! src/share/vm/code/dependencies.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/relocInfo.cpp ! src/share/vm/compiler/compileTask.hpp ! src/share/vm/gc/g1/g1RootClosures.hpp ! src/share/vm/gc/g1/heapRegion.cpp ! src/share/vm/gc/g1/heapRegionType.cpp ! src/share/vm/gc/g1/ptrQueue.cpp ! src/share/vm/gc/g1/sparsePRT.cpp ! src/share/vm/gc/parallel/psPromotionManager.cpp ! src/share/vm/interpreter/abstractInterpreter.cpp ! src/share/vm/interpreter/bytecodes.cpp ! src/share/vm/interpreter/invocationCounter.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/jvmci/jvmciCompilerToVM.cpp ! src/share/vm/jvmci/jvmciEnv.cpp ! src/share/vm/libadt/dict.cpp ! src/share/vm/logging/logFileOutput.cpp ! src/share/vm/memory/binaryTreeDictionary.cpp ! src/share/vm/memory/binaryTreeDictionary.hpp ! src/share/vm/memory/filemap.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/generateOopMap.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/opto/cfgnode.cpp ! src/share/vm/opto/chaitin.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/connode.cpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/gcm.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/ifg.cpp ! src/share/vm/opto/ifnode.cpp ! src/share/vm/opto/lcm.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/live.cpp ! src/share/vm/opto/loopPredicate.cpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/mulnode.cpp ! src/share/vm/opto/output.cpp ! src/share/vm/opto/parse1.cpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/parseHelper.cpp ! src/share/vm/opto/phaseX.cpp ! src/share/vm/opto/reg_split.cpp ! src/share/vm/opto/subnode.cpp ! src/share/vm/opto/superword.cpp ! src/share/vm/opto/superword.hpp ! src/share/vm/opto/type.cpp ! src/share/vm/opto/vectornode.cpp ! src/share/vm/prims/jniCheck.cpp ! src/share/vm/prims/jvmtiClassFileReconstituter.cpp ! src/share/vm/prims/jvmtiEnter.xsl ! src/share/vm/prims/jvmtiEventController.cpp ! src/share/vm/prims/jvmtiImpl.cpp ! src/share/vm/prims/jvmtiImpl.hpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/methodComparator.cpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/advancedThresholdPolicy.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/javaCalls.cpp ! src/share/vm/runtime/objectMonitor.cpp ! src/share/vm/runtime/perfData.hpp ! src/share/vm/runtime/reflection.cpp ! src/share/vm/runtime/relocator.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/simpleThresholdPolicy.cpp ! src/share/vm/runtime/stackValueCollection.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/services/mallocSiteTable.cpp ! src/share/vm/services/writeableFlags.cpp ! src/share/vm/utilities/decoder.hpp ! src/share/vm/utilities/decoder_elf.hpp ! src/share/vm/utilities/globalDefinitions.hpp ! src/share/vm/utilities/globalDefinitions_gcc.hpp ! src/share/vm/utilities/hashtable.cpp ! src/share/vm/utilities/hashtable.hpp ! src/share/vm/utilities/vmError.cpp ! test/native/logging/test_logMessageTest.cpp Changeset: a5434f364bab Author: iris Date: 2017-06-28 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a5434f364bab 8183142: Add bugids=dup to .jcheck/conf files for JDK 10 Reviewed-by: mr ! .jcheck/conf Changeset: 79b6a9bd5c3b Author: fyang Date: 2017-06-10 16:01 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/79b6a9bd5c3b 8181906: AArch64: port bugfix for 7009641 to AArch64 Summary: Allocation in the code cache returns NULL instead of failing the entire VM Reviewed-by: aph Contributed-by: teng.lu at linaro.org ! src/cpu/aarch64/vm/vtableStubs_aarch64.cpp Changeset: 29467418d0ca Author: rbackman Date: 2017-06-02 11:26 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/29467418d0ca 8180197: Failing assert: id must be initialized Reviewed-by: kvn, kbarrett ! src/share/vm/compiler/compileBroker.cpp Changeset: 7107dccce2b2 Author: dlong Date: 2017-06-13 10:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7107dccce2b2 8181757: NonNMethod heap in segmented CodeCache is not scanned in some cases 8171365: nsk/jvmti/scenarios/events/EM04/em04t001: many errors for missed events Reviewed-by: thartmann, kvn ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/codeCache.hpp Changeset: d7709f2d4bd3 Author: sspitsyn Date: 2017-06-13 16:19 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d7709f2d4bd3 8178054: [TESTBUG] Need test for JVM TI IsModifiableModule Summary: Add new test hotspot/test/serviceability/jvmti/GetNamedModule Reviewed-by: alanb, iignatyev ! make/test/JtregNative.gmk ! test/serviceability/jvmti/GetNamedModule/MyPackage/GetNamedModuleTest.java + test/serviceability/jvmti/IsModifiableModule/MyPackage/IsModifiableModuleTest.java + test/serviceability/jvmti/IsModifiableModule/libIsModifiableModuleTest.c Changeset: 5e54f0bcf4ef Author: sspitsyn Date: 2017-06-13 23:22 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5e54f0bcf4ef Merge Changeset: 232d93f11c49 Author: lana Date: 2017-06-15 17:43 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/232d93f11c49 Merge Changeset: 5347a840127d Author: dnsimon Date: 2017-06-16 12:18 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5347a840127d 8182310: [AOT][JVMCI] Get host class of VM anonymous class Summary: Add missing JVMCI functionality Reviewed-by: dlong, kvn ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/CompilerToVM.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedPrimitiveType.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.meta/src/jdk/vm/ci/meta/ResolvedJavaType.java ! src/share/vm/jvmci/jvmciCompilerToVM.cpp ! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaType.java Changeset: 409ae96e9140 Author: poonam Date: 2017-06-16 22:10 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/409ae96e9140 8178536: OOM ERRORS + SERVICE-THREAD TAKES A PROCESSOR TO 100% Summary: Clear the pending OOM exception in SensorInfo::trigger() Reviewed-by: mchung, dcubed ! src/share/vm/services/lowMemoryDetector.cpp Changeset: 0d4a6056e3cc Author: alanb Date: 2017-06-16 09:20 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/0d4a6056e3cc 8181087: Module system implementation refresh (6/2017) Reviewed-by: sspitsyn, hseigel ! make/symbols/symbols-unix ! src/share/vm/classfile/modules.cpp ! src/share/vm/classfile/modules.hpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvm.h ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp - test/runtime/modules/JVMAddModulePackage.java ! test/runtime/modules/ModuleHelper.java ! test/runtime/modules/java.base/java/lang/ModuleHelper.java Changeset: 032a5041e20a Author: alanb Date: 2017-06-17 08:03 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/032a5041e20a Merge - test/runtime/modules/JVMAddModulePackage.java Changeset: 8346c00b2ba6 Author: mchung Date: 2017-06-17 11:50 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/8346c00b2ba6 8182416: Clean up module-info.java like move requires transitive adjacent to exports Reviewed-by: alanb ! src/jdk.aot/share/classes/module-info.java ! src/jdk.internal.vm.compiler/share/classes/module-info.java Changeset: 516a043eb368 Author: fyang Date: 2017-06-20 17:00 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/516a043eb368 8182581: aarch64: fix for crash caused by earlyret of compiled method Summary: fix jvm crash caused by earlyret of compiled method for aarch64 port Reviewed-by: aph Contributed-by: snazarkin at azul.com ! src/cpu/aarch64/vm/abstractInterpreter_aarch64.cpp Changeset: 16c9c159df90 Author: vlivanov Date: 2017-06-20 14:37 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/16c9c159df90 8181872: C1: possible overflow when strength reducing integer multiply by constant Reviewed-by: kvn ! src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp ! src/cpu/arm/vm/c1_LIRGenerator_arm.cpp ! src/cpu/x86/vm/c1_LIRGenerator_x86.cpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/c1/c1_LIRGenerator.hpp + test/compiler/c1/MultiplyByMaxInt.java Changeset: 8f04d457168b Author: vlivanov Date: 2017-06-20 13:44 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/8f04d457168b Merge Changeset: 76a497562014 Author: lana Date: 2017-06-22 18:42 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/76a497562014 Added tag jdk-9+175 for changeset 8f04d457168b ! .hgtags Changeset: 466723157d6d Author: lana Date: 2017-06-24 00:24 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/466723157d6d Merge ! .hgtags ! src/share/vm/prims/jvm.cpp ! src/share/vm/runtime/arguments.cpp - test/gc/arguments/TestExplicitGCInvokesConcurrentAndUnloadsClasses.java - test/gc/startup_warnings/TestDefNewCMS.java - test/gc/startup_warnings/TestParNewCMS.java - test/gc/startup_warnings/TestParNewSerialOld.java - test/gc/startup_warnings/TestUseAutoGCSelectPolicy.java - test/runtime/NMT/AutoshutdownNMT.java Changeset: 3af8faa7c896 Author: lana Date: 2017-06-24 02:59 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/3af8faa7c896 Added tag jdk-10+13 for changeset a9da03357f19 ! .hgtags Changeset: 2fedf1a1a198 Author: iignatyev Date: 2017-06-27 08:43 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/2fedf1a1a198 8182154: merge jdk.testlibrary.Platform and jdk.test.lib.Platform Reviewed-by: sspitsyn, plevart ! test/testlibrary_tests/TestMutuallyExclusivePlatformPredicates.java Changeset: e920b4d008d9 Author: iris Date: 2017-06-28 11:27 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e920b4d008d9 8183142: Add bugids=dup to .jcheck/conf files for JDK 10 Reviewed-by: mr ! .jcheck/conf Changeset: d864b3a8ff52 Author: alanb Date: 2017-07-05 13:25 +0100 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d864b3a8ff52 8183503: Update hotspot tests to allow for unique test classes directory Reviewed-by: iklam ! test/compiler/classUnloading/anonymousClass/TestAnonymousClassUnloading.java ! test/runtime/logging/ClassLoadUnloadTest.java ! test/runtime/testlibrary/ClassUnloadCommon.java Changeset: f169f516410e Author: kvn Date: 2017-07-05 18:14 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f169f516410e Merge ! make/test/JtregNative.gmk ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/CompilerToVM.java ! src/jdk.internal.vm.compiler/share/classes/module-info.java ! src/share/vm/classfile/modules.cpp ! src/share/vm/classfile/modules.hpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/codeCache.hpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/jvmci/jvmciCompilerToVM.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/services/lowMemoryDetector.cpp - test/runtime/modules/JVMAddModulePackage.java ! test/runtime/modules/ModuleHelper.java Changeset: cdb65744f6af Author: kvn Date: 2017-07-05 20:16 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/cdb65744f6af Merge ! src/cpu/x86/vm/c1_LIRGenerator_x86.cpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/jvmci/jvmciCompilerToVM.cpp ! src/share/vm/runtime/arguments.cpp Changeset: b348f818304d Author: tschatzl Date: 2017-07-06 10:42 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b348f818304d 8183127: UpdateRSetDeferred should not enqueue cards for NULL references Summary: Filter out NULL references during generating cards for an object. Reviewed-by: mgerdin, ehelin ! src/share/vm/gc/g1/g1EvacFailure.cpp Changeset: 8851951f7fa1 Author: tschatzl Date: 2017-07-06 12:11 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/8851951f7fa1 8179679: Rearrange filters before card scanning Summary: Implement micro-optimizations in the card scanning code enabled by JDK-8177044. Reviewed-by: sjohanss, ehelin ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSet.hpp Changeset: 89668ec9523d Author: dbuck Date: 2017-07-06 09:31 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/89668ec9523d 8181647: jhsdb jstack could not output thread name Summary: standardized thread information across jstack, jhsdb jstack, and jhsdb jstack --mixed Reviewed-by: ysuenaga, poonam Contributed-by: chihiro.ito at oracle.com ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/oops/OopUtilities.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/JavaThread.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/OSThread.java + src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/ThreadState.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/PStack.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/StackTrace.java ! src/share/vm/runtime/vmStructs.cpp + test/serviceability/sa/JhsdbThreadInfoTest.java Changeset: 26ff2913dfa5 Author: neliasso Date: 2017-07-03 11:41 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/26ff2913dfa5 8183151: DCmd Compiler.codelist should print all compiled methods Summary: Add support for AOT methods in codelist dcmd Reviewed-by: neliasso, kvn Contributed-by: cthalinger at twitter.com ! src/share/vm/code/codeCache.cpp ! test/serviceability/dcmd/compiler/CodelistTest.java Changeset: a8901cd3ee04 Author: neliasso Date: 2017-07-07 10:37 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a8901cd3ee04 8183271: VectorizeDebug compiler directive command is broken Summary: Add parser support for uint Reviewed-by: kvn, thartmann ! src/share/vm/compiler/compilerDirectives.hpp ! src/share/vm/compiler/directivesParser.cpp ! src/share/vm/utilities/json.hpp Changeset: c25b35fcc1a4 Author: hseigel Date: 2017-07-07 11:26 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c25b35fcc1a4 8183400: runtime/6981737/Test6981737.java fails with java.lang.RuntimeException: FAIL: Wrong value for java.version property, "9", expected to be of form: "[0-9]+[\\.[0-9]+]*\-.*" Summary: Use Runtime Version API's instead of a regular expression and split() API. Reviewed-by: psandoz, mseledtsov, gthornbr ! test/runtime/6981737/Test6981737.java Changeset: 48566d838608 Author: iveresov Date: 2017-07-07 09:40 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/48566d838608 8183991: Update Graal Reviewed-by: kvn ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/AOTBackend.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/AOTCompilationTask.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/DataBuilder.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/Main.java ! src/jdk.internal.vm.compiler/.mx.graal/suite.py ! src/jdk.internal.vm.compiler/share/classes/module-info.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/ControlFlowAnchorDirectiveTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64/src/org/graalvm/compiler/asm/aarch64/AArch64Assembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64/src/org/graalvm/compiler/asm/aarch64/AArch64MacroAssembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.test/src/org/graalvm/compiler/asm/test/AssemblerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.bytecode/src/org/graalvm/compiler/bytecode/BytecodeDisassembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64AddressLowering.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64AddressNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/GraalOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/alloc/BiDirectionalTraceBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/alloc/SingleBlockTraceBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/alloc/TraceBuilderResult.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/alloc/TraceStatisticsPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/alloc/UniDirectionalTraceBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/cfg/Loop.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CheckGraalInvariants.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTest13.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTestBase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/DegeneratedLoopsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/DontReuseArgumentSpaceTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/FinalizableSubclassTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/FindUniqueDefaultMethodTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/FloatingReadTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraalCompilerAssumptionsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraalCompilerTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraalDebugHandlersFactoryTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardedIntrinsicTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/IfCanonicalizerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ImplicitNullCheckTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/InfopointReasonTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/InterfaceMethodHandleTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/LongNodeChainTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/LoopFullUnrollTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/LoopUnswitchTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/MemoryGraphCanonicalizeTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/MemoryScheduleTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/MergeCanonicalizerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/NestedLoopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/NodePropertiesTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/PhiCreationTests.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/PushNodesThroughPiTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/PushThroughIfTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ReadAfterCheckCastTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ScalarTypeSystemTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/SchedulingTest2.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/SimpleCFGTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/StaticInterfaceFieldTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/StraighteningTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/TypeSystemTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/UnbalancedMonitorsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyBailoutUsageTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyDebugUsageTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyVirtualizableTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/backend/AllocatorTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/backend/BackendTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/MethodMetricsTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/MethodMetricsTest1.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/MethodMetricsTest2.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/MethodMetricsTest3.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/MethodMetricsTest4.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/MethodMetricsTest5.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/MethodMetricsTest6.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/MethodMetricsTestInterception01.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/MethodMetricsTestInterception02.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/VerifyMethodMetricsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/deopt/MonitorDeoptTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/deopt/SynchronizedMethodDeoptimizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/EATestBase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/PoorMansEATest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/inlining/InliningTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/inlining/NestedLoopEffectsPhaseComplexityTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/tutorial/InvokeGraal.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/tutorial/StaticAnalysis.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/CompilerThread.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/CompilerThreadFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/GraalCompiler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/GraalDebugInitializationParticipant.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/LIRGenerationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/gen/DebugInfoBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/gen/NodeLIRBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/match/MatchContext.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/match/MatchPattern.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/match/MatchRuleRegistry.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/match/MatchStatement.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/EconomyCompilerConfiguration.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/GraphChangeMonitoringPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/MidTier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/target/Backend.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug.test/src/org/graalvm/compiler/debug/test/DebugContextTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug.test/src/org/graalvm/compiler/debug/test/DebugContextTest.testLogging.input - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug.test/src/org/graalvm/compiler/debug/test/DebugHistogramTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug.test/src/org/graalvm/compiler/debug/test/DebugTimerTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug.test/src/org/graalvm/compiler/debug/test/TimerKeyTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/AbstractKey.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/AccumulatedKey.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/CSVUtil.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/CloseableCounter.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/CounterKey.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/CounterKeyImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/Debug.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugCloseable.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugConfig.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugConfigCustomizer.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugConfigImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugConfigScope.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugContext.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugCounter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugDumpHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugEnvironment.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugFilter.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugHandler.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugHandlersFactory.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugHistogram.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugInitializationParticipant.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugMemUseTracker.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugMethodMetrics.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugRetryableTask.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugTimer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugValueFactory.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugValueMap.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugVerifyHandler.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DelegatingDebugConfig.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/GlobalMetrics.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/GraalDebugConfig.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/Indent.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/JavaMethodContext.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/KeyRegistry.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/MemUseTrackerKey.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/MemUseTrackerKeyImpl.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/MetricKey.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/ScopeImpl.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/TimerKey.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/TimerKeyImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/TopLevelDebugConfig.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/UniquePathUtilities.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/AccumulatedDebugValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/CloseableCounterImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/CounterImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/DebugHistogramAsciiPrinter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/DebugHistogramImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/DebugHistogramRPrinter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/DebugScope.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/DebugValue.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/DebugValueMap.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/DebugValuesPrinter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/KeyRegistry.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/MemUseTrackerImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/TimerImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/method/MethodMetricsImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/method/MethodMetricsInlineeScopeInfo.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/method/MethodMetricsPrinter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/internal/method/MethodMetricsRootScopeInfo.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph.test/src/org/graalvm/compiler/graph/test/GraphTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph.test/src/org/graalvm/compiler/graph/test/NodeMapTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph.test/src/org/graalvm/compiler/graph/test/NodeUsagesTests.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph.test/src/org/graalvm/compiler/graph/test/NodeValidationChecksTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph.test/src/org/graalvm/compiler/graph/test/TypedNodeIteratorTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph.test/src/org/graalvm/compiler/graph/test/TypedNodeIteratorTest2.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/CachedGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/Graph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/Node.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeClass.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/NodeWorkList.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotNodeLIRBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotAddressLowering.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotNodeLIRBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/ClassSubstitutionsTests.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CompileTheWorld.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/ConstantPoolSubstitutionsTests.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/GraalOSRLockTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/GraalOSRTestBase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotCryptoSubstitutionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotGraalCompilerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotGraalMBeanTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotMonitorValueTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotNodeSubstitutionsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/InstalledCodeExecuteHelperTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/JVMCIInfopointErrorTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/MemoryUsageBenchmark.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/OptionsInFileTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/RetryableCompilationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/TestIntrinsicCompiles.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/WriteBarrierVerificationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompilationTask.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/FingerprintUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalCompiler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalMBean.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalRuntime.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalVMEventListener.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotHostBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotReplacementsImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotRetryableCompilation.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/JVMCIVersionCheck.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/PrintStreamOptionKey.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/debug/BenchmarkCounters.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/lir/HotSpotZapRegistersPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotAOTProfilingPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotForeignCallsProviderImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotSuitesProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/OnStackReplacementPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/aot/AOTInliningPolicy.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/aot/ReplaceConstantNodesPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/AssertionSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HashCodeSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/InstanceOfSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/LoadExceptionObjectSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/MonitorSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/NewObjectSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/ObjectCloneNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/StringToBytesSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/UnsafeLoadSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopySnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/UnsafeArrayCopySnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/profiling/ProbabilisticProfileSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/profiling/ProfileSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/CreateExceptionStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/ForeignCallStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/SnippetStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/Stub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BciBlockMapping.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/FrameStateBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/LocalLiveness.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/JTTTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/threads/Object_wait03.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64PrefetchOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/phases/StackMoveOptimizationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.jtt/src/org/graalvm/compiler/lir/jtt/SPARCBranchBailoutTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/CompositeValue.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ControlFlowOptimizer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIR.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIRInstruction.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/RedundantMoveElimination.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/IntervalWalker.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScan.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanAllocationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanAssignLocationsPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanEliminateSpillMovePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanOptimizeSpillPositionPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanRegisterAllocationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanResolveDataFlowPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/LinearScanWalker.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/MoveResolver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/OptimizingLinearScanWalker.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/RegisterVerifier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/ssa/SSALinearScan.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/ssa/SSALinearScanEliminateSpillMovePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/ssa/SSALinearScanLifetimeAnalysisPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/ssa/SSALinearScanResolveDataFlowPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/DefaultTraceRegisterAllocationPolicy.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/GlobalLivenessAnalysisPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/TraceBuilderPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/TraceGlobalMoveResolutionPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/TraceGlobalMoveResolver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/bu/BottomUpAllocator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/RegisterVerifier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAllocationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanEliminateSpillMovePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanRegisterAllocationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanResolveDataFlowPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanWalker.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLocalMoveResolver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/asm/CompilationResultBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/asm/CompilationResultBuilderFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/constopt/ConstantLoadOptimization.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/constopt/ConstantTreeAnalyzer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/debug/LIRGenerationDebugContext.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/dfa/LocationMarker.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/framemap/FrameMapBuilderImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/gen/LIRGenerationResult.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/gen/LIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/phases/EconomyAllocationStage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/phases/LIRPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/ssa/SSAVerifier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/stackslotalloc/FixPointIntervalBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/stackslotalloc/SimpleStackSlotAllocator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/stackslotalloc/StackSlotAllocatorUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopFullUnrollPhase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopPartialUnrollPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopPeelingPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopTransformations.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopUnswitchingPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/ReassociateInvariantPhase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.test/src/org/graalvm/compiler/loop/test/LoopPartialUnrollTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/BasicInductionVariable.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/CountedLoopInfo.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/DefaultLoopPolicies.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopEx.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopFragment.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopFragmentInside.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopFragmentWhole.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopPolicies.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopsData.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.microbenchmarks/src/org/graalvm/compiler/microbenchmarks/graal/GraphCopyBenchmark.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.microbenchmarks/src/org/graalvm/compiler/microbenchmarks/graal/util/GraalState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.microbenchmarks/src/org/graalvm/compiler/microbenchmarks/graal/util/GraalUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.microbenchmarks/src/org/graalvm/compiler/microbenchmarks/graal/util/GraphState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.microbenchmarks/src/org/graalvm/compiler/microbenchmarks/lir/GraalCompilerState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.microbenchmarks/src/org/graalvm/compiler/microbenchmarks/lir/trace/TraceBuilderBenchmark.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/IntegerStampTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/NegateNodeCanonicalizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/StaticFieldAccessTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/AbstractEndNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/AbstractMergeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/DeoptimizeNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/FrameState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/GraphDecoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/GraphEncoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/IfNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/LoopBeginNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/StructuredGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/cfg/Block.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/cfg/ControlFlowGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderTool.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FloatingReadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/WriteNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/VirtualizerTool.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/util/GraphUtil.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/UniquePathUtilities.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/AddressLoweringByUsePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/CanonicalizerPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ConditionalEliminationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ConvertDeoptimizeToGuardPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/DeadCodeEliminationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/FixReadsPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/GuardLoweringPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/UseTrappingNullChecksPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/InliningUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/info/AbstractInlineInfo.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/info/MultiTypeGuardInlineInfo.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/info/elem/InlineableGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/policy/GreedyInliningPolicy.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/walker/InliningData.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/BasePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/LazyName.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/OptimisticOptimizations.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/PhaseSuite.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/contract/NodeCostUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/graph/FixedNodeProbabilityCache.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/schedule/MemoryScheduleVerification.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/schedule/SchedulePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/util/GraphOrder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/verify/VerifyDebugUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/BinaryGraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/CFGPrinterObserver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/CanonicalStringGraphPrinter.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraalDebugConfigCustomizer.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraalDebugHandlersFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinterDumpHandler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/IdealGraphPrinter.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/NoDeadCodeVerifyHandler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.aarch64/src/org/graalvm/compiler/replacements/aarch64/AArch64FloatArithmeticSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.aarch64/src/org/graalvm/compiler/replacements/aarch64/AArch64IntegerArithmeticSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64ConvertSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/CompiledExceptionHandlerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/CompiledNullPointerExceptionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/DerivedOopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/EdgesTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/InstanceOfTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/MethodSubstitutionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/PEGraphDecoderTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/PointerTrackingTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ReplacementsParseTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/SnippetsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/WordTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/BoxingSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/CachingPEGraphDecoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/ConstantStringIndexOfSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/DefaultJavaLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/GraphKit.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/InstanceOfSnippetsTemplates.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/IntrinsicGraphBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/PEGraphDecoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/ReplacementsImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/SnippetCounterNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/SnippetTemplate.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/BasicArrayCopyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/MacroNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/GraalTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/EffectList.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/EffectsClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/EffectsPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/GraphEffectList.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/ObjectState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/ReadEliminationClosure.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/VirtualUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/VirtualizerToolImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Word.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordOperationPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionDescriptor.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionDescriptors.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/PointerBase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/PointerUtils.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/WordFactory.java ! test/compiler/aot/scripts/build-bootmodules.sh Changeset: 5492fa332821 Author: iveresov Date: 2017-07-07 16:49 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5492fa332821 Merge Changeset: d098daccb7cf Author: stefank Date: 2017-07-05 12:51 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d098daccb7cf 8183570: Rework is_aligned_ to avoid multiple evaluation of the size expression Reviewed-by: tschatzl, kbarrett ! src/share/vm/utilities/align.hpp Changeset: d0ee7478227a Author: rehn Date: 2017-07-07 23:04 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/d0ee7478227a 8183545: Event tracing, transition hooks Reviewed-by: dcubed, egahlin ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/thread.inline.hpp ! src/share/vm/trace/traceMacros.hpp Changeset: 786437c6344b Author: rehn Date: 2017-07-07 23:11 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/786437c6344b 8183925: Decouple crash protection from watcher thread Reviewed-by: dcubed, coleenp ! src/os/posix/vm/os_posix.cpp ! src/os/posix/vm/os_posix.hpp ! src/os/windows/vm/os_windows.cpp ! src/os/windows/vm/os_windows.hpp ! src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ! src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp ! src/os_cpu/linux_arm/vm/os_linux_arm.cpp ! src/os_cpu/linux_s390/vm/os_linux_s390.cpp ! src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/os_cpu/solaris_sparc/vm/os_solaris_sparc.cpp ! src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp ! src/share/vm/runtime/mutex.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp Changeset: 1bd33eb34967 Author: rehn Date: 2017-07-07 23:53 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1bd33eb34967 Merge Changeset: 9da0c9f26e79 Author: tschatzl Date: 2017-07-10 10:10 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9da0c9f26e79 8183397: Ensure consistent closure filtering during evacuation Summary: Consistently apply the cross-region check for references in the various oop closures. Reviewed-by: sjohanss, ehelin ! src/share/vm/gc/g1/g1OopClosures.inline.hpp ! src/share/vm/gc/g1/g1ParScanThreadState.hpp ! src/share/vm/gc/g1/g1ParScanThreadState.inline.hpp Changeset: 9c54cd2cdf09 Author: redestad Date: 2017-07-10 23:28 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9c54cd2cdf09 8183573: Refactor CodeHeap and AOTCodeHeap to devirtualize hot methods Reviewed-by: kvn, dlong ! src/share/vm/aot/aotCodeHeap.cpp ! src/share/vm/aot/aotCodeHeap.hpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/codeCache.hpp ! src/share/vm/memory/heap.hpp Changeset: c59de39e2b42 Author: eosterlund Date: 2017-07-10 11:42 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c59de39e2b42 8183575: Runtime1::oop_arraycopy is unused and should be removed Summary: Runtime1::oop_arraycopy and its friend Runtime1::primitive_arraycopy are no longer used and this changeset removes them. Reviewed-by: kvn, tschatzl ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/c1/c1_Runtime1.hpp Changeset: 076b56582b1f Author: eosterlund Date: 2017-07-11 12:00 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/076b56582b1f 8183927: Hotspot needs C++ type_traits metaprogramming utilities Summary: This changeset introduces new metaprogramming utilities typically found in in C++11. Reviewed-by: kbarrett, rehn, pliden Contributed-by: erik.osterlund at oracle.com, kim.barrett at oracle.com + src/share/vm/metaprogramming/conditional.hpp + src/share/vm/metaprogramming/decay.hpp + src/share/vm/metaprogramming/enableIf.hpp + src/share/vm/metaprogramming/integralConstant.hpp + src/share/vm/metaprogramming/isConst.hpp + src/share/vm/metaprogramming/isFloatingPoint.hpp + src/share/vm/metaprogramming/isIntegral.hpp + src/share/vm/metaprogramming/isPointer.hpp + src/share/vm/metaprogramming/isSame.hpp + src/share/vm/metaprogramming/isSigned.hpp + src/share/vm/metaprogramming/isVolatile.hpp + src/share/vm/metaprogramming/removeCV.hpp + src/share/vm/metaprogramming/removePointer.hpp + src/share/vm/metaprogramming/removeReference.hpp + test/native/metaprogramming/test_conditional.cpp + test/native/metaprogramming/test_decay.cpp + test/native/metaprogramming/test_enableIf.cpp + test/native/metaprogramming/test_isConst.cpp + test/native/metaprogramming/test_isFloatingPoint.cpp + test/native/metaprogramming/test_isIntegral.cpp + test/native/metaprogramming/test_isPointer.cpp + test/native/metaprogramming/test_isSame.cpp + test/native/metaprogramming/test_isSigned.cpp + test/native/metaprogramming/test_isVolatile.cpp + test/native/metaprogramming/test_removeCV.cpp + test/native/metaprogramming/test_removePointer.cpp + test/native/metaprogramming/test_removeReference.cpp Changeset: 4fbb4a64b5b5 Author: eosterlund Date: 2017-07-12 09:49 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4fbb4a64b5b5 8184073: Cleanup of compiler activity enum in compileBroker.hpp Summary: An unnamed enum describing compiler activity was given a name and had spelling errors fixed. Reviewed-by: kvn, kbarrett ! src/share/vm/compiler/compileBroker.hpp Changeset: c411838e41bc Author: eosterlund Date: 2017-07-12 11:59 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c411838e41bc 8184162: Support addresses with index operands in LIRAssembler::leal on SPARC Summary: Support was added for C1 leal on addresses with an index operand on SPARC. Reviewed-by: kvn, roland ! src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp Changeset: 1cf0b41d2bbd Author: tschatzl Date: 2017-07-12 12:25 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1cf0b41d2bbd 8183226: Remembered set summarization accesses not fully initialized java thread DCQS Reviewed-by: sjohanss, ehelin ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1CollectedHeap.hpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSetSummary.cpp ! src/share/vm/gc/g1/g1RemSetSummary.hpp Changeset: 80e6bf635d3d Author: tschatzl Date: 2017-07-12 12:26 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/80e6bf635d3d 8183128: Update RefineCardTableEntryClosure Summary: Improve names and placement of RefineCardTableEntryClosure Reviewed-by: ehelin, sjohanss ! src/share/vm/gc/g1/concurrentG1Refine.cpp ! src/share/vm/gc/g1/concurrentG1Refine.hpp ! src/share/vm/gc/g1/concurrentG1RefineThread.cpp ! src/share/vm/gc/g1/concurrentG1RefineThread.hpp ! src/share/vm/gc/g1/dirtyCardQueue.cpp ! src/share/vm/gc/g1/dirtyCardQueue.hpp ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1CollectedHeap.hpp ! src/share/vm/gc/g1/g1RemSet.cpp Changeset: b545faab2bf3 Author: tschatzl Date: 2017-07-12 11:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b545faab2bf3 Merge Changeset: 7e2c4ab9c517 Author: hseigel Date: 2017-07-12 08:07 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7e2c4ab9c517 8140284: Deprecate -XX:+UnsyncloadClass and -XX:+MustCallLoadClassInternal Summary: Add the two options to the deprecate list. Reviewed-by: acorn, gtriantafill ! src/share/vm/runtime/arguments.cpp ! test/runtime/CommandLine/VMDeprecatedOptions.java Changeset: e2626870bb3d Author: hseigel Date: 2017-07-12 12:46 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e2626870bb3d Merge Changeset: b68cc1165ffa Author: rkennke Date: 2017-07-04 20:41 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b68cc1165ffa 8179268: Factor out AdaptiveSizePolicy from top-level interfaces CollectorPolicy and CollectedHeap Reviewed-by: pliden, sjohanss ! src/share/vm/gc/parallel/parallelScavengeHeap.cpp ! src/share/vm/gc/parallel/parallelScavengeHeap.hpp ! src/share/vm/gc/shared/adaptiveSizePolicy.hpp ! src/share/vm/gc/shared/collectedHeap.hpp ! src/share/vm/gc/shared/collectorPolicy.cpp ! src/share/vm/gc/shared/collectorPolicy.hpp ! src/share/vm/runtime/java.cpp Changeset: a2fe9d8d8be1 Author: hseigel Date: 2017-07-12 21:24 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a2fe9d8d8be1 8184281: -Xlog:startuptime does not include call to initPhase2 Summary: Remove "+module" and improve message Reviewed-by: alanb, gtriantafill ! src/share/vm/runtime/thread.cpp ! test/runtime/logging/StartupTimeTest.java Changeset: 38018e6e25b3 Author: hseigel Date: 2017-07-13 01:28 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/38018e6e25b3 Merge Changeset: 63868f77a2b8 Author: hseigel Date: 2017-07-13 08:49 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/63868f77a2b8 8183962: JVM_DoPrivileged does not find run method in default methods Summary: Add search of interfaces for run() method. Reviewed-by: acorn, gtriantafill ! src/share/vm/prims/jvm.cpp + test/runtime/JVMDoPrivileged/DoPrivRunAbstract$VoidPrivActRunAbstract.jasm + test/runtime/JVMDoPrivileged/DoPrivRunAbstract.jasm + test/runtime/JVMDoPrivileged/DoPrivileged.java Changeset: c249ce0a0f7d Author: redestad Date: 2017-07-13 15:33 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c249ce0a0f7d 8184337: CodeCache::get_code_cache_containing wrongly asserts that start can not be NULL Reviewed-by: thartmann, gtriantafill, rehn ! src/share/vm/code/codeCache.cpp Changeset: 845d06d343a1 Author: redestad Date: 2017-07-13 15:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/845d06d343a1 Merge Changeset: cc2bc9993d64 Author: thartmann Date: 2017-07-14 11:55 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/cc2bc9993d64 8184271: Time related C1 intrinsics produce inconsistent results when floating around Summary: C1 intrinsics for System.nanoTime(), System.currentTimeMillis() and JVM.counterTime() should be pinned. Reviewed-by: kvn, vlivanov ! src/share/vm/c1/c1_Instruction.hpp ! src/share/vm/classfile/vmSymbols.cpp ! src/share/vm/classfile/vmSymbols.hpp + test/compiler/c1/TestPinnedIntrinsics.java Changeset: 1d1af6a44926 Author: eosterlund Date: 2017-07-13 12:39 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1d1af6a44926 8184269: JVMCI CompilerToVM::Data::initialize() should use BarrierSet fake RTTI to identify card table barrier sets Reviewed-by: kvn, dnsimon ! src/share/vm/jvmci/jvmciCompilerToVM.cpp Changeset: 6ea5028ea0b6 Author: eosterlund Date: 2017-07-14 13:43 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/6ea5028ea0b6 Merge Changeset: 6859208710c7 Author: ehelin Date: 2017-07-14 13:57 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/6859208710c7 8182163: Missing #include "logging/log.hpp" in vm_version_linux_sparc.cpp Reviewed-by: ehelin, stuefe Contributed-by: glaubitz at physik.fu-berlin.de ! src/os_cpu/linux_sparc/vm/vm_version_linux_sparc.cpp Changeset: b985aca5280d Author: ehelin Date: 2017-07-14 14:00 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b985aca5280d 8182164: checkByteBuffer has the wrong signature Reviewed-by: ehelin, stuefe Contributed-by: glaubitz at physik.fu-berlin.de ! src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp Changeset: b1812dde71dc Author: ehelin Date: 2017-07-14 14:04 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b1812dde71dc 8182165: The header atomic_linux_sparc.inline.hpp should be named atomic_linux_sparc.hpp Reviewed-by: ehelin, stuefe Contributed-by: glaubitz at physik.fu-berlin.de + src/os_cpu/linux_sparc/vm/atomic_linux_sparc.hpp - src/os_cpu/linux_sparc/vm/atomic_linux_sparc.inline.hpp Changeset: 31123ecdd685 Author: tschatzl Date: 2017-07-17 10:32 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/31123ecdd685 8184452: Add bounds checking for FromCardCache Reviewed-by: shade, rkennke ! src/share/vm/gc/g1/g1FromCardCache.cpp ! src/share/vm/gc/g1/g1FromCardCache.hpp Changeset: 68aaa4856f3d Author: ehelin Date: 2017-07-17 11:37 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/68aaa4856f3d 8183539: Remove G1RemSet::_into_cset_dirty_card_queue_set Reviewed-by: tschatzl, mgerdin ! src/share/vm/gc/g1/g1GCPhaseTimes.cpp ! src/share/vm/gc/g1/g1GCPhaseTimes.hpp ! src/share/vm/gc/g1/g1OopClosures.hpp ! src/share/vm/gc/g1/g1OopClosures.inline.hpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/g1RemSet.hpp ! test/gc/g1/TestGCLogMessages.java Changeset: af2d633923e9 Author: ehelin Date: 2017-07-17 11:07 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/af2d633923e9 Merge Changeset: eb11b3f0ae65 Author: ysuenaga Date: 2017-07-17 14:10 +0300 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/eb11b3f0ae65 8184309: Buld warnings from GCC 7.1 on Fedora 26 Reviewed-by: kbarrett, vlivanov ! src/share/vm/code/dependencies.cpp ! src/share/vm/logging/logFileOutput.cpp ! src/share/vm/logging/logFileOutput.hpp Changeset: 214a94e9366c Author: vlivanov Date: 2017-07-17 12:11 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/214a94e9366c Merge Changeset: bf5bc73cff1b Author: mgerdin Date: 2017-07-17 09:30 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/bf5bc73cff1b 8183923: Get rid of FreeBlockDictionary and dithering Reviewed-by: ehelin, kbarrett ! src/share/vm/gc/cms/adaptiveFreeList.cpp ! src/share/vm/gc/cms/compactibleFreeListSpace.cpp ! src/share/vm/gc/cms/compactibleFreeListSpace.hpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.hpp ! src/share/vm/gc/cms/freeChunk.cpp ! src/share/vm/gc/cms/vmStructs_cms.hpp ! src/share/vm/memory/binaryTreeDictionary.cpp ! src/share/vm/memory/binaryTreeDictionary.hpp - src/share/vm/memory/freeBlockDictionary.cpp - src/share/vm/memory/freeBlockDictionary.hpp ! src/share/vm/memory/freeList.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/runtime/vmStructs.cpp Changeset: b501de685dda Author: mgerdin Date: 2017-07-17 13:16 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/b501de685dda Merge - src/share/vm/memory/freeBlockDictionary.cpp - src/share/vm/memory/freeBlockDictionary.hpp Changeset: 7bb25c7824ce Author: tschatzl Date: 2017-07-17 15:26 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7bb25c7824ce 8183538: UpdateRS phase should claim cards Summary: Have the Update RS phase also claim cards so that they will not be rescanned later during Scan RS. Reviewed-by: ehelin, mgerdin ! src/share/vm/gc/g1/g1RemSet.cpp Changeset: aebb7568408e Author: tschatzl Date: 2017-07-17 14:20 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/aebb7568408e Merge Changeset: f0b15407aae8 Author: rkennke Date: 2017-07-17 08:43 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f0b15407aae8 8184181: Use oopDesc::cas_set_mark() instead of raw CAS when accessing oop header Reviewed-by: dcubed, kbarrett ! src/share/vm/runtime/biasedLocking.cpp ! src/share/vm/runtime/synchronizer.cpp Changeset: ba869214a302 Author: dcubed Date: 2017-07-17 09:21 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ba869214a302 Merge Changeset: 5e9c41536bd2 Author: iveresov Date: 2017-07-17 16:31 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5e9c41536bd2 8184768: Update Graal Reviewed-by: kvn ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/AOTCompilationTask.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/DeoptimizeDirectiveTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64MoveFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64MoveFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/RetryableBailoutException.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCMoveFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CheckGraalInvariants.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraalCompilerTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraphResetDebugTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/CompilationPrinter.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/CompilationWrapper.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/GraalCompilerOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugContext.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugOptions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugRetryableTask.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DiagnosticsOutputDirectory.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/PathUtilities.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/ScopeImpl.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/UniquePathUtilities.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/Graph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotMoveFactory.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CompilationWrapperTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CompileTheWorld.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CompileTheWorldTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/RetryableCompilationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompilationTask.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalRuntime.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotRetryableCompilation.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/arraycopy/UnsafeArrayCopySnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/word/MetaspacePointer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64Move.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64Move.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.jtt/src/org/graalvm/compiler/lir/jtt/StackStoreLoadTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/lsra/MoveResolver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/asm/CompilationResultBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/gen/LIRGeneratorTool.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/gen/VerifyingMoveFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopFragment.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/EnumOptionKey.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionValues.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/CFGPrinterObserver.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraalDebugHandlersFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/WordTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/classfile/ClassfileBytecodeProviderTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/GraphKit.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/BarrieredAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/ObjectAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/Word.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.word/src/org/graalvm/compiler/word/WordTypes.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionCategory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionDescriptor.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionDescriptors.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionKey.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionType.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.options/src/org/graalvm/options/OptionValues.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/AtomicUnsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/AtomicWord.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/Pointer.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/PointerUtils.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/Signed.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/SignedWord.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/Unsigned.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/UnsignedUtils.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/UnsignedWord.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.word/src/org/graalvm/word/WordFactory.java Changeset: ff593b10e30f Author: mgerdin Date: 2017-07-17 09:30 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ff593b10e30f 8183935: G1GCPhaseTimes and G1RootProcessor do not include macros.hpp Reviewed-by: tschatzl, ehelin ! src/share/vm/gc/g1/g1GCPhaseTimes.cpp ! src/share/vm/gc/g1/g1GCPhaseTimes.hpp ! src/share/vm/gc/g1/g1RootProcessor.cpp Changeset: f922d99ce776 Author: shade Date: 2017-07-18 09:53 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/f922d99ce776 8184762: ZapStackSegments should use optimized memset Reviewed-by: rkennke, mgerdin ! src/share/vm/utilities/globalDefinitions.hpp ! src/share/vm/utilities/stack.inline.hpp Changeset: 9fe3d41b0e51 Author: shade Date: 2017-07-18 10:20 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9fe3d41b0e51 8184753: Asserts against MinObjectAlignment should avoid integer division Summary: Delegate to is_object_aligned that does the right thing Reviewed-by: mgerdin, tschatzl ! src/share/vm/gc/cms/compactibleFreeListSpace.cpp ! src/share/vm/gc/shared/collectedHeap.cpp ! src/share/vm/oops/oop.inline.hpp Changeset: fe011fc49dc7 Author: stuefe Date: 2017-07-18 11:09 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/fe011fc49dc7 8179327: gtestLauncher should run tests on a separate thread (optionally) Reviewed-by: rehn, mgerdin ! test/native/gtestMain.cpp Changeset: 513ec0f01eec Author: eosterlund Date: 2017-07-13 17:06 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/513ec0f01eec 8182703: Correct G1 barrier queue lock orderings Summary: Moving G1 barrier queue locks down to a new 'access' rank, below special, and removing hacks around incorrect lock ordering. Reviewed-by: kbarrett, tschatzl ! src/share/vm/gc/g1/ptrQueue.cpp ! src/share/vm/runtime/mutex.hpp ! src/share/vm/runtime/mutexLocker.cpp Changeset: 99d42b2a9ef6 Author: eosterlund Date: 2017-07-18 14:37 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/99d42b2a9ef6 Merge Changeset: 7b38202df6fd Author: simonis Date: 2017-07-18 15:43 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7b38202df6fd 8184672: [ppc64] The fix for '8174749: Use hash table/oops for MemberName table' is broken on ppc64 Reviewed-by: coleenp, goetz ! src/cpu/ppc/vm/methodHandles_ppc.cpp Changeset: ebab242c2824 Author: stuefe Date: 2017-07-13 16:28 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ebab242c2824 8184339: Thread::current_or_null() shall not assert if Posix TLS is not yet initialized Reviewed-by: dcubed, coleenp ! src/share/vm/runtime/thread.hpp Changeset: 4f74286deaa3 Author: mbaesken Date: 2017-07-18 15:46 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/4f74286deaa3 8184323: compile-time guard some UseSharedSpaces-only coding with the INCLUDE_CDS macro Reviewed-by: jiangli, shade, simonis ! src/os/posix/vm/vmError_posix.cpp ! src/os/windows/vm/vmError_windows.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp Changeset: a414aa7bc5ba Author: coleenp Date: 2017-07-18 19:56 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a414aa7bc5ba Merge Changeset: 56a68e37d23b Author: thartmann Date: 2017-07-19 09:00 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/56a68e37d23b 8184009: Missing null pointer check in InterpreterRuntime::update_mdp_for_ret() Summary: Adds a missing null check (guarantee) found by Parfait. Reviewed-by: coleenp, shade ! src/share/vm/interpreter/interpreterRuntime.cpp Changeset: a361c7f25575 Author: vdeshpande Date: 2017-07-19 08:29 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a361c7f25575 8175096: Analyse subword in the loop to set maximum vector size Reviewed-by: kvn ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/superword.cpp Changeset: 1658b112521e Author: iklam Date: 2017-07-19 11:48 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1658b112521e 8181860: [TESTBUG] serviceability/tmtools/jstack/utils/DefaultFormat.java does not recognize "sleeping" state Summary: Added sleeping state to regexp Reviewed-by: dcubed, gtriantafill ! test/serviceability/tmtools/jstack/utils/DefaultFormat.java Changeset: ec1032146d69 Author: kvn Date: 2017-07-19 18:17 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ec1032146d69 8184809: [AOT] AsyncGetCallTrace() code should recognize AOT code Reviewed-by: iveresov, shade ! src/share/vm/prims/forte.cpp Changeset: 527e5320562c Author: njian Date: 2017-07-17 10:32 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/527e5320562c 8183533: AArch64: redundent registers saving in arraycopy stubs Summary: Remove redundent registers saving in gen_write_ref_array_pre_barrier() and gen_write_ref_array_post_barrier(). Reviewed-by: aph Contributed-by: zhongwei.yao at linaro.org ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Changeset: 322de5dd2f1d Author: yzhang Date: 2017-07-20 15:44 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/322de5dd2f1d 8184964: AArch64: Incorrect match rule for negL_reg Reviewed-by: adinn Contributed-by: zhongwei.yao at linaro.org ! src/cpu/aarch64/vm/aarch64.ad Changeset: 9881b2187151 Author: hseigel Date: 2017-07-20 11:01 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9881b2187151 8077203: Avoid unnecessary stripping of package names from FQN's in is_same_class_package() methods Summary: Extract package name from instance klass's package entry record Reviewed-by: redestad, coleenp, lfoltan ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp Changeset: 954c4844232f Author: goetz Date: 2017-07-18 16:11 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/954c4844232f 8184800: Streamline RTM flag validity testing with generic flag testing support Reviewed-by: kvn, lucy ! src/cpu/ppc/vm/globals_ppc.hpp ! src/cpu/ppc/vm/vm_version_ppc.cpp ! src/cpu/x86/vm/globals_x86.hpp ! src/cpu/x86/vm/vm_version_x86.cpp ! src/share/vm/runtime/commandLineFlagConstraintsCompiler.cpp ! src/share/vm/runtime/commandLineFlagConstraintsCompiler.hpp ! test/compiler/rtm/cli/RTMGenericCommandLineOptionTest.java - test/compiler/rtm/cli/TestRTMAbortRatioOptionOnSupportedConfig.java - test/compiler/rtm/cli/TestRTMAbortRatioOptionOnUnsupportedConfig.java ! test/compiler/rtm/cli/TestRTMTotalCountIncrRateOptionOnSupportedConfig.java - test/compiler/rtm/cli/TestRTMTotalCountIncrRateOptionOnUnsupportedConfig.java Changeset: c21c2322ee2f Author: kvn Date: 2017-07-20 15:53 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/c21c2322ee2f 8185013: Disable subword vector analysis optimization until 8184995 is fixed Reviewed-by: dcubed ! src/share/vm/opto/c2_globals.hpp Changeset: 81043dceedeb Author: kvn Date: 2017-07-20 17:23 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/81043dceedeb 8185018: Put AOT tests on problem list for OS-X and Windows Reviewed-by: dcubed, kbarrett ! test/ProblemList.txt Changeset: ff28370e679e Author: stuefe Date: 2017-07-21 09:50 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/ff28370e679e 8181917: Refactor UL LogStreams to avoid using resource area Reviewed-by: ehelin, mlarsson ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/cpu/x86/vm/vm_version_x86.cpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/classfile/classLoaderData.hpp ! src/share/vm/classfile/defaultMethods.cpp ! src/share/vm/classfile/dictionary.cpp ! src/share/vm/classfile/loaderConstraints.cpp ! src/share/vm/classfile/modules.cpp ! src/share/vm/classfile/protectionDomainCache.cpp ! src/share/vm/classfile/sharedPathsMiscInfo.cpp ! src/share/vm/classfile/sharedPathsMiscInfo.hpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/compiler/compileTask.cpp ! src/share/vm/compiler/compileTask.hpp ! src/share/vm/gc/cms/compactibleFreeListSpace.cpp ! src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc/cms/parNewGeneration.cpp ! src/share/vm/gc/cms/parOopClosures.inline.hpp ! src/share/vm/gc/g1/g1AllocRegion.cpp ! src/share/vm/gc/g1/g1CollectedHeap.cpp ! src/share/vm/gc/g1/g1GCPhaseTimes.cpp ! src/share/vm/gc/g1/g1HeapVerifier.cpp ! src/share/vm/gc/g1/g1RemSet.cpp ! src/share/vm/gc/g1/heapRegion.cpp ! src/share/vm/gc/parallel/adjoiningGenerations.cpp ! src/share/vm/gc/parallel/gcTaskManager.cpp ! src/share/vm/gc/parallel/psParallelCompact.cpp ! src/share/vm/gc/parallel/psPromotionManager.cpp ! src/share/vm/gc/shared/collectedHeap.cpp ! src/share/vm/gc/shared/gcTraceTime.inline.hpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/logging/log.hpp ! src/share/vm/logging/logHandle.hpp ! src/share/vm/logging/logStream.cpp ! src/share/vm/logging/logStream.hpp - src/share/vm/logging/logStream.inline.hpp ! src/share/vm/memory/binaryTreeDictionary.cpp ! src/share/vm/memory/filemap.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/generateOopMap.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/klassVtable.cpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/prims/jvmtiExport.cpp ! src/share/vm/prims/jvmtiImpl.cpp ! src/share/vm/prims/stackwalk.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/sweeper.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vm_operations.cpp ! src/share/vm/runtime/vm_version.cpp ! src/share/vm/utilities/exceptions.cpp ! test/native/logging/test_logConfiguration.cpp ! test/native/logging/test_logStream.cpp Changeset: a3b8c747b6bf Author: rkennke Date: 2017-07-07 12:49 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a3b8c747b6bf 8180932: Parallelize safepoint cleanup Summary: Provide infrastructure to do safepoint cleanup tasks using parallel worker threads Reviewed-by: dholmes, rehn, dcubed, thartmann ! src/share/vm/code/nmethod.hpp ! src/share/vm/gc/shared/collectedHeap.hpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/safepoint.hpp ! src/share/vm/runtime/sweeper.cpp ! src/share/vm/runtime/sweeper.hpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/synchronizer.hpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/vmStructs.cpp ! test/runtime/logging/SafepointCleanupTest.java Changeset: 0807b715cec5 Author: kbarrett Date: 2017-07-21 16:37 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/0807b715cec5 8175318: Performance issue regarding local JNI references Summary: Avoid unnecessary repeated clears. Reviewed-by: shade, simonis ! src/share/vm/runtime/jniHandles.cpp ! src/share/vm/runtime/jniHandles.hpp Changeset: 332416c57993 Author: kbarrett Date: 2017-07-21 21:01 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/332416c57993 8182169: ArrayAllocator should take MEMFLAGS as regular parameter Summary: Change ArrayAllocator memflags from template parameter to ordinary function parameters Reviewed-by: kbarrett, tschatzl Contributed-by: milan.mimica at gmail.com ! src/share/vm/gc/g1/g1CardLiveData.cpp ! src/share/vm/gc/g1/g1ConcurrentMark.cpp ! src/share/vm/gc/g1/g1HotCardCache.cpp ! src/share/vm/gc/shared/taskqueue.inline.hpp ! src/share/vm/memory/allocation.hpp ! src/share/vm/memory/allocation.inline.hpp ! src/share/vm/utilities/bitMap.cpp Changeset: 681389dce7a6 Author: hseigel Date: 2017-07-24 09:32 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/681389dce7a6 8179018: Remove obsoleted one X options from JDK 10 Summary: Remove the obsoleted options Reviewed-by: zgu, coleenp, gtriantafill ! src/share/vm/runtime/arguments.cpp ! test/runtime/CommandLine/TestNullTerminatedFlags.java Changeset: e63c1d265dd5 Author: lucy Date: 2017-07-24 18:06 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e63c1d265dd5 8184267: Restore register from stack uses wrong offset Reviewed-by: mdoerr ! src/cpu/s390/vm/methodHandles_s390.cpp Changeset: 777b211c54ba Author: rkennke Date: 2017-07-24 17:14 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/777b211c54ba 8185102: TestSAServer.java fails due to "sun.jvm.hotspot.types.WrongTypeException: field "_stack_traversal_mark" Reviewed-by: dcubed, zgu ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/code/NMethod.java Changeset: 41421b726632 Author: dcubed Date: 2017-07-24 17:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/41421b726632 Merge Changeset: 5d56055dcb81 Author: stuefe Date: 2017-07-22 10:03 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5d56055dcb81 8185033: On Metaspace OOM, ChunkManager composition should be logged. Reviewed-by: mgerdin, coleenp ! src/share/vm/memory/metaspace.cpp Changeset: e4434fd96f08 Author: coleenp Date: 2017-07-24 17:46 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e4434fd96f08 8182397: Race in field updates when creating ArrayKlasses can lead to crash Summary: Update array_klass field in component mirror after klass.java_mirror field for concurrent readers in compiled code Reviewed-by: aph, kbarrett ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/oops/oop.hpp ! src/share/vm/oops/oop.inline.hpp + test/runtime/CreateMirror/ArraysNewInstanceBug.java Changeset: a84056f3eed1 Author: zgu Date: 2017-07-24 15:19 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/a84056f3eed1 8184991: NMT detail diff should take memory type into account Summary: NMT detail allocation site comparison should compare sites with the same memory type Reviewed-by: shade, coleenp ! src/share/vm/services/memBaseline.cpp ! src/share/vm/services/memBaseline.hpp ! src/share/vm/services/memReporter.cpp ! src/share/vm/services/memReporter.hpp Changeset: 0a22e4ef496e Author: coleenp Date: 2017-07-24 22:56 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/0a22e4ef496e Merge Changeset: 10649eaf7157 Author: rkennke Date: 2017-07-25 11:58 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/10649eaf7157 8180929: Deprecate -XX:+/-MonitorInUseLists option Reviewed-by: zgu, coleenp ! src/share/vm/runtime/arguments.cpp Changeset: 430f49f2f2e0 Author: dlong Date: 2017-07-25 08:58 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/430f49f2f2e0 8184047: ExecuteInternalVMTests.java "failed on a valid DirectivesParser string" assert Reviewed-by: kvn ! src/share/vm/compiler/directivesParser.cpp Changeset: e5258343af9c Author: dlong Date: 2017-07-25 16:26 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/e5258343af9c Merge Changeset: 6dc75501e8da Author: hseigel Date: 2017-07-25 13:33 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/6dc75501e8da 8178107: Compiler crashes with "assert(get_instanceKlass()->is_loaded()) failed: must be at least loaded" Summary: Add missing '!' operator to weed out unloaded classes Reviewed-by: coleenp, dcubed ! src/share/vm/classfile/loaderConstraints.cpp Changeset: 9c7e66dada8d Author: hseigel Date: 2017-07-25 19:25 +0000 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/9c7e66dada8d Merge Changeset: 7ae3e5da7a49 Author: iklam Date: 2017-07-25 09:32 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/7ae3e5da7a49 8183038: Minimal vm slowdebug build fails with undefined reference to MetaspaceShared::is_valid_shared_method Summary: added missing NOT_CDS_RETURN_(false) Reviewed-by: jiangli, coleenp ! src/share/vm/memory/metaspaceShared.hpp Changeset: bef84e964115 Author: njian Date: 2017-06-23 11:41 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/bef84e964115 8158361: AArch64: Address calculation missed optimizations Summary: This issue is fixed by adding "addExtI_shift" pattern rule. Other similar rules are also added. Reviewed-by: aph, adinn Contributed-by: zhongwei.yao at linaro.org ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/aarch64_ad.m4 Changeset: 23e687f0c874 Author: yzhang Date: 2017-07-26 15:54 +0800 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/23e687f0c874 8184900: AArch64: Fix overflow in immediate cmp instruction Summary: Use subs instead of cmp to compare BlockZeroingLowLimit. Reviewed-by: aph Contributed-by: yang.zhang at linaro.org ! src/cpu/aarch64/vm/macroAssembler_aarch64.hpp ! src/cpu/aarch64/vm/stubGenerator_aarch64.cpp Changeset: 877b95d69748 Author: goetz Date: 2017-07-26 11:27 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/877b95d69748 8185333: [s390] Fix build without cds Reviewed-by: aph ! src/cpu/s390/vm/sharedRuntime_s390.cpp Changeset: 58902da25a31 Author: coleenp Date: 2017-07-26 10:41 -0400 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/58902da25a31 8185296: java_lang_Class::array_klass should be array_klass_acquire Reviewed-by: eosterlund, kbarrett ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/oop.hpp ! src/share/vm/oops/oop.inline.hpp Changeset: 136f607c4bba Author: stuefe Date: 2017-07-26 11:47 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/136f607c4bba 8185262: Keep default logging for Metaspace OOM short and concise Reviewed-by: iklam, coleenp ! src/share/vm/memory/metaspace.cpp Changeset: 1cd12dd1d032 Author: stuefe Date: 2017-07-26 11:51 -0700 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/1cd12dd1d032 8185263: Fix zero build after 8169881, 8175318, 8178350 Reviewed-by: iklam, coleenp ! src/cpu/zero/vm/methodHandles_zero.cpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/runtime/jniHandles.hpp Changeset: 56e0bffc30fe Author: goetz Date: 2017-07-21 12:43 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/56e0bffc30fe 8185046: jtreg: introduce keyword to disable aot tests Reviewed-by: kvn, stuefe ! test/TEST.ROOT ! test/compiler/aot/DeoptimizationTest.java ! test/compiler/aot/RecompilationTest.java ! test/compiler/aot/SharedUsageTest.java ! test/compiler/aot/calls/fromAot/AotInvokeDynamic2AotTest.java ! test/compiler/aot/calls/fromAot/AotInvokeDynamic2CompiledTest.java ! test/compiler/aot/calls/fromAot/AotInvokeDynamic2InterpretedTest.java ! test/compiler/aot/calls/fromAot/AotInvokeDynamic2NativeTest.java ! test/compiler/aot/calls/fromAot/AotInvokeInterface2AotTest.java ! test/compiler/aot/calls/fromAot/AotInvokeInterface2CompiledTest.java ! test/compiler/aot/calls/fromAot/AotInvokeInterface2InterpretedTest.java ! test/compiler/aot/calls/fromAot/AotInvokeInterface2NativeTest.java ! test/compiler/aot/calls/fromAot/AotInvokeSpecial2AotTest.java ! test/compiler/aot/calls/fromAot/AotInvokeSpecial2CompiledTest.java ! test/compiler/aot/calls/fromAot/AotInvokeSpecial2InterpretedTest.java ! test/compiler/aot/calls/fromAot/AotInvokeSpecial2NativeTest.java ! test/compiler/aot/calls/fromAot/AotInvokeStatic2AotTest.java ! test/compiler/aot/calls/fromAot/AotInvokeStatic2CompiledTest.java ! test/compiler/aot/calls/fromAot/AotInvokeStatic2InterpretedTest.java ! test/compiler/aot/calls/fromAot/AotInvokeStatic2NativeTest.java ! test/compiler/aot/calls/fromAot/AotInvokeVirtual2AotTest.java ! test/compiler/aot/calls/fromAot/AotInvokeVirtual2CompiledTest.java ! test/compiler/aot/calls/fromAot/AotInvokeVirtual2InterpretedTest.java ! test/compiler/aot/calls/fromAot/AotInvokeVirtual2NativeTest.java ! test/compiler/aot/calls/fromCompiled/CompiledInvokeDynamic2AotTest.java ! test/compiler/aot/calls/fromCompiled/CompiledInvokeInterface2AotTest.java ! test/compiler/aot/calls/fromCompiled/CompiledInvokeSpecial2AotTest.java ! test/compiler/aot/calls/fromCompiled/CompiledInvokeStatic2AotTest.java ! test/compiler/aot/calls/fromCompiled/CompiledInvokeVirtual2AotTest.java ! test/compiler/aot/calls/fromInterpreted/InterpretedInvokeDynamic2AotTest.java ! test/compiler/aot/calls/fromInterpreted/InterpretedInvokeInterface2AotTest.java ! test/compiler/aot/calls/fromInterpreted/InterpretedInvokeSpecial2AotTest.java ! test/compiler/aot/calls/fromInterpreted/InterpretedInvokeStatic2AotTest.java ! test/compiler/aot/calls/fromInterpreted/InterpretedInvokeVirtual2AotTest.java ! test/compiler/aot/calls/fromNative/NativeInvokeSpecial2AotTest.java ! test/compiler/aot/calls/fromNative/NativeInvokeStatic2AotTest.java ! test/compiler/aot/calls/fromNative/NativeInvokeVirtual2AotTest.java ! test/compiler/aot/cli/DisabledAOTWithLibraryTest.java ! test/compiler/aot/cli/IncorrectAOTLibraryTest.java ! test/compiler/aot/cli/MultipleAOTLibraryTest.java ! test/compiler/aot/cli/NonExistingAOTLibraryTest.java ! test/compiler/aot/cli/SingleAOTLibraryTest.java ! test/compiler/aot/cli/SingleAOTOptionTest.java ! test/compiler/aot/cli/jaotc/ClasspathOptionUnknownClassTest.java ! test/compiler/aot/cli/jaotc/CompileClassTest.java ! test/compiler/aot/cli/jaotc/CompileDirectoryTest.java ! test/compiler/aot/cli/jaotc/CompileJarTest.java ! test/compiler/aot/cli/jaotc/CompileModuleTest.java ! test/compiler/aot/cli/jaotc/ListOptionNotExistingTest.java ! test/compiler/aot/cli/jaotc/ListOptionTest.java ! test/compiler/aot/cli/jaotc/ListOptionWrongFileTest.java ! test/compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/NativeOrderOutputStreamTest.java ! test/compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/ClassSearchTest.java ! test/compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/ClassSourceTest.java ! test/compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/SearchPathTest.java ! test/compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/directory/DirectorySourceProviderTest.java ! test/compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/jar/JarSourceProviderTest.java ! test/compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/module/ModuleSourceProviderTest.java ! test/compiler/aot/verification/ClassAndLibraryNotMatchTest.java ! test/compiler/aot/verification/vmflags/NotTrackedFlagTest.java ! test/compiler/aot/verification/vmflags/TrackedFlagTest.java Changeset: 5566fd76ce69 Author: lucy Date: 2017-07-27 15:36 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/5566fd76ce69 8180659: [s390] micro-optimization in resize_frame_absolute() Reviewed-by: simonis, mdoerr ! src/cpu/s390/vm/c1_LIRAssembler_s390.cpp ! src/cpu/s390/vm/c1_MacroAssembler_s390.cpp ! src/cpu/s390/vm/macroAssembler_s390.cpp ! src/cpu/s390/vm/macroAssembler_s390.hpp ! src/cpu/s390/vm/s390.ad ! src/cpu/s390/vm/sharedRuntime_s390.cpp ! src/cpu/s390/vm/stubGenerator_s390.cpp ! src/cpu/s390/vm/templateInterpreterGenerator_s390.cpp From maurizio.cimadamore at oracle.com Fri Jul 28 23:22:09 2017 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Sat, 29 Jul 2017 00:22:09 +0100 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <69D623A1-9D83-4A91-BEEC-FA828E8982F2@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <2da8c00f-0c7a-0b75-6e25-4a787464809c@oracle.com> <6ea0cb6f-8fe9-907b-c672-481ac1ea6833@oracle.com> <69D623A1-9D83-4A91-BEEC-FA828E8982F2@oracle.com> Message-ID: <0a95c266-20ab-9066-24ed-cea0d59f686f@oracle.com> On 28/07/17 22:15, John Rose wrote: > On Jul 27, 2017, at 8:57 AM, Tobias Hartmann > > wrote: >> >>> >>> Also, why did I not see the issue when running all tests? >> >> Did you run with a debug build? Maybe your build cached some files. >> Re-building after changing bytecodes.hpp should take a long time. > > A test that fundamental (and cheap) should fail with "java -version" > in a release build. > If that's not the case, there should be this in our code: > guarantee(number_of_codes <= 256, ""). > Right - I'm too under the impression that this business of critical error turned off in product build (while I might understand some of the rationale), seems to be counterproductive - or at least it was in this case big time. I was able to run all jdk and langtools jtreg test, and all JDK/hotspot valhalla tests w/o a single glitch, which does seem weird. That said, if the 'norm' for HS is to run tests in fastdebug mode (or do you need full debug to enable these?), then I should just have done that, of course. Maurizio From john.r.rose at oracle.com Sat Jul 29 04:48:57 2017 From: john.r.rose at oracle.com (John Rose) Date: Fri, 28 Jul 2017 21:48:57 -0700 Subject: Crash with "assert(number_of_codes <= 256) failed: too many bytecodes" In-Reply-To: <0a95c266-20ab-9066-24ed-cea0d59f686f@oracle.com> References: <28e33207-884c-2fcb-a5fe-decef7e9dd97@oracle.com> <2da8c00f-0c7a-0b75-6e25-4a787464809c@oracle.com> <6ea0cb6f-8fe9-907b-c672-481ac1ea6833@oracle.com> <69D623A1-9D83-4A91-BEEC-FA828E8982F2@oracle.com> <0a95c266-20ab-9066-24ed-cea0d59f686f@oracle.com> Message-ID: <56F71BED-A5D6-4999-8C9A-A4EA89E6D665@oracle.com> On Jul 28, 2017, at 4:22 PM, Maurizio Cimadamore wrote: > > That said, if the 'norm' for HS is to run tests in fastdebug mode (or do you need full debug to enable these?), then I should just have done that, of course. Yes, but it's also a norm to use the "guarantee" macro tastefully, so the release JVM will check itself when such checks are really cheap. This check is in particular is appropriate to STATIC_ASSERT (i.e., can be evaluated at compile time), so there's no reason to push it off into a fastdebug build. From tobias.hartmann at oracle.com Mon Jul 31 12:14:14 2017 From: tobias.hartmann at oracle.com (tobias.hartmann at oracle.com) Date: Mon, 31 Jul 2017 12:14:14 +0000 Subject: hg: valhalla/valhalla/hotspot: Enabled UninitializedValueFieldsTest with -Xcomp Message-ID: <201707311214.v6VCEEP8013738@aojmv0008.oracle.com> Changeset: 8ee978d1135c Author: thartmann Date: 2017-07-31 14:08 +0200 URL: http://hg.openjdk.java.net/valhalla/valhalla/hotspot/rev/8ee978d1135c Enabled UninitializedValueFieldsTest with -Xcomp ! test/runtime/valhalla/valuetypes/UninitializedValueFieldsTest.java From tobias.hartmann at oracle.com Mon Jul 31 13:53:02 2017 From: tobias.hartmann at oracle.com (Tobias Hartmann) Date: Mon, 31 Jul 2017 15:53:02 +0200 Subject: RFR(XS): 8185573: [MVT] Remove references to vgetfield from compiler code Message-ID: <4d277e2e-f84c-6c15-3f45-59ba808cd838@oracle.com> Hi, https://bugs.openjdk.java.net/browse/JDK-8185573 http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.37/ I removed all references to _vgetfield from compiler code because it's now a VM internal bytecode and may not show up in the Java bytecode stream (JDK-8185349). All tests pass. Thanks, Tobias