llvm-project
cbfd0d68 - [HashRecognize] Rewrite arePHIsIntertwined (#144878)

Commit
76 days ago
[HashRecognize] Rewrite arePHIsIntertwined (#144878) The test crc8.le.tc16 is a valid CRC algorithm, but isn't recognized as such due to a buggy arePHIsIntertwined, which is asymmetric in its PHINode arguments. There is also a fundamental correctness issue: the core functionality is to match a XOR that's a recurrence in both PHI nodes, ignoring casts, but the user of the XOR is never checked. Rewrite and rename the function. crc8.le.tc16 is still not recognized as a valid CRC algorithm, due to an incorrect check for loop iterations exceeding the bitwidth of the result: in reality, it should not exceed the bitwidth of LHSAux, but we leave this fix to a follow-up. Co-authored-by: Piotr Fusik <p.fusik@samsung.com>
Author
Parents
Loading