src/java.base/share/classes/java/lang/invoke/LambdaForm.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
jdk Cdiff src/java.base/share/classes/java/lang/invoke/LambdaForm.java
src/java.base/share/classes/java/lang/invoke/LambdaForm.java
Print this page
rev 10589 : 8037209: Improvements and cleanups to bytecode assembly for lambda forms
Reviewed-by: vlivanov, psandoz
Contributed-by: john.r.rose@oracle.com
rev 10592 : 8050052: Small cleanups in java.lang.invoke code
Reviewed-by: ?
rev 10593 : 8050053: Improve caching of different invokers
Reviewed-by: vlivanov, ?
Contributed-by: john.r.rose@oracle.com
rev 10597 : 8050057: Improve caching of MethodHandle reinvokers
Reviewed-by: vlivanov, ?
Contributed-by: john.r.rose@oracle.com
rev 10598 : 8050200: Make LambdaForm intrinsics detection more robust
Reviewed-by: vlivanov, ?
Contributed-by: john.r.rose@oracle.com
rev 10605 : 8057657: Annotate LambdaForm parameters with types
Reviewed-by: vlivanov, ?
Contributed-by: john.r.rose@oracle.com
rev 10607 : imported patch 19.8057042.editor.0
rev 10608 : 8057042: LambdaFormEditor: derive new LFs from a base LF
Reviewed-by: vlivanov, ?
Contributed-by: john.r.rose@oracle.com
rev 10609 : 8057922: Improve LambdaForm sharing by using LambdaFormEditor more extensively
Reviewed-by: vlivanov, ?
Contributed-by: john.r.rose@oracle.com
*** 800,831 ****
}
traceInterpreter("] return =>", rval);
return rval;
}
- //** This transform is applied (statically) to every name.function. */
- /*
- private static MethodHandle eraseSubwordTypes(MethodHandle mh) {
- MethodType mt = mh.type();
- if (mt.hasPrimitives()) {
- mt = mt.changeReturnType(eraseSubwordType(mt.returnType()));
- for (int i = 0; i < mt.parameterCount(); i++) {
- mt = mt.changeParameterType(i, eraseSubwordType(mt.parameterType(i)));
- }
- mh = MethodHandles.explicitCastArguments(mh, mt);
- }
- return mh;
- }
- private static Class<?> eraseSubwordType(Class<?> type) {
- if (!type.isPrimitive()) return type;
- if (type == int.class) return type;
- Wrapper w = Wrapper.forPrimitiveType(type);
- if (w.isSubwordOrInt()) return int.class;
- return type;
- }
- */
-
static void traceInterpreter(String event, Object obj, Object... args) {
if (TRACE_INTERPRETER) {
System.out.println("LFI: "+event+" "+(obj != null ? obj : "")+(args != null && args.length != 0 ? Arrays.asList(args) : ""));
}
}
--- 800,809 ----
src/java.base/share/classes/java/lang/invoke/LambdaForm.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File