Commit Graph

50 Commits

Author SHA1 Message Date
John Rose
59440ee0be 8008688: Make MethodHandleInfo public
A major overhaul to MethodHandleInfo and method handles in general.

Reviewed-by: vlivanov, twisti
2013-09-03 21:42:56 -07:00
Mani Sarkar
4f76f09719 8022749: Convert junit tests to testng in test/java/lang/invoke
Reviewed-by: mduigou, alanb
2013-08-12 12:11:04 -07:00
Christian Thalinger
22d32e76ce 8019184: MethodHandles.catchException() fails when methods have 8 args + varargs
Reviewed-by: jrose
2013-07-03 11:35:06 -07:00
Mandy Chung
5a360a7579 8007035: deprecate public void SecurityManager.checkMemberAccess(Class<?> clazz, int which)
Reviewed-by: jrose, alanb, dfuchs
2013-07-02 15:58:09 -07:00
Robert Field
9151d67365 8016761: Lambda metafactory - incorrect type conversion of constructor method handle
Reviewed-by: jrose
2013-06-26 07:50:04 -07:00
Chris Hegarty
0431243910 8014737: java/lang/invoke/7196190/MHProxyTest.java fails after 8009424
Reviewed-by: twisti
2013-05-22 13:57:59 +01:00
Robert Field
60fae99960 8012028: Metafactory-generated lambda classes should be final
8008941: isSynthetic() returns false for lambda instances

Reviewed-by: mduigou
2013-04-12 20:23:13 -07:00
Vladimir Ivanov
9aba745d56 8009222: java.lang.IllegalArgumentException: not invocable, no method type when attempting to get getter method handle for a static field
Reviewed-by: jrose, twisti
2013-03-06 16:59:42 +04:00
Alan Bateman
9849742625 8006000: TEST_BUG: java/lang/invoke/lambda/LambdaAccessControlTest.java fails intermittently
Reviewed-by: chegar
2013-03-08 12:03:26 +00:00
Robert Field
b0dc9de25e 8008770: SerializedLambda incorrect class loader for lambda deserializing class
Current thread's context ClassLoader was used to load class by name, pass class not name in serialization (Thank you Peter Levart for test and prototype. Thank you Sundar and Peter for unofficial reviews)

Reviewed-by: forax
2013-02-26 10:38:58 -08:00
Krystal Mo
f5666f9a69 7087570: java.lang.invoke.MemberName information wrong for method handles created with findConstructor
REF_invokeSpecial DMHs (which are unusual) get marked explicitly; tweak the MHI to use this bit

Reviewed-by: jrose, twisti
2013-02-26 11:05:26 +00:00
Robert Field
56baa11720 8008356: Test LambdaSerialization.java failing
Run in /othervm mode

Reviewed-by: ksrini
2013-02-21 15:46:37 -08:00
Robert Field
381aecb7c2 8004970: Implement serialization in the lambda metafactory
Reviewed-by: forax
2013-02-16 12:36:54 -08:00
David Katleman
306cab1006 8004982: JDK8 source with GPL header errors
Reviewed-by: ohair
2012-12-20 16:24:50 -08:00
Robert Field
846f0f2ded 8003881: Prevent lambda implementing inner classes from allowing the creation of new instances
Lambda implementing inner classes now has private constructor (thanks Kumar)

Reviewed-by: ksrini
2012-12-06 21:55:55 -08:00
Jiangli Zhou
f3e4fda6ed 7197210: java/lang/invoke/CallSiteTest.java failing on armsflt
Reduce work load and set longer timeout for java/lang/invoke tests.

Reviewed-by: kvn, twisti
2012-11-05 12:51:14 -05:00
Alan Bateman
430592a30e 7197491: update copyright year to match last edit in jdk8 jdk repository
Reviewed-by: chegar, ksrini
2012-11-02 15:50:11 +00:00
Lana Steuck
b8265239b8 Merge 2012-10-25 20:32:10 -07:00
Christian Thalinger
01d0ba69ce 8000989: smaller code changes to make future JSR 292 backports easier
Reviewed-by: jrose
2012-10-19 17:04:35 -07:00
John R Rose
0a735e76f6 7196190: Improve method of handling MethodHandles
Bind callers to caller-sensitive methods.

Reviewed-by: twisti, jjh, vlivanov, ahgross
2012-09-20 14:02:55 -07:00
Christian Thalinger
e48b871bdc 7194662: JSR 292: PermuteArgsTest times out in nightly test runs
Reviewed-by: kvn
2012-08-28 14:57:43 -07:00
John R Rose
9d9d7877aa 7191102: nightly failures after JSR 292 lazy method handle update (round 3)
Reviewed-by: twisti, kvn
2012-08-17 13:42:25 -07:00
Christian Thalinger
360d512854 7023639: JSR 292 method handle invocation needs a fast path for compiled code
6984705: JSR 292 method handle creation should not go through JNI

Remove assembly code for JDK 7 chained method handles

Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Michael Haupt <michael.haupt@oracle.com>
Reviewed-by: jrose, twisti, mhaupt, forax
2012-07-24 10:47:44 -07:00
John R Rose
b9299f283f 7129034: VM crash with a field setter method with a filterArguments
Add null checks before unsafe calls that take a variable base reference; update unit tests

Reviewed-by: kvn, twisti
2012-07-12 00:11:35 -07:00
Abhijit Saha
5d202b67cc Merge 2012-05-21 15:13:13 -07:00
John R Rose
6b14cf6b82 7165628: Issues with java.lang.invoke.MethodHandles.Lookup
Base SecurityManager checks on either of Lookup.lookupClass or caller class; also clarify Lookup access checks.

