Skip to content

Commit c19ebd5

Browse files
authored
Fix and refactor FCSBenchmarks (dotnet#13419)
1 parent faa115a commit c19ebd5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+2077
-1425
lines changed

Directory.Build.props

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,9 @@
33
<Import Project="FSharpBuild.Directory.Build.props" Condition = " '$(FSharpTestCompilerVersion)' == '' "/>
44
<Import Project="FSharpTests.Directory.Build.props" Condition = " '$(FSharpTestCompilerVersion)' != '' "/>
55

6+
<ItemGroup>
7+
<!-- If there is a README.md next to a project file, include it (for easier access in the IDE) -->
8+
<None Include="README.md" Condition="Exists('README.md')" />
9+
</ItemGroup>
10+
611
</Project>

FSharp.Compiler.Service.sln

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,19 @@ Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.ComponentTe
2222
{38A23D53-E2BF-4B76-907F-49F41D60C88E} = {38A23D53-E2BF-4B76-907F-49F41D60C88E}
2323
EndProjectSection
2424
EndProject
25+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Benchmarks", "Benchmarks", "{AF321816-B4A0-41DD-9A1D-484E8A20C6F6}"
26+
ProjectSection(SolutionItems) = preProject
27+
tests\benchmarks\FCSBenchmarks\decentlySizedStandAloneFile.fs = tests\benchmarks\FCSBenchmarks\decentlySizedStandAloneFile.fs
28+
tests\benchmarks\FCSBenchmarks\README.md = tests\benchmarks\FCSBenchmarks\README.md
29+
tests\benchmarks\FCSBenchmarks\SmokeTestAllBenchmarks.ps1 = tests\benchmarks\FCSBenchmarks\SmokeTestAllBenchmarks.ps1
30+
EndProjectSection
31+
EndProject
32+
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "HistoricalBenchmark", "tests\benchmarks\FCSBenchmarks\BenchmarkComparison\HistoricalBenchmark.fsproj", "{35F5F1C5-AE4F-4B5A-8D94-1AF708724FD5}"
33+
EndProject
34+
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FSharp.Compiler.Benchmarks", "tests\benchmarks\FCSBenchmarks\CompilerServiceBenchmarks\FSharp.Compiler.Benchmarks.fsproj", "{C1950E28-1CB7-4DEC-BB3A-8A0443A17282}"
35+
EndProject
36+
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "HistoricalBenchmark.Runner", "tests\benchmarks\FCSBenchmarks\BenchmarkComparison\HistoricalBenchmark.Runner\HistoricalBenchmark.Runner.fsproj", "{07CD957A-3C31-4F75-A735-16CE72E1BD71}"
37+
EndProject
2538
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{DD4D4A7E-D519-4409-89DA-16DCA3EF80AA}"
2639
ProjectSection(SolutionItems) = preProject
2740
src\Compiler\FSComp.txt = src\Compiler\FSComp.txt
@@ -61,6 +74,18 @@ Global
6174
{2A182B7D-EDA3-4BF2-84B8-C7553BB7A5A7}.Debug|Any CPU.Build.0 = Debug|Any CPU
6275
{2A182B7D-EDA3-4BF2-84B8-C7553BB7A5A7}.Release|Any CPU.ActiveCfg = Release|Any CPU
6376
{2A182B7D-EDA3-4BF2-84B8-C7553BB7A5A7}.Release|Any CPU.Build.0 = Release|Any CPU
77+
{35F5F1C5-AE4F-4B5A-8D94-1AF708724FD5}.Debug|Any CPU.ActiveCfg = Release|Any CPU
78+
{35F5F1C5-AE4F-4B5A-8D94-1AF708724FD5}.Debug|Any CPU.Build.0 = Release|Any CPU
79+
{35F5F1C5-AE4F-4B5A-8D94-1AF708724FD5}.Release|Any CPU.ActiveCfg = Release|Any CPU
80+
{35F5F1C5-AE4F-4B5A-8D94-1AF708724FD5}.Release|Any CPU.Build.0 = Release|Any CPU
81+
{C1950E28-1CB7-4DEC-BB3A-8A0443A17282}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
82+
{C1950E28-1CB7-4DEC-BB3A-8A0443A17282}.Debug|Any CPU.Build.0 = Debug|Any CPU
83+
{C1950E28-1CB7-4DEC-BB3A-8A0443A17282}.Release|Any CPU.ActiveCfg = Release|Any CPU
84+
{C1950E28-1CB7-4DEC-BB3A-8A0443A17282}.Release|Any CPU.Build.0 = Release|Any CPU
85+
{07CD957A-3C31-4F75-A735-16CE72E1BD71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
86+
{07CD957A-3C31-4F75-A735-16CE72E1BD71}.Debug|Any CPU.Build.0 = Debug|Any CPU
87+
{07CD957A-3C31-4F75-A735-16CE72E1BD71}.Release|Any CPU.ActiveCfg = Release|Any CPU
88+
{07CD957A-3C31-4F75-A735-16CE72E1BD71}.Release|Any CPU.Build.0 = Release|Any CPU
6489
EndGlobalSection
6590
GlobalSection(SolutionProperties) = preSolution
6691
HideSolutionNode = FALSE
@@ -69,6 +94,9 @@ Global
6994
{BFE6E6F1-1B73-404F-A3A5-30B57E5E0731} = {875D91AC-BA4C-4191-AB11-AE461DB9B8DB}
7095
{2EF674B9-8B56-4796-9933-42B2629E52C3} = {875D91AC-BA4C-4191-AB11-AE461DB9B8DB}
7196
{38A23D53-E2BF-4B76-907F-49F41D60C88E} = {875D91AC-BA4C-4191-AB11-AE461DB9B8DB}
97+
{35F5F1C5-AE4F-4B5A-8D94-1AF708724FD5} = {AF321816-B4A0-41DD-9A1D-484E8A20C6F6}
98+
{C1950E28-1CB7-4DEC-BB3A-8A0443A17282} = {AF321816-B4A0-41DD-9A1D-484E8A20C6F6}
99+
{07CD957A-3C31-4F75-A735-16CE72E1BD71} = {AF321816-B4A0-41DD-9A1D-484E8A20C6F6}
72100
EndGlobalSection
73101
GlobalSection(ExtensibilityGlobals) = postSolution
74102
SolutionGuid = {F9A60F3B-D894-4C8E-BA0F-C51115B25A5A}

FSharp.sln

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@ EndProject
4040
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.Service", "src\Compiler\FSharp.Compiler.Service.fsproj", "{9B4CF83C-C215-4EA0-9F8B-B5A77090F634}"
4141
EndProject
4242
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Benchmarks", "Benchmarks", "{CE70D631-C5DC-417E-9CDA-B16097BEF1AC}"
43+
ProjectSection(SolutionItems) = preProject
44+
tests\benchmarks\README.md = tests\benchmarks\README.md
45+
EndProjectSection
4346
EndProject
4447
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MicroPerfCSharp", "tests\benchmarks\CompiledCodeBenchmarks\MicroPerf\CS\MicroPerfCSharp.csproj", "{348DCC13-DD3E-4214-B040-5A74E8C6B782}"
4548
EndProject
@@ -101,6 +104,9 @@ Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "fsiAnyCpu", "src\fsi\fsiAny
101104
EndProject
102105
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "fsiArm64", "src\fsi\fsiArm64Project\fsiArm64.fsproj", "{209C7D37-8C01-413C-8698-EC25F4C86976}"
103106
EndProject
107+
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "HistoricalBenchmark", "tests\benchmarks\FCSBenchmarks\BenchmarkComparison\HistoricalBenchmark.fsproj", "{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}"
108+
EndProject
109+
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FSharp.Compiler.Benchmarks", "tests\benchmarks\FCSBenchmarks\CompilerServiceBenchmarks\FSharp.Compiler.Benchmarks.fsproj", "{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}"
104110
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{D58BFE8B-7C85-4D3B-B5F3-9A7BB90FF1EE}"
105111
ProjectSection(SolutionItems) = preProject
106112
src\Compiler\FSComp.txt = src\Compiler\FSComp.txt
@@ -440,6 +446,30 @@ Global
440446
{209C7D37-8C01-413C-8698-EC25F4C86976}.Release|Any CPU.Build.0 = Release|Any CPU
441447
{209C7D37-8C01-413C-8698-EC25F4C86976}.Release|x86.ActiveCfg = Release|Any CPU
442448
{209C7D37-8C01-413C-8698-EC25F4C86976}.Release|x86.Build.0 = Release|Any CPU
449+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Debug|Any CPU.ActiveCfg = Release|Any CPU
450+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Debug|Any CPU.Build.0 = Release|Any CPU
451+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Debug|x86.ActiveCfg = Release|Any CPU
452+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Debug|x86.Build.0 = Release|Any CPU
453+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Proto|Any CPU.ActiveCfg = Release|Any CPU
454+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Proto|Any CPU.Build.0 = Release|Any CPU
455+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Proto|x86.ActiveCfg = Release|Any CPU
456+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Proto|x86.Build.0 = Release|Any CPU
457+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Release|Any CPU.ActiveCfg = Release|Any CPU
458+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Release|Any CPU.Build.0 = Release|Any CPU
459+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Release|x86.ActiveCfg = Release|Any CPU
460+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF}.Release|x86.Build.0 = Release|Any CPU
461+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
462+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Debug|Any CPU.Build.0 = Debug|Any CPU
463+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Debug|x86.ActiveCfg = Debug|Any CPU
464+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Debug|x86.Build.0 = Debug|Any CPU
465+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Proto|Any CPU.ActiveCfg = Debug|Any CPU
466+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Proto|Any CPU.Build.0 = Debug|Any CPU
467+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Proto|x86.ActiveCfg = Debug|Any CPU
468+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Proto|x86.Build.0 = Debug|Any CPU
469+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Release|Any CPU.ActiveCfg = Release|Any CPU
470+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Release|Any CPU.Build.0 = Release|Any CPU
471+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Release|x86.ActiveCfg = Release|Any CPU
472+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1}.Release|x86.Build.0 = Release|Any CPU
443473
EndGlobalSection
444474
GlobalSection(SolutionProperties) = preSolution
445475
HideSolutionNode = FALSE
@@ -472,6 +502,8 @@ Global
472502
{68EEAB5F-8AED-42A2-BFEC-343D0AD5CB52} = {B8DDA694-7939-42E3-95E5-265C2217C142}
473503
{B6271954-3BCD-418A-BD24-56FEB923F3D3} = {B8DDA694-7939-42E3-95E5-265C2217C142}
474504
{209C7D37-8C01-413C-8698-EC25F4C86976} = {B8DDA694-7939-42E3-95E5-265C2217C142}
505+
{BEC6E796-7E53-4888-AAFC-B8FD55C425DF} = {CE70D631-C5DC-417E-9CDA-B16097BEF1AC}
506+
{9C7523BA-7AB2-4604-A5FD-653E82C2BAD1} = {CE70D631-C5DC-417E-9CDA-B16097BEF1AC}
475507
EndGlobalSection
476508
GlobalSection(ExtensibilityGlobals) = postSolution
477509
SolutionGuid = {BD5177C7-1380-40E7-94D2-7768E1A8B1B8}

