Flandini wrote:
Yes, I won't have time for it until probably this weekend or after though, so
it will be a bit.
https://github.com/llvm/llvm-project/pull/129182
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mai
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/129182
>From 6db1434c459854ca6ea631fc33e0f773323e85d0 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Sun, 23 Feb 2025 13:09:39 -0600
Subject: [PATCH 1/2] [analyzer] Add more C++ list initializer tests and
regr
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/127702
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,30 @@
+// RUN: %clang_analyze_cc1 -verify %s\
+// RUN: -analyzer-checker=core,debug.ExprInspection
+
+void clang_analyzer_eval(bool);
+
+using size_t = decltype(sizeof(int));
+
+template
+void escape(FirstT first, Rest... args);
+
+namespace CustomClassType {
+struct
@@ -254,6 +254,224 @@ void foo() {
}
} // namespace CXX17_aggregate_construction
+namespace newexpr_init_list_initialization {
Flandini wrote:
They currently take different code paths and have different results in CSA. I
think ideally they would use the same
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 01/17] [analyzer] Do list initialization for CXXNewExpr with
https://github.com/Flandini created
https://github.com/llvm/llvm-project/pull/129182
Related to #127702.
I figured that if I change list initialization like mentioned in #127702, then
I would want these tests anyways, so I am adding them first. This adds more
test coverage of C++ list initial
Flandini wrote:
Didn't know it was UB, fixed.
https://github.com/llvm/llvm-project/pull/127702
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 01/17] [analyzer] Do list initialization for CXXNewExpr with
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 01/13] [analyzer] Do list initialization for CXXNewExpr with
Flandini wrote:
Yes, ready to merge, sorry for the wait. Added a few placement new list
initializer tests just now. Seems to work as well for placement new.
https://github.com/llvm/llvm-project/pull/127702
___
cfe-commits mailing list
cfe-commits@list
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 01/16] [analyzer] Do list initialization for CXXNewExpr with
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 01/15] [analyzer] Do list initialization for CXXNewExpr with
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 01/12] [analyzer] Do list initialization for CXXNewExpr with
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 01/14] [analyzer] Do list initialization for CXXNewExpr with
@@ -254,6 +254,198 @@ void foo() {
}
} // namespace CXX17_aggregate_construction
+namespace newexpr_init_list_initialization {
+template
+void escape(FirstT first, Rest... args);
+
+struct S {
+ int foo;
+ int bar;
+};
+void none_designated() {
+ S *s = new S{13,1};
+ cla
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 01/11] [analyzer] Do list initialization for CXXNewExpr with
@@ -254,6 +254,200 @@ void foo() {
}
} // namespace CXX17_aggregate_construction
+namespace newexpr_init_list_initialization {
+struct S {
+ int foo;
+ int bar;
+};
+void none_designated() {
+ S *s = new S{13,1};
+ clang_analyzer_eval(13 == s->foo); // expected-warning{{TR
@@ -0,0 +1,38 @@
+// RUN: %clang_analyze_cc1 -w -verify %s\
+// RUN: -analyzer-checker=core\
+// RUN: -analyzer-checker=debug.ExprInspection -std=c++17
+// RUN: %clang_analyze_cc1 -w -verify %s\
+// RUN: -analyzer-checker=core\
+// RUN: -analyzer-checker=debug.ExprInspecti
@@ -0,0 +1,38 @@
+// RUN: %clang_analyze_cc1 -w -verify %s\
+// RUN: -analyzer-checker=core\
+// RUN: -analyzer-checker=debug.ExprInspection -std=c++17
+// RUN: %clang_analyze_cc1 -w -verify %s\
+// RUN: -analyzer-checker=core\
+// RUN: -analyzer-checker=debug.ExprInspecti
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 1/9] [analyzer] Do list initialization for CXXNewExpr with
i
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/127702
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 1/8] [analyzer] Do list initialization for CXXNewExpr with
i
@@ -0,0 +1,38 @@
+// RUN: %clang_analyze_cc1 -w -verify %s\
+// RUN: -analyzer-checker=core\
+// RUN: -analyzer-checker=debug.ExprInspection -std=c++17
+// RUN: %clang_analyze_cc1 -w -verify %s\
+// RUN: -analyzer-checker=core\
+// RUN: -analyzer-checker=debug.ExprInspecti
Flandini wrote:
Going to add tests for placement new and user-defined placement new operator
with list initializers also
https://github.com/llvm/llvm-project/pull/127702
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cg
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 1/5] [analyzer] Do list initialization for CXXNewExpr with
i
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH 1/4] [analyzer] Do list initialization for CXXNewExpr with
i
https://github.com/Flandini created
https://github.com/llvm/llvm-project/pull/127702
Fixes #116444.
Closed #127700 because I accidentally updated it in github UI.
### Current vs expected behavior
Previously, the result of a `CXXNewExpr` was not always list initialized when
using an initializ
https://github.com/Flandini closed
https://github.com/llvm/llvm-project/pull/127700
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127702
>From 12791f2c89f7e42bd261ac573c2497857c42b6f3 Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 15:56:13 -0600
Subject: [PATCH] [analyzer] Do list initialization for CXXNewExpr with
initi
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/127700
>From 2c094dc9d9eab60e94ea018a854a1eae48dd894b Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Tue, 18 Feb 2025 12:27:18 -0600
Subject: [PATCH 1/2] [analyzer] Do list init for CXX new expr with initialize
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/127700
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini created
https://github.com/llvm/llvm-project/pull/127700
Fixes #116444.
### Current vs expected behavior
Previously, the result of a `CXXNewExpr` was not always list initialized when
using an initializer list.
In this example:
```
struct S { int x; };
void F() {
Flandini wrote:
Worth adding a g++ pre-merge build? Can individual subprojects change their
pre-merge checks?
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mail
Flandini wrote:
@steakhal, looks like the premerge checks built with clang 20
https://buildkite.com/llvm-project/github-pull-requests/builds/145477#0194f106-3262-4d2b-922c-b3810220acd1/6-4595.
I build locally with clang 18.
This type of error is caught by g++, not clang++:
https://godbolt.or
https://github.com/Flandini created
https://github.com/llvm/llvm-project/pull/126986
Fixes #123459.
This changes checking of the returned expr to also look for memory regions
whose stack frame context was a child of the current stack frame context, e.g.,
for cases like this given in #123459:
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini created
https://github.com/llvm/llvm-project/pull/126620
Reapplying changes from https://github.com/llvm/llvm-project/pull/125638 after
buildbot failures.
Buildbot failures fixed in 029e7e98dc9956086adc6c1dfb0c655a273fbee6, latest
commit on this PR. It was a proble
https://github.com/Flandini closed
https://github.com/llvm/llvm-project/pull/126618
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/126618
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/126618
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Flandini wrote:
> I reverted the change due to the build failure. Could you open a new PR with
> the error fixed?
Yes, sorry.
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.
Flandini wrote:
> Thanks a lot for the change and persisting. Sorry for the stupid questions :)
> Looks good to me.
No worries at all, I am happier with the PR state now compared to before.
Thanks for the review.
I've added more test coverage so I believe we have similar test coverage as
Sem
@@ -247,45 +240,128 @@ void StackAddrEscapeChecker::checkPreCall(const
CallEvent &Call,
}
}
-void StackAddrEscapeChecker::checkPreStmt(const ReturnStmt *RS,
- CheckerContext &C) const {
- if (!ChecksEnabled[CK_StackAddrEscapeChecker
Flandini wrote:
> @Xazax-hun, I pushed some more test cases. I can't think of any more tricky
> test cases that weren't already covered, but lmk if you see any areas with
> gaps.
Actually, I will go through the `-Wreturn-stack-address` test cases in sema and
see what I've missed.
https://git
Flandini wrote:
@Xazax-hun, I pushed some more test cases. I can't think of any more tricky
test cases that weren't already covered, but lmk if you see any areas with gaps.
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/125638
>From 0674909f03703a70c3e259acd0590f50cea4615f Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 27 Jan 2025 11:35:03 -0600
Subject: [PATCH 01/31] wip
---
.../Checkers/StackAddrEscapeChecker.cpp
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/125638
>From 0674909f03703a70c3e259acd0590f50cea4615f Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 27 Jan 2025 11:35:03 -0600
Subject: [PATCH 01/30] wip
---
.../Checkers/StackAddrEscapeChecker.cpp
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -247,45 +240,134 @@ void StackAddrEscapeChecker::checkPreCall(const
CallEvent &Call,
}
}
-void StackAddrEscapeChecker::checkPreStmt(const ReturnStmt *RS,
- CheckerContext &C) const {
- if (!ChecksEnabled[CK_StackAddrEscapeChecker
@@ -912,3 +924,33 @@ void top_malloc_no_crash_fn() {
free(pptr);
}
} // namespace alloca_region_pointer
+
+namespace true_negatives_return_expressions {
+struct Container { int *x; };
+
+int test2() {
+ int x = 14;
Flandini wrote:
I also added a similar tes
@@ -912,3 +924,33 @@ void top_malloc_no_crash_fn() {
free(pptr);
}
} // namespace alloca_region_pointer
+
+namespace true_negatives_return_expressions {
+struct Container { int *x; };
+
+int test2() {
+ int x = 14;
Flandini wrote:
Added in 51f8e2e589424b67b
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/125638
>From 0674909f03703a70c3e259acd0590f50cea4615f Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 27 Jan 2025 11:35:03 -0600
Subject: [PATCH 01/29] wip
---
.../Checkers/StackAddrEscapeChecker.cpp
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/125638
>From 0674909f03703a70c3e259acd0590f50cea4615f Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 27 Jan 2025 11:35:03 -0600
Subject: [PATCH 01/27] wip
---
.../Checkers/StackAddrEscapeChecker.cpp
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/125638
>From 0674909f03703a70c3e259acd0590f50cea4615f Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 27 Jan 2025 11:35:03 -0600
Subject: [PATCH 01/26] wip
---
.../Checkers/StackAddrEscapeChecker.cpp
@@ -247,45 +240,134 @@ void StackAddrEscapeChecker::checkPreCall(const
CallEvent &Call,
}
}
-void StackAddrEscapeChecker::checkPreStmt(const ReturnStmt *RS,
- CheckerContext &C) const {
- if (!ChecksEnabled[CK_StackAddrEscapeChecker
@@ -247,45 +240,134 @@ void StackAddrEscapeChecker::checkPreCall(const
CallEvent &Call,
}
}
-void StackAddrEscapeChecker::checkPreStmt(const ReturnStmt *RS,
- CheckerContext &C) const {
- if (!ChecksEnabled[CK_StackAddrEscapeChecker
@@ -18,8 +18,8 @@ struct myfunction {
myfunction create_func() {
int n;
auto c = [&n] {};
- return c; // expected-warning {{Address of stack memory associated with
local variable 'n' is still referred to by a temporary object on the stack upon
returning to the caller. T
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/125638
>From 0674909f03703a70c3e259acd0590f50cea4615f Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 27 Jan 2025 11:35:03 -0600
Subject: [PATCH 01/21] wip
---
.../Checkers/StackAddrEscapeChecker.cpp
Flandini wrote:
> I think this is going in the right direction but I'd love to see more tests
> and some more thought about some scenarios.
I'll do some structural induction approach to what could be returned and what
could hold which things, and make sure these all have some test case coverag
@@ -247,45 +240,134 @@ void StackAddrEscapeChecker::checkPreCall(const
CallEvent &Call,
}
}
-void StackAddrEscapeChecker::checkPreStmt(const ReturnStmt *RS,
- CheckerContext &C) const {
- if (!ChecksEnabled[CK_StackAddrEscapeChecker
@@ -247,45 +240,134 @@ void StackAddrEscapeChecker::checkPreCall(const
CallEvent &Call,
}
}
-void StackAddrEscapeChecker::checkPreStmt(const ReturnStmt *RS,
- CheckerContext &C) const {
- if (!ChecksEnabled[CK_StackAddrEscapeChecker
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/125638
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini created
https://github.com/llvm/llvm-project/pull/125638
Fixes https://github.com/llvm/llvm-project/issues/123459.
Previously, when the StackAddrEscapeChecker checked return values, it did not
scan into the structure of the return SVal. Now it does, and we can catch
Flandini wrote:
Made the above changes. I moved it all into `MemRegion` and changed the names
of and added deprecation comments to the old `MemRegion` instance methods that
queried mem space info.
https://github.com/llvm/llvm-project/pull/123003
__
@@ -119,7 +120,26 @@ class MemRegion : public llvm::FoldingSetNode {
virtual MemRegionManager &getMemRegionManager() const = 0;
- LLVM_ATTRIBUTE_RETURNS_NONNULL const MemSpaceRegion *getMemorySpace() const;
+ /// Deprecated. Gets the 'raw' memory space of a memory region'
Flandini wrote:
Benchmarking is taking a while for me, and I can only really run benchmarks
with low run-time variance overnight. I will post more over time as I get more
benchmark projects added.
Here is the result from benchmarking one C project, libsodium, so far. These
results are for 13
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/123003
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -437,7 +437,7 @@ bool SymbolReaper::isLiveRegion(const MemRegion *MR) {
// tell if anything still refers to this region. Unlike SymbolicRegions,
// AllocaRegions don't have associated symbols, though, so we don't actually
// have a way to track their liveness.
- retur
Flandini wrote:
Working on some benchmarking. Posted some problems in the discord channel, but
working through it now, and benchmarking with the CodeChecker tool using only
clangsa. Is there an already established set of benchmarks y'all use somewhere?
IIRC, there was some github repo with som
Flandini wrote:
> Have you considered changing `MemRegion::getMemorySpace()` into
> `MemRegion::getMemorySpace(ProgramStateRef)`?
I thought about this, but I decided against it since I am thinking that
MemSpaces will eventually be their own separate thing, not part of the
MemRegion hierarchy,
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/123003
>From 7e0758d2ead53bd4288989b8b2eda218cd6dc34a Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 13 Jan 2025 12:34:50 -0600
Subject: [PATCH 01/15] [analyzer] Add MemSpace trait to program state
This t
@@ -0,0 +1,72 @@
+//===-- MemSpaces.cpp -*- C++
-*--//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
@@ -0,0 +1,72 @@
+//===-- MemSpaces.cpp -*- C++
-*--//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
Flandini wrote:
> I like the direction of this PR but at the same time it makes memspaces a bit
> more error prone to use. Do you think we could find a way to prevent using
> `isa` on memspaces?
Do you mean moving away from a class hierarchy definition for memspaces and
towards something else
Flandini wrote:
@NagyDonat, I made the requested changes, lmk if this looks better.
https://github.com/llvm/llvm-project/pull/123003
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/123003
>From 7e0758d2ead53bd4288989b8b2eda218cd6dc34a Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 13 Jan 2025 12:34:50 -0600
Subject: [PATCH 01/14] [analyzer] Add MemSpace trait to program state
This t
@@ -0,0 +1,62 @@
+//===-- MemSpaces.cpp -*- C++
-*--//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
@@ -2404,8 +2414,10 @@ bool MallocChecker::SummarizeRegion(raw_ostream &os,
return true;
default: {
const MemSpaceRegion *MS = MR->getMemorySpace();
+const MemSpaceRegion *MSTrait = memspace::getMemSpaceTrait(State, MR);
Flandini wrote:
Changed
@@ -0,0 +1,62 @@
+//===-- MemSpaces.cpp -*- C++
-*--//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/123003
>From 7e0758d2ead53bd4288989b8b2eda218cd6dc34a Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 13 Jan 2025 12:34:50 -0600
Subject: [PATCH 01/13] [analyzer] Add MemSpace trait to program state
This t
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/123003
>From 7e0758d2ead53bd4288989b8b2eda218cd6dc34a Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 13 Jan 2025 12:34:50 -0600
Subject: [PATCH 1/6] [analyzer] Add MemSpace trait to program state
This tra
https://github.com/Flandini edited
https://github.com/llvm/llvm-project/pull/123003
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,47 @@
+//===-- MemSpaces.h ---*- C++
-*--//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
@@ -0,0 +1,62 @@
+//===-- MemSpaces.cpp -*- C++
-*--//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/123003
>From 7e0758d2ead53bd4288989b8b2eda218cd6dc34a Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 13 Jan 2025 12:34:50 -0600
Subject: [PATCH 1/3] [analyzer] Add MemSpace trait to program state
This tra
@@ -0,0 +1,62 @@
+//===-- MemSpaces.cpp -*- C++
-*--//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
https://github.com/Flandini updated
https://github.com/llvm/llvm-project/pull/123003
>From 7e0758d2ead53bd4288989b8b2eda218cd6dc34a Mon Sep 17 00:00:00 2001
From: Michael Flanders
Date: Mon, 13 Jan 2025 12:34:50 -0600
Subject: [PATCH 1/2] [analyzer] Add MemSpace trait to program state
This tra
https://github.com/Flandini created
https://github.com/llvm/llvm-project/pull/123003
This trait associates MemSpaceRegions with MemRegions to allow refining or
changing information known about memory regions after they are created, since
they are immutable. This commit is an intermediate step
93 matches
Mail list logo