Commit graph

134 commits

Author SHA1 Message Date
Vicente Romero
c17d58516f 8246774: implement Record Classes as a standard feature in Java
Co-authored-by: Vicente Romero <vromero@openjdk.org>
Co-authored-by: Harold Seigel <hseigel@openjdk.org>
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Reviewed-by: coleenp, jlahoda, sspitsyn, chegar
2020-10-18 18:54:33 +00:00
Ioi Lam
7e5eb493e1 8253402: Convert vmSymbols::SID to enum class
Reviewed-by: kvn, coleenp, kbarrett, iveresov
2020-10-15 05:52:54 +00:00
Harold Seigel
95e68c6346 8254586: Replace fthrow() calls with simpler method calls in classFileParser.cpp
Reviewed-by: lfoltan, dholmes, coleenp
2020-10-14 12:23:09 +00:00
Yumin Qi
e4469d2c8c 8247536: Support for pre-generated java.lang.invoke classes in CDS static archive
Reviewed-by: iklam, mchung
2020-10-10 02:06:52 +00:00
Philippe Marschall
2a406f3ce5 8138732: Rename @HotSpotIntrinsicCandidate to @IntrinsicCandidate and move it to the jdk.internal.vm.annotation package
Reviewed-by: dholmes, alanb, psandoz, kvn, egahlin
2020-09-30 20:05:07 +00:00
Ioi Lam
dd89c92c50 8251560: Remove excessive header file inclusion from systemDictionary.hpp and others
Reviewed-by: coleenp
2020-08-31 08:05:08 -07:00
Yumin Qi
56881d6465 8249096: Clean up code for DumpLoadedClassList
Clean up code for DumpLoadedClassList output code, centralize in InstanceKlass.

Reviewed-by: iklam, dcubed
2020-08-21 22:23:12 -07:00
Frederic Parain
985061ac28 8249149: Remove obsolete UseNewFieldLayout option and associated code
Reviewed-by: hseigel, iklam
2020-07-10 09:13:03 -04:00
Joe Darcy
a5b5712733 8235496: Start of release updates for JDK 16
8245585: Add SourceVersion.RELEASE_16
8245586: Add source 16 and target 16 to javac
8245544: com/sun/tools/javac/platform/JDKPlatformProvider.java does not support ct.sym with platform versions 16+

Co-authored-by: David Holmes <david.holmes@oracle.com>
Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com>
Reviewed-by: erikj, dholmes, ihse, neugens, jjg, jlahoda, jlaskey, mikael
2020-06-07 20:02:03 -07:00
Coleen Phillimore
cb960ee7b5 8245487: Potential double-free of interfaces array
Free _local_interfaces when we free _transitive_interfaces since they can share memory.

Reviewed-by: fparain, lfoltan, iklam
2020-06-05 06:54:05 -04:00
Vicente Romero
d42bfef8a4 8227046: compiler implementation for sealed classes
8225056: VM support for sealed classes
8227044: javax.lang.model for sealed classes
8227045: Preview APIs support for sealed classes
8227047: Javadoc for sealed types
8245854: JVM TI Specification for sealed classes

Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com>
Reviewed-by: mcimadamore, forax, darcy, dholmes, jlahoda, lfoltan, mchung, sspitsyn, vromero
2020-06-01 17:00:40 -04:00
Erik Österlund
6508c5a38d 8243996: Remove hardcoded field offsets from HotSpot
Reviewed-by: jrose, coleenp, dholmes, fparain
2020-05-20 09:31:38 +00:00
Mandy Chung
7cc1371059 8238358: Implementation of JEP 371: Hidden Classes
Co-authored-by: Lois Foltan <lois.foltan@oracle.com>
Co-authored-by: David Holmes <david.holmes@oracle.com>
Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Serguei Spitsyn <serguei.spitsyn@oracle.com>
Co-authored-by: Alex Buckley <alex.buckley@oracle.com>
Co-authored-by: Jamsheed Mohammed C M <jamsheed.c.m@oracle.com>
Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com>
Co-authored-by: Amy Lu <amy.lu@oracle.com>
Reviewed-by: alanb, cjplummer, coleenp, dholmes, dlong, forax, jlahoda, psandoz, plevart, sspitsyn, vromero
2020-04-21 06:55:38 -07:00
Calvin Cheung
512644de06 8240205: Avoid PackageEntry lookup when loading shared classes
Do the PackageEntry lookup at one place and then pass it along to the subsequently called functions which need it.

