[clang] [clang] add array out-of-bounds access constraints using llvm.assume (PR #159046)
Erich Keane via cfe-commits
cfe-commits at lists.llvm.org
Mon Oct 6 06:13:27 PDT 2025
================
@@ -1603,6 +1603,11 @@ defm assume_unique_vtables : BoolFOption<"assume-unique-vtables",
BothFlags<[], [ClangOption, CLOption]>>;
def fassume_sane_operator_new : Flag<["-"], "fassume-sane-operator-new">, Group<f_Group>;
+defm assume_array_bounds : BoolFOption<"assume-array-bounds",
+ CodeGenOpts<"AssumeArrayBounds">, DefaultFalse,
+ PosFlag<SetTrue, [], [ClangOption, CC1Option],
+ "Generate llvm.assume for array bounds to enable optimizations (may break code with intentional out-of-bounds access)">,
----------------
erichkeane wrote:
Is this ALL accesses, or just dereferences? We need to ensure we allow 1 past the end for iterators, else this feature is worthless.
https://github.com/llvm/llvm-project/pull/159046
More information about the cfe-commits
mailing list