diff options
| author | Eduard Zingerman <eddyz87@gmail.com> | 2026-10-09 03:47:22 -0700 |
|---|---|---|
| committer | Alexei Starovoitov <ast@kernel.org> | 2026-10-09 20:29:12 +0000 |
| commit | ac43e0393f44931bd2d84ab682e78b1f08f9f1ec (patch) | |
| tree | 8e2fece5d0084137f560b4344a3cf55882b57a5d /include | |
| parent | 8f3bd4537faad487a1aed4df24c1af4587904568 (diff) | |
bpf: Track may_write flags in liveness
Track stack slots that instructions may modify, in order to account
for such writes when constructing SCEV expressions.
Consume the may_write flag in arg_access_info separately from reads and
definite writes. Include partially covered slots and all candidate
offsets; imprecise writes mark whole candidate frames. Possible writes
do not kill liveness.
Merge analyzed instances as:
may_write(dst) |= may_write(src)
must_write(dst) &= must_write(src)
For each ancestor frame f, summarize callee writes at the callsite:
may_write(callsite, f) |= OR_{i in callee} may_write(i, f)
Signed-off-by: Eduard Zingerman <eddyz87@gmail.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://patch.msgid.link/20261009-scev-minimal-rebase-v3-4-bcba9bc53ac9@gmail.com
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions
