126 Commits

Author SHA1 Message Date
Aleksey Shipilev
375e12feb9 8015270: @Contended: fix multiple issues in the layout code
Field count handling fixed, has_nonstatic_fields invariant fixed, oop map overrun fixed; new asserts

Reviewed-by: kvn, dcubed, coleenp
2013-05-27 12:49:08 -07:00
Coleen Phillimore
6ed8c8fcea 8003421: NPG: Move oops out of InstanceKlass into mirror
Inject protection_domain, signers, init_lock into java_lang_Class

Reviewed-by: stefank, dholmes, sla
2013-05-22 14:37:49 -04:00
Bharadwaj Yadavalli
19da55568f 8014059: JSR292: Failed to reject invalid class cplmhl00201m28n
Restrict reference of interface methods by invokestatic and invokespecial to classfile version 52 or later.

Reviewed-by: kvn, hseigel
2013-05-21 16:17:51 -07:00
Aleksey Shipilev
a462587e4b 8014878: Clean up class field layout code
Rename/remove local variables, re-arrange instance_size calculation, more comments.

Reviewed-by: kvn, coleenp
2013-05-20 23:41:27 +04:00
Daniel D. Daugherty
9a6dfe1c55 Merge 2013-05-17 11:36:43 -07:00
Aleksey Shipilev
efe96b1343 8014509: @Contended: explicit default value behaves differently from the implicit value
Treat the empty string as the default value tag

Reviewed-by: kvn, twisti
2013-05-17 01:58:32 +04:00
Aleksey Shipilev
2fd72e202f 8012939: @Contended doesn't work correctly with inheritance
Fix instance_size miscalculation.

Reviewed-by: jrose, kvn
2013-05-17 01:43:48 +04:00
Christian Thalinger
c6c7f3439e Merge 2013-05-16 13:47:55 -07:00
Aleksey Shipilev
b3675a00d9 8014448: Purge PrintCompactFieldsSavings
Remove obsolete debugging code.

Reviewed-by: dholmes, kvn
2013-05-14 11:34:30 +04:00
Vladimir Kozlov
1763afaec5 Merge 2013-05-03 15:35:30 -07:00
Eric McCorkle
287d1c2caa 8007154: Remove support for u4 MethodParameter flags fields
Remove support for parsing class files with four-byte flags fields in MethodParameters attributes

Reviewed-by: jrose, coleenp
2013-04-26 07:34:02 -04:00
Gilles Duboscq
34da1742ef 8012292: optimized build with GCC broken
Some #ifndef PRODUCT should be #ifdef ASSERT

Reviewed-by: kvn, twisti
2013-04-24 14:26:09 +02:00
Bharadwaj Yadavalli
f63b13e379 8006267: InterfaceMethod_ref should allow invokestatic and invokespecial
Lambda changes; spec 0.6.2 - Allow static invokestatic and invokespecial calls to InterfaceMethod_ref

Reviewed-by: dholmes, acorn
2013-04-18 08:05:35 -07:00
Vladimir Ivanov
50821686b5 8011972: Field can be erroneously marked as contended when @Contended annotation isn't present
Reviewed-by: kvn, kmo, shade
2013-04-11 09:08:15 -07:00
Bharadwaj Yadavalli
70314e1b01 Merge 2013-03-29 20:52:01 -07:00
Harold Seigel
feec2af7b4 8009595: The UseSplitVerifier option needs to be deprecated
Put UseSplitVerifier option on the deprecated list.

Reviewed-by: dcubed, kmo, acorn
2013-03-26 09:06:16 -04:00
Christian Thalinger
6964a690ed 7198429: need checked categorization of caller-sensitive methods in the JDK
Reviewed-by: kvn, jrose
2013-03-25 17:13:26 -07:00
Coleen Phillimore
c5867cb71b 8003419: NPG: Clean up metadata created during class loading if failure
Store metadata on ClassFileParser instance to be cleaned up by destructor.  This enabled some refactoring of the enormous parseClassFile function.

Reviewed-by: jmasa, acorn
2013-03-13 17:34:29 -04:00
Aleksey Shipilev
2f5e08742a 8008965: @Contended fails with classes having static fields
Disable @Contended support for static fields

Reviewed-by: coleenp, kvn
2013-03-11 14:00:09 -04:00
Coleen Phillimore
faea95b8d3 8007320: NPG: move method annotations
Allocate method annotations and attach to ConstMethod if present

Reviewed-by: dcubed, jiangli, sspitsyn, iklam
2013-02-11 14:06:22 -05:00
Eric McCorkle
16990e896a 8006949: Update hotspot for MethodParameters format change
8006907: Hotspot should reject classfiles with multiple MethodParameters attributes

Update to Hotspot's processing of MethodParameters attributes in classfiles

Reviewed-by: coleenp, jrose
2013-02-04 13:05:32 -05:00
Krystal Mo
ae1a2f5e3c 8006758: LinkResolver assertion (caused by @Contended changes)
Treat anonymous classes as privileged code to restore the special handling for @Compiled during class file parsing

Reviewed-by: jrose, coleenp, kvn, dholmes
2013-01-24 02:03:38 -08:00
Bengt Rutisson
f3576a18a9 Merge 2013-01-18 11:03:15 +01:00
Stefan Karlsson
9d65c6d24f 8005994: Method annotations are allocated unnecessarily during class file parsing
Also reviewed by: vitalyd@gmail.com