Reviewed-by: redestad, lfoltan
2020-04-03 14:26:42 -07:00
Claes Redestad
23d6a788b4 8241371: Refactor and consolidate package_from_name
Reviewed-by: iklam, lfoltan
2020-03-23 23:18:42 +01:00
Harold Seigel
a1e9328367 8235225: Replace CHECK_0 with CHECK_NULL for non-integer returning methods
Change CHECK_0 to CHECK_NULL and CHECK_false where appropriate

Reviewed-by: mikael, dholmes, coleenp
2020-02-27 13:00:05 +00:00
Frederic Parain
9886cb401c 8237767: Field layout computation overhaul
Reviewed-by: dholmes, coleenp, lfoltan, shade
2020-02-10 09:49:12 -05:00
Lois Foltan
d19a396e96 8230199: consolidate signature parsing code in HotSpot sources
Add a new Signature class to support basic signature queries and enhance SignatureStream class to parse field signatures in addition to methods.

Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: coleenp, dholmes, fparain, hseigel
2020-02-06 14:29:57 +00:00
Coleen Phillimore
c4b8e38de4 8236224: Obsolete the FieldsAllocationStyle and CompactFields options
Remove the options and code for options deprecated in JDK 14

Reviewed-by: dholmes, hseigel, fparain
2020-01-07 13:11:35 -05:00
Joe Darcy
890826bf5b 8225361: Start of release updates for JDK 15
8235497: Add SourceVersion.RELEASE_15
8235528: Add source 15 and target 15 to javac

Reviewed-by: erikj, jjg, jlahoda, dholmes, alanb, hseigel, mikael, chegar
2019-12-10 16:38:53 -08:00
Harold Seigel
02039fd33a 8235513: Change JVM to check for preview features using JVM_CLASSFILE_MAJOR_VERSION
Check for JVM_CLASSFILE_MAJOR_VERSION instead of a hard-wired version number

Reviewed-by: dholmes, coleenp
2019-12-10 15:00:01 +00:00
Vicente Romero
827e5e3226 8225054: Compiler implementation for records
8225052: javax.lang.model support for records
8225053: Preview APIs support for records
8225055: Javadoc for records
8226314: com.sun.source support for records
8227113: Specification for java.lang.Record
8233526: JVM support for records

Implement records in the compiler and the JVM, including serialization, reflection and APIs support

Co-authored-by: Brian Goetz <brian.goetz@oracle.com>
Co-authored-by: Maurizio Cimadamore <maurizio.cimadamore@oracle.com>
Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Joe Darcy <joe.darcy@oracle.com>
Co-authored-by: Jonathan Gibbons <jonathan.gibbons@oracle.com>
Co-authored-by: Chris Hegarty <chris.hegarty@oracle.com>
Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com>
Reviewed-by: mcimadamore, briangoetz, alanb, darcy, chegar, jrose, jlahoda, coleenp, dholmes, lfoltan, mchung, sadayapalam, hannesw, sspitsyn
2019-12-04 15:57:39 -05:00
Coleen Phillimore
ed21b56269 8233913: Remove implicit conversion from Method* to methodHandle
Fix call sites to use existing THREAD local or pass down THREAD local for shallower callsites. Make linkResolver methods return Method* for caller to handleize if needed.

Reviewed-by: iklam, thartmann, hseigel
2019-11-13 08:23:23 -05:00
Harold Seigel
eedc99c9ab 8232890: Remove bad Code attribute parsing code
Remove code that accepts illegal max_stack, max_locals, and length values for Code attribute in old class files.

Reviewed-by: dholmes, lfoltan
2019-10-28 12:55:48 +00:00
Lois Foltan
fce4320369 8231844: Enhance type signature characters in classfile_constants.h and improve the JVM to use type signature characters more consistently
Increase the use of type signature constants instead of hard coded characters within the JVM.

Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: coleenp, dholmes, fparain
2019-10-21 13:13:16 -04:00
Calvin Cheung
b08a8c5cc3 8231606: _method_ordering is not set during CDS dynamic dump time
Add the missing DynamicDumpSharedSpaces check in sort_methods(); replace the (DumpSharedSpaces || DynamicDumpSharedSpaces) with the Arguments::is_dumping_archive() function call.

Reviewed-by: iklam, coleenp, jiangli
2019-10-02 16:55:08 -07:00
Evgeny Mandrikov
14cc870429 8066774: Rename the annotations arrays names in ClassFileParser
Reviewed-by: shade, coleenp, dholmes
2019-09-18 21:20:13 +02:00
Jesper Wilhelmsson
333c0c2453 Merge 2019-06-20 02:10:53 +02:00
Harold Seigel
b304a57980 8225789: Empty method parameter type should generate ClassFormatError
Check for an empty name when verifying unqualified names

