Re: RFR (round 4), JDK-8214259: Implementation: JEP 189: Shenandoah: A Low-Pause Garbage Collector

2018-12-02 Thread John Rose
On Nov 30, 2018, at 3:22 PM, coleen.phillim...@oracle.com wrote: > > Hi, I looked at the runtime changes, which are very few, since you've > upstreamed most of the runtime dependent changes already. > They look good to me. "since you've upstreamed most of the runtime dependent changes already"

Re: Thread Native ID Access

2018-02-22 Thread John Rose
On Feb 22, 2018, at 8:49 PM, David Holmes wrote: > > I don't think this request has any impact on Fibers at all. At any given time > a piece of executing Java code is executing on a current Thread, and that > current Thread must be running on a native thread (regardless of mapping) and > the n

Re: RFR: 8141211: Convert TraceExceptions to Unified Logging

2015-12-18 Thread John Rose
On Dec 18, 2015, at 12:35 AM, Thomas Stüfe wrote: > > Neither advantage nor disadvantage: you keep the TLS-anchored buffer around. > This is nice because next time you log you save an allocation call, but needs > to be managed to not be a memory drain. For instance, in > commit_multiline_messa

Re: RFR: 8141211: Convert TraceExceptions to Unified Logging

2015-12-17 Thread John Rose
On Dec 17, 2015, at 11:39 AM, Thomas Stüfe wrote: > > When we print it, we precede the multiline message with the decorators in the > first line and indent the rest of the lines to the same position: > > [time][pid][tid] hallo1 > hallo2 > hallo3 > > This ap

Re: RFR: 8141211: Convert TraceExceptions to Unified Logging

2015-12-16 Thread John Rose
On Dec 15, 2015, at 12:26 PM, Rachel Protacio wrote: > > - each incident of ttyLocker that involved separate logging lines for the > same message have been consolidated to one line > - each incident of ttyLocker that involved separate print statements to one > logging line has been changed to

Re: 3-rd round RFR (S) 8008678: JSR 292: constant pool reconstitution must support pseudo strings

2015-01-16 Thread John Rose
On Jan 16, 2015, at 3:03 PM, Coleen Phillimore wrote: > > I was sort of wondering about this along the same lines. You're setting the > second bit, right? :) That sounds good, much better than the string prefix hack. Parsing the string would introduce too much coupling between the JVM and ra

Re: A hotspot patch for stack profiling (frame pointer)

2015-01-14 Thread John Rose
On Jan 14, 2015, at 6:42 AM, Bertrand Delsart wrote: > > I would not prevent the JITs from using RBP as long as the changeset is not > sufficient to guarantee the profiling will work... and IMHO solving the > JSR292 issue will be much more intrusive (impacting HotSpot stack walking > code).

Re: [9] RFR (XS): JSR 292 support for PopFrame has a fragile coupling with DirectMethodHandle

2014-05-27 Thread John Rose
Reviewed; thank you. — John On May 26, 2014, at 12:25 PM, Vladimir Ivanov wrote: > http://cr.openjdk.java.net/~vlivanov/8034935/webrev.00

Re: hg: jdk8/tl/jdk: 7194897: JSR 292: Cannot create more than 16 instances of an anonymous class; ...

2013-11-06 Thread John Rose
On Nov 6, 2013, at 5:32 PM, Boris Davidovich wrote: > Am I missing something? > The intrinsic would be looking at a constant string. — John

Re: hg: jdk8/tl/jdk: 7194897: JSR 292: Cannot create more than 16 instances of an anonymous class; ...

2013-11-06 Thread John Rose
On Nov 6, 2013, at 11:30 AM, Peter Levart wrote: > Well, indexOf(char) or lastIndexOf(char) searches for a single char. We can > do better searching backwards for two chars at the same time. > > If the "name" of VM-anonymous class is always ending with pattern: "slash > followed by some decima

Re: RFR 8025185: MethodHandleInError and MethodTypeInError not handled in ConstantPool::, compare_entry_to and copy_entry_to

2013-10-09 Thread John Rose
Looks good. Suggestion: Make normalize_error_tag be static, for namespace cleanliness. Even better, move it into constantTag, as (say) constantTag::non_error_value(). — John On Oct 9, 2013, at 7:04 PM, Coleen Phillimore wrote: > > Thanks Dan! > Coleen > > On 10/9/2013 6:39 PM, Daniel D.

Re: Review Request (M) 7187554: JSR 292: JVMTI PopFrame needs to handle appendix arguments

2013-09-04 Thread John Rose
estoring the MemberName slot at deoptimization is not going to cause a > performance degradation. > > If you and Christian are Ok with it I can file a new compiler bug to cover > this issue. > > Thanks, > Serguei > > > On 8/12/13 3:30 PM, John Rose wrote: >> T

