Page MenuHomePhabricator

wyt (weiyi)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 7 2022, 3:20 AM (9 w, 2 d)

Recent Activity

Today

wyt committed rGd09d4bd66c86: [clang][dataflow] Don't crash when caller args are missing storage locations (authored by samestep).
[clang][dataflow] Don't crash when caller args are missing storage locations
Thu, Aug 11, 6:01 AM · Restricted Project, Restricted Project
wyt committed rGeb91fd5cbc69: [clang][dataflow] Analyze constructor bodies (authored by samestep).
[clang][dataflow] Analyze constructor bodies
Thu, Aug 11, 5:55 AM · Restricted Project, Restricted Project
wyt updated the summary of D131616: [clang][dataflow] Generalise match switch utility to other AST types and add a `CFGMatchSwitch` which currently handles `CFGStmt` and `CFGInitializer`..
Thu, Aug 11, 1:03 AM · Restricted Project, Restricted Project
wyt updated the summary of D131614: [clang][dataflow] Extend transfer functions for other `CFGElement`s.
Thu, Aug 11, 1:03 AM · Restricted Project, Restricted Project
wyt committed rG2cb51449f0d9: [clang][dataflow] Store DeclContext of block being analysed in Environment if… (authored by wyt).
[clang][dataflow] Store DeclContext of block being analysed in Environment if…
Thu, Aug 11, 12:42 AM · Restricted Project, Restricted Project
wyt closed D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..
Thu, Aug 11, 12:42 AM · Restricted Project, Restricted Project
wyt updated the diff for D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..

Initialise DeclCtx field with nullptr.

Thu, Aug 11, 12:31 AM · Restricted Project, Restricted Project
wyt reopened D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..
Thu, Aug 11, 12:30 AM · Restricted Project, Restricted Project

Yesterday

wyt updated the summary of D131616: [clang][dataflow] Generalise match switch utility to other AST types and add a `CFGMatchSwitch` which currently handles `CFGStmt` and `CFGInitializer`..
Wed, Aug 10, 1:16 PM · Restricted Project, Restricted Project
wyt updated the summary of D131614: [clang][dataflow] Extend transfer functions for other `CFGElement`s.
Wed, Aug 10, 1:16 PM · Restricted Project, Restricted Project
wyt requested review of D131616: [clang][dataflow] Generalise match switch utility to other AST types and add a `CFGMatchSwitch` which currently handles `CFGStmt` and `CFGInitializer`..
Wed, Aug 10, 1:09 PM · Restricted Project, Restricted Project
wyt requested review of D131614: [clang][dataflow] Extend transfer functions for other `CFGElement`s.
Wed, Aug 10, 1:04 PM · Restricted Project, Restricted Project
wyt committed rG8a4c40bfe8e6: [clang][dataflow] Store DeclContext of block being analysed in Environment if… (authored by wyt).
[clang][dataflow] Store DeclContext of block being analysed in Environment if…
Wed, Aug 10, 4:30 AM · Restricted Project, Restricted Project
wyt closed D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..
Wed, Aug 10, 4:30 AM · Restricted Project, Restricted Project
wyt updated the diff for D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..

Relocate function and fix comment for consistency.

Wed, Aug 10, 4:27 AM · Restricted Project, Restricted Project

Fri, Aug 5

wyt updated the diff for D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..

Rebase to head.

Fri, Aug 5, 6:19 AM · Restricted Project, Restricted Project

Wed, Aug 3

wyt added a reviewer for D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available.: samestep.
Wed, Aug 3, 7:50 AM · Restricted Project, Restricted Project
wyt updated the diff for D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..

Formatting fixes.

Wed, Aug 3, 7:49 AM · Restricted Project, Restricted Project
wyt updated the diff for D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..

Update DeclCtx when pushing/popping calls.

Wed, Aug 3, 7:40 AM · Restricted Project, Restricted Project
wyt updated the summary of D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..
Wed, Aug 3, 4:18 AM · Restricted Project, Restricted Project
wyt requested review of D131065: [clang][dataflow] Store DeclContext of block being analysed in Environment if available..
Wed, Aug 3, 4:09 AM · Restricted Project, Restricted Project

Tue, Jul 26

wyt accepted D130519: [clang][dataflow] Add explicit "AST" nodes for implications and iff.
Tue, Jul 26, 1:48 AM · Restricted Project, Restricted Project