VisualFSharp.sln

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,9 @@ EndProject
164164
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "VisualFSharpDebug", "vsintegration\Vsix\VisualFSharpFull\VisualFSharpDebug.csproj", "{A422D673-8E3B-4924-821B-DD3174173426}"
165165
EndProject
166166
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Benchmarks", "Benchmarks", "{DFB6ADD7-3149-43D9-AFA0-FC4A818B472B}"
167+
ProjectSection(SolutionItems) = preProject
168+
tests\benchmarks\README.md = tests\benchmarks\README.md
169+
EndProjectSection
167170
EndProject
168171
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.Benchmarks", "tests\benchmarks\FCSBenchmarks\CompilerServiceBenchmarks\FSharp.Compiler.Benchmarks.fsproj", "{564E7DC5-11CB-4FCF-ABDD-23AD93AF3A61}"
169172
EndProject
@@ -189,6 +192,15 @@ Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "fsiAnyCpu", "src\fsi\fsiAny
189192
EndProject
190193
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "fsiArm64", "src\fsi\fsiArm64Project\fsiArm64.fsproj", "{EB015235-1E07-4CDA-9CC6-3FBCC27910D1}"
191194
EndProject
195+
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "HistoricalBenchmark", "tests\benchmarks\FCSBenchmarks\BenchmarkComparison\HistoricalBenchmark.fsproj", "{583182E1-3484-4A8F-AC06-7C0D232C0CA4}"
196+
EndProject
197+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "FCSBenchmarks", "FCSBenchmarks", "{39CDF34B-FB23-49AE-AB27-0975DA379BB5}"
198+
ProjectSection(SolutionItems) = preProject
199+
tests\benchmarks\FCSBenchmarks\decentlySizedStandAloneFile.fs = tests\benchmarks\FCSBenchmarks\decentlySizedStandAloneFile.fs
200+
tests\benchmarks\FCSBenchmarks\README.md = tests\benchmarks\FCSBenchmarks\README.md
201+
tests\benchmarks\FCSBenchmarks\SmokeTestAllBenchmarks.ps1 = tests\benchmarks\FCSBenchmarks\SmokeTestAllBenchmarks.ps1
202+
EndProjectSection
203+
EndProject
192204
Global
193205
GlobalSection(SolutionConfigurationPlatforms) = preSolution
194206
Debug|Any CPU = Debug|Any CPU
@@ -1039,6 +1051,18 @@ Global
10391051
{EB015235-1E07-4CDA-9CC6-3FBCC27910D1}.Release|Any CPU.Build.0 = Release|Any CPU
10401052
{EB015235-1E07-4CDA-9CC6-3FBCC27910D1}.Release|x86.ActiveCfg = Release|Any CPU
10411053
{EB015235-1E07-4CDA-9CC6-3FBCC27910D1}.Release|x86.Build.0 = Release|Any CPU
1054+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Debug|Any CPU.ActiveCfg = Release|Any CPU
1055+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Debug|Any CPU.Build.0 = Release|Any CPU
1056+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Debug|x86.ActiveCfg = Release|Any CPU
1057+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Debug|x86.Build.0 = Release|Any CPU
1058+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Proto|Any CPU.ActiveCfg = Release|Any CPU
1059+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Proto|Any CPU.Build.0 = Release|Any CPU
1060+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Proto|x86.ActiveCfg = Release|Any CPU
1061+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Proto|x86.Build.0 = Release|Any CPU
1062+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Release|Any CPU.ActiveCfg = Release|Any CPU
1063+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Release|Any CPU.Build.0 = Release|Any CPU
1064+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Release|x86.ActiveCfg = Release|Any CPU
1065+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4}.Release|x86.Build.0 = Release|Any CPU
10421066
EndGlobalSection
10431067
GlobalSection(SolutionProperties) = preSolution
10441068
HideSolutionNode = FALSE
@@ -1109,7 +1133,6 @@ Global
11091133
{B5A9BBD9-2F45-4722-A6CA-BAE3C64CD4E2} = {3881429D-A97A-49EB-B7AE-A82BA5FE9C77}
11101134
{14F3D3D6-5C8E-43C2-98A2-17EA704D4DEA} = {CFE3259A-2D30-4EB0-80D5-E8B5F3D01449}
11111135
{A422D673-8E3B-4924-821B-DD3174173426} = {4C7B48D7-19AF-4AE7-9D1D-3BB289D5480D}
1112-
{564E7DC5-11CB-4FCF-ABDD-23AD93AF3A61} = {DFB6ADD7-3149-43D9-AFA0-FC4A818B472B}
11131136
{208E36EE-665C-42D2-B767-C6DB03C4FEB2} = {47112E07-9FF1-43E7-8021-F2A21D6A19A0}
11141137
{EE08E954-AE91-4EFA-8595-10931D29E628} = {47112E07-9FF1-43E7-8021-F2A21D6A19A0}
11151138
{47112E07-9FF1-43E7-8021-F2A21D6A19A0} = {DFB6ADD7-3149-43D9-AFA0-FC4A818B472B}
@@ -1121,6 +1144,9 @@ Global
11211144
{511C95D9-3BA6-451F-B6F8-F033F40878A5} = {B8DDA694-7939-42E3-95E5-265C2217C142}
11221145
{37EB3E54-ABC6-4CF5-8273-7CE4B61A42C1} = {B8DDA694-7939-42E3-95E5-265C2217C142}
11231146
{EB015235-1E07-4CDA-9CC6-3FBCC27910D1} = {B8DDA694-7939-42E3-95E5-265C2217C142}
1147+
{39CDF34B-FB23-49AE-AB27-0975DA379BB5} = {DFB6ADD7-3149-43D9-AFA0-FC4A818B472B}
1148+
{564E7DC5-11CB-4FCF-ABDD-23AD93AF3A61} = {39CDF34B-FB23-49AE-AB27-0975DA379BB5}
1149+
{583182E1-3484-4A8F-AC06-7C0D232C0CA4} = {39CDF34B-FB23-49AE-AB27-0975DA379BB5}
11241150
EndGlobalSection
11251151
GlobalSection(ExtensibilityGlobals) = postSolution
11261152
SolutionGuid = {48EDBBBE-C8EE-4E3C-8B19-97184A487B37}

