64 Commits

Author SHA1 Message Date
Serguei Spitsyn
b0367c3bea Merge 2014-07-18 23:53:59 -07:00
Coleen Phillimore
e051932425 Merge 2014-07-18 11:22:49 -04:00
Coleen Phillimore
3f0a945468 8004128: NPG: remove stackwalking in Threads::gc_prologue and gc_epilogue code
Remove bcx and mdx handling.  We no longer have to convert bytecode pointers to indices for GC since Methods aren't moved.

Reviewed-by: mgerdin, kvn
2014-07-17 15:45:46 -04:00
Harold Seigel
0cc38ff4d5 8043454: Test case for 8037157 should not throw a VerifyError
Don't throw VerifyError if method is NULL.

Reviewed-by: acorn, lfoltan, mschoene
2014-07-14 13:31:03 +04:00
Goetz Lindenmaier
25f33c005d 8049325: Introduce and clean up umbrella headers for the files in the cpu subdirectories
Introduce and clean up umbrella headers for the files in the cpu subdirectories.

Reviewed-by: lfoltan, coleenp, dholmes
2014-07-04 11:46:01 +02:00
Yuri Gaevsky
4f2c88d8cd 8043925: Fix typo in verifier.cpp
Fix lookupswitch

Reviewed-by: sla, coleenp
2014-05-23 16:54:01 -04:00
Yuri Gaevsky
cc3c656cf1 8025580: Temporary flags: UseNewReflection and ReflectionWrapResolutionErrors
The fix removes all UseNewReflection/ReflectionWrapResolutionErrors occurrences/logic and adds them into the list of obsolete_jvm_flags in arguments.cpp.

Reviewed-by: coleenp, hseigel
2014-05-15 17:38:50 -04:00
David Chase
305ec3bd3f 8037816: Fix for 8036122 breaks build with Xcode5/clang
Repaired or selectively disabled offending formats; future-proofed with additional checking

Reviewed-by: kvn, jrose, stefank
2014-05-09 16:50:54 -04:00
Harold Seigel
2216f41ed6 8037157: Verify <init> call
Check for null method

Reviewed-by: coleenp, acorn, mschoene
2014-05-07 19:34:48 +04:00
Harold Seigel
13d9244b49 8035119: Fix exceptions to bytecode verification
Prevent ctor calls to super() and this() from avoidable code (try blocks, if stmts, etc.)

Reviewed-by: coleenp, acorn, mschoene
2014-07-14 12:45:14 +04:00
Goetz Lindenmaier
6e6f0720a9 8042195: Introduce umbrella header orderAccess.inline.hpp
Reviewed-by: dholmes, kvn, stefank, twisti
2014-04-29 15:17:27 +02:00
Tobias Hartmann
06c26b6f97 8036956: remove EnableInvokeDynamic flag
The EnableInvokeDynamic flag and all support code is removed because it is not longer used in JDK 9.

Reviewed-by: kvn, twisti
2014-04-29 08:08:44 +02:00
Lois Foltan
8c36d0cd2b 8033150: invokestatic: IncompatibleClassChangeError trying to invoke static method from a parent in presence of conflicting defaults
A static method should be preferred during method resolution over an overpass, search the current class as well as its superclasses.

Reviewed-by: acorn, coleenp, kamg
2014-04-14 14:27:45 -04:00
Lois Foltan
28557bc30e 8026065: InterfaceMethodref for invokespecial must name a direct superinterface
Add verification to check that invokespecial of an InterfaceMethodref names a method in a direct superinterface of the current class or interface in accordance with JSR 335, JVMS 4.9.2 Structural Constraints.

Reviewed-by: acorn, hseigel, coleenp
2013-11-26 09:52:22 -05:00
Yumin Qi
7496b461e3 8025632: Remove all references to MagicLambdaImpl from Hotspot
MagicLambdaImpl was removed from jdk side, this should be done in vm side too

Reviewed-by: coleenp, hseigel, rdurbin
2013-11-13 16:24:33 -08:00
Karen Kinnear
4f064cafe6 8026365: NoClassDefinitionFound for anonymous class invokespecial
Reviewed-by: dcubed, kamg
2013-10-17 23:30:17 -04:00
Karen Kinnear
920880a243 8026022: Verifier: allow anon classes to invokespecial host class/intf methods
Reviewed-by: coleenp, bharadwaj
2013-10-08 16:58:23 -04:00
Karen Kinnear
fdf2c975ed 8023872: Verification error in generated lambda classes
Skip verification for generated lambda classes

Reviewed-by: kamg, dholmes
2013-08-30 15:15:56 -04:00
Harold Seigel
1ff22f2ed9 8016764: JVM does not prohibit invokespecial in c.f.v 51.0 that invokes default interface method in c.f.v 52.0
Check cfv before allowing invokespecial call to default method.

Reviewed-by: kamg, acorn, dholmes
2013-08-29 10:33:13 -04:00
Yumin Qi
c6aa9c656f 8003557: NPG: Klass* const k should be const Klass* k
With NPG, const KlassOop klass which is in fact a definition converted to Klass* const, which is not the original intention. The right usage is converting them to const Klass*.

Reviewed-by: coleenp, kvn
2013-05-10 08:27:30 -07:00
Bharadwaj Yadavalli
be10521e31 8011671: JCK tests on static interface methods fail under b84: Illegal type at constant pool entry 5
Restore incorrect removal of support for static interface method verification in Java 8

