On Tue, 12 May 2026 07:24:43 GMT, Galder ZamarreƱo <[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).
>
> src/hotspot/share/opto/macro.cpp line 2502:
> 
>> 2500: 
>> 2501:   bool is_add = addsub->Opcode() == Op_AddI128T;
>> 2502:   Node* new_lo;
> 
> If `addsub->result_lo_or_null() == null` and `addsub->result_hi_or_null() == 
> null`, seems like `new_lo` would be created unnecessarily. Is this likely to 
> happen? If so looks maybe it could be coded in a more efficient way?

Hi @galderz , thanks for your comment. If both projections are `nullptr` then 
the node should be dead and removed by IGVN.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/31008#discussion_r3224791362

Reply via email to