On Fri, 30 Jun 2023 14:32:03 GMT, Ashutosh Mehra <d...@openjdk.org> wrote:

> Please review this PR that enables ClassWriter to write annotations to the 
> class file being dumped.
> 
> The fields annotations are stored in `Annotations::_fields_annotations` which 
> is of type `Array<Array<u1>*>`. There is no class in SA that can represent 
> it. I have added ArrayOfU1Array to correspond to the type `Array<Array<u1>*>` 
> and it works. I believe there are better approaches but that would require a 
> bit more refactoring of the classes representing Array types. I will leave 
> that for future work for now.
> 
> Testing: `test/hotspot/jtreg/serviceability/sa` and `test/jdk/sun/tools/jhsdb`
> Tested it manually by dumping j.l.String class and comparing the annotations 
> with the original class using javap.
> The test case mentioned in 
> [JDK-8311101](https://bugs.openjdk.org/browse/JDK-8311101) would provide 
> better coverage.

This pull request has now been integrated.

Changeset: c710e711
Author:    Ashutosh Mehra <asme...@redhat.com>
Committer: Thomas Stuefe <stu...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/c710e711780b3c334fdb9e1299b3c39a2b48649e
Stats:     426 lines in 9 files changed: 408 ins; 5 del; 13 mod

8311102: Write annotations in the classfile dumped by SA

Reviewed-by: cjplummer, stuefe

-------------

PR: https://git.openjdk.org/jdk/pull/14735

Reply via email to