diff options
| author | Sebastian Pop <spop@nvidia.com> | 2025-08-22 18:50:18 -0500 |
|---|---|---|
| committer | Sebastian Pop <spop@nvidia.com> | 2025-09-09 14:40:22 -0500 |
| commit | 7ad8fffa551a9d56a69dc18045afe8ede1cbcfb7 (patch) | |
| tree | a27684022584412df6db7ca68495b86db4492813 /CODE_OF_CONDUCT.md | |
| parent | ca28604e723af7940ab764a139fa512f5fa59ebc (diff) | |
[DA] Fix Strong SIV test for symbolic coefficients and deltas (#149977)users/sebpop/pr149977
Fixes GitHub issue #149977 where Strong SIV test incorrectly rejected
dependencies with symbolic coefficients and deltas due to overly conservative
bound checking.
Root cause: The bound constraint check |Delta| > UpperBound * |Coeff| would
prematurely reject dependencies when SCEV couldn't prove the relationship
definitively for symbolic expressions, preventing the analysis from reaching
the division logic.
Solution:
1. Make bound check less conservative for symbolic expressions by adding
runtime assumptions when SCEV cannot determine the relationship.
2. Enable symbolic division using SE->getUDivExactExpr for Delta/Coeff.
3. Add runtime assumptions where symbolic division cannot be computed.
This enables precise dependence analysis for cases like:
- Coefficient: -k (symbolic)
- Delta: -(2*k + 1) (symbolic)
- Distance: (2*k + 1)/k (computed symbolically)
Test case validates:
- When k = -1: distance = 1, clear flow dependence detected.
- Runtime assumptions ensure bounds are satisfied.
Diffstat (limited to 'CODE_OF_CONDUCT.md')
0 files changed, 0 insertions, 0 deletions