Re: Review Request (M) 7187554: JSR 292: JVMTI PopFrame needs to handle appendix arguments

2013-08-12 Thread John Rose
This fix will be delicate and may have regressions if the exact code shape (of the PopFrame-ed invokestatic call) changes. Note that member_name_arg_or_null assumes that the value in Local#0 is a DMH; there will be asserts thrown if this fails. It also assumes that the member name held by the

Re: RFR(S): 8016131: nsk/sysdict/vm/stress/chain tests crash the VM in 'entry_frame_is_first()'

2013-07-15 Thread John Rose
Good. — John On Jul 15, 2013, at 10:11 PM, Rickard Bäckman wrote: > thanks for the suggestion. It makes sense. > Updated webrev: http://cr.openjdk.java.net/~rbackman/8016131.u2/

Re: RFR(S): 8016131: nsk/sysdict/vm/stress/chain tests crash the VM in 'entry_frame_is_first()'

2013-07-15 Thread John Rose
On Jul 15, 2013, at 9:59 AM, Vladimir Kozlov wrote: > There are several methods already in Thread class which do similar address > cheacks: on_local_stackO, is_in_stack(). It would be nice to have new check > (at least part of it) at the same place. Yes, that's a good idea! Thread::is_in_usab

Re: RFR(S): 8016131: nsk/sysdict/vm/stress/chain tests crash the VM in 'entry_frame_is_first()'

2013-07-12 Thread John Rose
It's good. One comment: The new overloading of aux. function entry_frame_is_first(_) belongs somewhere else. Since it doesn't really use frame::this, it is confusing as an overload beside a function that does use frame::this. Suggest placing it in JavaCallWrapper not frame. — John On Jul 1

Re: RFR: 8009615: JvmtiClassFileReconstituter does not create BootstrapMethod attributes

2013-05-06 Thread John Rose
On May 2, 2013, at 1:50 AM, Staffan Larsen wrote: > JvmtiClassFileReconstituter does not create BootstrapMethod attributes when > re-creating a class for retransformation. This fix uses the operands in the > constant pool to re-create the BootstrapMethod attributes in the class file. > > webre

Re: hs25 review request (2nd round): 8008511 JSR 292: MemberName vmtarget refs to methods must be updated at class redefinition

