[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-14 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall closed https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-14 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall updated https://github.com/llvm/llvm-project/pull/65949: >From 1d765a3b22cd81d6739a20f2b2f7b68935773f2a Mon Sep 17 00:00:00 2001 From: Sam McCall Date: Mon, 11 Sep 2023 13:21:11 +0200 Subject: [PATCH 1/4] [dataflow] Add global condition to DataflowAnalysisContext

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-14 Thread Sam McCall via cfe-commits
@@ -108,6 +108,16 @@ class DataflowAnalysisContext { /// A null `PointeeType` can be used for the pointee of `std::nullptr_t`. PointerValue &getOrCreateNullPointerValue(QualType PointeeType); + /// Adds `Constraint` to current and future flow conditions in this context. +

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Gábor Horváth via cfe-commits
https://github.com/Xazax-hun approved this pull request. LG! https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Gábor Horváth via cfe-commits
@@ -108,6 +108,16 @@ class DataflowAnalysisContext { /// A null `PointeeType` can be used for the pointee of `std::nullptr_t`. PointerValue &getOrCreateNullPointerValue(QualType PointeeType); + /// Adds `Constraint` to current and future flow conditions in this context. +

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Yitzhak Mandelbaum via cfe-commits
@@ -172,27 +179,33 @@ bool DataflowAnalysisContext::equivalentFormulas(const Formula &Val1, } void DataflowAnalysisContext::addTransitiveFlowConditionConstraints( -Atom Token, llvm::SetVector &Constraints, -llvm::DenseSet &VisitedTokens) { - auto Res = VisitedTokens.

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand resolved https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Yitzhak Mandelbaum via cfe-commits
@@ -108,6 +108,16 @@ class DataflowAnalysisContext { /// A null `PointeeType` can be used for the pointee of `std::nullptr_t`. PointerValue &getOrCreateNullPointerValue(QualType PointeeType); + /// Adds `Constraint` to current and future flow conditions in this context. +

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall resolved https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall resolved https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall updated https://github.com/llvm/llvm-project/pull/65949: >From 1d765a3b22cd81d6739a20f2b2f7b68935773f2a Mon Sep 17 00:00:00 2001 From: Sam McCall Date: Mon, 11 Sep 2023 13:21:11 +0200 Subject: [PATCH 1/3] [dataflow] Add global condition to DataflowAnalysisContext

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Sam McCall via cfe-commits
@@ -150,7 +157,7 @@ bool DataflowAnalysisContext::flowConditionImplies(Atom Token, Constraints.insert(&arena().makeAtomRef(Token)); Constraints.insert(&arena().makeNot(Val)); llvm::DenseSet VisitedTokens; sam-mccall wrote: Indeed, oops! https://github.

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Sam McCall via cfe-commits
@@ -172,27 +179,33 @@ bool DataflowAnalysisContext::equivalentFormulas(const Formula &Val1, } void DataflowAnalysisContext::addTransitiveFlowConditionConstraints( -Atom Token, llvm::SetVector &Constraints, -llvm::DenseSet &VisitedTokens) { - auto Res = VisitedTokens.

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Sam McCall via cfe-commits
@@ -172,27 +179,33 @@ bool DataflowAnalysisContext::equivalentFormulas(const Formula &Val1, } void DataflowAnalysisContext::addTransitiveFlowConditionConstraints( -Atom Token, llvm::SetVector &Constraints, -llvm::DenseSet &VisitedTokens) { - auto Res = VisitedTokens.

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-13 Thread Sam McCall via cfe-commits
@@ -108,6 +108,16 @@ class DataflowAnalysisContext { /// A null `PointeeType` can be used for the pointee of `std::nullptr_t`. PointerValue &getOrCreateNullPointerValue(QualType PointeeType); + /// Adds `Constraint` to current and future flow conditions in this context. +

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Gábor Horváth via cfe-commits
@@ -108,6 +108,16 @@ class DataflowAnalysisContext { /// A null `PointeeType` can be used for the pointee of `std::nullptr_t`. PointerValue &getOrCreateNullPointerValue(QualType PointeeType); + /// Adds `Constraint` to current and future flow conditions in this context. +

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Gábor Horváth via cfe-commits
@@ -150,7 +157,7 @@ bool DataflowAnalysisContext::flowConditionImplies(Atom Token, Constraints.insert(&arena().makeAtomRef(Token)); Constraints.insert(&arena().makeNot(Val)); llvm::DenseSet VisitedTokens; Xazax-hun wrote: Aren't these `VisitedTokens` lo

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Yitzhak Mandelbaum via cfe-commits
@@ -172,27 +179,33 @@ bool DataflowAnalysisContext::equivalentFormulas(const Formula &Val1, } void DataflowAnalysisContext::addTransitiveFlowConditionConstraints( -Atom Token, llvm::SetVector &Constraints, -llvm::DenseSet &VisitedTokens) { - auto Res = VisitedTokens.

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Yitzhak Mandelbaum via cfe-commits
@@ -172,27 +179,33 @@ bool DataflowAnalysisContext::equivalentFormulas(const Formula &Val1, } void DataflowAnalysisContext::addTransitiveFlowConditionConstraints( -Atom Token, llvm::SetVector &Constraints, -llvm::DenseSet &VisitedTokens) { - auto Res = VisitedTokens.

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall updated https://github.com/llvm/llvm-project/pull/65949: >From 1d765a3b22cd81d6739a20f2b2f7b68935773f2a Mon Sep 17 00:00:00 2001 From: Sam McCall Date: Mon, 11 Sep 2023 13:21:11 +0200 Subject: [PATCH 1/2] [dataflow] Add global condition to DataflowAnalysisContext

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand review_requested https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall review_requested https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall review_requested https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Changes This records facts that are not sensitive to the current flow condition, and should apply to all environments. The motivating case is recording information about where a Value originated, such as nullability: - we may see the same Value for m

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread via cfe-commits
https://github.com/llvmbot labeled https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread via cfe-commits
https://github.com/llvmbot labeled https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread via cfe-commits
https://github.com/llvmbot labeled https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall review_requested https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall review_requested https://github.com/llvm/llvm-project/pull/65949 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)

2023-09-11 Thread Sam McCall via cfe-commits
https://github.com/sam-mccall created https://github.com/llvm/llvm-project/pull/65949: This records facts that are not sensitive to the current flow condition, and should apply to all environments. The motivating case is recording information about where a Value originated, such as nullability: