Mathias Vorreiter Pedersen
|
12e0185b0d
|
C++: Sync identical files.
|
2021-10-28 12:36:36 +01:00 |
|
Mathias Vorreiter Pedersen
|
8135dcefdd
|
Merge branch 'main' into use-shared-ssa-in-ir-dataflow
|
2021-10-28 12:36:25 +01:00 |
|
Mathias Vorreiter Pedersen
|
521d863429
|
C++: Autoformat.
|
2021-10-28 12:35:01 +01:00 |
|
Mathias Vorreiter Pedersen
|
2547a8d746
|
C++: Fix join orders in 'DataFlowDispatch.qll' and Ssa.qll.
|
2021-10-28 12:35:01 +01:00 |
|
Mathias Vorreiter Pedersen
|
21a1ee7758
|
C++: Add annoying case in SSA.qll related to 'NewExpr' and accept test changes.
|
2021-10-28 12:35:01 +01:00 |
|
Mathias Vorreiter Pedersen
|
5dbaea8b52
|
C++: Add a special dataflow step from InitializeIndirection instructions.
|
2021-10-28 12:35:01 +01:00 |
|
Mathias Vorreiter Pedersen
|
b1ea00fa85
|
C++: Remove the taintflow edges that gives performance problems.
|
2021-10-28 12:35:01 +01:00 |
|
Mathias Vorreiter Pedersen
|
710d0cfc3d
|
C++: Since we now no longer have flow from exact memory operands to LoadInstructions, we no longer have flow from PhiInstructions to LoadInstructions. We could allow flow in this particular case, but we might as well use the shared SSA library's phi edges.
|
2021-10-28 12:35:00 +01:00 |
|
Mathias Vorreiter Pedersen
|
8caff41138
|
C++: Throw away most of the usage of IR-computed def-use information. Instead, we rely on the shared SSA library's use-use edges.
|
2021-10-28 12:35:00 +01:00 |
|
Mathias Vorreiter Pedersen
|
3a488574e5
|
C++: Rewrite the PartialDefinitionNode classes to match the new StoreNodes.
|
2021-10-28 12:35:00 +01:00 |
|
Mathias Vorreiter Pedersen
|
8bef79502f
|
C++: Similarly to the previous commit, we throw away the old memory-edges based way of doing read steps. Instead, we use the shared SSA library to transfer flow into a new ReadNode IPA branch, perform the necessary read steps, and then use the shared SSA library to transfer flow out of the ReadNode again.
|
2021-10-28 12:35:00 +01:00 |
|
Mathias Vorreiter Pedersen
|
5ebefe2d30
|
C++: Throw away the old way of doing store steps using memory edges. Instead, we introduce a StoreNode IPA branch that does store steps and instead use the shared SSA library to transfer flow into these nodes before a store step, and out of them following a sequence of store steps.
|
2021-10-28 12:35:00 +01:00 |
|
Mathias Vorreiter Pedersen
|
1842fed7a2
|
C++: Add shared SSA library and instantiate it with the IR.
|
2021-10-28 10:52:09 +01:00 |
|
Mathias Vorreiter Pedersen
|
13ce2569d7
|
C++/C#: Sync identical IR files·
|
2021-10-28 10:52:00 +01:00 |
|
Mathias Vorreiter Pedersen
|
bccd4e9e93
|
C++: Add 'getReturnAddress' and 'getReturnAddressOperand' predicates to 'ReturnValueInstruction'.
|
2021-10-28 10:51:49 +01:00 |
|
Anders Schack-Mulligen
|
699630af54
|
Dataflow: Sync.
|
2021-10-27 13:57:44 +02:00 |
|
Anders Schack-Mulligen
|
034c7f3538
|
Dataflow: Sync.
|
2021-10-27 13:57:44 +02:00 |
|
Geoffrey White
|
9009dac9ea
|
Merge branch 'main' into nullterm2
|
2021-10-21 13:14:15 +01:00 |
|
Geoffrey White
|
0e5cfd3469
|
C++: Rename the predicate and make it private.
|
2021-10-20 16:12:04 +01:00 |
|
Geoffrey White
|
f17c06a37f
|
C++: Fix mistake in previous commit.
|
2021-10-20 15:40:14 +01:00 |
|
Tom Hvitved
|
0bf5238f39
|
Update QL doc for allowParameterReturnInSelf
|
2021-10-20 12:08:58 +02:00 |
|
Tom Hvitved
|
dd138b0429
|
Address review comments
|
2021-10-20 12:08:58 +02:00 |
|
Tom Hvitved
|
a1511e13d8
|
Data flow: Sync files
|
2021-10-20 12:08:57 +02:00 |
|
Geoffrey White
|
f7bd74ea59
|
C++: Prototype nodeBefore predicate.
|
2021-10-19 20:08:55 +01:00 |
|
Geoffrey White
|
57fe4b9a31
|
C++: Also fix variableMustBeNullTerminated.
|
2021-10-19 18:06:11 +01:00 |
|
Geoffrey White
|
b4b8392748
|
C++: New, behaviour preserving solution.
|
2021-10-19 16:16:05 +01:00 |
|
Jonas Jensen
|
7015be7cad
|
Merge pull request #6916 from geoffw0/fixnotbound
C++: Fix unbound variables in PrivateCleartextWrite.qll.
|
2021-10-19 16:46:42 +02:00 |
|
Geoffrey White
|
38257a58f0
|
C++: Fix unbound variables in PrivateCleartextWrite.qll.
|
2021-10-19 15:01:32 +01:00 |
|
Geoffrey White
|
e487832823
|
C++: Clean up QL.
|
2021-10-19 14:10:30 +01:00 |
|
Geoffrey White
|
3f3c79f48f
|
Merge pull request #6884 from geoffw0/setliterals
Replace or chains with set literals.
|
2021-10-18 16:46:55 +01:00 |
|
Anders Schack-Mulligen
|
b67032d1cc
|
Merge pull request #6891 from erik-krogh/fix-java-this
add explicit this qualifier on all of java
|
2021-10-18 17:13:37 +02:00 |
|
Tom Hvitved
|
a10bde5795
|
Merge pull request #6872 from hvitved/dataflow/path-into-callable0-join
Data flow: Performance tweaks
|
2021-10-18 16:25:10 +02:00 |
|
Tom Hvitved
|
e6954292aa
|
Address review comments
|
2021-10-18 14:09:44 +02:00 |
|
Anders Schack-Mulligen
|
91ea064980
|
Sync
|
2021-10-18 14:04:50 +02:00 |
|
Mathias Vorreiter Pedersen
|
ea67ca22a9
|
C++: Undo changes to shared dataflow files.
|
2021-10-18 09:00:00 +01:00 |
|
Geoffrey White
|
5cbf632573
|
C++: Inline and simplify 'Assignment to another stack variable' case in NullTermination.qll.
|
2021-10-15 17:54:26 +01:00 |
|
Erik Krogh Kristensen
|
fe891746bf
|
C++: fix implicit this
|
2021-10-15 14:59:48 +01:00 |
|
Geoffrey White
|
8f30b8b586
|
Autoformat.
|
2021-10-14 16:00:23 +01:00 |
|
Anders Schack-Mulligen
|
f6a517c998
|
Merge pull request #6882 from MathiasVP/fix-unnecessary-exists
C++/Python: Remove unnecessary `exists`
|
2021-10-14 16:44:05 +02:00 |
|
Geoffrey White
|
f08d2ee759
|
Merge branch 'main' into setliterals
|
2021-10-14 14:39:39 +01:00 |
|
Anders Schack-Mulligen
|
8b6baa250c
|
Merge pull request #6878 from aschackmull/remove-singleton-setliteral
C++/C#/Java/JavaScript/Python: Remove singleton set literals.
|
2021-10-14 14:53:05 +02:00 |
|
Mathias Vorreiter Pedersen
|
69ed7c543f
|
C++: Remove unnecessary 'exists'.
|
2021-10-14 11:59:59 +01:00 |
|
Tom Hvitved
|
f5420333e2
|
Sync shared files
|
2021-10-14 11:49:02 +02:00 |
|
Anders Schack-Mulligen
|
57cb300759
|
C++/C#/Java/JavaScript/Python: Remove singleton set literals.
|
2021-10-14 11:34:22 +02:00 |
|
Mathias Vorreiter Pedersen
|
a2371370ff
|
Merge pull request #6865 from MathiasVP/fix-if-none
C++/C#/JS/Python: Replace 'if p() then q() else none()' with a conjunction
|
2021-10-13 19:47:55 +01:00 |
|
Tom Hvitved
|
c14dcfbfe4
|
Data flow: Sync
|
2021-10-13 20:13:28 +02:00 |
|
Andrew Eisenberg
|
878203f1d0
|
Merge pull request #6862 from github/aeisenberg/tutorial
Move tutorial directly into each qlpack
|
2021-10-13 09:29:37 -07:00 |
|
Andrew Eisenberg
|
0d1632a5d2
|
Move tutorial directly into each qlpack
Previously, the tutorial was injected during build time. This is much
simpler.
|
2021-10-13 08:37:04 -07:00 |
|
Geoffrey White
|
2e61ae244a
|
C++: Set literals.
|
2021-10-13 16:12:36 +01:00 |
|
Mathias Vorreiter Pedersen
|
ba981c525b
|
C++: Replace 'if p() then q() else none()' with a conjunction.
|
2021-10-13 12:11:42 +01:00 |
|