Commit Graph

146 Commits

Author SHA1 Message Date
Mathias Vorreiter Pedersen
efee104f3d PS: Generalize the current ReturnContainer computation. 2024-10-14 20:06:46 +01:00
Mathias Vorreiter Pedersen
1b454ed3e1 PS: add tests and accept test changes. 2024-10-14 18:14:52 +01:00
Mathias Vorreiter Pedersen
0aa6670247 PS: Model underscore parameters as pipeline parameters. 2024-10-14 18:14:50 +01:00
Mathias Vorreiter Pedersen
a0e17ee37b PS: Implicitly read any element content at sinks when doing taint flow. 2024-10-14 18:14:47 +01:00
Mathias Vorreiter Pedersen
1ec0f53a18 PS: Don't perform store steps and (and index removal, and all the othe complex return business) when there is only a single returned expression. 2024-10-14 18:14:45 +01:00
Mathias Vorreiter Pedersen
b2225fe7b5 PS: Drive-by performance fix: Don't generate N store steps when storing into an unknown index. 2024-10-14 18:14:43 +01:00
Mathias Vorreiter Pedersen
01a556e583 PS: Ensure the constants 0 .. 10 always exists. 2024-10-14 18:14:42 +01:00
Mathias Vorreiter Pedersen
51269633b0 PS: Pipeline flow. 2024-10-14 18:14:40 +01:00
Mathias Vorreiter Pedersen
cc995b1059 PS: Generalize getARead. 2024-10-14 18:14:38 +01:00
Mathias Vorreiter Pedersen
950a10be90 PS: Fix CFG ordering on CmdExpr. 2024-10-14 18:14:35 +01:00
Mathias Vorreiter Pedersen
830bf57d3a PS: Pipeline parameter and argument positions. 2024-10-14 18:14:33 +01:00
Mathias Vorreiter Pedersen
cbf9496202 PS: Helper predicates and classes. 2024-10-14 18:14:31 +01:00
Mathias Vorreiter Pedersen
3c19578e89 PS: Hide the new nodes and enure that we still show the old return node. 2024-10-14 18:14:28 +01:00
Mathias Vorreiter Pedersen
93a48646e6 PS: Accept test changes. 2024-10-14 18:14:26 +01:00
Mathias Vorreiter Pedersen
6797f8f729 PS: Add flow into, and out of, the new implicit unwrapping nodes. 2024-10-14 18:14:23 +01:00
Mathias Vorreiter Pedersen
15a22e5746 PS: Make the new return node an acual return node. 2024-10-14 18:14:21 +01:00
Mathias Vorreiter Pedersen
91a6dce01b PS: Add read step when we need unwrapping. 2024-10-14 18:14:17 +01:00
Mathias Vorreiter Pedersen
ea2f155a1f PS: Add two new kinds of nodes: A node that represents implicit unwrapping and a new node to hold the final return value of a function. 2024-10-14 16:51:55 +01:00
Mathias Vorreiter Pedersen
706eff2b14 PS: Us control-flow nodes in 'ReturnContainer' instead of dataflow nodes. 2024-10-11 11:59:44 +01:00
Mathias Vorreiter Pedersen
76bd4150b4 PS: Drive-by fix: '' is the same thing as '' 2024-10-11 11:17:37 +01:00
Mathias Vorreiter Pedersen
1527479518 PS: Accept test changes. 2024-10-09 19:29:04 +01:00
Mathias Vorreiter Pedersen
a6b256371f PS: Add return and out nodes. 2024-10-09 19:29:03 +01:00
Mathias Vorreiter Pedersen
54521ad54d PS: Add a 'CallNode' helper class. 2024-10-09 19:29:02 +01:00
Mathias Vorreiter Pedersen
b34e36984d PS: Add failing tests. 2024-10-09 19:29:01 +01:00
Mathias Vorreiter Pedersen
31f232d205 PS: Accept test changes. 2024-10-08 18:57:16 +01:00
Mathias Vorreiter Pedersen
7eb98c1122 PS: Add an emptiness successor to get rid of CFG inconsistencies. 2024-10-08 18:57:00 +01:00
Mathias Vorreiter Pedersen
7ef8bfa8d7 PS: Don't interpret Cfg.ql as a graph. 2024-10-08 15:45:01 +01:00
Mathias Vorreiter Pedersen
6557081a96 PS: Accept test changes. 2024-10-08 15:39:10 +01:00
Mathias Vorreiter Pedersen
892b038565 PS: Support missing elements in for statements. 2024-10-08 15:38:46 +01:00
Mathias Vorreiter Pedersen
fb8d67f64f PS: Accept test changes. 2024-10-08 15:20:39 +01:00
Mathias Vorreiter Pedersen
455e56d804 PS: Support 'this' as a parameter in SSA and dataflow. 2024-10-08 15:20:36 +01:00
Mathias Vorreiter Pedersen
61d5f4412c PS: AST support for 'this'. 2024-10-08 15:20:33 +01:00
Mathias Vorreiter Pedersen
a429485b56 PS: Create an internal class to model 'Arguments'. 2024-10-08 15:20:31 +01:00
Mathias Vorreiter Pedersen
597147be71 PS: Refactor the way we do 'internal' AST related classes. 2024-10-08 15:20:29 +01:00
Mathias Vorreiter Pedersen
ca1c9120b5 PS: Add test with missing flow. 2024-10-08 15:20:27 +01:00
Mathias Vorreiter Pedersen
68b74f8af2 PS: Accept changes that hadn't been accepted before. 2024-10-08 15:20:24 +01:00
Mathias Vorreiter Pedersen
494ef7a44c PS: Fix missing flow. 2024-10-04 20:08:20 +01:00
Mathias Vorreiter Pedersen
4d8809a808 PS: Add another class of missing flow. 2024-10-04 20:06:22 +01:00
Mathias Vorreiter Pedersen
1de38e2cbc PS: Accept test changes. 2024-10-04 19:48:44 +01:00
Mathias Vorreiter Pedersen
3c80652b91 PS: Autoformat and silence 'unused paramter' warning. 2024-10-04 19:33:29 +01:00
Mathias Vorreiter Pedersen
cbfd0b363b PS: Add element content flow for reads and writes into arrays. 2024-10-04 19:33:28 +01:00
Mathias Vorreiter Pedersen
1f558a0b7f PS: Add CFG classes for array literals. 2024-10-04 19:33:27 +01:00
Mathias Vorreiter Pedersen
28b654df46 PS: Add helper clases for index expression. 2024-10-04 19:33:26 +01:00
Mathias Vorreiter Pedersen
22e508b85b PS: Introduce a class for constant values. 2024-10-04 19:33:23 +01:00
Mathias Vorreiter Pedersen
820f4b2575 PS: Add tests with arrays. 2024-10-04 19:33:22 +01:00
Mathias Vorreiter Pedersen
b622e09fe7 PS: Accept test changes. 2024-10-03 19:43:55 +01:00
Mathias Vorreiter Pedersen
e38f6301a6 PS: Also support type tracking of objects constructed with New-Object. 2024-10-03 19:43:54 +01:00
Mathias Vorreiter Pedersen
32f7f1b7e4 PS: Merge the non-member function and member function classes. Also rename member function to 'Method' since that's the name used by Powershell documentation. 2024-10-03 19:43:51 +01:00
Mathias Vorreiter Pedersen
5103d34dbf PS: Add tests. 2024-10-03 19:07:21 +01:00
Mathias Vorreiter Pedersen
bcbb1bbce0 PS: Accept tests. 2024-10-03 11:25:26 +01:00