Mathias Vorreiter Pedersen
125c013052
Merge branch 'main' into skip-safe-conversions-in-range-analysis
2023-03-24 17:01:11 +00:00
Mathias Vorreiter Pedersen
61bafd358a
C++: Fix another place that assumed that 'Expr' was always 'Instruction'.
2023-03-23 13:27:24 +00:00
Anders Schack-Mulligen
72415c7c2c
C++: Rename references.
2023-03-23 13:06:19 +01:00
Mathias Vorreiter Pedersen
4d029acb11
C++: Accept test changes.
2023-03-22 16:51:39 +00:00
Mathias Vorreiter Pedersen
4cc3bfae33
C++: Fix places that assumed that 'Expr' was always 'Instruction'.
2023-03-22 16:51:38 +00:00
Robert Marsh
0f4157c534
C++: Add overflow detection to new range analysis
2023-03-21 11:01:58 -04:00
Mathias Vorreiter Pedersen
b0f803759c
Merge pull request #11928 from rdmarsh2/rdmarsh2/stageify-range-analysis
2023-03-18 12:42:49 +00:00
Mathias Vorreiter Pedersen
406d02253d
C++: Add 'range(x)' call demonstrating missing bounds.
2023-03-16 17:08:53 +00:00
Jeroen Ketema
8aa9207281
Merge remote-tracking branch 'upstream/main' into mathiasvp/replace-ast-with-ir-use-usedataflow
2023-03-16 10:28:44 +01:00
Tom Hvitved
b3ef1e9372
C++: Update expected test output
2023-03-16 08:40:53 +01:00
Robert Marsh
623e39031c
C++: fix ModulusAnalysis test
2023-03-14 16:46:09 -04:00
Mathias Vorreiter Pedersen
00450d10bb
Merge branch 'main' into mathiasvp/replace-ast-with-ir-use-usedataflow
2023-03-13 14:50:17 +01:00
Robert Marsh
64f23ebb4d
Merge pull request #12436 from MathiasVP/ir-range-analysis-for-unary-minus
...
C++: IR-based range analysis for unary minus
2023-03-13 09:02:38 -04:00
Jeroen Ketema
bd47c4f9ec
C++: Update .expected after frontend changes
2023-03-13 09:40:10 +01:00
Jeroen Ketema
e5ce27fbf9
C++: Fix a number of instances where a dataflow node did not have a location
2023-03-09 10:32:30 +01:00
Jeroen Ketema
791f5913d2
C++: Fix multiple getLocation consistency error in use-use dataflow
2023-03-09 10:25:02 +01:00
Jeroen Ketema
55da3257bf
C++: Fix multiple toString consistency error in use-use dataflow
2023-03-09 10:08:25 +01:00
Jeroen Ketema
a2248cb5a0
C++: Use getAUse in getIRRepresentationOfOperand
2023-03-09 09:45:54 +01:00
Jeroen Ketema
6f2407412e
C++: Update some dataflow tests to use DataFlow::ConfigSig
2023-03-08 15:04:53 +01:00
Mathias Vorreiter Pedersen
619266d04b
C++: Fix floating point imprecision.
2023-03-08 13:24:01 +00:00
Mathias Vorreiter Pedersen
ce0f2b1788
C++: Accept test changes.
2023-03-08 13:23:58 +00:00
Mathias Vorreiter Pedersen
4cb5bea2c6
C++: Add simple negation test cases.
2023-03-08 13:23:05 +00:00
Mathias Vorreiter Pedersen
263b208282
C++: Disambiguate a test annotation.
2023-03-08 09:07:07 +00:00
Mathias Vorreiter Pedersen
eea02e1ac1
C++: Accept test changes.
2023-03-07 16:18:43 +00:00
Mathias Vorreiter Pedersen
63690066c5
Merge branch 'main' into mathiasvp/replace-ast-with-ir-use-usedataflow
2023-03-07 13:06:43 +00:00
Jeroen Ketema
c9bccd9b43
C++: Fix more tests that used deprecated function
2023-03-07 09:01:13 +01:00
Jeroen Ketema
72d03e4060
C++: Fix test that used deprecated function
2023-03-06 09:07:52 +01:00
Jeroen Ketema
620c69df12
C++: Add more static qualifiers in syntax zoo test
2023-03-03 15:03:31 +01:00
Jeroen Ketema
87b1c3eaa8
Merge pull request #12381 from jketema/silence
...
C++: Silence some more bogus consistency errors in syntax zoo
2023-03-03 12:51:39 +01:00
Mathias Vorreiter Pedersen
16e817c814
Merge pull request #12356 from MathiasVP/use-phi-reads
...
C++: Include "phi reads" in `DataFlow::Node`
2023-03-03 11:14:08 +00:00
Jeroen Ketema
4faede0e2c
C++: Silence some more bogus consistency errors in syntax zoo
...
These were due to several functions occurring that would have the same TRAP key.
By making the functions static or wrapping the defining class in an anonymous
namespace the TRAP keys will differ from each other.
2023-03-03 12:07:33 +01:00
Jeroen Ketema
f649def3f8
C++: Silence a number of bogus consistency errors in syntax zoo
...
These were due to several functions occurring that would have the same TRAP
key. By making the functions static the TRAP keys will differ from each other.
2023-03-03 11:16:19 +01:00
Mathias Vorreiter Pedersen
959237e8d2
C++: Fix missing type for Phi nodes.
2023-03-02 22:48:10 +00:00
Mathias Vorreiter Pedersen
2963dc1cb1
C++: Include phi read nodes in SSA.
...
There's a small fix to the mapping from 'global def -> use'.
Finally, this commit also accepts a test failure related to new missing
types for phi nodes. The fix for that is in the next commit.
2023-03-02 22:48:06 +00:00
Mathias Vorreiter Pedersen
b3f92fcf0f
C++: Add FN caused by missing static local initialization in SSA.
2023-03-02 22:37:52 +00:00
Mathias Vorreiter Pedersen
7bb806563f
Merge branch 'mathiasvp/replace-ast-with-ir-use-usedataflow' into no-taint-indirect-direct-conflation
2023-02-27 17:19:36 +00:00
Mathias Vorreiter Pedersen
d628905156
C++: Accept more test changes.
2023-02-27 17:13:23 +00:00
Mathias Vorreiter Pedersen
b36d4931f2
C++: Fix test annotation.
2023-02-27 15:47:52 +00:00
Mathias Vorreiter Pedersen
1db24dd28d
C++: Fix missing types. We now assign the node corresponding to **p
...
an `UnknownType`.
2023-02-27 14:57:36 +00:00
Mathias Vorreiter Pedersen
4e16bb65e3
C++: Accept test changes. Because we now allocate _three_ indirect nodes
...
for a value of type `void*` (i.e., `p`, `*p` and `**p`) we need to decide
on a type for the `**p` value. We will do this in the next commit.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
f6b9ca3da6
C++: Add failing test.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
da4a059388
C++: Accept test changes.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
575ac46bf3
C++: Add failing test.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
b952f619db
C++: Accept test changes.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
9d64c0a023
C++: Add failing test.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
2cb4a554ea
C++: Fix a bug in Expr <-> Node mapping.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
09df318e9e
C++: Also track flow out of indirect sources.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
a806569b5f
C++: The next commit is going to track flow out of both direct and indirect sources. This means we'll get a lot of duplication since there'll be flow from indirect source -> indirect sink and direct source -> direct sink (which both map to the same expressions). This commit changes the testing so that we only report a duplication when they're at different locations.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
5a8b900394
C++: Properly track smart pointer wrappers.
2023-02-27 14:57:35 +00:00
Mathias Vorreiter Pedersen
64abf5b163
C++: Add conflation into DefaultTaintTracking.
2023-02-27 14:57:35 +00:00