70 Commits

Author SHA1 Message Date
Harold Seigel
42c183edfc 8182089: build error in hotspot/src/share/vm/runtime/reflection.cpp
Add const to argument in reflection.cpp so method signature matches the one in reflection.hpp

Reviewed-by: zgu, coleenp, rprotacio
2017-06-15 14:34:32 -04:00
Rachel Protacio
9947f147f6 8165896: Use "open" flag from JVM_DefineModule to export all module packages
Implemented VM side of open modules, which export all their packages unqualifiedly. Automatic modules and unnamed modules are treated internally as open modules.

Reviewed-by: alanb, hseigel, lfoltan
2017-04-24 12:08:28 -04:00
Jesper Wilhelmsson
d507b8945c Merge 2017-04-18 22:25:33 +02:00
Alan Bateman
a3ab143c64 8177530: Module system implementation refresh (4/2017)
Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Mandy Chung <mandy.chung@oracle.com>
Reviewed-by: lfoltan, sspitsyn
2017-04-07 08:04:46 +00:00
Harold Seigel
c199f4eac2 8171971: Fix timing bug in JVM management of package export lists
Reduce the number of fields that maintain export state and use Module_lock to access these fields

Reviewed-by: acorn, sspitsyn, lfoltan
2017-01-20 16:09:56 -05:00
Coleen Phillimore
4b9562288f 8155672: Remove instanceKlassHandles and KlassHandles
Use unhandled pointers for Klass and InstanceKlass, remove handles with no implementation.

Reviewed-by: dholmes, lfoltan, vlivanov, sspitsyn
2017-03-15 10:25:37 -04:00
Bob Vandette
929fc23c45 Merge 2017-02-24 12:41:26 -05:00
Harold Seigel
6e88661a89 8174092: Remove array-related access checks from Reflection::verify_class_access()
Change the parameter type to InstanceKlass* and fix the method's callers

Reviewed-by: acorn, coleenp, gtriantafill, lfoltan
2017-02-10 07:46:07 -05:00
Harold Seigel
e8e6415b7a 8058575: IllegalAccessError trying to access package-private class from VM anonymous class
Put anonymous classes in unnamed package into host class's package.  Throw exception if host class's package differs from anonymous class.

Reviewed-by: coleenp, acorn
2016-09-07 07:19:48 -04:00
Rachel Protacio
c6c1bee762 8148854: Class names "SomeClass" and "LSomeClass;" treated by JVM as an equivalent
Added default format checking of class names loaded by the app class loader

Reviewed-by: coleenp, lfoltan
2016-08-25 09:23:45 -04:00
Harold Seigel
2a74c06b8d 8030221: Checking for anonymous class should check for NULL as well as potential nesting
Store the first non-anonymous class as the host when defining the anonymous class so don't need look for it later.

Reviewed-by: dholmes, lfoltan
2016-08-16 09:56:18 -04:00
Coleen Phillimore
c36295e947 8145148: InterfaceMethod CP entry pointing to a class should cause ICCE
Pass tag in LinkInfo and check that resolved method type matches tag, fix tests.

Reviewed-by: sspitsyn, minqi
2016-05-27 10:52:39 -04:00
Max Ockner
da0fe9d476 8154110: Update class* and safepoint* logging subsystems
Refactored logging tags in class and safepoint subsystems.

Reviewed-by: coleenp, rehn, hseigel
2016-04-29 22:40:51 -04:00
Rachel Protacio
09add35155 8152844: JVM InstanceKlass Methods For Obtaining Package/Module Should Be Moved to Klass
Converted package() and module() functions to pure virtual functions of Klass

