Coleen Phillimore
9b5e1ddb92
8029567: Clean up linkResolver code
...
Moved non-const reference return values to actual return values, refactored error handling code, remove oop from Method* variable names.
Reviewed-by: jiangli, lfoltan, acorn
2015-05-29 11:35:51 -04:00
Jesper Wilhelmsson
25c41c6094
Merge
2015-05-21 21:17:56 +02:00
Andreas Eriksson
07f8740617
8051045: HotSpot fails to wrap Exceptions from invokedynamic in a BootstrapMethodError
...
Reviewed-by: coleenp, dsimms
2015-05-07 15:05:46 +02:00
Vladimir Kozlov
b9c00b1904
Merge
2015-04-16 14:05:48 -07:00
Vladimir Ivanov
5ff12acb9d
8062280: C2: inlining failure due to access checks being too strict
...
Reviewed-by: kvn
2015-04-14 18:11:06 +03:00
Yumin Qi
3e6cf09c39
8074345: Enable RewriteBytecodes when VM runs with CDS
...
Enable bytecode rewriting when CDS turned on.
Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Reviewed-by: coleenp, iklam
2015-03-25 15:18:37 -07:00
Stefan Karlsson
4913ad5d7d
8072911: Remove includes of oop.inline.hpp from .hpp files
...
Reviewed-by: brutisso, coleenp, jwilhelm, simonis, dholmes
2015-02-13 14:37:35 +01:00
Lois Foltan
5f8b5ceaee
8067480: Crash in klassItable::initialize_itable_for_interface when running vm.runtime.defmeth.StaticMethodsTest
...
A static method should be skipped in entirety by find_instance_method(), searching should continue to find an overpass method of the same name and signature if present.
Reviewed-by: acorn, hseigel
2015-01-23 09:54:33 -05:00
Lois Foltan
edc10143cb
8036805: Correct linker method lookup
...
Correct handling of array of primitive type qualifiers during field and method resolution.
Reviewed-by: acorn, hseigel, ahgross
2014-05-07 19:38:22 +04:00
Harold Seigel
b6a2f946f6
8031819: Remove legacy jdk checks and code
...
Delete old jdk specific code.
Reviewed-by: dholmes, coleenp, zgu, lfoltan
2014-06-11 09:58:23 -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
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
Per Lidén
4dc240f785
8079792: GC directory structure cleanup
...
Reviewed-by: brutisso, stefank, david
2015-05-13 15:16:06 +02:00
Calvin Cheung
a3c78aac2f
8032010: Attempt to resolve abstract method in concrete class fails with AbstractMethodError
...
Removing a check in LinkResolver::resolve_method() to conform with a change in JVMS-8 5.4.3.3. Method Resolution
Reviewed-by: coleenp, lfoltan
2014-02-05 15:14:47 -08:00
Harold Seigel
fe0b2eae89
8031045: Access checks should precede additional per-instruction checks
...
Move access check above the check for non-static method
Reviewed-by: lfoltan, coleenp
2014-01-17 09:39:51 -05:00
Harold Seigel
4856bd53aa
8027804: JCK resolveMethod test fails expecting AbstractMethodError
...
Create AME overpass methods and fix method search logic
Reviewed-by: kamg, acorn, lfoltan, coleenp
2013-12-16 08:24:33 -05:00
Lois Foltan
5ece6fc7fd
8028741: Interface Method Resolution should skip static and non-public methods in j.l.Object
...
Implementation of JDK 8 JVMS 5.4.3.4 specification change to skip static and non-public methods of java.lang.Object for interface method resolution.
Reviewed-by: acorn, coleenp
2013-12-10 16:18:26 -05:00
Lois Foltan
2078c58bbf
8029415: java/lang/reflect/Method/invoke/TestPrivateInterfaceMethodReflect.java fails on all platforms with hs25-b61
...
Check first that a class is not a dynamically-generated bytecode associated with 1.4 reflection implementation, to emitting an ICCE of an invokespecial IMR of a method in an indirect superinterface.
Reviewed-by: acorn, hseigel
2013-12-06 11:33:10 -05:00
Karen Kinnear
536943884a
8028438: static superclass method masks default methods
...
Reviewed-by: hseigel, lfoltan, coleenp
2013-12-03 11:13:14 -08:00
Karen Kinnear
b5f2f33aaa
8026066: ICCE for invokeinterface static
...
Reviewed-by: coleenp, lfoltan, hseigel
2013-12-03 08:36:15 -08: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
Karen Kinnear
4b35aa3d1e
8027229: ICCE expected for >=2 maximally specific default methods
...
Need to process defaults for interfaces for invokespecial
Reviewed-by: lfoltan, hseigel, coleenp, jrose
2013-11-13 07:31:26 -08:00
Lois Foltan
033c5b68ea
8026394: Eclipse fails with JDK8 build 111
...
If the resolved interface does not itself contain "clone" or "finalize" methods, the method/interface method resolution looks to the interface's super class, java.lang.Object. With the JDK 8 interface method accessability check requirement, since these two methods are declared within Object as protected, they must be special cased in LinkResolver::check_method_accessability() in order to avoid an IAE.
Reviewed-by: acorn, dholmes
2013-10-22 14:47:59 -04:00
Calvin Cheung
e187f54e56
Merge
2013-10-18 19:44:40 -07:00
Igor Veresov
d94fef24b5
Merge
2013-10-17 10:58:45 -07:00
Lois Foltan
21627fb02f
8024804: Crash when InterfaceMethodref resolves to Object.registerNatives
...
Added check for NULL prior to continuation of method look up to avoid runtime crash during look up of Object's superclass' methods.
Reviewed-by: coleenp, hseigel
2013-10-16 14:32:05 -04:00
Karen Kinnear
72e7308263
8026299: invokespecial gets ICCE when it should get AME
...
Reviewed-by: ccheung, coleenp
2013-10-14 21:52:42 -04:00
David Chase
b1d7228bff
8026124: JSR-292 bug: java.nio.file.Path.toString cores dump
...
Catch problem case, assert it matches valid input, new test
Reviewed-by: jrose, twisti, kvn
2013-10-12 17:26:41 -04:00
Karen Kinnear
088ded71f9
8009130: Lambda: Fix access controls, loader constraints
...
New default methods list with inherited superinterface methods
Reviewed-by: minqi, sspitsyn, coleenp
2013-10-07 12:20:28 -04:00
Karen Kinnear
71a3a55630
8011311: Private interface methods. Default conflicts:ICCE. no erased_super_default
...
Reviewed-by: coleenp, bharadwaj, minqi
2013-10-01 08:10:42 -04:00
Lois Foltan
7bf953d005
7195622: CheckUnhandledOops has limited usefulness now
...
Enable CHECK_UNHANDLED_OOPS in fastdebug builds across all supported platforms.
Reviewed-by: coleenp, hseigel, dholmes, stefank, twisti, ihse, rdurbin
2013-09-26 10:25:02 -04:00
David Chase
222c735458
8014013: CallInfo structure no longer accurately reports the result of a LinkResolver operation
...
Enhance method resolution and resulting data structures, plus some refactoring.
Reviewed-by: twisti, acorn, jrose
2013-09-13 22:38:02 -04: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
Krystal Mo
fe4b74edc7
8011952: Missing ResourceMarks in TraceMethodHandles
...
Add missing ResourceMark under TraceMethodHandles in LinkResolver
Reviewed-by: dholmes
2013-04-11 07:12:09 -07:00
Karen Kinnear
b79e2c6803
8009731: Confusing error message for loader constraint violation
...
Fix text, overwritten type and holder for resolved method
Reviewed-by: coleenp, dcubed, minqi, dholmes
2013-03-27 14:10:59 -04:00
Lana Steuck
4d0bc0dc58
Merge
2013-03-12 18:22:40 -07:00
Coleen Phillimore
b8b9434a9f
8000797: NPG: is_pseudo_string_at() doesn't work
...
Zero Symbol* for constant pool strings to indicate pseudo_strings (objects that aren't strings). Clean up JVM_CONSTANT_Object and unused flags.
Reviewed-by: sspitsyn, jrose
2013-02-22 08:36:42 -05:00
Edvard Wendelin
3c21e13d68
Merge
2013-02-19 21:45:09 +01:00
Edvard Wendelin
3562a0b06d
Merge
2013-02-03 22:43:57 +01:00
Coleen Phillimore
99039568f9
8006040: NPG: on_stack processing wastes space in ConstantPool
...
Added on_stack bit to flags. Also MetadataMarkOnStack is used for more than JVMTI so had to be moved.
Reviewed-by: dholmes, stefank
2013-01-23 10:34:29 -05:00
Stefan Karlsson
57204d9f34
8003935: Simplify the needed includes for using Thread::current()
...
Reviewed-by: dholmes, rbackman, coleenp
2012-11-27 14:20:21 +01: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
c1be65b49c
8001307: Modify ACC_SUPER behavior
...
Disallow non-virtual calls even when ACC_SUPER is absent.
Reviewed-by: kvn, acorn
2012-11-05 17:03:33 -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
Christian Thalinger
59b8489a0c
7200949: JSR 292: rubybench/bench/time/bench_base64.rb fails with jruby.jar not on boot class path
...
Reviewed-by: jrose, kvn
2012-10-01 14:50:10 -07:00
Christian Thalinger
0f2dd1c15e
7196120: NPG: JSR 2292 test fails because missing fix for 7188911
...
Reviewed-by: kvn, coleenp
2012-09-04 18:01:20 -07: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