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

John Rose john.r.rose at oracle.com
Thu May 26 01:31:16 PDT 2011


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 hotspot-compiler-dev mailing list