56 Commits

Author SHA1 Message Date
Ioi Lam
591e71ebe5 8354890: AOT-initialize j.l.i.MethodHandleImpl and inner classes
Reviewed-by: liach, vlivanov
2025-05-09 06:00:23 +00:00
Chen Liang
8ed6c1d7ee 8350607: Consolidate MethodHandles::zero into MethodHandles::constant
Reviewed-by: jrose, redestad, jvernee
2025-03-07 20:35:36 +00:00
Chen Liang
c7fa499bf5 8350118: Simplify the layout access VarHandle
Reviewed-by: mcimadamore, jvernee, erikj
2025-02-28 20:01:17 +00:00
Magnus Ihse Bursie
ddf0461788 8345799: Update copyright year to 2024 for core-libs in files where it was missed
Reviewed-by: joehw, jlu, mli, lancea, kevinw
2024-12-11 21:08:22 +00:00
Alan Bateman
abacece826 8344011: Remove usage of security manager from Class and reflective APIs
Reviewed-by: liach, yzheng, rriggs
2024-11-14 07:39:28 +00:00
Chen Liang
25c2f48d45 8338544: Dedicated Array class descriptor implementation
Reviewed-by: redestad, mchung, jvernee
2024-10-24 02:40:08 +00:00
Claes Redestad
d23c59e408 8340280: Avoid calling MT.invokerType() when creating LambdaForms
Reviewed-by: liach, jvernee
2024-09-18 07:01:13 +00:00
Claes Redestad
e1ebeef040 8340131: Refactor internal makeHiddenClassDefiner to take option mask instead of Set<ClassOption>
Reviewed-by: liach, jvernee
2024-09-16 14:08:08 +00:00
Adam Sotona
01ee4241b7 8294960: Convert java.base/java.lang.invoke package to use the Classfile API to generate lambdas and method handles
Co-authored-by: Claes Redestad <redestad@openjdk.org>
Reviewed-by: redestad, liach
2024-06-19 15:15:30 +00:00
Mandy Chung
5cea53d372 8315810: Reimplement sun.reflect.ReflectionFactory::newConstructorForSerialization with method handles
Co-authored-by: Chen Liang <liach@openjdk.org>
Reviewed-by: rriggs
2023-09-14 16:10:55 +00:00
Mandy Chung
111ecdbaf5 8268829: Provide an optimized way to walk the stack with Class object only
8210375: StackWalker::getCallerClass throws UnsupportedOperationException

Reviewed-by: coleenp, dfuchs, bchristi
2023-09-07 21:37:40 +00:00
Pavel Rappo
7b3c2dc5f4 8311122: Fix typos in java.base
Reviewed-by: darcy, naoto, mchung, iris, mli, mullan
2023-07-04 19:03:09 +00:00
Chen Liang
2bd4136bdb 8310849: Pattern matching for instanceof and arrayType cleanup in j.l.invoke and j.l.reflect
Reviewed-by: mchung, darcy
2023-06-27 16:10:50 +00:00
Mandy Chung
dd59471798 8304846: Provide a shared utility to dump generated classes defined via Lookup API
Reviewed-by: jvernee
2023-04-04 18:07:02 +00:00
Jorn Vernee
0532045edb 8298590: Refactor LambdaForm constructors
Reviewed-by: redestad
2023-01-02 12:06:26 +00:00
Claes Redestad
3de775094d 8298177: Various java.lang.invoke cleanups
8284363: Redundant imports in BoundMethodHandle

Reviewed-by: jvernee
2022-12-07 15:37:58 +00:00
Claes Redestad
ecf00785f2 8287442: Reduce list to array conversions in java.lang.invoke.MethodHandles
Reviewed-by: jvernee
2022-06-08 07:18:29 +00:00
Jorn Vernee
81e4bdbe13 8283689: Update the foreign linker VM implementation
Co-authored-by: Jorn Vernee <jvernee@openjdk.org>
Co-authored-by: Nick Gasson <ngasson@openjdk.org>
Reviewed-by: mcimadamore, vlivanov, rehn
2022-05-18 09:49:55 +00:00
Maurizio Cimadamore
2c5d136260 8282191: Implementation of Foreign Function & Memory API (Preview)
Reviewed-by: erikj, jvernee, psandoz, dholmes, mchung
2022-05-12 16:17:45 +00:00
Claes Redestad
6c79671e50 8285633: Take better advantage of generic MethodType cache
Reviewed-by: jvernee
2022-04-27 17:54:21 +00:00
XenoAmess
87faa85c59 8186958: Need method to create pre-sized HashMap
Reviewed-by: chegar, naoto, joehw, lancea, wetmore, smarks
2022-04-19 00:03:56 +00:00
Dan Heidinga
fc7a17c79b 8284103: AsVarargsCollector::asCollectorCache incorrectly marked @stable
Reviewed-by: jvernee, shade
2022-04-01 12:50:21 +00:00
Joe Darcy
f16244509d 8283416: Update java.lang.invoke.MethodHandle to use sealed classes
Reviewed-by: sundar, mchung
2022-03-24 19:08:23 +00:00
Maurizio Cimadamore
96e36071b6 8275063: Implementation of Foreign Function & Memory API (Second incubator)
Reviewed-by: erikj, psandoz, jvernee, darcy
2021-11-24 11:51:16 +00:00
Mandy Chung
c6339cb8a2 8271820: Implementation of JEP 416: Reimplement Core Reflection with Method Handle
8013527: calling MethodHandles.lookup on itself leads to errors

