On Mon, 21 Oct 2024 07:58:42 GMT, Emanuel Peter <epe...@openjdk.org> wrote:
>> Shaojin Wen has updated the pull request with a new target base due to a >> merge or a rebase. The incremental webrev excludes the unrelated changes >> brought in by the merge/rebase. The pull request contains 26 additional >> commits since the last revision: >> >> - Merge remote-tracking branch 'origin/optim_str_builder_append_202406' >> into optim_str_builder_append_202406 >> - fix build error >> - Merge remote-tracking branch 'upstream/master' into >> optim_str_builder_append_202406 >> - Merge remote-tracking branch 'upstream/master' into >> optim_str_builder_append_202406 >> - Merge remote-tracking branch 'origin/optim_str_builder_append_202406' >> into optim_str_builder_append_202406 >> - Merge remote-tracking branch 'upstream/master' into >> optim_str_builder_append_202406 >> - Merge remote-tracking branch 'upstream/master' into >> optim_str_builder_append_202406 >> - revert test >> - Merge remote-tracking branch 'upstream/master' into >> optim_str_builder_append_202406 >> - Merge remote-tracking branch 'upstream/master' into >> optim_str_builder_append_202406 >> - ... and 16 more: https://git.openjdk.org/jdk/compare/a510a929...457735c9 > > Not sure why the RangeCheck smearing issue only appreas here now. Maybe > because the graph is bigger? Maybe because of other things in the graph that > change the order of things? IDK yet. Thanks for checking @eme64 - up to you if and when you want to try and tackle such an improvement, if it can be done in a clean way. And as you say there might be other factors at play here. Perhaps things are confounded by how the code is structured before and after; this PR outlines the array stores to a separate method which might affect loop optimization passes if that method is first compiled separately then inlined. While I don't think the point fix in this PR is all that urgent this has been lingering for a while and I'm sure @wenshao wants to integrate and move on. We can always integrate then back out the `Unsafe` stuff once/if the phases have been disentangled. Or we keep experimenting to try and see if we can get it to behave ideally without `Unsafe` here and now. WDYT? @liach? ------------- PR Comment: https://git.openjdk.org/jdk/pull/19626#issuecomment-2425916432