Kasper Svendsen
c207cfdeb7
Overlay: Add overlay annotations to Java & shared libraries
2025-06-24 10:25:06 +02:00
Anders Schack-Mulligen
db01828717
Java: Deprecate redundant basic block predicates.
2025-05-21 09:01:46 +02:00
Tom Hvitved
75137a0f4c
Java: Adopt shared SSA library
2025-02-11 10:06:43 +01:00
Owen Mansel-Chan
0f3dd6d8f1
Java: IPA the CFG
2024-12-10 15:26:11 +00:00
Michael Nebel
2033818e39
Java: Use the shared model generator implementation.
2024-09-19 12:20:51 +02:00
Anders Schack-Mulligen
20661a3c56
Java: Fix support for variable capture inside object initializers.
2024-09-17 10:42:21 +02:00
Anders Schack-Mulligen
7a48fe1102
Dataflow: Replace ppReprType with DataFlowType.toString.
2024-07-25 13:08:47 +02:00
Anders Schack-Mulligen
12d6875cc4
Java: Replace the MaD Object.clone() models with a non-aliasing value step.
2024-07-16 11:11:50 +02:00
Anders Schack-Mulligen
da5abc8321
Dataflow: Replace MakeSets with QlBuiltins::InternSets.
2024-07-15 13:35:57 +02:00
Tom Hvitved
4ae8720930
SSA: Add BasicBlock.{getNode/1,length/0} to the input signature
2024-07-03 11:32:35 +02:00
Anders Schack-Mulligen
8c23e21073
Dataflow: Cache compatibleTypes.
2024-06-24 13:35:48 +02:00
Anders Schack-Mulligen
b47831af14
Java: Calculate 2nd level scopes for implicit instance accesses.
2024-06-13 13:57:18 +02:00
Anders Schack-Mulligen
5a259843bb
Dataflow: Switch call context to a set representation.
2024-05-27 11:01:52 +02:00
Anders Schack-Mulligen
bc8ca1af86
Dataflow: Introduce NodeRegions for use in isUnreachableInCall.
2024-05-27 11:01:51 +02:00
Anders Schack-Mulligen
bf3dbc24de
Java: Add support for flow through side-effects on static fields.
2024-05-23 12:57:57 +02:00
Anders Schack-Mulligen
3c69f8f607
Java: Count second level scopes for fieldFlowBranchLimit.
2024-04-15 15:17:43 +02:00
Anders Schack-Mulligen
2f0987e980
Dataflow: Add dummy DataFlowSecondLevelScope implementations.
...
These could be an empty type, but Unit was available and it probably
doesn't matter.
2024-04-15 15:16:30 +02:00
Anders Schack-Mulligen
2925e45434
Java/Dataflow: Propagate MaD-id/model-id to PathGraph.
2024-04-12 09:19:51 +02:00
Tom Hvitved
1ea7717714
Capture flow: Take overwrites in nested scopes into account
2024-02-09 14:49:23 +01:00
Tom Hvitved
f9dbf676a6
Java: Use FlowSummaryImpl from dataflow pack
2023-12-10 11:25:45 +01:00
Chris Smowton
da62a04653
Note that binding variables may be casting nodes
2023-11-30 11:24:04 +00:00
Chris Smowton
d40311efe9
Spelling
2023-11-30 11:24:03 +00:00
Chris Smowton
cc373e322f
Engineer join order for getLexicallyOrderedRecordField
2023-11-30 11:24:03 +00:00
Chris Smowton
11444a3ae7
Rename Pattern to PatternExpr to avoid clashing with Regex::Pattern
2023-11-30 11:24:01 +00:00
Chris Smowton
20b97af02f
Implement dataflow for record patterns
...
Strategy: there is now a regular flow step from an instance-of LHS / switch expr to the pattern, 0 or more read steps corresponding to record pattern destructors, and then finally a normal SSA def/use step connecting the binding patterns to their first uses.
2023-11-30 11:24:00 +00:00
Tom Hvitved
1a6886cf99
SSA: Add locations to ease debugging
2023-11-22 08:37:02 +01:00
Chris Smowton
ac38d4c9c6
Mass rename L/RValue -> VarWrite/Read
2023-10-24 10:58:29 +01:00
Chris Smowton
f552a15aae
Mass-rename MethodAccess -> MethodCall
2023-10-24 10:30:26 +01:00
Anders Schack-Mulligen
e6d832c7e5
Merge pull request #14297 from aschackmull/java/additional-steps-and-nodes
...
Java: Add support for additional nodes, read steps, and store steps for QL models and model ThreadLocal.initialValue
2023-09-26 14:50:37 +02:00
Anders Schack-Mulligen
66da997b7b
Dataflow: Make use of defaults for language-specific hooks.
2023-09-22 14:54:22 +02:00
Anders Schack-Mulligen
9f905497a5
Java: Add support for additional read and store steps and additional nodes.
2023-09-21 15:05:30 +02:00
Anders Schack-Mulligen
c8094d34a7
Dataflow: Add type-based call-edge pruning.
2023-09-13 15:43:45 +02:00
Tom Hvitved
73370e7282
Merge pull request #14100 from hvitved/dataflow/consistency-pack
...
Data flow: Add consistency checks to shared ql pack
2023-08-31 11:47:40 +02:00
Tom Hvitved
fefe64bf0c
Java: Use data flow consistency checks from shared pack
2023-08-30 15:29:41 +02:00
Asger F
d4cfa8c2b8
Java: autoformatting changes
2023-08-28 15:35:06 +02:00
Asger F
d2fe4d235a
Java: Inline VariableWrite.getSource()
2023-08-28 15:34:48 +02:00
Asger F
f17518ace2
Java: update to reflect changes in VariableCapture.qll
2023-08-24 14:06:44 +02:00
Anders Schack-Mulligen
9d59f50340
Java: Review fixes.
2023-08-08 13:37:40 +02:00
Anders Schack-Mulligen
84316c41a3
Java: Add more qldoc.
2023-08-03 10:04:06 +02:00
Anders Schack-Mulligen
c5990311ca
Java: Redesign and reimplement variable capture flow.
2023-08-03 10:04:06 +02:00
Anders Schack-Mulligen
d1a616a70a
Java: Add proper support for variable capture flow.
2023-08-03 10:04:02 +02:00
Anders Schack-Mulligen
c34c667e6b
Java: Adjust to use the qlpack data-flow api.
2023-08-01 13:47:09 +02:00
Tony Torralba
b8b38e4bbe
Java: Allow flow out of FieldValueNodes for non-static fields
2023-07-25 15:37:41 +02:00
Owen Mansel-Chan
3ff6d033d3
Rename to neverSkipInPathGraph
2023-06-14 15:29:54 +01:00
Owen Mansel-Chan
5f72ce0935
Add stub implementations of flowCheckNodeSpecific
2023-06-14 14:46:35 +01:00
Anders Schack-Mulligen
254d60c826
Dataflow: Refactor FlowSummaryImpl to synthesize nodes independently from DataFlow::Node.
2023-06-09 15:27:17 +02:00
Anders Schack-Mulligen
4633abe19e
Java: Autoformat
2023-06-09 08:37:35 +02:00
Anders Schack-Mulligen
ad461a87b4
Dataflow: Strengthen tracked types.
2023-06-09 08:37:35 +02:00
Anders Schack-Mulligen
97cd3b8576
Java: Force high precision for MapValueContent.
2023-05-02 11:19:21 +02:00
Mathias Vorreiter Pedersen
92ad099c1b
DataFlow: Remove bindingsets, remove the call column, and swap parameter and argument columns.
2023-03-06 13:47:59 +00:00