Reviewed-by: coleenp, acorn
2013-01-15 10:09:45 +01:00
Coleen Phillimore
6972d9ff95 Merge 2013-01-14 08:37:14 -08:00
Eric Mccorkle
be0c8e9f08 8006005: Fix constant pool index validation and alignment trap for method parameter reflection
This patch addresses an alignment trap due to the storage format of method parameters data in constMethod.  It also adds code to validate constant pool indexes for method parameters data.

Reviewed-by: jrose, dholmes
2013-01-14 11:01:39 -05:00
Aleksey Shipilev
0614ed6542 8003985: Support @Contended Annotation - JEP 142
HotSpot changes to support @Contended annotation.

Reviewed-by: coleenp, kvn, jrose
2013-01-14 15:17:47 +01:00
Bharadwaj Yadavalli
8762d54e63 8005689: InterfaceAccessFlagsTest failures in Lambda-JDK tests
Fix verifier for new interface access flags

Reviewed-by: acorn, kvn
2013-01-09 11:39:30 -05:00
Eric Mccorkle
be968245ec 8004728: Add hotspot support for parameter reflection
Add hotspot support for parameter reflection

Reviewed-by: acorn, jrose, coleenp
2013-01-08 14:01:36 -05:00
Joel Borggren-Franck
6ed6cb5375 8004823: Add VM support for type annotation reflection
Reviewed-by: dholmes, coleenp
2012-12-20 10:22:19 +01:00
John Cuthbertson
6c0bf79f7a Merge 2012-11-30 12:01:34 -08:00
Coleen Phillimore
7aa43fc5d8 8000662: NPG: nashorn ant clean test262 out-of-memory with Java heap
Add ClassLoaderData object for each anonymous class with metaspaces to allocate in.

Reviewed-by: twisti, jrose, stefank
2012-11-29 16:50:29 -05:00
Jiangli Zhou
10f71a3f72 8003848: Make ConstMethod::generic_signature_index optional and move Method::_max_stack to ConstMethod
Make ConstMethod::generic_signature_index optional and move Method::_max_stack to ConstMethod.

Reviewed-by: bdelsart, sspitsyn, coleenp
2012-11-27 17:03:56 -05:00
Harold Seigel
4aad9b74e7 8001471: Klass::cast() does nothing
Remove function Klass::cast() and calls to it.

Reviewed-by: dholmes, coleenp
2012-11-12 16:15:05 -05:00
Harold Seigel
7fee66f152 8000725: NPG: method_holder() and pool_holder() and pool_holder field should be InstanceKlass
Change types of above methods and field to InstanceKlass and remove unneeded casts from the source files.

Reviewed-by: dholmes, coleenp, zgu
2012-11-06 15:09:37 -05:00
Keith McGuigan
6563cda42b 7200776: Implement default methods in interfaces
Add generic type analysis and default method selection algorithms

Reviewed-by: coleenp, acorn
2012-10-11 12:25:42 -04:00
Coleen Phillimore
5f4a2405a7 Merge 2012-10-15 22:33:19 -04:00
Vladimir Kozlov
5f132a5ec3 Merge 2012-10-12 09:22:52 -07:00
Christian Thalinger
222b2457ed 8000740: remove LinkWellKnownClasses
Reviewed-by: kvn, jrose
2012-10-11 14:46:20 -07:00
Keith McGuigan
04a9a14193 7054345: Support version 52.0 class file in HotSpot
Accept classfiles with major version 52

Reviewed-by: coleenp, acorn
2012-10-11 14:27:54 -04:00
Roland Westrelin
61eb5a0549 7054512: Compress class pointers after perm gen removal
Support of compress class pointers in the compilers.

Reviewed-by: kvn, twisti
2012-10-09 10:11:38 +02:00
Coleen Phillimore
28047d6a0f 8000213: NPG: Should have renamed arrayKlass and typeArrayKlass
Capitalize these metadata types (and objArrayKlass)

Reviewed-by: stefank, twisti, kvn
2012-09-29 06:40:00 -04:00
Coleen Phillimore
12b9a4edbb 7195833: NPG: Rename instanceClassLoaderKlass, instanceRefKlass and instanceMirrorKlass
Simple renaming to be consistent with instanceKlass->InstanceKlass renaming

Reviewed-by: stefank, jmasa
2012-09-07 12:04:16 -04:00
Jon Masamitsu
5c58d27aac 6964458: Reimplement class meta-data storage to use native memory
Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes

Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Co-authored-by: Tom Rodriguez <tom.rodriguez@oracle.com>
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
2012-09-01 13:25:18 -04:00
Christian Thalinger
12901d0e5b 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, kvn, mhaupt
2012-07-24 10:51:00 -07:00
Vladimir Kozlov
4b6b0ec3c4 Merge 2012-07-17 11:16:13 -07:00
Vladimir Kozlov
310ad38a4b Merge 2012-07-16 19:50:52 -07:00
Jiangli Zhou
7b82f72ba9 Merge 2012-07-13 20:14:27 -04:00
Michael Haupt
e0cf9c652d 6711908: JVM needs direct access to some annotations
Add annotation extraction code to class file parser.

Reviewed-by: twisti, jrose, kvn
2012-07-12 00:39:53 -07:00
Frederic Parain
13c689d9c3 6294277: java -Xdebug crashes on SourceDebugExtension attribute larger than 64K
Reviewed-by: sspitsyn, dholmes, coleenp, kamg
2012-07-09 01:28:37 -07:00