Reviewed-by: twisti
2012-05-18 20:31:28 -07:00
James Melvin
d090606f36 7130404: [macosx] "os.arch" value should be "x86_64" for compatibility with Apple JDK6
On Mac OS X, align system property "os.arch" with Apple legacy JDKs.  Also, improve os.name string matching by using .contains() method instead of .startsWith(). This fix spans multiple repositories.

Reviewed-by: dcubed, phh, ohair, katleman
2012-04-16 18:09:53 -04:00
John R Rose
cec41c4c9d 7030453: JSR 292 ClassValue.get method is too slow
Implement ClassValue cooperatively with Class like ThreadLocal with Thread.

Reviewed-by: twisti, mduigou
2012-01-18 17:34:32 -08:00
John R Rose
ef856f2fe0 7117167: Misc warnings in java.lang.invoke and sun.invoke.*
Reviewed-by: smarks
2012-01-18 17:34:29 -08:00
Christian Thalinger
82266506f2 7109063: JSR 292: fix for 7085860 is incomplete
Reviewed-by: iveresov, alanb, jrose
2011-11-09 00:46:13 -08:00
Christian Thalinger
b8587b3878 7085860: JSR 292: implement CallSite.setTargetNormal and setTargetVolatile as native methods
Reviewed-by: jrose, never
2011-11-02 02:03:30 -07:00
Alan Bateman
b1fadc8f75 7089131: test/java/lang/invoke/InvokeGenericTest.java does not compile
Reviewed-by: darcy, jrose
2011-09-10 14:55:14 +01:00
John R Rose
8b3e857aab 7058651: JSR 292 unit tests need a refresh
Enhancements to unit tests.

Reviewed-by: never, twisti
2011-07-16 15:44:33 -07:00
John R Rose
30257105cb 7058630: JSR 292 method handle proxy violates contract for Object methods
Reviewed-by: never, twisti
2011-07-16 15:40:13 -07:00
John R Rose
8eddf40f8b Merge 2011-07-13 01:40:55 -07:00
John R Rose
1f3aab409b 7054590: (JSR-292) MethodHandleProxies.asInterfaceInstance() accepts private/protected nested interfaces
Fix non-compliant logic in MethodHandleProxies, fix invalid private classes in MethodHandlesTest

Reviewed-by: twisti, never
2011-06-14 22:47:12 -07:00
John R Rose
9acf4f0284 7052202: JSR 292: Crash in sun.invoke.util.ValueConversions.fillArray
Fix corner cases involving MethodHandles.permuteArguments with long or double argument lists.

Reviewed-by: twisti, never
2011-06-14 22:47:09 -07:00
John R Rose
ad33af1a1c 7051206: JSR 292 method name SwitchPoint.isValid is misleading to unwary users; should be hasBeenInvalidated
Reviewed-by: kvn, never, ysr
2011-06-03 11:20:20 -07:00
John R Rose
c0d9c39aa2 7049122: java/lang/invoke/RicochetTest.java with MAX_ARITY=255 in -Xcomp mode overflows code cache
Reduce the scope of the unit test (mark high water mark of testing with @ignore tags)

Reviewed-by: never
2011-06-01 23:56:51 -07:00
John R Rose
f32795386e 7050328: (jsr-292) findConstructor throws ExceptionInInitializerError if run under SecurityManager
Wrap system property and reflection accesses under doPrivileged.  Ensure constant pool linkage bypasses the SM as specified.

Reviewed-by: kvn, never
2011-06-01 23:56:47 -07:00
John Coomes
93196c8b51 Merge 2011-05-27 19:03:03 -07:00
John R Rose
025d0aead8 7032323: code changes for JSR 292 EG adjustments to API, through Public Review
API code changes and javadoc changes following JSR 292 Public Review comments, through PFD

Reviewed-by: never
2011-05-26 17:37:36 -07:00
David Katleman
170844d307 7044486: open jdk repos have files with incorrect copyright headers, which can end up in src bundles
Reviewed-by: ohair, trims
2011-05-25 13:32:36 -07:00
John R Rose
8bb387d77e 7044892: JSR 292: API entry points sometimes throw the wrong exceptions or doesn't throw the expected one
Point-fixes for 7038847, 7038860, 7042656, 7042829, 7041853, and several other reports

Reviewed-by: never, kvn
2011-05-17 19:48:19 -07:00
John R Rose
4b011923e2 7032850: MethodHandle.invokeGeneric throws unspecified RuntimeException if parameterized method is called
Implement invocation corner cases, including correct type conversions and interface type enforcement.

Reviewed-by: never
2011-05-17 19:48:14 -07:00
John R Rose
9a58e303d7 6939861: JVM should handle more conversion operations
Integrate JDK code with JVM-supplied ricochet frames.

Reviewed-by: never, twisti
2011-05-12 19:27:49 -07:00
John R Rose
eb9632506b 7034977: JSR 292 MethodHandle.invokeGeneric should be renamed MethodHandle.invoke
Rename invokeGeneric to invoke

Reviewed-by: never, twisti
2011-05-12 19:27:33 -07:00
John R Rose
06a8e9b35e 7019529: JSR292: java/dyn/ClassValueTest.java depends on sub-test execution order
Test should not use static variables, because they may contain stale values.

Reviewed-by: twisti
2011-04-09 21:38:40 -07:00
John R Rose
e60c5b1af0 6817525: turn on method handle functionality by default for JSR 292
JVM bug 6817525 requires changes to some JDK unit tests; update test invocation flags and "Indify" snapshot

Reviewed-by: kvn, twisti
2011-04-07 22:07:06 -07:00
John R Rose
3718824e69 7012648: move JSR 292 to package java.lang.invoke and adjust names
Package and class renaming only; delete unused methods and classes; add @since tags; no code changes

Reviewed-by: twisti
2011-03-23 23:02:31 -07:00