Co-authored-by: Peter Levart <plevart@openjdk.org>
Co-authored-by: Claes Redestad <redestad@openjdk.org>
Co-authored-by: Mandy Chung <mchung@openjdk.org>
Reviewed-by: mcimadamore, plevart, egahlin, redestad, cjplummer, alanb
2021-10-28 18:32:50 +00:00
Vladimir Ivanov
21012f2bbe 8078641: MethodHandle.asTypeCache can retain classes from unloading
Co-authored-by: Peter Levart <plevart@openjdk.org>
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: psandoz, mchung, plevart
2021-09-08 11:27:14 +00:00
Mandy Chung
ddce47cd3c 8270949: Make dynamically generated classes with the class file version of the current release
Reviewed-by: alanb
2021-07-21 18:09:38 +00:00
Patrick Concannon
d43c8a74b3 8268124: Update java.lang to use switch expressions
Reviewed-by: naoto, darcy, mchung, iris, lancea, dfuchs
2021-06-10 11:12:37 +00:00
Maurizio Cimadamore
a223189b06 8264774: Implementation of Foreign Function and Memory API (Incubator)
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Co-authored-by: Jorn Vernee <jvernee@openjdk.org>
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Co-authored-by: Athijegannathan Sundararajan <sundar@openjdk.org>
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Reviewed-by: psandoz, chegar, mchung, vlivanov
2021-06-02 10:53:06 +00:00
Jorn Vernee
3623abb7f6 8263087: Add a MethodHandle combinator that switches over a set of MethodHandles
Reviewed-by: redestad
2021-05-27 12:28:10 +00:00
Jorn Vernee
b7baca7f32 8264288: Performance issue with MethodHandle.asCollector
Reviewed-by: jrose, vlivanov
2021-04-05 20:05:07 +00:00
Andrey Turbanov
fbbd98ba53 8264029: Replace uses of StringBuffer with StringBuilder in java.base
Reviewed-by: shade
2021-03-29 13:31:25 +00:00
Alex Blewitt
b49c589340 8263658: Use the blessed modifier order in java.base
Reviewed-by: rriggs, redestad
2021-03-19 13:06:58 +00:00
Claes Redestad
fac39fe97a 8263508: Remove dead code in MethodHandleImpl
Reviewed-by: jkuhn, mchung
2021-03-15 10:52:48 +00:00
Vladimir Ivanov
692b273ec5 8257189: Handle concurrent updates of MH.form better
Reviewed-by: redestad, psandoz
2020-12-02 17:35:41 +00:00
Maurizio Cimadamore
0fb31dbf3a 8254231: Implementation of Foreign Linker API (Incubator)
Reviewed-by: coleenp, ihse, dholmes, vlivanov
2020-11-23 11:00:38 +00:00
Maurizio Cimadamore
3e70aac5cc 8254162: Implementation of Foreign-Memory Access API (Third Incubator)
Reviewed-by: erikj, psandoz, alanb
2020-11-12 16:37:23 +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
Yumin Qi
8f36580594 8252725: Refactor jlink GenerateJLIClassesPlugin code
Cleanup code for jlink classes generation, move parsing file work to java.lang.invoke and add a new API in interface JavaLangInvokeAccess to generate holder classes, remove old APIs. The new API is used both by JLI and CDS.

Reviewed-by: mchung, sundar
2020-09-04 09:47:18 -07:00
Chris Hegarty
f3eb44a94d 8243491: Implementation of Foreign-Memory Access API (Second Incubator)
Upstream latest changes of the Foreign-Memory Access API

Co-authored-by: Jorn Vernee <jorn.vernee@oracle.com>
Co-authored-by: Mandy Chung <mandy.chung@oracle.com>
Co-authored-by: Paul Sandoz <paul.sandoz@oracle.com>
Co-authored-by: Peter Levart <peter.levart@gmail.com>
Reviewed-by: chegar, psandoz
2020-05-25 10:54:39 +01: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
Jorn Vernee
8f4f088a12 8234049: Implementation of Memory Access API (Incubator)
Co-authored-by: Vlaidmir Ivanov <vladimir.x.ivanov@oracle.com>
Reviewed-by: alanb, psandoz, chegar, rriggs, plevart, briangoetz, jrose, adinn, vlivanov
2019-12-12 22:59:57 +00:00
Julia Boes
a8a2246158 8234335: Remove line break in class declaration in java.base
Remove line break in class declarations where applicable

Reviewed-by: rriggs, lancea
2019-11-21 09:10:21 +00: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
Claes Redestad
eda5f09014 8213478: Reduce rebinds when applying repeated filters and conversions
Reviewed-by: vlivanov, jrose
2018-11-11 21:24:46 +01:00
Mandy Chung
9ffe7e1205 8211122: Reduce the number of internal classes made accessible to jdk.unsupported
Reviewed-by: alanb, dfuchs, kvn
2018-11-06 10:01:16 -08:00
Claes Redestad
f4b24c3473 8204194: Lazily create MethodHandleImpl$AsVarargsCollector.asCollectorCache
Reviewed-by: psandoz
2018-06-01 11:34:13 +02:00
Claes Redestad
b66ffad152 8199471: Enable generation of callSiteForms at link time
Reviewed-by: psandoz, mchung
2018-03-14 17:14:02 +01:00
Mandy Chung
52693f1ca5 8157246: MHs.arrayLength, arrayElementGetter/Setter, arrayConstructor need to specify invocation-time behavior
Reviewed-by: psandoz, rriggs
2017-11-17 08:12:02 -06:00
Jesper Wilhelmsson
88d610826b Merge 2017-11-16 01:11:32 +01:00