Reviewed-by: dholmes, coleenp, lfoltan, hseigel
2016-04-26 09:08:12 -04:00
Coleen Phillimore
200784d505 8132051: Better byte behavior
Co-authored-by: Roland Westerlin <roland.westerlin@oracle.com>
Co-authored-by: Vladimir Kozlov <vladimir.kozlov@oracle.com>
Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: bdelsart, roland, kvn, jrose, ahgross
2015-10-13 18:13:34 -04:00
Chris Hegarty
00f6a09302 8137058: Clear out all non-Critical APIs from sun.reflect
Reviewed-by: alanb, jfranck, mchung
2016-04-15 16:19:15 +01:00
Jesper Wilhelmsson
b7ca1e57ee Merge 2016-03-23 23:36:29 +01:00
Alan Bateman
f30fc1c88b 8142968: Module System implementation
Initial integration of JEP 200, JEP 260, JEP 261, and JEP 282

Co-authored-by: Alex Buckley <alex.buckley@oracle.com>
Co-authored-by: Jonathan Gibbons <jonathan.gibbons@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Co-authored-by: Mandy Chung <mandy.chung@oracle.com>
Co-authored-by: Mark Reinhold <mark.reinhold@oracle.com>
Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Lois Foltan <lois.foltan@oracle.com>
Co-authored-by: Calvin Cheung <calvin.cheung@oracle.com>
Co-authored-by: Christian Tornqvist <christian.tornqvist@oracle.com>
Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: George Triantafillou <george.triantafillou@oracle.com>
Co-authored-by: Igor Ignatyev <igor.ignatyev@oracle.com>
Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Co-authored-by: James Laskey <james.laskey@oracle.com>
Co-authored-by: Jean-Francois Denise <jean-francois.denise@oracle.com>
Co-authored-by: Jiangli Zhou <jiangli.zhou@oracle.com>
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Co-authored-by: Serguei Spitsyn <serguei.spitsyn@oracle.com>
Co-authored-by: Staffan Larsen <staffan.larsen@oracle.com>
Co-authored-by: Sundararajan Athijegannathan <sundararajan.athijegannathan@oracle.com>
Reviewed-by: acorn, ccheung, coleenp, ctornqvi, dholmes, dsimms, gtriantafill, iklam, jiangli, mgronlun, mseledtsov, cjplummer, sspitsyn, stefank, twisti, hseigel, lfoltan, alanb, mchung, dfazunen
2016-03-17 19:04:01 +00:00
Max Ockner
155a64deb4 8146551: The output from classresolve tag has been shortened and moved to debug level
The output from classresolve tag has been shortened and moved to debug level.

Reviewed-by: coleenp, rprotacio
2016-03-10 15:52:56 -05:00
Mikael Gerdin
3cda485fe5 8148481: Devirtualize Klass::vtable
Move remainder of vtable related methods to Klass

Reviewed-by: cjplummer, coleenp
2016-01-19 12:07:32 +01:00
Max Ockner
de7d9e821c 8144874: Reimplement TraceClassResolution with Unified Logging
TraceClassResolution reimplemented with classresolve tag.

Reviewed-by: coleenp, dholmes, iklam, rprotacio
2015-12-23 15:05:38 -05:00
Markus Grönlund
2ad9d3192f 8140485: Class load and creation cleanup
Reviewed-by: hseigel, coleenp, sspitsyn
2015-12-08 20:04:03 +01:00
Coleen Phillimore
fc03719078 8139203: Consistent naming for klass type predicates
8138923: Remove oop coupling with InstanceKlass subclasses

Renamed oop_is_instance and friends, removed the functions in oop that dug down into InstanceKlass.

Reviewed-by: jrose, lfoltan, stefank
2015-10-28 09:47:23 -04:00
Coleen Phillimore
5179fc3488 8139163: InstanceKlass::cast passes through NULL
Reduce raw (InstanceKlass*) casts and InstanceKlass::cast, which no long allows null

Reviewed-by: twisti, kbarrett
2015-10-26 13:11:36 -04:00
Coleen Phillimore
f1e89ea4cc 8140274: methodHandles and constantPoolHandles should be passed as const references
Modified code to use const reference parameters

