Anders Schack-Mulligen
|
353d5f82a6
|
Merge pull request #12984 from aschackmull/dataflow/instanceof-node
Dataflow: Replace "extends Node" with "instanceof Node".
|
2023-05-02 13:52:33 +02:00 |
|
Mathias Vorreiter Pedersen
|
ab67103e6e
|
Merge pull request #12966 from MathiasVP/dataflow-for-static-vars
C++: Dataflow for static local variables
|
2023-05-02 11:52:43 +01:00 |
|
github-actions[bot]
|
18d4af994d
|
Post-release preparation for codeql-cli-2.13.1
|
2023-05-02 10:50:20 +00:00 |
|
Anders Schack-Mulligen
|
ca09649679
|
Dataflow: Forward hasLocationInfo.
|
2023-05-02 10:48:32 +02:00 |
|
Mathias Vorreiter Pedersen
|
fbc872cf1d
|
Update cpp/ql/lib/change-notes/2023-04-28-static-local-dataflow.md
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
|
2023-05-02 09:07:57 +01:00 |
|
Anders Schack-Mulligen
|
5927bb2030
|
Dataflow: Replace "extends Node" with "instanceof Node".
|
2023-05-02 09:48:34 +02:00 |
|
Robert Marsh
|
c6e0ee2695
|
C++: fix duplicated UnreachedInstruction in raw IR
|
2023-05-01 22:54:37 -04:00 |
|
Robert Marsh
|
6dfc59874b
|
C++: more UnreachedInstruction fixes
|
2023-05-01 22:25:18 -04:00 |
|
Robert Marsh
|
7f12f6dc3e
|
C++/C#: format and sync identical files
|
2023-05-01 22:25:18 -04:00 |
|
Robert Marsh
|
44b6af652e
|
C++: use Options::exits() for noreturn functions
|
2023-05-01 22:25:17 -04:00 |
|
Robert Marsh
|
c01ee597fa
|
C++: handle calls to noreturn functions
|
2023-05-01 22:25:12 -04:00 |
|
Anders Schack-Mulligen
|
6c8cb0dc5e
|
Merge pull request #12930 from aschackmull/dataflow/split-typedcontent
Dataflow: Refactor access paths to split TypedContent into an explicit pair
|
2023-05-01 14:58:15 +02:00 |
|
Mathias Vorreiter Pedersen
|
a7d238f4c4
|
C++: Accept consistency changes.
|
2023-04-28 22:41:58 +01:00 |
|
Mathias Vorreiter Pedersen
|
490b253dc8
|
C++: Add change note.
|
2023-04-28 17:48:01 +01:00 |
|
Mathias Vorreiter Pedersen
|
498395b50e
|
C++: Add QLDoc to getA(nIndirect)BarrierNode.
|
2023-04-28 17:42:14 +01:00 |
|
Mathias Vorreiter Pedersen
|
8c8b919dfb
|
C++: Add an API for indirect barrier guards and use it in tests.
|
2023-04-28 14:09:08 +01:00 |
|
Mathias Vorreiter Pedersen
|
a6adf825bc
|
C++: Add a test that needs indirect barrier guards.
|
2023-04-28 13:56:31 +01:00 |
|
Mathias Vorreiter Pedersen
|
0f0384cff6
|
C++: Rewrite the barrier guard tests to be expression based. This is really what we expect people to write in queries.
|
2023-04-28 13:49:01 +01:00 |
|
github-actions[bot]
|
3bd29171fb
|
Release preparation for version 2.13.1
|
2023-04-28 12:14:35 +00:00 |
|
Mathias Vorreiter Pedersen
|
43527573d0
|
C++: Fix back edge detection for phi nodes.
|
2023-04-28 11:58:56 +01:00 |
|
Mathias Vorreiter Pedersen
|
faf846bd58
|
C++: Disable flow through nodes that are sources of phi edges' back edges.
|
2023-04-28 11:36:42 +01:00 |
|
Mathias Vorreiter Pedersen
|
2716c73f87
|
C++: Add change note.
|
2023-04-28 10:49:49 +01:00 |
|
Mathias Vorreiter Pedersen
|
c35cb70c9f
|
C++: Fix inconsistencies.
|
2023-04-28 10:40:18 +01:00 |
|
Mathias Vorreiter Pedersen
|
fd2f0257b6
|
C++: Accept query changes.
|
2023-04-28 10:25:12 +01:00 |
|
Mathias Vorreiter Pedersen
|
24d1cac9d7
|
C++: Accept test changes.
|
2023-04-28 10:25:07 +01:00 |
|
Mathias Vorreiter Pedersen
|
ee7b137c24
|
C++: Add dataflow for static locals.
|
2023-04-28 10:24:57 +01:00 |
|
Mathias Vorreiter Pedersen
|
3eca60cc40
|
C++: Add static local testcases.
|
2023-04-28 10:23:36 +01:00 |
|
Mathias Vorreiter Pedersen
|
205bb76036
|
Merge pull request #12960 from MathiasVP/fp-invalid-deref-2
C++: Add more FPs for `cpp/invalid-pointer-deref`
|
2023-04-28 09:47:46 +01:00 |
|
Mathias Vorreiter Pedersen
|
4ef58cd662
|
C++: Remove unused parameter in test.
|
2023-04-28 09:30:30 +01:00 |
|
Mathias Vorreiter Pedersen
|
5f4d0892ff
|
Merge pull request #12900 from MathiasVP/ir-translate-constant-static-local-vars-2
|
2023-04-28 08:46:25 +01:00 |
|
Robert Marsh
|
376e01ae3d
|
C++: update docs for new range analysis AST wrapper
|
2023-04-27 14:59:18 -04:00 |
|
Mathias Vorreiter Pedersen
|
5c23474634
|
C++: Add FPs for 'cpp/invalid-pointer-deref'.
|
2023-04-27 18:49:05 +01:00 |
|
Mathias Vorreiter Pedersen
|
e506f638fc
|
DataFlow: Sync identical files.
|
2023-04-27 18:40:33 +01:00 |
|
Mathias Vorreiter Pedersen
|
478f2dca3b
|
C++: Add a new dataflow consistency test.
|
2023-04-27 18:39:41 +01:00 |
|
Mathias Vorreiter Pedersen
|
6c095d8143
|
Merge pull request #12953 from MathiasVP/fp-invalid-deref
C++: Add FP for `cpp/invalid-pointer-deref`
|
2023-04-27 17:29:37 +01:00 |
|
Mathias Vorreiter Pedersen
|
e46c53af1d
|
C++: accept test changes.
|
2023-04-27 17:13:02 +01:00 |
|
Mathias Vorreiter Pedersen
|
1372ee7a44
|
Update cpp/ql/test/experimental/query-tests/Security/CWE/CWE-193/pointer-deref/test.cpp
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com>
|
2023-04-27 17:10:44 +01:00 |
|
Mathias Vorreiter Pedersen
|
432c0b508a
|
C++: Add another FP.
|
2023-04-27 14:50:29 +01:00 |
|
Anders Schack-Mulligen
|
71ae0909d8
|
Dataflow: Enforce type pruning in all forward stages.
|
2023-04-27 14:55:26 +02:00 |
|
Anders Schack-Mulligen
|
9140cbefc0
|
Dataflow: Sync.
|
2023-04-27 14:55:23 +02:00 |
|
Mathias Vorreiter Pedersen
|
5a8bed0285
|
C++: Add FP for 'cpp/invalid-pointer-deref'.
|
2023-04-27 13:13:21 +01:00 |
|
Robert Marsh
|
3f8638643e
|
C++: respond to PR comments
|
2023-04-26 14:56:10 -04:00 |
|
Mathias Vorreiter Pedersen
|
6bfdbef697
|
C++: Fix implicit 'this'.
|
2023-04-26 18:06:44 +01:00 |
|
Mathias Vorreiter Pedersen
|
b18e096f7f
|
C++: Fix missing result for 'getFunction' and accept test changes.
|
2023-04-26 18:01:39 +01:00 |
|
Mathias Vorreiter Pedersen
|
1dcac76992
|
C++: Add a weird testcase demonstrating invalid IR.
|
2023-04-26 17:48:02 +01:00 |
|
Mathias Vorreiter Pedersen
|
60aab206b0
|
C++: Join on two columns instead of one.
Before:
```
Evaluated non-recursive predicate TranslatedElement#ea057665::TranslatedElement::getInstructionVariable#1#dispred#fff@146210id in 201548ms (size: 3469729).
Evaluated relational algebra for predicate TranslatedElement#ea057665::TranslatedElement::getInstructionVariable#1#dispred#fff@146210id with tuple counts:
...
1812768 ~3% {3} r65 = JOIN num#InstructionTag#c9183db3::OnlyInstructionTag#f WITH TranslatedExpr#043317a1::TranslatedNonFieldVariableAccess#ff CARTESIAN PRODUCT OUTPUT Rhs.1, Lhs.0, Rhs.0
1812767 ~0% {4} r66 = JOIN r65 WITH Access#8878f617::Access::getTarget#0#dispred#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.0
3996407117 ~3% {5} r67 = JOIN r66 WITH TranslatedElement#ea057665::getIRUserVariable#2#fff_102#join_rhs ON FIRST 1 OUTPUT Lhs.3, Rhs.1, Lhs.1, Lhs.2, Rhs.2
1815194 ~0% {3} r68 = JOIN r67 WITH TranslatedExpr#043317a1::getEnclosingDeclaration#1#ff ON FIRST 2 OUTPUT Lhs.3, Lhs.2, Lhs.4
...
```
After:
```
Evaluated non-recursive predicate TranslatedExpr#043317a1::accessHasEnclosingDeclarationAndVariable#3#fff@665ccb8o in 865ms (size: 2769549).
Evaluated relational algebra for predicate TranslatedExpr#043317a1::accessHasEnclosingDeclarationAndVariable#3#fff@665ccb8o with tuple counts:
2769549 ~1% {3} r1 = JOIN Access#8878f617::Access::getTarget#0#dispred#ff WITH TranslatedExpr#043317a1::getEnclosingDeclaration#1#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
return r1
...
Evaluated non-recursive predicate TranslatedElement#ea057665::TranslatedElement::getInstructionVariable#1#dispred#fff@7d4d33to in 805ms (size: 3469729).
Evaluated relational algebra for predicate TranslatedElement#ea057665::TranslatedElement::getInstructionVariable#1#dispred#fff@7d4d33to with tuple counts:
...
1963209 ~0% {2} r34 = JOIN TranslatedElement#ea057665::getIRUserVariable#2#fff WITH TranslatedExpr#043317a1::accessHasEnclosingDeclarationAndVariable#3#fff ON FIRST 2 OUTPUT Rhs.2, Lhs.2
1815194 ~2% {2} r35 = JOIN r34 WITH TranslatedExpr#043317a1::TranslatedNonFieldVariableAccess#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1, Rhs.1
1815194 ~0% {3} r36 = JOIN r35 WITH num#InstructionTag#c9183db3::OnlyInstructionTag#f CARTESIAN PRODUCT OUTPUT Lhs.1, Rhs.0, Lhs.0
...
```
|
2023-04-26 16:32:43 +01:00 |
|
Mathias Vorreiter Pedersen
|
3d381331e1
|
C++: Add a test with global variable templates.
|
2023-04-26 15:00:32 +01:00 |
|
Anders Schack-Mulligen
|
d681671356
|
Dataflow: Sync.
|
2023-04-26 14:45:07 +02:00 |
|
Mathias Vorreiter Pedersen
|
3f03cc27cd
|
C++: Accept test changes.
|
2023-04-25 17:51:04 +01:00 |
|
Mathias Vorreiter Pedersen
|
648c08bcd9
|
C++: Fix enclosing functions for static locals.
|
2023-04-25 17:51:04 +01:00 |
|