review request (L): 7032323: code changes for JSR 292 EG adjustments to API, through Public Review

Tom Rodriguez tom.rodriguez at oracle.com
Thu May 26 10:11:09 PDT 2011


isValid looks fine.

tom

On May 26, 2011, at 1:31 AM, John Rose wrote:

> On May 25, 2011, at 11:58 PM, Tom Rodriguez wrote:
> 
>> Overall it seems ok.  A few minor oddities:
>> 
>> MethodHandle.java
>> 
>> variable arity is sometimes hyphenated.  It seems more correct without but be consistent.
> 
> Replaced hyphen by space.
> 
>> AdapterMethodHandle.java:
>> 
>> The new value srcSlot appears unused.
> 
> Right; it doesn't have any use.  Deleted.
> 
>> Should this just go away:
>> 
>> -        if (argCount <= 2)  return false;  // must be a swap, not a rotate
>> +        //if (argCount <= 2)  return false;  // must be a swap, not a rotate
> 
> Yes.  Turns out that if you need to swap an int and a long, it has to be rendered as one or two rotates.
> 
> Thanks, Tom.
> 
> -- John
> 
> P.S.  One more bit to review:  I might add the following to SwitchPoint.java, depending on what the EG says today.
> 
>    /**
>     * Determines if this switchpoint is still valid.
>     * <p>
>     * Since invalidation is a global and immediate operation,
>     * this query must be sequenced with any
>     * other threads that could invalidate this switchpoint.
>     * It may therefore be expensive.
>     * <p>
>     * In addition, due to concurrent invalidations by other threads,
>     * a switchpoint may report itself as valid, and yet become
>     * invalid before the querying thread begins to act on the
>     * supposed validity.
>     * @return true if this switchpoint has never been invalidated
>     */
>    public boolean isValid() {
>        return (mcs.getTarget() == K_true);
>    }
> 
>> tom
>> 
>> On May 25, 2011, at 3:30 AM, John Rose wrote:
>> 
>>> This is the last major bundle of changes for JDK 7.
>>> http://cr.openjdk.java.net/~jrose/7032323/webrev.00/
> 
> 



More information about the mlvm-dev mailing list