57 Commits

Author SHA1 Message Date
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
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
Erik Trimble
98d775ab1f Merge 2010-06-01 11:48:33 -07:00
Erik Trimble
ba7c173659 6941466: Oracle rebranding changes for Hotspot repositories
Change all the Sun copyrights to Oracle copyright

Reviewed-by: ohair
2010-05-27 19:08:38 -07:00
John R Rose
05b4f2e796 6956164: nightly regressions from 6939207
Fix errors in 6939207.

Reviewed-by: kvn
2010-05-27 09:54:07 -07:00
John R Rose
581521ba96 6939207: refactor constant pool index processing
Factored cleanup of instruction decode which prepares for enhanced ldc semantics.

Reviewed-by: twisti
2010-05-23 01:38:26 -07:00
Keith McGuigan
4f45d8c3a2 6911922: JVM must throw VerifyError for jsr or jsr_w opcodes in class file v.51+
6693236: A class file whose version number is greater than to 50.0 must be verified using the typechecker

Disable failover verification for classfiles >= v51

Reviewed-by: never, acorn, dholmes
2010-05-19 10:19:10 -04:00
Tom Rodriguez
98449cf2c2 6914300: ciEnv should export all well known classes
Reviewed-by: kvn, twisti
2010-01-06 14:22:39 -08:00
John R Rose
903247cf85 6858164: invokedynamic code needs some cleanup (post-6655638)
Fix several crashers, remove needless paths for boxed-style bootstrap method call, refactor & simplify APIs for rewriter constantPoolOop, remove sun.dyn.CallSiteImpl

Reviewed-by: kvn
2009-10-30 16:22:59 -07:00