Skip to content

Commit 1ea6047

Browse files
committed
Merge in 'release/6.0' changes
2 parents 9fd15d0 + 4b7cc43 commit 1ea6047

File tree

8 files changed

+134
-5
lines changed

8 files changed

+134
-5
lines changed

eng/pipelines/mono/templates/workloads-build.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,10 @@ jobs:
6565
IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.MonoTargets.Sdk*.nupkg
6666
IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.MonoAOTCompiler.Task*.nupkg
6767
IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.WebAssembly.Sdk*.nupkg
68+
IntermediateArtifacts/windows_arm/Shipping/Microsoft.NETCore.App.Runtime.win-arm*.nupkg
69+
IntermediateArtifacts/windows_arm64/Shipping/Microsoft.NETCore.App.Runtime.win-arm64*.nupkg
70+
IntermediateArtifacts/windows_x64/Shipping/Microsoft.NETCore.App.Runtime.win-x64*.nupkg
71+
IntermediateArtifacts/windows_x86/Shipping/Microsoft.NETCore.App.Runtime.win-x86*.nupkg
6872
6973
- task: CopyFiles@2
7074
displayName: Flatten packages

eng/pipelines/runtime-official.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -426,6 +426,10 @@ stages:
426426
- Build_tvOSSimulator_arm64_release_AllSubsets_Mono
427427
- Build_tvOSSimulator_x64_release_AllSubsets_Mono
428428
- Build_Windows_x64_release_CrossAOT_Mono
429+
- installer__coreclr__windows_x64_Release_
430+
- installer__coreclr__windows_x86_Release_
431+
- installer__coreclr__windows_arm_Release_
432+
- installer__coreclr__windows_arm64_Release_
429433

430434
- ${{ if eq(variables.isOfficialBuild, true) }}:
431435
- template: /eng/pipelines/official/stages/publish.yml

src/coreclr/unwinder/arm64/unwinder_arm64.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1038,7 +1038,7 @@ Return Value:
10381038
ContextRecord,
10391039
8 * (NextCode & 0x3f),
10401040
8 + ((CurCode & 1) << 2) + (NextCode >> 6),
1041-
2 + AccumulatedSaveNexts,
1041+
2 + 2 * AccumulatedSaveNexts,
10421042
UnwindParams);
10431043
AccumulatedSaveNexts = 0;
10441044
}
@@ -1054,7 +1054,7 @@ Return Value:
10541054
ContextRecord,
10551055
-8 * ((NextCode & 0x3f) + 1),
10561056
8 + ((CurCode & 1) << 2) + (NextCode >> 6),
1057-
2 + AccumulatedSaveNexts,
1057+
2 + 2 * AccumulatedSaveNexts,
10581058
UnwindParams);
10591059
AccumulatedSaveNexts = 0;
10601060
}

