[all-commits] [llvm/llvm-project] 1b7ef6: [BasicAA] Account for wrapping when using abs(VarI...
Florian Hahn via All-commits
all-commits at lists.llvm.org
Fri Mar 18 07:41:29 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 1b7ef6aac8a3cad245c0ed14fe21725e31261f73
https://github.com/llvm/llvm-project/commit/1b7ef6aac8a3cad245c0ed14fe21725e31261f73
Author: Florian Hahn <flo at fhahn.com>
Date: 2022-03-18 (Fri, 18 Mar 2022)
Changed paths:
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/test/Analysis/BasicAA/gep-modulo.ll
Log Message:
-----------
[BasicAA] Account for wrapping when using abs(VarIndex) >= abs(Scale).
The patch adds an extra check to only set MinAbsVarIndex if
abs(V * Scale) won't wrap. In the absence of IsNSW, try to use the
bitwidths of the original V and Scale to rule out wrapping.
Attempt to model https://alive2.llvm.org/ce/z/HE8ZKj
The code in the else if below probably needs the same treatment, but I
need to come up with a test first.
Reviewed By: asbirlea
Differential Revision: https://reviews.llvm.org/D121695
More information about the All-commits
mailing list