Reviewed-by: lfoltan, coleenp
2019-06-19 08:42:15 -04:00
Joe Darcy
4750064828 8214546: Start of release updates for JDK 14
8214547: Add SourceVersion.RELEASE_14
8214548: Add source 14 and target 14 to javac
8214549: Bump maximum recognized class file version to 58 for JDK 14

Reviewed-by: jjg, mikael, erikj, jlahoda, dholmes
2019-06-11 16:45:20 -07:00
Harold Seigel
9ee5ab5124 8224952: RI deviates from JVMS - non-zero minor_version for class files throws UnsupportedClassVersionError
Change the JVM to follow the JVM Spec and accept non-zero minor_version for appropriate older class file versions.

Reviewed-by: acorn, dholmes, iignatyev
2019-06-10 09:52:04 -04:00
Coleen Phillimore
204059634d 8223657: Remove unused THREAD argument from SymbolTable functions
Also made lookup and lookup_only functions private to SymbolTable.  External callers use new_symbol or probe.

Reviewed-by: dholmes, gziemski
2019-05-14 11:29:18 -04:00
Lois Foltan
4f2478e234 8222502: Replace 19,20 case alternatives with JVM_CONSTANT_Module/Package names
Add JVM_CONSTANT_Module and JVM_CONSTANT_Package to classfile_constants.h

Reviewed-by: coleenp, hseigel
2019-04-23 07:05:38 -04:00
Henry Jen
da6f620059 Merge 2019-04-15 18:24:37 -07:00
Ioi Lam
22484b8c35 8221698: Remove redundant includes from popular header files
Removed histogram.hpp classLoader.hpp utf8.hpp moduleEntry.hpp packageEntry.hpp

Reviewed-by: coleenp, stuefe
2019-03-30 08:26:20 -07:00
Thomas Stuefe
02ed0e3e52 8221408: Windows 32bit build build errors/warnings in hotspot
Reviewed-by: kbarrett, dholmes
2019-03-29 08:36:33 +01:00
Henry Jen
52da980fa2 Merge 2019-03-26 10:55:17 -07:00
Jiangli Zhou
223e1c6e42 8220095: Assertion failure when symlink (with different name) is used for lib/modules file
Removed confusing function ClassLoader::is_modules_image(char*)

Reviewed-by: lfoltan, ccheung
2019-03-23 21:51:07 -07:00
Henry Jen
833627bc3c Merge 2019-01-22 14:14:52 -08:00
Claes Redestad
d2c205bb59 8219860: Cleanup ClassFileParser::parse_linenumber_table
Reviewed-by: rehn, lfoltan, hseigel
2019-03-08 23:02:06 +01:00
Aleksey Shipilev
3d6795e0e3 8219583: Windows build failure after JDK-8214777 (Avoid some GCC 8.X strncpy() errors in HotSpot)
Reviewed-by: kbarrett, mikael
2019-02-23 10:55:45 +01:00
Mikael Vidstedt
15d554b395 8214777: Avoid some GCC 8.X strncpy() errors in HotSpot
Reviewed-by: kbarrett, rehn
2019-02-21 16:56:06 -08:00
David Holmes
34fe424afb 8218939: vm/mlvm/anonloader/stress/byteMutation crashed on windows
Reviewed-by: kbarrett, coleenp, mikael, iignatyev
2019-02-14 22:57:37 -05:00
Lois Foltan
29245f8878 8218004: Clean up terminology for shared methods within the JVM for indy and condy support
Remove "invoke_dynamic" from the name of several ConstantPool bootstrap helper methods that are shared by both indy and condy.

Reviewed-by: coleenp, dholmes, mchung
2019-02-13 14:20:40 -05:00
Coleen Phillimore
24b8feeb30 8218755: Refix Symbol leak in prepend_host_package_name
Fix Symbol refcounting again, add comment and a test.

Reviewed-by: kbarrett, dholmes
2019-02-13 07:22:09 -05:00
Claes Redestad
93bdf79f1b 8218675: Reduce verification overhead in ClassFileParser
Reviewed-by: dholmes, hseigel
2019-02-12 14:23:49 +01:00
Coleen Phillimore
e174cd6271 8218593: Symbol leak in prepend_host_package_name
Add appropriate refcounting for Symbols stomped by parsing

Reviewed-by: hseigel, zgu
2019-02-08 09:33:59 -05:00
Vladimir Ivanov
6a61345684 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
Reviewed-by: mchung, dlong
2019-01-22 18:13:49 -08:00
Jesper Wilhelmsson
a8c5f1e59a Merge 2019-01-15 22:54:09 +01:00
Calvin Cheung
b999cc8f33 8214809: CDS storage improvements
Reviewed-by: acorn, iklam, ahgross, rhalade
2018-12-12 11:57:22 -08:00