src/Compiler/FSharp.Compiler.Service.fsproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@
9090
<InternalsVisibleTo Include="FSharp.Tests.FSharpSuite" />
9191
<InternalsVisibleTo Include="LanguageServiceProfiling" />
9292
<InternalsVisibleTo Include="FSharp.Compiler.Benchmarks" />
93+
<InternalsVisibleTo Include="HistoricalBenchmark" />
9394
</ItemGroup>
9495

9596
<ItemGroup>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.artifacts/

tests/benchmarks/FCSBenchmarks/BenchmarkComparison/BenchmarkComparison.fs

Lines changed: 0 additions & 131 deletions
This file was deleted.
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
module internal HistoricalBenchmark.Helpers
2+
3+
open System.IO
4+
#if SERVICE_13_0_0
5+
open Microsoft.FSharp.Compiler.SourceCodeServices
6+
#else
7+
#if SERVICE_30_0_0
8+
open FSharp.Compiler.SourceCodeServices
9+
open FSharp.Compiler.Text
10+
#else
11+
open FSharp.Compiler.CodeAnalysis
12+
open FSharp.Compiler.Text
13+
#endif
14+
#endif
15+
16+
let getFileSourceText (filePath : string) =
17+
let text = File.ReadAllText(filePath)
18+
#if SERVICE_13_0_0
19+
text
20+
#else
21+
SourceText.ofString text
22+
#endif
23+
24+
let failOnErrors (results : FSharpCheckFileResults) =
25+
#if SERVICE_13_0_0 || SERVICE_30_0_0
26+
if results.Errors.Length > 0 then failwithf "had errors: %A" results.Errors
27+
#else
28+
if results.Diagnostics.Length > 0 then failwithf $"had errors: %A{results.Diagnostics}"
29+
#endif
30+
31+
let makeCmdlineArgsWithSystemReferences (filePath : string) =
32+
let assemblies =
33+
let mainAssemblyLocation = typeof<System.Object>.Assembly.Location
34+
let frameworkDirectory = Path.GetDirectoryName(mainAssemblyLocation)
35+
Directory.EnumerateFiles(frameworkDirectory)
36+
|> Seq.filter (fun x ->
37+
let name = Path.GetFileName(x)
38+
(name.StartsWith("System.") && name.EndsWith(".dll") && not(name.Contains("Native"))) ||
39+
name.Contains("netstandard") ||
40+
name.Contains("mscorlib")
41+
)
42+
|> Array.ofSeq
43+
|> Array.append [|typeof<Async>.Assembly.Location|]
44+
45+
let refs =
46+
assemblies
47+
|> Array.map (fun x ->
48+
$"-r:{x}"
49+
)
50+
[|"--simpleresolution";"--targetprofile:netcore";"--noframework"|]
51+
|> Array.append refs
52+
|> Array.append [|filePath|]

0 commit comments

Comments
 (0)