Wed, Jul 13

wyt committed rGb8d83e8004e4: [clang][dataflow] Generate readable form of input and output of satisfiability… (authored by wyt).
[clang][dataflow] Generate readable form of input and output of satisfiability…
Wed, Jul 13, 4:59 AM · Restricted Project, Restricted Project
wyt closed D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..
Wed, Jul 13, 4:59 AM · Restricted Project, Restricted Project
wyt committed rG3ec2b2f4ec32: [clang][dataflow] Rename `Status` field in a `Solver::Result` struct to… (authored by wyt).
[clang][dataflow] Rename `Status` field in a `Solver::Result` struct to…
Wed, Jul 13, 4:41 AM · Restricted Project, Restricted Project
wyt closed D129568: [clang][dataflow] Rename `Status` field in a `Solver::Result` struct to `SATCheckStatus`..
Wed, Jul 13, 4:41 AM · Restricted Project, Restricted Project
wyt committed rGc9666d2339e5: [clang][dataflow] Generate readable form of boolean values. (authored by wyt).
[clang][dataflow] Generate readable form of boolean values.
Wed, Jul 13, 3:36 AM · Restricted Project, Restricted Project, Restricted Project
wyt committed rG1e9cd04d7ba6: [clang][dataflow] Refactor boolean creation as a test utility. (authored by wyt).
[clang][dataflow] Refactor boolean creation as a test utility.
Wed, Jul 13, 3:36 AM · Restricted Project, Restricted Project
wyt closed D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..
Wed, Jul 13, 3:35 AM · Restricted Project, Restricted Project, Restricted Project
wyt committed rG632de855a042: [clang][dataflow] Refactor boolean creation as a test utility. (authored by wyt).
[clang][dataflow] Refactor boolean creation as a test utility.
Wed, Jul 13, 3:15 AM · Restricted Project, Restricted Project
wyt closed D129546: [clang][dataflow] Refactor boolean creation as a test utility..
Wed, Jul 13, 3:15 AM · Restricted Project, Restricted Project

Tue, Jul 12

wyt updated the diff for D129546: [clang][dataflow] Refactor boolean creation as a test utility..

Removed unused imports in SolverTest.cpp

Tue, Jul 12, 11:47 AM · Restricted Project, Restricted Project
wyt added a comment to D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..
Tue, Jul 12, 11:44 AM · Restricted Project, Restricted Project
wyt updated the diff for D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..

Address comments.

Tue, Jul 12, 11:39 AM · Restricted Project, Restricted Project
wyt updated the diff for D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..

Address comment on renaming parameter. Add const qualifier to BoolValue input to debugString.

Tue, Jul 12, 11:38 AM · Restricted Project, Restricted Project, Restricted Project
wyt updated the diff for D129546: [clang][dataflow] Refactor boolean creation as a test utility..

Address comments: add used import, remove unused imports.

Tue, Jul 12, 11:36 AM · Restricted Project, Restricted Project

Jul 12 2022

wyt updated the diff for D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..

Change propagated from parent patch.

Jul 12 2022, 9:13 AM · Restricted Project, Restricted Project
wyt updated the diff for D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..

Move DebugStringGenerator class into anonymous namespace.

Jul 12 2022, 9:12 AM · Restricted Project, Restricted Project, Restricted Project
wyt updated the summary of D129568: [clang][dataflow] Rename `Status` field in a `Solver::Result` struct to `SATCheckStatus`..
Jul 12 2022, 8:53 AM · Restricted Project, Restricted Project
wyt updated the diff for D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..

Remove unnecessary enum keyword.

Jul 12 2022, 8:52 AM · Restricted Project, Restricted Project
wyt requested review of D129568: [clang][dataflow] Rename `Status` field in a `Solver::Result` struct to `SATCheckStatus`..
Jul 12 2022, 8:51 AM · Restricted Project, Restricted Project
wyt updated the diff for D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..

Fix use after move.

Jul 12 2022, 8:50 AM · Restricted Project, Restricted Project, Restricted Project
wyt updated the diff for D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..

Fix comment, remove unused import.

Jul 12 2022, 8:02 AM · Restricted Project, Restricted Project
wyt updated the diff for D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..

Address comments.

Jul 12 2022, 7:47 AM · Restricted Project, Restricted Project
wyt updated the diff for D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..

