Граф коммитов

1 Коммитов

Автор SHA1 Сообщение Дата
Don Syme f45ef819b5
[RFC FS-1087, FS-1097, FS-1098] tasks, resumable state machines, inline on parameters (#6811)
* Move existing Compiler.ComponentTests to a new Compiler.fs framework (#9839) (#9847)

* Move existing Compiler.ComponentTests to a new Compiler.fs framework; Add 'parse' function

* Changed some wording in error messages

Co-authored-by: Vlad Zarytovskii <vzaritovsky@hotmail.com>

* fix build

* fix order of diagnostics

* update baselines

* Delete FSharp.Compiler.Service.fsproj

* fix comments

* fix comments

* fix build

* fix build

* Reduce number of typeEquiv checks (#10324) (#10374)

Co-authored-by: Steffen Forkmann <steffen.forkmann@msu-solutions.de>

* xlf

* fix build

* fix build

* fix build

* fix build

* fix list and array builder perf

* better perf testing

* better perf testing

* better perf testing

* update baselines

* work on taskSeq { ... }

* remove old file

* enable all benchmarks

* update benchmarks

* update baseline

* static checking of resumable code

* static checking of resumable code

* fix build

* fix build

* fix build

* fix build

* fix build

* fix build

* fix baseline

* try fix stack overflow

* fix up tests

* add some negative testing, simplify implementation

* fix up tests

* fix baseline

* fix test and add negative baselines

* rename intrinsic and add test for seq case

* fix build

* fix and rename test

* fix test

* improve debugging

* improve debugging of try/with and try/finally

* fix baseline

* infer resumable code from single attribute on delegate type

* update samples

* inline if lambda

* update baselines

* fix check

* delegate and computed function reductions for inlined code

* update baselines

* update baselines

* update test

* fix test that failed randomly due to inexact floating point

* add tests for generated IL

* update tests

* don't use InlineIfLambda on sumBy and averageBy due to slight floating point changes

* add ability for struct machines to implement additional interfaces (needed for low allocation co-routines)

* add coroutines

* update baselines

* resumable code combinators and tailcalls for coroutines

* fix baselinhe

* make tasks using shared resumable code combinators the default. Also testing and fixes for dynamic execution of resumable code

* update baselines

* suppress warning in FSharp.Core

* suppress warning in FSharp.Core

* fix build

* fix build

* fix build

* update test

* only struct state machines

* codegen IResumableStateMachine

* update baselines

* update baselines

* notes on sample

* fix build

* Update coroutine.fs

* Negative testing following spec for compilability. Additional testing for dynamic implementation of tasks

* simpler coroutine sample, fix build

* update baselines

* remove unused state vars from internal represenation of object expressions

* add coroutine example

* update perf benchmarks

* remove old files

* code cleanup

* add compilergenerated attribute, add async2 approximate implementation

* test async perf w.r.t. previous compiler, add test for reduced stack trace

* using on IAsyncDisposable

* remove dynamic Awaiter field from tasks

* update surface area

* add backgroundTask { ... }

* surface area test only for decalred members etc.

* fix test

* add dynamic tests for backgroundTask

* fix codegen bug

* fix build

* simplify SRTP use in task.fs/fsi

* fix build and baselines

* fix build

* fix build

* fix build

* fix pacakge

* remove RFC FS-1099 from this PR

* remove RFC FS-1099 from this PR

* backgroundTask only switches to background if necessary

* Update tasks.fs

* fix test

* clear sync context for test

* clear sync context for test

* update baseline

* code review

* fix build

* fix build

* fix clearing state machines

* fix to clearing code

* improve generated task code and debugging

* only update baselines on failure

* fix some cases of debug stepping, improve isnull codegen, add more tests

* move TaskPerf to benchmarks directory

* fix baseline

* only update baselines when things changed

* fix baselines

* update baselines

* fix baselines

* fix build

* fix some tests, add hard error on language version check

* reset unchanged files

* update baselines

* update baselines

* fix baseline

* fix comparer

* flags

* Revert "flags"

This reverts commit 5b2a011831.

* fix merge

* fix build

* fix build

* fix build

* update baseline

* fix build

* fix build

* update baseline

* fix baselines

* update baseline

* fix build

* fix build

* update baseline

* fix test

* code review changes

Co-authored-by: Kevin Ransom (msft) <codecutter@hotmail.com>
Co-authored-by: Phillip Carter <pcarter@fastmail.com>
Co-authored-by: dotnet bot <dotnet-bot@dotnetfoundation.org>
Co-authored-by: Vlad Zarytovskii <vzaritovsky@hotmail.com>
Co-authored-by: Don Syme <donsyme@fastmail.com>
Co-authored-by: Steffen Forkmann <steffen.forkmann@msu-solutions.de>
Co-authored-by: Brett V. Forsgren <brettfo@microsoft.com>
2021-07-19 10:55:52 +01:00