Jeroen Ketema
|
64004926bc
|
C++: Use a more declarative predicate name
|
2023-10-26 12:07:19 +02:00 |
|
Jeroen Ketema
|
903f376620
|
C++: Define an extractor version table and use in IR generation
|
2023-10-26 12:07:19 +02:00 |
|
Mathias Vorreiter Pedersen
|
1fce26534f
|
C++: Remove implied conjunct.
|
2023-10-24 09:25:32 +01:00 |
|
Mathias Vorreiter Pedersen
|
67ed12c916
|
C++: Correctly model that 'operator->', and 'get'
on smart pointers perform a load.
|
2023-10-23 20:11:23 +01:00 |
|
Mathias Vorreiter Pedersen
|
b107c4c641
|
C++: Fix missing result in 'ModelUtil'. The problem was that 'n.asInstruction()' on line 81 wasn't necessarily a 'CallInstruction' (it could be a conversion).
|
2023-10-23 19:34:25 +01:00 |
|
Mathias Vorreiter Pedersen
|
0ab159f803
|
Merge pull request #14135 from github/sashabu/frontend-update
C++: Update for changes in frontend.
|
2023-10-19 11:40:24 +01:00 |
|
Jeroen Ketema
|
5036135f01
|
C++: Fix IR generation for the comma operator
|
2023-10-19 10:45:13 +02:00 |
|
Jeroen Ketema
|
3202bcce70
|
C++: Handle ternary operators whose value category is a prvalue with a load
|
2023-10-19 10:45:12 +02:00 |
|
Jeroen Ketema
|
c60cb136bb
|
C++: Do not generate loads for ParenthesisExprs
|
2023-10-19 10:45:12 +02:00 |
|
Jeroen Ketema
|
4339e18ed6
|
C++: Update IR generation for changes in frontend
|
2023-10-19 10:45:12 +02:00 |
|
Mathias Vorreiter Pedersen
|
26a665369b
|
C++: Add QLDoc.
|
2023-10-16 14:15:55 +01:00 |
|
Mathias Vorreiter Pedersen
|
140ff537c0
|
C++: Split 'defaultViableCallable' and 'viableCallable'.
|
2023-10-13 15:47:02 +01:00 |
|
Mathias Vorreiter Pedersen
|
6865ce56bc
|
C++: Add an abstract class that can be used to extend 'viableCallable'.
|
2023-10-12 10:35:36 +01:00 |
|
Mathias Vorreiter Pedersen
|
512c10ec59
|
C++: Use the fully converted expression when converting models to dataflow nodes.
|
2023-10-10 16:45:25 +01:00 |
|
Erik Krogh Kristensen
|
4489e2bf28
|
Merge pull request #14403 from erik-krogh/dDEps
All: delete outdated deprecations
|
2023-10-09 21:04:55 +02:00 |
|
Mathias Vorreiter Pedersen
|
a1d417d8b6
|
Merge pull request #14385 from alexet/ir-debug-perf
CPP: Improve performance of IR debugging
|
2023-10-09 11:21:03 +02:00 |
|
erik-krogh
|
4bc4e0845d
|
delete the deprecated isBarrierGuard predicate from the shared dataflow library, and its uses
|
2023-10-07 21:48:49 +02:00 |
|
Mathias Vorreiter Pedersen
|
eb3f1967a5
|
Merge pull request #14365 from MathiasVP/disable-flow-through-pointer-arith-for-size
C++: Disable size-flow through pointer arithmetics in `cpp/invalid-pointer-deref`
|
2023-10-06 10:14:31 +02:00 |
|
Alex Eyers-Taylor
|
c79ec8c37a
|
CPP: Improve performance of IR debugging
|
2023-10-05 17:35:52 +01:00 |
|
Mathias Vorreiter Pedersen
|
20900dafc0
|
C++: Handle reverse flow when 'nodeTo' is an instruction.
|
2023-10-05 16:28:57 +02:00 |
|
Mathias Vorreiter Pedersen
|
75c74d50f9
|
C++: Use 'unique' in 'hasIRRepresentationOfIndirectInstruction' similar to how it's done in 'hasIRRepresentationOfIndirectOperand'.
|
2023-10-04 19:00:33 +02:00 |
|
Henry Mercer
|
f3847b3f51
|
Merge branch 'main' into henrymercer/rc-3.11-mergeback
|
2023-10-03 16:30:23 +01:00 |
|
Mathias Vorreiter Pedersen
|
57d3f3f482
|
C++: Actually propagate the 'isBarrier1' or 'isBarrier2' predicates to the dataflow configurations.
|
2023-10-03 15:58:24 +02:00 |
|
Asger F
|
0d96ed8aee
|
Merge pull request #14305 from asgerf/shared/flow-state-inout-barriers
Shared: add in/out barriers with flow state
|
2023-09-28 11:07:23 +02:00 |
|
Asger F
|
d501856519
|
Update DataFlowImpl.qll copies
|
2023-09-25 10:05:29 +02:00 |
|
Anders Schack-Mulligen
|
ae278fcad7
|
C++: Fix import conflict.
|
2023-09-22 15:06:21 +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
|
13f7daf71e
|
Merge pull request #13982 from aschackmull/dataflow/typeflow-calledge-pruning
Dataflow: Add type-based call-edge pruning.
|
2023-09-21 13:33:08 +02:00 |
|
Mathias Vorreiter Pedersen
|
22d66b6d81
|
Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll
|
2023-09-20 09:56:10 +01:00 |
|
Mathias Vorreiter Pedersen
|
fb1ce2ab70
|
C++: Lift 'getParameter' to 'ParameterNode'.
|
2023-09-20 09:51:35 +01:00 |
|
Geoffrey White
|
a3579f6e38
|
Merge branch 'main' into typos
|
2023-09-19 16:44:13 +01:00 |
|
Geoffrey White
|
8a0e202b63
|
CPP: Fix typos.
|
2023-09-19 15:18:03 +01:00 |
|
Mathias Vorreiter Pedersen
|
d2e66a1186
|
C++: Ignore addresses of 'InitializeDynamicAllocationInstruction' in 'unique' when converting between instructions and expression in dataflow.
|
2023-09-18 17:55:19 +01:00 |
|
Mathias Vorreiter Pedersen
|
38b100531b
|
C++: Only add conversion when necessary.
|
2023-09-18 11:46:11 +01:00 |
|
Mathias Vorreiter Pedersen
|
36b7b6cffe
|
C++: Fix phi-phi flow.
|
2023-09-14 14:02:03 +01:00 |
|
Mathias Vorreiter Pedersen
|
18fa6f5d64
|
Merge pull request #14202 from alexet/translated-element-location
CPP: Add a location to TranslatedElement to help with debugging IR creation
|
2023-09-13 15:19:24 +01:00 |
|
Anders Schack-Mulligen
|
f5a4b792bd
|
C++/Go/Python/Ruby/Swift: Add dummy localMustFlowStep.
|
2023-09-13 15:43:46 +02:00 |
|
Alex Eyers-Taylor
|
0c10fa0c87
|
CPP: Add a location to TranslatedElement to help with debugging IR creation
|
2023-09-13 12:21:30 +01:00 |
|
Mathias Vorreiter Pedersen
|
b03054b1ed
|
C++: Make sure some instruction also gives back the 'ParenthesisExpr's.
|
2023-09-12 19:46:42 +01:00 |
|
Mathias Vorreiter Pedersen
|
7d2c12e63d
|
C++: Handle the extent of 'new[]' in 'getConvertedResultExpressionImpl0' and add a few more comments.
|
2023-09-12 10:28:36 +01:00 |
|
Mathias Vorreiter Pedersen
|
becb469477
|
Merge branch 'main' into deduplicate-dataflow-results-take-3
|
2023-09-11 09:55:11 +01:00 |
|
Mathias Vorreiter Pedersen
|
7ff4ebd912
|
Merge pull request #14102 from alexet/alexet/remove-unreachable-ir
CPP: Remove sucessors of non-returning IR calls transitively.
|
2023-09-09 14:48:26 +01:00 |
|
Mathias Vorreiter Pedersen
|
0be61be07a
|
C++: Handle flow out of post-update nodes when there's another use of the variable in the call that we need to skip.
|
2023-09-08 17:07:26 +01:00 |
|
Alex Eyers-Taylor
|
5fe44b65b7
|
CPP: Avoid CP with edgekind in non-returning analysis
|
2023-09-08 16:55:06 +01:00 |
|
Mathias Vorreiter Pedersen
|
32ed82eecc
|
Merge pull request #14154 from MathiasVP/fix-off-by-one-in-asDefiningArgument
|
2023-09-07 18:48:57 +01:00 |
|
Alex Eyers-Taylor
|
b44c4587a4
|
CPP: Remove sucessors of non-returning IR calls.
|
2023-09-07 12:58:20 +01:00 |
|
Alex Eyers-Taylor
|
d603b7ac3c
|
CPP: Make functions that reach the end return.
This is UB in C++ but not C where it is only bad if the result is used.
|
2023-09-07 12:39:48 +01:00 |
|
Mathias Vorreiter Pedersen
|
14faa5d020
|
C++: Fix off-by-one in 'asDefiningArgument' so that the domain of the argument is '[1..]' like 'asIndirectArgument'.
|
2023-09-06 17:19:44 +01:00 |
|
Mathias Vorreiter Pedersen
|
2bed77de09
|
Merge branch 'main' into deduplicate-dataflow-results-take-3
|
2023-09-06 14:12:36 +01:00 |
|
Alex Eyers-Taylor
|
3db384ddc3
|
CPP: Handle globals flowing into "UnreacheachedInstruction"
|
2023-09-05 11:50:32 +01:00 |
|