Address comments.

Jul 12 2022, 7:46 AM · Restricted Project, Restricted Project, Restricted Project
wyt updated the diff for D129546: [clang][dataflow] Refactor boolean creation as a test utility..

Address comments on renaming. Removed test fixture class, replacing TEST_F with TEST.

Jul 12 2022, 7:45 AM · Restricted Project, Restricted Project
wyt updated the summary of D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..
Jul 12 2022, 6:07 AM · Restricted Project, Restricted Project
wyt updated the summary of D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..
Jul 12 2022, 6:07 AM · Restricted Project, Restricted Project
wyt added reviewers for D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes.: hlopko, gribozavr2, sgatev, ymandel, xazax.hun.
Jul 12 2022, 5:12 AM · Restricted Project, Restricted Project
wyt updated the summary of D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..
Jul 12 2022, 5:12 AM · Restricted Project, Restricted Project, Restricted Project
wyt added reviewers for D129546: [clang][dataflow] Refactor boolean creation as a test utility.: hlopko, gribozavr2, sgatev, ymandel, xazax.hun.
Jul 12 2022, 5:11 AM · Restricted Project, Restricted Project
wyt updated the diff for D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..

Use std::vector as input to debugString to maintain order stability of boolean constraints to enable testing. debugString which takes a llvm::DenseSet<BoolValue*> is now a wrapper around the logic applied to std::vector.

Jul 12 2022, 5:07 AM · Restricted Project, Restricted Project
wyt updated the diff for D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..

Minor fixes.

Jul 12 2022, 5:03 AM · Restricted Project, Restricted Project, Restricted Project
wyt updated the diff for D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..

Extract recursion into boolean subvalues into separate statements to enforce order of evaluation.

