On Thu, 3 Sep 2026 07:08:33 GMT, Quan Anh Mai <[email protected]> wrote:
>> Hi, >> >> This PR implements addition and subtraction of 128-bit integers in C2. This >> may have numerous applications: >> >> - It helps intrinsification of operations on 128-bit integers when we have >> one. >> - It allows computation that may be incorrect at `long` due to overflow, >> such as loop predication of long range checks. >> >> By implementing this separately, we don't need to worry about finalizing a >> public API, and we can have a better testing coverage. >> >> Testing: >> >> - [x] tier1-4,hs-comp-stress >> >> Please take a look and leave your review, thanks a lot. >> >> --------- >> - [x] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > Quan Anh Mai has updated the pull request incrementally with one additional > commit since the last revision: > > Pseudocode I'm happy. Nice. I just have a nit. It will look more motivated when actually used, but I understand it will come. I guess somebody from libs should look at it, since it has a new class, even internal. src/hotspot/share/opto/int128tnode.hpp line 46: > 44: Node* hi2() const { return in(4); } > 45: > 46: virtual const Type* bottom_type() const override final { return > TypeTuple::LONG_PAIR; } Nit: `override` and `virtual` are redundant with `final`. C++ can make an avalanche of symbols, we don't need to make it compete with an avalanche of keywords 🙂 . Usually, it is recommended to use only one of `override` or `final` (and `virtual` only in the base). Same under, and other classes. ------------- Marked as reviewed by mchevalier (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/31008#pullrequestreview-5102072036 PR Review Comment: https://git.openjdk.org/jdk/pull/31008#discussion_r3924678511
