RFR: 8367341: C2: apply KnownBits and unsigned bounds to And / Or operations
    Quan Anh Mai 
    qamai at openjdk.org
       
    Fri Oct  3 06:13:18 UTC 2025
    
    
  
Hi,
This PR improves the implementation of `AndNode/OrNode/XorNode::Value` by taking advantages of the additional information in `TypeInt`. The implementation is pretty straightforward. A clever trick is that by analyzing the negative and positive ranges of a `TypeInt` separately, we have better info for the leading bits. I also implement gtest unit tests to verify the correctness and monotonicity of the inference functions.
Please take a look and leave your reviews, thanks a lot.
-------------
Commit messages:
 - Improve Value inferences of And, Or, Xor and implement gtest for general Value inferences
Changes: https://git.openjdk.org/jdk/pull/27618/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=27618&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8367341
  Stats: 920 lines in 8 files changed: 591 ins; 309 del; 20 mod
  Patch: https://git.openjdk.org/jdk/pull/27618.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/27618/head:pull/27618
PR: https://git.openjdk.org/jdk/pull/27618
    
    
More information about the hotspot-compiler-dev
mailing list