src/java.base/share/classes/java/lang/invoke/MethodHandle.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/java.base/share/classes/java/lang/invoke/MethodHandle.java	Tue Oct 14 22:50:05 2014
--- new/src/java.base/share/classes/java/lang/invoke/MethodHandle.java	Tue Oct 14 22:50:05 2014

*** 1436,1449 **** --- 1436,1448 ---- * Use with discretion. */ /*non-public*/ void updateForm(LambdaForm newForm) { if (form == newForm) return; assert(this instanceof DirectMethodHandle && this.internalMemberName().isStatic()); // ISSUE: Should we have a memory fence here? + newForm.prepare(); // as in MethodHandle.<init> UNSAFE.putObject(this, FORM_OFFSET, newForm); this.form.prepare(); // as in MethodHandle.<init> + UNSAFE.fullFence(); } private static final long FORM_OFFSET; static { try {

src/java.base/share/classes/java/lang/invoke/MethodHandle.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File