Tom Hvitved
ac67c67ad7
Merge pull request #4998 from hvitved/csharp/shared-base-pre-ssa
...
C#: Use shared SSA implementation for `{Pre,Base}Ssa`
2021-02-26 11:29:07 +01:00
Tom Hvitved
bed66203c1
C#: Use shared SSA implementation for BaseSsa
2021-02-23 14:06:27 +01:00
Tom Hvitved
b0ee508f10
C#: Use shared SSA implementation for PreSsa
2021-02-23 14:06:27 +01:00
Tamas Vajk
7761774f88
Add record .ctor to property data flow summary
2021-02-12 19:54:52 +01:00
Tom Hvitved
6a6644b5c2
C#: Adjust data-flow for with expressions
...
In `x with { Foo = bar }`, instead of having a single data-flow step
`x => x with { Foo = bar }`
we now have two steps:
`x => { Foo = bar }`
and
`{ Foo = bar } => x with { Foo = bar }`
Moreover, `clearsContent` now targets the object initializer instead of the
whole `with` expression, which means that it will only apply to values carried
over from the old object and not those explicitly stored into the new object.
2021-02-12 19:54:52 +01:00
Tamas Vajk
dd9b1d52b5
C#: Initial data-flow for with expressions
2021-02-12 19:54:52 +01:00
Tamás Vajk
1fd244923b
Merge pull request #5052 from tamasvajk/feature/fnptr-df
...
C#: Add data flow 'getARuntimeTarget' predicate to 'FunctionPointerCall'
2021-02-04 08:51:03 +01:00
Tamas Vajk
7d62e33feb
C#: Rework function pointer/delegate call DF
2021-02-01 13:40:03 +01:00
Tamás Vajk
aa35fcafeb
Merge pull request #5018 from tamasvajk/feature/csharp9-binary-pattern-cfg
...
C#: Extract 'and' and 'or' patterns
2021-02-01 09:17:52 +01:00
Tamas Vajk
91152d3a65
Add additional tests to delegate call data flow
2021-01-29 12:02:11 +01:00
Tamas Vajk
191962f64c
C#: Add data flow 'getARuntimeTarget' predicate to 'FunctionPointerCall'
2021-01-29 12:01:38 +01:00
Tom Hvitved
6ee5cdf2b2
C#: Simpler data-flow modelling of parameters
2021-01-28 10:34:47 +01:00
Tamas Vajk
669e207600
Fix sign analysis expected file
2021-01-27 16:40:56 +01:00
Tom Hvitved
6ffeaf8c2a
C#: Adjust flow into phi nodes
2021-01-25 15:44:37 +01:00
Tom Hvitved
38b0f743cb
C#: Add test that illustrates problem with flow through phi nodes
2021-01-25 14:20:27 +01:00
Tom Hvitved
2a8060102d
C#: Split up SSA implementation
2021-01-19 10:52:50 +01:00
Tom Hvitved
63f76b1b43
C#: Uniform treatment of all SSA definitions
2021-01-07 15:16:44 +01:00
Tom Hvitved
8d77f4bac9
C#: Remove ImplicitUntrackedDefinition
2021-01-07 15:16:39 +01:00
Tom Hvitved
c571e42cd5
C#: Move internal CFG logic into separate file
2020-11-21 19:49:17 +01:00
Tom Hvitved
94deed39a2
C#: Represent all expressions in post-order in the CFG
2020-11-12 20:04:48 +01:00
Tom Hvitved
202f7f07ec
C#: Update modulus analysis tests
2020-11-12 20:04:48 +01:00
Tom Hvitved
c5abf29dfc
C#: Update flow-summary test
2020-11-03 20:28:42 +01:00
Tamás Vajk
7c3964a388
Merge pull request #4543 from tamasvajk/feature/configureawait
...
C#: Add flow summary for 'Task.ConfigureAwait()'
2020-10-28 10:42:44 +01:00
Tom Hvitved
03a36760b8
C#: Add data-flow test for ConfigureAwait()
2020-10-27 10:23:39 +01:00
Tamas Vajk
342a711296
C#: Add flow summary for 'Task.ConfigureAwait()'
2020-10-27 10:23:39 +01:00
Tom Hvitved
212b49f3dc
Merge pull request #4416 from hvitved/csharp/dataflow/tuples
...
C#: Add flow summaries for `System.[Value]Tuple`
2020-10-26 13:48:24 +01:00
Tom Hvitved
492b1141ef
Merge pull request #4445 from hvitved/csharp/sign-analysis-cfg
...
C#: Use CFG nodes instead of AST nodes in sign/modulus analysis
2020-10-26 09:45:38 +01:00
Tom Hvitved
d48a6a5555
C#: Update expected test output
2020-10-16 09:04:58 +02:00
Tom Hvitved
8728017328
C#: Increase fieldFlowBranchLimit in test
...
68014fd3bf means that more accessors are properly
extracted, and consequently the calls to `get_Item` in the test have more dispatch
targets. Increasing `fieldFlowBranchLimit` makes the test pass again.
2020-10-15 10:40:19 +02:00
Tom Hvitved
91806da2fa
C#: Address review comments
2020-10-14 14:15:34 +02:00
Tom Hvitved
5d1a5920c7
C#: Reimplement flow-summary compilation
2020-10-14 14:15:34 +02:00
Tom Hvitved
f2dc2d912a
C#: Add inter-procedural data-flow test for StringBuilder
2020-10-14 14:15:34 +02:00
Tom Hvitved
2af7e1c213
C#: Use CFG nodes instead of AST nodes in sign/modulus analysis
2020-10-14 13:39:44 +02:00
Tom Hvitved
9d1f64d35d
C#: Avoid overlapping SSA definitions for ref/out captured variables
2020-10-12 10:52:40 +02:00
Tom Hvitved
723699a584
C#: Add SSA test for overlapping captured variable definitions
2020-10-09 16:01:19 +02:00
Tom Hvitved
29fb23e6a4
C#: Add flow summaries for System.[Value]Tuple
2020-10-09 13:38:30 +02:00
Tom Hvitved
ce8567c64a
Merge pull request #4293 from hvitved/csharp/cfg/assertions
...
C#: Model assertions in the CFG
2020-10-08 10:32:13 +02:00
Tom Hvitved
b70f5bc954
Merge pull request #4433 from hvitved/csharp/dataflow/switch-expr
...
C#: Add missing data-flow for switch expressions
2020-10-08 09:13:43 +02:00
Tamás Vajk
06f1c898dc
Merge pull request #4349 from tamasvajk/feature/modulus-analysis
...
ModulusAnalysis shared between C# and Java
2020-10-07 21:21:20 +02:00
Tom Hvitved
31816af11e
C#: Add missing data-flow for switch expressions
2020-10-07 17:10:29 +02:00
Tom Hvitved
9c503c1591
C#: Add more data/control-flow tests
2020-10-07 17:10:01 +02:00
Tamas Vajk
4df6a41616
ModulusAnalysis shared between C# and Java
2020-10-07 16:12:24 +02:00
Tamás Vajk
8d09885ae6
Merge pull request #4378 from tamasvajk/feature/flow-summary-nullable
...
Flow summary nullable
2020-10-06 11:45:41 +02:00
Tom Hvitved
6bd355784a
Merge pull request #4353 from hvitved/csharp/dataflow/task-precise
...
C#: Precise data-flow for `System.Threading.Tasks`
2020-10-06 10:45:19 +02:00
Tamas Vajk
faf663a334
C#: Flow summary for Nullable<T>
2020-10-06 09:03:49 +02:00
Tom Hvitved
c39bca5240
C#: Model data-flow for System.Threading.Tasks.Task<T>.GetAwaiter()
2020-10-05 17:15:54 +02:00
Tamas Vajk
3b70064606
C#: Improve data flow summary for System.Lazy<>
2020-10-05 14:45:14 +02:00
Tom Hvitved
c0b251ad9e
C#: Precise data-flow for System.Threading.Tasks
2020-10-03 11:13:45 +02:00
Tom Hvitved
26544f322a
C#: Update data-flow tests for System.Threading.Tasks
2020-10-03 11:13:45 +02:00
Tom Hvitved
f1d6f7cd0c
C#: Model assertions in the CFG
2020-10-02 17:56:41 +02:00