Reviewed-by: kvn, coleenp
2013-04-09 08:52:32 -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
Bharadwaj Yadavalli
0e9d409036 8009552: test/vm/verifier/TestStaticIF.java failing with hs25.0-b
Remove support for verification of class files with version 52 and above from type inference verifier.

Reviewed-by: acorn, hseigel
2013-03-25 09:36:15 -07:00
Harold Seigel
41f0004e4f 8010667: Non-zero padding is not allowed in splitverifier for tableswitch/lookupswitch instructions
Don't check the padding bits if class file version is >= 51.

Reviewed-by: kvn, dholmes, coleenp
2013-03-25 08:37:28 -04:00
Bharadwaj Yadavalli
ff4bbcd501 8007736: VerifyError for static method in interface
Reviewed-by: dholmes, acorn
2013-02-14 14:33:35 -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
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
Daniel D. Daugherty
9d85b8e187 Merge 2012-08-17 11:57:46 -07:00
Christian Thalinger
e622fcdc27 7188911: nightly failures after JSR 292 lazy method handle update (round 2)
Reviewed-by: kvn, jrose
2012-08-07 14:32:08 -07:00
Keith McGuigan
dbe25e46f3 7116786: RFE: Detailed information on VerifyErrors
Provide additional detail in VerifyError messages

Reviewed-by: sspitsyn, acorn
2012-08-06 15:54:45 -04:00
Bertrand Delsart
37d969c6ab Merge 2012-07-02 04:19:22 -04:00
Jiangli Zhou
56df3bd48d 7178145: Change constMethodOop::_exception_table to optionally inlined u2 table
Change constMethodOop::_exception_table to optionally inlined u2 table.

Reviewed-by: bdelsart, coleenp, kamg
2012-06-26 19:08:44 -04:00
Lana Steuck
b126348850 Merge 2012-06-26 10:27:11 -07:00
Keith McGuigan
1ac7879229 7166498: JVM crash in ClassVerifier
Fixed raw pointer being used after potential safepoint/GC

Reviewed-by: acorn, fparain, dholmes
2012-06-04 10:22:37 -04:00
Keith McGuigan
ff66fcc442 7160757: Problem with hotspot/runtime_classfile
Allow only current and super invokespecials of <init>

Reviewed-by: never, coleenp, dcubed
2012-05-03 15:37:46 -04:00
John R Rose
16784a72e8 6981791: remove experimental code for JSR 292
Reviewed-by: twisti
2011-04-07 17:02:30 -07:00
John R Rose
f6344076f2 7012648: move JSR 292 to package java.lang.invoke and adjust names
Package and class renaming only; delete unused methods and classes

Reviewed-by: twisti
2011-03-11 22:34:57 -08:00
Bob Vandette
31e3fe4a98 7016023: Enable building ARM and PPC from src/closed repository
Reviewed-by: dholmes, bdelsart
2011-02-02 11:35:26 -05:00
Coleen Phillimore
7b4f8073f0 6990754: Use native memory and reference counting to implement SymbolTable
Move symbols from permgen into C heap and reference count them

Reviewed-by: never, acorn, jmasa, stefank
2011-01-27 16:11:27 -08:00
Ivan P Krylov
9802f91e66 6348631: remove the use of the HPI library from Hotspot
Move functions from hpi library to hotspot, communicate with licensees and open source community, check jdk for dependency, file CCC request

Reviewed-by: coleenp, acorn, dsamersoff
2010-12-01 18:26:32 -05:00
Stefan Karlsson
8006fe8f75 6989984: Use standard include model for Hospot
Replaced MakeDeps and the includeDB files with more standardized solutions.

Reviewed-by: coleenp, kvn, kamg
2010-11-23 13:22:55 -08:00
Zhengyu Gu
6fd53f05d1 Merge 2010-11-12 09:37:13 -05:00
John R Rose
ce0125e7f2 6984311: JSR 292 needs optional bootstrap method parameters
Allow CONSTANT_InvokeDynamic nodes to have any number of extra operands.

Reviewed-by: twisti
2010-10-30 13:08:23 -07:00
Keith McGuigan
596507e5d3 6865028: Illegal instructions passing verification prior to 'invokespecial Object.<init>'
Update verifier to conform to spec re: reference vs. 'Object' types

Reviewed-by: dholmes, coleenp
2010-10-27 12:53:36 -04:00
Andrei Pangin
53ac035768 Merge 2010-07-25 07:31:50 -07:00
Andrei Pangin
3888d500b9 6964170: Verifier crashes
Check if klassOop != NULL rather than klass_part != NULL

Reviewed-by: kamg, never
2010-07-20 08:41:42 -07:00
John R Rose
a4e4149340 6964498: JSR 292 invokedynamic sites need local bootstrap methods
Add JVM_CONSTANT_InvokeDynamic records to constant pool to determine per-instruction BSMs.

Reviewed-by: twisti
2010-07-15 18:40:45 -07:00
John R Rose
1f4cfb029b 6939203: JSR 292 needs method handle constants
Add new CP types CONSTANT_MethodHandle, CONSTANT_MethodType; extend 'ldc' bytecode.

Reviewed-by: twisti, never
2010-06-09 18:50:45 -07:00
John R Rose
d6a9b93b5a Merge 2010-06-02 22:45:42 -07:00