On Tue, 21 Apr 2026 23:15:02 GMT, Coleen Phillimore <[email protected]> wrote:
> Move JavaClasses for filling in the stack trace in a new file to keep them > together. These classes are very sensitive to inlining which can affect > performance of benchmarks that throw a lot of exceptions (like Dacapo pmd). > > Also remove the work to save the Method name in the backtrace that was used > for the case where redefinition could delete the method in the stack trace. > RedefineClasses ability to add/delete methods has been deprecated for many > releases, so adding code and memory for this case is wasting space and time. > This change speeds up Throwable microbenchmarks by about 10-30%, and speeds > up DaCapo pmd by a bit. > > Tested with tier1-4. > > Integration would be after the valhalla integration, since this will need to > merge with that. It's mostly changing objArrayOops to refArrayOops in the > new javaStackTraceClasses.cpp file. > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai). I could do a pre-PR that moves the code to javaStackTraceClasses.cpp but the rest is related to changing the backtrace oop in Throwable to an array with less elements. Some tests introspected on that. The typeArrayOop cleanup is there because backtrace no longer has a Symbol* array, so is related. ------------- PR Comment: https://git.openjdk.org/jdk/pull/30863#issuecomment-5045427466
