RFR: 8344026: [s390x] ubsan failure: signed integer overflow in c1_LIRGenerator_s390.cpp

Martin Doerr mdoerr at openjdk.org
Fri Nov 15 12:44:55 UTC 2024


On Fri, 15 Nov 2024 11:27:39 GMT, Amit Kumar <amitkumar at openjdk.org> wrote:

>> I'm not talking about existing code. I'm talking about possibilities which you prevent. With your code `strength_reduce_multiply` will no longer be called with negative `c` preventing possible optimizations inside of it.
>
>>With your code strength_reduce_multiply will no longer be called with negative c preventing possible optimizations inside of it.
> 
> My thoughts are that even if `strength_reduce_multiply` is being called with `-ve` values. It's almost doing nothing. At the end we are falling back to this code: 
> 
>         // we couldn't strength reduce so just emit the multiply
>         if (!did_strength_reduce) {
>           __ mul(left_op, right_op, result_op);
>         }

I didn't get your point. Some platform owners may want to use `strength_reduce_multiply` for more cases in the future.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/22144#discussion_r1843652037


More information about the hotspot-compiler-dev mailing list