2013-04-17 Thread John Rose
As we discussed verbally, I suggest adding a line like this at the beginning of every low-level MemberNameTable access function: assert_locked_or_safepoint(MemberNameTable_lock); (I'm modeling this from SystemDictionary::find_class and its brothers.) The rest of it looks good. Reviewed! —

Re: hs25 review request: 8008511 JSR 292: MemberName vmtarget refs to methods must be updated at class redefinition

2013-04-12 Thread John Rose
On Apr 2, 2013, at 2:09 PM, Coleen Phillimore wrote: >> Also, the decision how to represent the MNT depends on its future usage by >> the compiler team. >> As we agreed, the compiler team is going to adjust the MNT to their needs >> at some point when it is more convenient for them. >> So that

Re: Request for review: 8000797: NPG: is_pseudo_string_at() doesn't work

2013-02-25 Thread John Rose
On Feb 21, 2013, at 9:09 PM, Coleen Phillimore wrote: > I'm sorry about this but I need one more review. I omitted one instance of > JVM_CONSTANT_Object in templateTable_sparc.cpp and I forgot that you can't > make any edit to the VM without making a duplicate edit to the serviceability > a

Re: Request for review: 8000797: NPG: is_pseudo_string_at() doesn't work

2013-02-21 Thread John Rose
On Feb 20, 2013, at 8:11 PM, Coleen Phillimore wrote: > Thanks to John's feedback, I've modified this change again to revert back to > my original change to zero out the Symbol* to indicate pseudo string (could > be thought of as "patched string"). Also cleaned up unused constant pool > Obj

Re: Request for review: 8000797: NPG: is_pseudo_string_at() doesn't work

2013-02-21 Thread John Rose
On Feb 21, 2013, at 11:16 AM, "serguei.spit...@oracle.com" wrote: > I think, the John's suggestion for odd strings should work here. > Something like: > if (sym == NULL) { > str = "CONSTANT_PLACEHOLDER_42"; > } > > I will file a bug on this. Yes, that looks good. I suggest either the

Re: Request for review: 8000797: NPG: is_pseudo_string_at() doesn't work

2013-02-20 Thread John Rose
On Feb 20, 2013, at 11:59 AM, Coleen Phillimore wrote: > On 2/20/2013 2:51 PM, John Rose wrote: >> On Feb 20, 2013, at 10:20 AM, Coleen Phillimore >> wrote: >> >>> Summary: Add JVM_CONSTANT_PseudoString in place of JVM_CONSTANT_Object and >>> use

Re: Request for review: 8000797: NPG: is_pseudo_string_at() doesn't work

2013-02-20 Thread John Rose
On Feb 20, 2013, at 10:20 AM, Coleen Phillimore wrote: > I noticed that JVM_CONSTANT_Object is no longer used so reused that constant > to be PseudoString. I had an edit to go in the other direction (if a > pseudo-string is patched into a constant pool, make it a > JVM_CONSTANT_Object), but

Re: Request for review: 8000797: NPG: is_pseudo_string_at() doesn't work

2013-02-20 Thread John Rose
On Feb 20, 2013, at 10:20 AM, Coleen Phillimore wrote: > Summary: Add JVM_CONSTANT_PseudoString in place of JVM_CONSTANT_Object and > use this tag to distinguish patched pseudo strings. The original string is > retained if it was present. This is reasonable; it is a good cleanup. If you can

Re: Request for review: 8000797: NPG: is_pseudo_string_at() doesn't work

2013-02-20 Thread John Rose
On Feb 20, 2013, at 10:20 AM, Coleen Phillimore wrote: > John or Christian, can you confirm that you don't plan to use object > constants anymore? Yes, that's fine. Object constants were introduced when the JVM was internally generating bytecodes with pre-linked constant pools. We removed t

Re: RFR: 8000489: older builds of hsdis don't work anymore after 6879063

2012-11-01 Thread John Rose
On Nov 1, 2012, at 11:06 AM, yumin...@oracle.com wrote: > Please have a look for new webrev > http://cr.openjdk.java.net/~minqi/8000489 > > The new code works fine: new vm with new hsdis and old hsdis, old vm with > new hsdis and old hsdis. Good! — John

Re: RFR: 8000489: older builds of hsdis don't work anymore after 6879063

2012-10-29 Thread John Rose
On Oct 29, 2012, at 10:35 AM, Yumin Qi wrote: > I haven't considered new JVM work with old hsdis. Will change > disassemble.cpp to check: Perfect! Thanks, — John

Re: RFR: 8000489: older builds of hsdis don't work anymore after 6879063

2012-10-29 Thread John Rose
On Oct 25, 2012, at 1:16 PM, Yumin Qi wrote: > To John's question, it doesn't require changes to disassembler.cpp: > > new version ---> decode_instructions_virtual > old version ---> decode_instructions ---> decode_instructions_virtual > > tested with b01 (JDK8) with new hsdis-i386.so. I

Re: RFR: 8000489: older builds of hsdis don't work anymore after 6879063

2012-10-24 Thread John Rose
On Oct 24, 2012, at 10:01 AM, yumin...@oracle.com wrote: > Hi, all > > Can I have your codereview of 8000489: older builds of hsdis don't work > anymore after 6879063 > It caused old build broke the disassembler. > > Webrev: http://cr.openjdk.java.net/~minqi/8000489 Shouldn't there be a cor

Re: RFR: 6879063: SA should use hsdis for disassembly

2012-09-18 Thread John Rose
On the whole, I am delighted to see all the code being removed, and pleased to see a fresh purpose for the hsdis plugin. In hsdis.c, there is a symbol 'decode_instruction_virtual' (no 's' at the end) which appears to have no definition. Is it a typo? The "nice newlines" have moved around and p

Re: RFR: 7143353: hprof not working with invokedynamic

2012-05-24 Thread John Rose
Looks good. (General rule: Adding constant pool types causes lots of ripples like this.) — John On May 24, 2012, at 12:46 AM, Nils Loodin wrote: > when the 'demo' java_crw_demo (which is used by hprof) tries to mirror the > constant pool of a class, a few of the constants introduced by invoke

hg: jdk7/tl/jdk: 6838598: Legal notice repair: jdk/src/share/classes/sun/dyn/FilterGeneric.java

2009-08-06 Thread john . rose
Changeset: bc1deb18bfb1 Author:jrose Date: 2009-08-06 18:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/bc1deb18bfb1 6838598: Legal notice repair: jdk/src/share/classes/sun/dyn/FilterGeneric.java Reviewed-by: xdono ! src/share/classes/sun/dyn/FilterGeneric.java

hg: jdk7/tl/jdk: 6829144: JSR 292 JVM features need a provisional Java API

2009-05-05 Thread john . rose
Changeset: d201987cb76c Author:jrose Date: 2009-05-05 22:40 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d201987cb76c 6829144: JSR 292 JVM features need a provisional Java API Summary: JDK API and runtime (partial) for anonk, meth, indy Reviewed-by: mr ! make/docs/CORE_PKG

hg: jdk7/tl/langtools: 6829189: Java programming with JSR 292 needs language support

2009-05-04 Thread john . rose
Changeset: e2722bd43f3a Author:jrose Date: 2009-05-04 21:04 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/e2722bd43f3a 6829189: Java programming with JSR 292 needs language support Summary: Language changes documented in http://wikis.sun.com/display/mlvm/ProjectCoinPr