llvm-project
a3d00e1a - DAG: Fold copysign with a known signmask to a disjoint or (#167266)

Commit
20 hours ago
DAG: Fold copysign with a known signmask to a disjoint or (#167266) If the sign bit is a computed sign mask (i.e., we know it's either +0 or -0), turn this into a disjoint or. This pattern appears in the pow implementations. We also need to know the sign bit of the magnitude is 0 for the or to be disjoint. Unfortunately the DAG's FP tracking is weak and we did not have a way to check if the sign bit is known 0, so add something for that. Ideally we would get a complete computeKnownFPClass implementation. This is intended to help avoid the regression which caused d3e7c4ce7a3d7 to be reverted.
Author
Parents
Loading