diff options
author | Fabian Ritter <fabian.ritter@amd.com> | 2025-09-19 09:01:14 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-09-19 09:01:14 +0200 |
commit | 3cc1b7c2e0dbd9b7c04110d7d8c799acb476c204 (patch) | |
tree | 791074db9ae7ba36d1f5842b96c96aace52f496b /clang/lib/AST/ByteCode/Compiler.cpp | |
parent | ebe7587256597af0a19707e65e801f9d53307e09 (diff) | |
download | llvm-3cc1b7c2e0dbd9b7c04110d7d8c799acb476c204.zip llvm-3cc1b7c2e0dbd9b7c04110d7d8c799acb476c204.tar.gz llvm-3cc1b7c2e0dbd9b7c04110d7d8c799acb476c204.tar.bz2 |
[SeparateConstOffsetFromGEP] Check if non-extracted indices may be negative when preserving inbounds (#159515)
If we know that the initial GEP was inbounds, and we change it to a sequence of
GEPs from the same base pointer where every offset is non-negative, then the
new GEPs are inbounds. So far, the implementation only checked if the extracted
offsets are non-negative. In cases where non-extracted offsets can be negative,
this would cause the inbounds flag to be wrongly preserved.
Fixes an issue in #130617 found by nikic.
Diffstat (limited to 'clang/lib/AST/ByteCode/Compiler.cpp')
0 files changed, 0 insertions, 0 deletions