[code-reflection] RFR: Fix SSABraun bug and add SSA tests [v2]
Ruby Chen
duke at openjdk.org
Wed Sep 10 19:43:04 UTC 2025
On Tue, 9 Sep 2025 18:52:16 GMT, Ruby Chen <duke at openjdk.org> wrote:
>> Fix a bug in SSABraun where, in `tryRemoveTrivialPhi()`, a phi stored in `same` that is later deleted in a recursive `tryRemoveTrivialPhi()` call is still returned despite being deleted.
>>
>> Add five tests to TestSSA: `deadCode(), ifelseLoopNested(), violaJones(), binarySearch(),` and `quicksort()`. `violaJones()` is inspired by the method `findFeaturesKernel` in HAT kernel ViolaJones, which is the bug first presented itself.
>
> Ruby Chen 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 five additional commits since the last revision:
>
> - Replace deleted phi after recursive call
> - Merge branch 'openjdk:code-reflection' into inline
> - Merge branch 'openjdk:code-reflection' into inline
> - Merge branch 'openjdk:code-reflection' into inline
> - Fix SSABraun bug and add SSA tests
Thanks for looking it over! Yeah, I think it might've been an oversight in the paper's algorithm. Looking at the actual implementation right now, I see how they arrived at the paper's pseudocode, but it's interesting that the paper went ahead with those slight differences :')
-------------
PR Comment: https://git.openjdk.org/babylon/pull/542#issuecomment-3276279590
More information about the babylon-dev
mailing list