llvm-project
331c1c0b - [ValueTracking] Refine SIToFP/UIToFP FPClass inference with KnownBits (#187185)

Commit
37 days ago
[ValueTracking] Refine SIToFP/UIToFP FPClass inference with KnownBits (#187185) This patch propagates the KnownBits of the source integer to improve floating-point class inference for sitofp and uitofp instructions. Specifically, 1. The result is never -0.0. 2. The result is not +0.0 if the source integer is known non-zero. 3. The result is not negative if the source integer is known non-negative (or for uitofp). 4. The result is not Infinity if the largest possible integer magnitude fits within the target FP type's exponent limits. alive2 results for added testcases: testcase 1: https://alive2.llvm.org/ce/z/eM34LB testcase 2: https://alive2.llvm.org/ce/z/ext7XF testcase 3: https://alive2.llvm.org/ce/z/g8yb6q testcase 4: https://alive2.llvm.org/ce/z/cyFYRy testcase 5: https://alive2.llvm.org/ce/z/LePFrm alive2 for updated testcase in binop-itofp: updated 1: https://alive2.llvm.org/ce/z/KPQ5bZ udpated 2: https://alive2.llvm.org/ce/z/bGf43t updated 3: https://alive2.llvm.org/ce/z/YKnCwU updaetd 4: https://alive2.llvm.org/ce/z/mqKaq- updated 5: https://alive2.llvm.org/ce/z/jYSAB5 Fix #186952
Author
Parents
Loading