src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Manifest/WorkloadManifest.json.in

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,15 @@
118118
"extends": [ "microsoft-net-runtime-mono-tooling" ],
119119
"platforms": [ "win-x64", "osx-arm64", "osx-x64" ]
120120
},
121+
"runtimes-windows": {
122+
"description": "Windows Runtime Packs",
123+
"packs": [
124+
"Microsoft.NETCore.App.Runtime.win-x64",
125+
"Microsoft.NETCore.App.Runtime.win-x86",
126+
"Microsoft.NETCore.App.Runtime.win-arm",
127+
"Microsoft.NETCore.App.Runtime.win-arm64"
128+
]
129+
},
121130
"microsoft-net-runtime-mono-tooling": {
122131
"abstract": true,
123132
"description": "Shared native build tooling for Mono runtime",
@@ -346,5 +355,21 @@
346355
"kind": "framework",
347356
"version": "${PackageVersion}"
348357
},
358+
"Microsoft.NETCore.App.Runtime.win-x64" : {
359+
"kind": "framework",
360+
"version": "${PackageVersion}"
361+
},
362+
"Microsoft.NETCore.App.Runtime.win-x86" : {
363+
"kind": "framework",
364+
"version": "${PackageVersion}"
365+
},
366+
"Microsoft.NETCore.App.Runtime.win-arm" : {
367+
"kind": "framework",
368+
"version": "${PackageVersion}"
369+
},
370+
"Microsoft.NETCore.App.Runtime.win-arm64" : {
371+
"kind": "framework",
372+
"version": "${PackageVersion}"
373+
}
349374
}
350375
}
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
using System;
2+
using System.Runtime.CompilerServices;
3+
4+
class Program
5+
{
6+
static int Main()
7+
{
8+
double a0 = 1.0;
9+
double a1 = 2.0;
10+
double a2 = 3.0;
11+
double a3 = 4.0;
12+
double a4 = 5.0;
13+
double a5 = 6.0;
14+
double a6 = 7.0;
15+
double a7 = 8.0;
16+
double a8 = 9.0;
17+
double a9 = 10.0;
18+
19+
for (int i = 1; i < 10; i++)
20+
{
21+
a0 *= 1.0;
22+
a1 *= 2.0;
23+
a2 *= 3.0;
24+
a3 *= 4.0;
25+
a4 *= 5.0;
26+
a5 *= 6.0;
27+
a6 *= 7.0;
28+
a7 *= 8.0;
29+
a8 *= 9.0;
30+
a9 *= 10.0;
31+
}
32+
33+
EHMethod();
34+
35+
bool isExpectedValue =
36+
a0 == 1.0
37+
&& a1 == Math.Pow(2, 10)
38+
&& a2 == Math.Pow(3, 10)
39+
&& a3 == Math.Pow(4, 10)
40+
&& a4 == Math.Pow(5, 10)
41+
&& a5 == Math.Pow(6, 10)
42+
&& a6 == Math.Pow(7, 10)
43+
&& a7 == Math.Pow(8, 10)
44+
&& a8 == Math.Pow(9, 10)
45+
&& a9 == Math.Pow(10, 10);
46+
47+
return isExpectedValue ? 100 : 1;
48+
}
49+
50+
[MethodImpl(MethodImplOptions.NoInlining)]
51+
static void EHMethod()
52+
{
53+
try
54+
{
55+
FloatManipulationMethod();
56+
}
57+
catch (Exception) { }
58+
}
59+
60+
[MethodImpl(MethodImplOptions.NoInlining)]
61+
static void FloatManipulationMethod()
62+
{
63+
// Enough locals to try to get the JIT to touch at least some of the non-volatile
64+
// registers (some spilling might happen, but hopefully the lack of EH prioritizes
65+
// registers).
66+
double a0 = 1, a1 = 2, a2 = 3, a3 = 4, a4 = 5, a5 = 6, a6 = 7, a7 = 8;
67+
double a8 = 1, a9 = 2, a10 = 3, a11 = 4, a12 = 5, a13 = 6, a14 = 7, a15 = 8;
68+
double a16 = 1, a17 = 2, a18 = 3, a19 = 4, a20 = 5, a21 = 6, a22 = 7, a23 = 8;
69+
double a24 = 1, a25 = 2, a26 = 3, a27 = 4, a28 = 5, a29 = 6, a30 = 7, a31 = 8;
70+
71+
// Some busy math to prevent easy optimizations and folding.
72+
for (int i = 0; i < 5; i++)
73+
{
74+
a0 -= 1; a1 -= 2; a2 -= 3; a3 -= 4; a4 -= 5; a5 -= 6; a6 -= 7; a7 -= 8;
75+
a8 -= 9; a9 -= 10; a10 -= 11; a11 -= 12; a12 -= 13; a13 -= 14; a14 -= 15; a15 -= 16;
76+
a16 -= 17; a17 -= 18; a18 -= 19; a19 -= 20; a20 -= 21; a21 -= 22; a22 -= 23; a23 -= 24;
77+
a24 -= 25; a25 -= 26; a26 -= 27; a27 -= 28; a28 -= 29; a29 -= 30; a30 -= 31; a31 -= 32;
78+
}
79+
80+
throw new Exception();
81+
}
82+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
<PropertyGroup>
3+
<OutputType>Exe</OutputType>
4+
</PropertyGroup>
5+
<ItemGroup>
6+
<Compile Include="UnwindFpBleedTest.cs" />
7+
</ItemGroup>
8+
</Project>

src/tests/issues.targets

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -597,6 +597,9 @@
597597
<ExcludeList Include="$(XunitTestBinBase)/JIT/jit64/opt/rngchk/RngchkStress3/*">
598598
<Issue>Needs Triage</Issue>
599599
</ExcludeList>
600+
<ExcludeList Include="$(XunitTestBinBase)/Exceptions/UnwindFpBleedTest/UnwindFpBleedTest/*">
601+
<Issue>Windows's unwinder in ARM64v8 queue doesn't contain FP unwind fix</Issue>
602+
</ExcludeList>
600603
</ItemGroup>
601604

602605
<!-- The following are x64 Unix failures on CoreCLR. -->
@@ -1138,9 +1141,9 @@
11381141
<ExcludeList Include="$(XunitTestBinBase)/Interop/COM/Reflection/Reflection/**">
11391142
<Issue>https://github.com/dotnet/runtime/issues/34371</Issue>
11401143
</ExcludeList>
1141-
<ExcludeList Include="$(XunitTestBinBase)/Interop/COM/ComWrappers/**">
1142-
<Issue>Not supported on Mono</Issue>
1143-
</ExcludeList>
1144+
<ExcludeList Include="$(XunitTestBinBase)/Interop/COM/ComWrappers/**">
1145+
<Issue>Not supported on Mono</Issue>
1146+
</ExcludeList>
11441147
<ExcludeList Include="$(XunitTestBinBase)/Interop/ICastable/Castable/**">
11451148
<Issue>needs triage</Issue>
11461149
</ExcludeList>

src/workloads/workloads.csproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@
7272
Description=".NET runtime components for tvOS execution."/>
7373
<ComponentResources Include="runtimes-maccatalyst" Title=".NET Mac Catalyst Build Tools"
7474
Description=".NET runtime components for Mac Catalyst execution."/>
75+
<ComponentResources Include="runtimes-windows" Title=".NET Windows Runtimes"
76+
Description=".NET runtime components for Windows execution."/>
7577

7678
<!-- Visual Studio components must be versioned. Build tasks will fall back to cobbling a version number from
7779
the manifest information unless it's overridden. -->
@@ -85,6 +87,7 @@
8587
<ComponentVersions Include="runtimes-ios" Version="$(FileVersion)" />
8688
<ComponentVersions Include="runtimes-tvos" Version="$(FileVersion)" />
8789
<ComponentVersions Include="runtimes-maccatalyst" Version="$(FileVersion)" />
90+
<ComponentVersions Include="runtimes-windows" Version="$(FileVersion)" />
8891
</ItemGroup>
8992

9093
<!-- BAR requires having version information in blobs -->

0 commit comments

Comments
 (0)