Reviewed-by: sspitsyn, twisti
2015-10-23 16:48:38 -04:00
Goetz Lindenmaier
bd938df14f 8130036: Fix problems with imprecise C++ coding
Reviewed-by: dholmes, kbarrett
2015-06-29 10:16:48 +02:00
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
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
Jesper Wilhelmsson
2616e09389 Merge 2014-11-17 21:32:32 +01:00
Stefan Karlsson
95704b233c 8064811: Use THREAD instead of CHECK_NULL in return statements
Reviewed-by: coleenp, simonis, dholmes
2014-11-14 09:47:09 +01:00
Stefan Karlsson
692dbfd02d 8062808: Turn on the -Wreturn-type warning
Reviewed-by: mgerdin, tschatzl, coleenp, jrose, kbarrett
2014-11-12 13:55:59 +01:00
Eric McCorkle
cba5bd2638 8058322: Zero name_index item of MethodParameters attribute cause MalformedParameterException
Allow hotspot to report null for 0 parameter_name index in MethodParameters attribute

Reviewed-by: coleenp, dholmes
2014-11-10 19:37:32 -05:00
Harold Seigel
f203dcbfbf 8036533: Method for correct defaults
8036156: Limit default method hierarchy

Fix protected access checks

Reviewed-by: coleenp, lfoltan, acorn, ahgross
2014-07-22 16:16:51 +04:00
Coleen Phillimore
73d759e533 8049105: Move array component mirror to instance of java/lang/Class (hotspot part 2)
This removes component mirrors from arrayKlass metadata and the C2 intrinsic for them.

Reviewed-by: kvn, twisti, mgerdin
2014-08-28 11:29:09 -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
Gerard Ziemski
ed9c096396 8038654: Separate SymbolTable and StringTable code
Refactor stringTable class out of symbolTable, making sure all includes are minimal set and are sorted.

Reviewed-by: coleenp, stefank
2014-05-07 14:16:45 -05:00
Jaroslav Bachorik
2b75897176 4505697: nsk/jdi/ExceptionEvent/_itself_/exevent006 and exevent008 tests fail with InvocationTargetException
Reviewed-by: dcubed, dholmes, sspitsyn
2014-02-24 10:28:22 +01:00
Jesper Wilhelmsson
81ba2e32c0 8025856: Fix typos in the GC code
Fix about 440 typos in comments in the VM code

Reviewed-by: mgerdin, tschatzl, coleenp, kmo, jcoomes
2014-01-23 14:47:23 +01:00
Harold Seigel
9169a8f064 8027458: VM anonymous classes: wrong context for protected access checks
Use the anonymous class's host class for protected access checks

Reviewed-by: acorn, coleenp, lfoltan
2013-12-04 08:10:31 -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
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
Christian Thalinger
90c790728d 8017571: JSR292: JVM crashing on assert "cast to instanceKlass" while producing MethodHandle for array methods with MethodHandle.findVirtual
Reviewed-by: kvn
2013-07-02 20:27:00 -07:00
Harold Seigel
02a27e2824 8015385: Remove RelaxAccessControlCheck for JDK 8 bytecodes
Check bytecode versions along with RelaxAccessControlCheck version

Reviewed-by: dholmes, acorn
2013-06-03 10:00:10 -04:00
Mikhailo Seledtsov
6a7e90e362 6726963: multi_allocate() call does not CHECK_NULL and causes crash in fastdebug bits
Using CHECK_NULL when calling multi_allocate() from the corresponding reflection code; added test for this condition

Reviewed-by: dholmes, minqi
2013-05-31 20:24:58 +02:00
Joel Borggren-Franck
6d51346158 8014709: Constructor.getAnnotatedReturnType() returns empty AnnotatedType
Reviewed-by: stefank, rbackman
2013-05-31 13:02:24 +02: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
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
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