Jul 12 2022, 3:26 AM · Restricted Project, Restricted Project, Restricted Project
wyt removed a reviewer for D129546: [clang][dataflow] Refactor boolean creation as a test utility.: hlopko.
Jul 12 2022, 2:27 AM · Restricted Project, Restricted Project
wyt updated the summary of D129546: [clang][dataflow] Refactor boolean creation as a test utility..
Jul 12 2022, 2:26 AM · Restricted Project, Restricted Project
wyt retitled D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes. from [clang][dataflow] Generate readable form of boolean values. to [clang][dataflow] Generate readable form of boolean values for debugging purposes..
Jul 12 2022, 2:26 AM · Restricted Project, Restricted Project, Restricted Project
wyt retitled D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes. from [clang][dataflow] Generate readable form of input and output of satisfiability checking. to [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..
Jul 12 2022, 2:26 AM · Restricted Project, Restricted Project
wyt updated the diff for D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..

Update CMakeList for DebugSupportTest.cpp

Jul 12 2022, 2:01 AM · Restricted Project, Restricted Project, Restricted Project
wyt requested review of D129548: [clang][dataflow] Generate readable form of input and output of satisfiability checking for debugging purposes..
Jul 12 2022, 1:49 AM · Restricted Project, Restricted Project
wyt requested review of D129547: [clang][dataflow] Generate readable form of boolean values for debugging purposes..
Jul 12 2022, 1:48 AM · Restricted Project, Restricted Project, Restricted Project
wyt requested review of D129546: [clang][dataflow] Refactor boolean creation as a test utility..
Jul 12 2022, 1:48 AM · Restricted Project, Restricted Project

Jul 7 2022

wyt committed rG81e6400d8c03: [clang][dataflow] Return a solution from the solver when `Constraints` are… (authored by wyt).
[clang][dataflow] Return a solution from the solver when `Constraints` are…
Jul 7 2022, 1:22 PM · Restricted Project, Restricted Project
wyt updated the diff for D129180: [clang][dataflow] Return a solution from the solver when `Constraints` are `Satisfiable`..

Remove decomposing declarations which are not available in llvm.

Jul 7 2022, 5:45 AM · Restricted Project, Restricted Project
wyt updated the diff for D129180: [clang][dataflow] Return a solution from the solver when `Constraints` are `Satisfiable`..

Replace std::optional with llvm::Optional

Jul 7 2022, 3:45 AM · Restricted Project, Restricted Project
wyt updated the diff for D129180: [clang][dataflow] Return a solution from the solver when `Constraints` are `Satisfiable`..

Fix comment.

Jul 7 2022, 3:23 AM · Restricted Project, Restricted Project
wyt updated the diff for D129180: [clang][dataflow] Return a solution from the solver when `Constraints` are `Satisfiable`..

Address comments.

Jul 7 2022, 3:17 AM · Restricted Project, Restricted Project
wyt updated the diff for D129180: [clang][dataflow] Return a solution from the solver when `Constraints` are `Satisfiable`..

Make scope resolution consistent (Solver:: instead of WatchedLiteralsSolver::).

Jul 7 2022, 2:42 AM · Restricted Project, Restricted Project
wyt updated the diff for D129180: [clang][dataflow] Return a solution from the solver when `Constraints` are `Satisfiable`..

Typo fix.

Jul 7 2022, 2:21 AM · Restricted Project, Restricted Project
wyt updated the diff for D129180: [clang][dataflow] Return a solution from the solver when `Constraints` are `Satisfiable`..

Address comments.

Jul 7 2022, 2:17 AM · Restricted Project, Restricted Project

Jul 6 2022

wyt updated the summary of D129180: [clang][dataflow] Return a solution from the solver when `Constraints` are `Satisfiable`..
Jul 6 2022, 2:49 AM · Restricted Project, Restricted Project
wyt requested review of D129180: [clang][dataflow] Return a solution from the solver when `Constraints` are `Satisfiable`..
Jul 6 2022, 2:42 AM · Restricted Project, Restricted Project

Jun 27 2022

wyt updated the diff for D128658: [clang][dataflow] Do not allow substitution of true/false boolean literals in `buildAndSubstituteFlowCondition`.

Add assert message.

Jun 27 2022, 11:45 AM · Restricted Project, Restricted Project
wyt updated the diff for D128659: [clang][dataflow] Add `buildAndSubstituteFlowCondition` to `DataflowEnvironment`.

Propagate change from parent patch.

Jun 27 2022, 11:31 AM · Restricted Project, Restricted Project
wyt updated the diff for D128658: [clang][dataflow] Do not allow substitution of true/false boolean literals in `buildAndSubstituteFlowCondition`.

Add macro for only testing asserts in debug mode.

Jun 27 2022, 11:29 AM · Restricted Project, Restricted Project
wyt retitled D128658: [clang][dataflow] Do not allow substitution of true/false boolean literals in `buildAndSubstituteFlowCondition` from [clang][dataflow] Ensure atomic boolean values representing true and false are not replaced in `buildAndSubstituteFlowCondition` to [clang][dataflow] Do not allow substitution of true/false boolean literals in `buildAndSubstituteFlowCondition`.
Jun 27 2022, 10:40 AM · Restricted Project, Restricted Project
wyt updated the diff for D128659: [clang][dataflow] Add `buildAndSubstituteFlowCondition` to `DataflowEnvironment`.

Fix comment.

Jun 27 2022, 10:39 AM · Restricted Project, Restricted Project
wyt updated the diff for D128658: [clang][dataflow] Do not allow substitution of true/false boolean literals in `buildAndSubstituteFlowCondition`.

Assert that user does not try to substitute true/false booleans.

Jun 27 2022, 10:38 AM · Restricted Project, Restricted Project
wyt added reviewers for D128659: [clang][dataflow] Add `buildAndSubstituteFlowCondition` to `DataflowEnvironment`: gribozavr2, hlopko.
Jun 27 2022, 8:58 AM · Restricted Project, Restricted Project
wyt added reviewers for D128658: [clang][dataflow] Do not allow substitution of true/false boolean literals in `buildAndSubstituteFlowCondition`: gribozavr2, hlopko, sgatev, ymandel, xazax.hun.
Jun 27 2022, 8:56 AM · Restricted Project, Restricted Project
wyt requested review of D128659: [clang][dataflow] Add `buildAndSubstituteFlowCondition` to `DataflowEnvironment`.
Jun 27 2022, 8:54 AM · Restricted Project, Restricted Project
wyt requested review of D128658: [clang][dataflow] Do not allow substitution of true/false boolean literals in `buildAndSubstituteFlowCondition`.
Jun 27 2022, 8:54 AM · Restricted Project, Restricted Project
wyt updated the diff for D128056: [clang][dataflow] Singleton pointer values for null pointers..

Address comments.

Jun 27 2022, 4:11 AM · Restricted Project, Restricted Project
wyt abandoned D127746: [clang][dataflow] Convert `PointeeLoc` of `PointerValue` from reference to pointer. .
Jun 27 2022, 2:48 AM · Restricted Project, Restricted Project
wyt updated the diff for D128359: [clang][dataflow] Move logic for `createStorageLocation` from `DataflowEnvironment` to `DataflowAnalysisContext`..

Fix comment.

Jun 27 2022, 1:35 AM · Restricted Project, Restricted Project
wyt updated the diff for D128363: [clang][dataflow] Implement functionality for flow condition variable substitution..

Address comments - add example to buildAndSubstituteFlowCondition doc comment, add tests for atomic and negated flow condition.

Jun 27 2022, 1:11 AM · Restricted Project, Restricted Project

Jun 24 2022

wyt updated the diff for D128521: [clang][dataflow] Implement functionality to compare if two boolean values are equivalent..

Propagate change from parent patch.

Jun 24 2022, 2:55 PM · Restricted Project, Restricted Project
wyt updated the diff for D128520: [clang][dataflow] Refactor function that queries the solver for satisfiability checking..

Rename checkUnsatisfiable to isUnsatisfiable

Jun 24 2022, 2:54 PM · Restricted Project, Restricted Project
wyt updated the diff for D128363: [clang][dataflow] Implement functionality for flow condition variable substitution..

Address comments.

Jun 24 2022, 10:03 AM · Restricted Project, Restricted Project
wyt updated the diff for D128521: [clang][dataflow] Implement functionality to compare if two boolean values are equivalent..

Rename createIff to getOrCreateIff based on change in parent patch.

Jun 24 2022, 7:58 AM · Restricted Project, Restricted Project
wyt updated the diff for D128519: [clang][dataflow] Move logic for creating implication and iff expressions into `DataflowAnalysisContext` from `DataflowEnvironment`..

Address comments - rename createIff/Implication to getOrCreateIff/Implication and add tests for these functions

Jun 24 2022, 7:56 AM · Restricted Project, Restricted Project
wyt added inline comments to D128521: [clang][dataflow] Implement functionality to compare if two boolean values are equivalent..
Jun 24 2022, 7:05 AM · Restricted Project, Restricted Project
wyt updated the diff for D128359: [clang][dataflow] Move logic for `createStorageLocation` from `DataflowEnvironment` to `DataflowAnalysisContext`..

Fix comment.

Jun 24 2022, 6:46 AM · Restricted Project, Restricted Project
wyt added a comment to D128363: [clang][dataflow] Implement functionality for flow condition variable substitution..

@xazax.hun

Could you elaborate on why do we need this?

We are currently working on a pointer nullability analysis here: https://github.com/google/crubit/tree/main/nullability_verification.
One of the things we are trying to do is to check if the flow condition is independent of a variable, done by checking if the formula regardless if the variable is substituted to true or false - requiring buildAndSubstituteFlowCondition.

Jun 24 2022, 6:32 AM · Restricted Project, Restricted Project
wyt added reviewers for D128520: [clang][dataflow] Refactor function that queries the solver for satisfiability checking.: gribozavr2, hlopko, sgatev, ymandel, xazax.hun.
Jun 24 2022, 6:11 AM · Restricted Project, Restricted Project
wyt added reviewers for D128519: [clang][dataflow] Move logic for creating implication and iff expressions into `DataflowAnalysisContext` from `DataflowEnvironment`.: gribozavr2, hlopko, sgatev, ymandel, xazax.hun.
Jun 24 2022, 6:10 AM · Restricted Project, Restricted Project
wyt updated the summary of D128521: [clang][dataflow] Implement functionality to compare if two boolean values are equivalent..
Jun 24 2022, 6:08 AM · Restricted Project, Restricted Project
wyt added inline comments to D128056: [clang][dataflow] Singleton pointer values for null pointers..
Jun 24 2022, 6:05 AM · Restricted Project, Restricted Project
wyt updated the diff for D128056: [clang][dataflow] Singleton pointer values for null pointers..

Address comments.

Jun 24 2022, 6:00 AM · Restricted Project, Restricted Project
wyt updated the diff for D128359: [clang][dataflow] Move logic for `createStorageLocation` from `DataflowEnvironment` to `DataflowAnalysisContext`..

Address comments.

Jun 24 2022, 5:57 AM · Restricted Project, Restricted Project