Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
753e467
[release/9.0-staging] Fix crash during Async Break when APC and CET a…
thaystg May 19, 2025
d090ada
Account for CompilationMappingAttribute supporting multiple declarati…
github-actions[bot] May 21, 2025
bdcc494
[release/9.0-staging][wasm][interpreter] Fix PackedSimd interpreter i…
lewing May 21, 2025
331ddf9
[release/9.0-staging] JIT: Fix invalid removal of explicit zeroing in…
jakobbotsch May 22, 2025
fee2cf8
throw an exception instead of infinite loop (#115529)
github-actions[bot] May 23, 2025
55a7a99
[release/9.0-staging] [DNS] Ignore ObjectDisposedException on Cancell…
github-actions[bot] May 27, 2025
c7e6e39
Revert "[release/9.0-staging] Fix crash during Async Break when APC a…
thaystg Jun 2, 2025
74a39ca
[release/9.0-staging] Fix SysV first/second return register GC info m…
jakobbotsch Jun 4, 2025
287bff1
[release/9.0-staging] Fix PipeStream leak on Windows when pipe is dis…
github-actions[bot] Jun 4, 2025
f673d5d
[release/9.0] Fix edge cases in Tarjan GC bridge (Android) (#114682)
filipnavara Jun 7, 2025
3090813
[release/9.0-staging] Revert change to follow symlinks of dotnet host…
github-actions[bot] Jun 7, 2025
bbe2762
Fix generation of minidump (#115738)
github-actions[bot] Jun 9, 2025
397ee5f
fix(#114260): in rsa signatures, configure digest before padding mode…
github-actions[bot] Jun 9, 2025
0eb433a
JIT: Fix possible heap corruption in outlined composite SSA storage (…
github-actions[bot] Jun 9, 2025
773a1bc
Update dependencies from https://github.com/dotnet/roslyn build 20250…
dotnet-maestro[bot] Jun 9, 2025
d2ff0bf
[release/9.0-staging] Update dependencies from dotnet/arcade (#115855)
dotnet-maestro[bot] Jun 9, 2025
ba3ae9b
[release/9.0-staging] Update dependencies from dotnet/icu (#115597)
dotnet-maestro[bot] Jun 9, 2025
220421f
[release/9.0-staging] Update dependencies from dotnet/sdk (#115710)
dotnet-maestro[bot] Jun 9, 2025
6471d6f
[release/9.0-staging] Update dependencies from dotnet/cecil (#115504)
dotnet-maestro[bot] Jun 9, 2025
9e88f03
Update dependencies from https://github.com/dotnet/xharness build 202…
dotnet-maestro[bot] Jun 9, 2025
a738819
Merge branch 'release/9.0-staging' into merge/release/9.0-to-release/…
jozkee Jun 9, 2025
9ff8b2f
Bump SDK version since it was broken by dotnet/arcade codeflow (#116450)
jozkee Jun 9, 2025
9744ebc
Merge pull request #115576 from dotnet/merge/release/9.0-to-release/9…
jozkee Jun 10, 2025
805cb73
[release/9.0-staging] Link peer's X509 stack handle to parent SSL saf…
github-actions[bot] Jun 10, 2025
2ec664a
[release/9.0-staging] [mono][interp] Minor SSA fixes (#116428)
BrzVlad Jun 10, 2025
edd05fd
Update dependencies from https://github.com/dotnet/runtime-assets bui…
dotnet-maestro[bot] Jun 10, 2025
0ddb6b0
[release/9.0-staging] Disable the UTFStringConversionFailures test on…
github-actions[bot] Jun 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .config/dotnet-tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
]
},
"microsoft.dotnet.xharness.cli": {
"version": "9.0.0-prerelease.25228.2",
"version": "9.0.0-prerelease.25269.3",
"commands": [
"xharness"
]
Expand Down
2 changes: 1 addition & 1 deletion NuGet.config
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
<!-- End: Package sources from dotnet-emsdk -->
<!-- Begin: Package sources from dotnet-sdk -->

<add key="darc-pub-dotnet-sdk-b562a30" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/darc-pub-dotnet-sdk-b562a300/nuget/v3/index.json" />
<add key="darc-pub-dotnet-sdk-38e51fe" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/darc-pub-dotnet-sdk-38e51fe4/nuget/v3/index.json" />
<!-- End: Package sources from dotnet-sdk -->
<!--End: Package sources managed by Dependency Flow automation. Do not edit the sources above.-->
<!--
Expand Down
178 changes: 89 additions & 89 deletions eng/Version.Details.xml

Large diffs are not rendered by default.

78 changes: 39 additions & 39 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@
Any tools that contribute to the design-time experience should use the MicrosoftCodeAnalysisVersion_LatestVS property above to ensure
they do not break the local dev experience.
-->
<MicrosoftCodeAnalysisCSharpVersion>4.12.0-3.25256.6</MicrosoftCodeAnalysisCSharpVersion>
<MicrosoftCodeAnalysisVersion>4.12.0-3.25256.6</MicrosoftCodeAnalysisVersion>
<MicrosoftNetCompilersToolsetVersion>4.12.0-3.25256.6</MicrosoftNetCompilersToolsetVersion>
<MicrosoftCodeAnalysisCSharpVersion>4.12.0-3.25275.3</MicrosoftCodeAnalysisCSharpVersion>
<MicrosoftCodeAnalysisVersion>4.12.0-3.25275.3</MicrosoftCodeAnalysisVersion>
<MicrosoftNetCompilersToolsetVersion>4.12.0-3.25275.3</MicrosoftNetCompilersToolsetVersion>
</PropertyGroup>
<!--
For source generator support we need to target multiple versions of Roslyn in order to be able to run on older versions of Roslyn.
Expand Down Expand Up @@ -85,22 +85,22 @@
<!-- SDK dependencies (also used in wasm build tests -->
<MicrosoftDotNetApiCompatTaskVersion>9.0.107</MicrosoftDotNetApiCompatTaskVersion>
<!-- Arcade dependencies -->
<MicrosoftDotNetBuildTasksFeedVersion>9.0.0-beta.25255.5</MicrosoftDotNetBuildTasksFeedVersion>
<MicrosoftDotNetCodeAnalysisVersion>9.0.0-beta.25255.5</MicrosoftDotNetCodeAnalysisVersion>
<MicrosoftDotNetGenAPIVersion>9.0.0-beta.25255.5</MicrosoftDotNetGenAPIVersion>
<MicrosoftDotNetGenFacadesVersion>9.0.0-beta.25255.5</MicrosoftDotNetGenFacadesVersion>
<MicrosoftDotNetXUnitAssertVersion>2.9.0-beta.25255.5</MicrosoftDotNetXUnitAssertVersion>
<MicrosoftDotNetXUnitExtensionsVersion>9.0.0-beta.25255.5</MicrosoftDotNetXUnitExtensionsVersion>
<MicrosoftDotNetXUnitConsoleRunnerVersion>2.9.0-beta.25255.5</MicrosoftDotNetXUnitConsoleRunnerVersion>
<MicrosoftDotNetBuildTasksArchivesVersion>9.0.0-beta.25255.5</MicrosoftDotNetBuildTasksArchivesVersion>
<MicrosoftDotNetBuildTasksInstallersVersion>9.0.0-beta.25255.5</MicrosoftDotNetBuildTasksInstallersVersion>
<MicrosoftDotNetBuildTasksPackagingVersion>9.0.0-beta.25255.5</MicrosoftDotNetBuildTasksPackagingVersion>
<MicrosoftDotNetBuildTasksTargetFrameworkVersion>9.0.0-beta.25255.5</MicrosoftDotNetBuildTasksTargetFrameworkVersion>
<MicrosoftDotNetBuildTasksTemplatingVersion>9.0.0-beta.25255.5</MicrosoftDotNetBuildTasksTemplatingVersion>
<MicrosoftDotNetBuildTasksWorkloadsPackageVersion>9.0.0-beta.25255.5</MicrosoftDotNetBuildTasksWorkloadsPackageVersion>
<MicrosoftDotNetRemoteExecutorVersion>9.0.0-beta.25255.5</MicrosoftDotNetRemoteExecutorVersion>
<MicrosoftDotNetVersionToolsTasksVersion>9.0.0-beta.25255.5</MicrosoftDotNetVersionToolsTasksVersion>
<MicrosoftDotNetPackageTestingVersion>9.0.0-beta.25255.5</MicrosoftDotNetPackageTestingVersion>
<MicrosoftDotNetBuildTasksFeedVersion>9.0.0-beta.25302.2</MicrosoftDotNetBuildTasksFeedVersion>
<MicrosoftDotNetCodeAnalysisVersion>9.0.0-beta.25302.2</MicrosoftDotNetCodeAnalysisVersion>
<MicrosoftDotNetGenAPIVersion>9.0.0-beta.25302.2</MicrosoftDotNetGenAPIVersion>
<MicrosoftDotNetGenFacadesVersion>9.0.0-beta.25302.2</MicrosoftDotNetGenFacadesVersion>
<MicrosoftDotNetXUnitAssertVersion>2.9.0-beta.25302.2</MicrosoftDotNetXUnitAssertVersion>
<MicrosoftDotNetXUnitExtensionsVersion>9.0.0-beta.25302.2</MicrosoftDotNetXUnitExtensionsVersion>
<MicrosoftDotNetXUnitConsoleRunnerVersion>2.9.0-beta.25302.2</MicrosoftDotNetXUnitConsoleRunnerVersion>
<MicrosoftDotNetBuildTasksArchivesVersion>9.0.0-beta.25302.2</MicrosoftDotNetBuildTasksArchivesVersion>
<MicrosoftDotNetBuildTasksInstallersVersion>9.0.0-beta.25302.2</MicrosoftDotNetBuildTasksInstallersVersion>
<MicrosoftDotNetBuildTasksPackagingVersion>9.0.0-beta.25302.2</MicrosoftDotNetBuildTasksPackagingVersion>
<MicrosoftDotNetBuildTasksTargetFrameworkVersion>9.0.0-beta.25302.2</MicrosoftDotNetBuildTasksTargetFrameworkVersion>
<MicrosoftDotNetBuildTasksTemplatingVersion>9.0.0-beta.25302.2</MicrosoftDotNetBuildTasksTemplatingVersion>
<MicrosoftDotNetBuildTasksWorkloadsPackageVersion>9.0.0-beta.25302.2</MicrosoftDotNetBuildTasksWorkloadsPackageVersion>
<MicrosoftDotNetRemoteExecutorVersion>9.0.0-beta.25302.2</MicrosoftDotNetRemoteExecutorVersion>
<MicrosoftDotNetVersionToolsTasksVersion>9.0.0-beta.25302.2</MicrosoftDotNetVersionToolsTasksVersion>
<MicrosoftDotNetPackageTestingVersion>9.0.0-beta.25302.2</MicrosoftDotNetPackageTestingVersion>
<!-- TODO: Remove pinned xunit.analyzers version: https://github.com/dotnet/runtime/issues/97088 -->
<XUnitAnalyzersVersion>1.4.0</XUnitAnalyzersVersion>
<!-- NuGet dependencies -->
Expand Down Expand Up @@ -141,20 +141,20 @@
<SystemReflectionMetadataToolsetVersion>8.0.0</SystemReflectionMetadataToolsetVersion>
<SystemReflectionMetadataLoadContextToolsetVersion>8.0.0</SystemReflectionMetadataLoadContextToolsetVersion>
<!-- Runtime-Assets dependencies -->
<SystemRuntimeNumericsTestDataVersion>9.0.0-beta.25211.3</SystemRuntimeNumericsTestDataVersion>
<SystemComponentModelTypeConverterTestDataVersion>9.0.0-beta.25211.3</SystemComponentModelTypeConverterTestDataVersion>
<SystemDataCommonTestDataVersion>9.0.0-beta.25211.3</SystemDataCommonTestDataVersion>
<SystemDrawingCommonTestDataVersion>9.0.0-beta.25211.3</SystemDrawingCommonTestDataVersion>
<SystemFormatsTarTestDataVersion>9.0.0-beta.25211.3</SystemFormatsTarTestDataVersion>
<SystemIOCompressionTestDataVersion>9.0.0-beta.25211.3</SystemIOCompressionTestDataVersion>
<SystemIOPackagingTestDataVersion>9.0.0-beta.25211.3</SystemIOPackagingTestDataVersion>
<SystemNetTestDataVersion>9.0.0-beta.25211.3</SystemNetTestDataVersion>
<SystemPrivateRuntimeUnicodeDataVersion>9.0.0-beta.25211.3</SystemPrivateRuntimeUnicodeDataVersion>
<SystemRuntimeTimeZoneDataVersion>9.0.0-beta.25211.3</SystemRuntimeTimeZoneDataVersion>
<SystemSecurityCryptographyX509CertificatesTestDataVersion>9.0.0-beta.25211.3</SystemSecurityCryptographyX509CertificatesTestDataVersion>
<SystemTextRegularExpressionsTestDataVersion>9.0.0-beta.25211.3</SystemTextRegularExpressionsTestDataVersion>
<SystemWindowsExtensionsTestDataVersion>9.0.0-beta.25211.3</SystemWindowsExtensionsTestDataVersion>
<MicrosoftDotNetCilStripSourcesVersion>9.0.0-beta.25211.3</MicrosoftDotNetCilStripSourcesVersion>
<SystemRuntimeNumericsTestDataVersion>9.0.0-beta.25266.2</SystemRuntimeNumericsTestDataVersion>
<SystemComponentModelTypeConverterTestDataVersion>9.0.0-beta.25266.2</SystemComponentModelTypeConverterTestDataVersion>
<SystemDataCommonTestDataVersion>9.0.0-beta.25266.2</SystemDataCommonTestDataVersion>
<SystemDrawingCommonTestDataVersion>9.0.0-beta.25266.2</SystemDrawingCommonTestDataVersion>
<SystemFormatsTarTestDataVersion>9.0.0-beta.25266.2</SystemFormatsTarTestDataVersion>
<SystemIOCompressionTestDataVersion>9.0.0-beta.25266.2</SystemIOCompressionTestDataVersion>
<SystemIOPackagingTestDataVersion>9.0.0-beta.25266.2</SystemIOPackagingTestDataVersion>
<SystemNetTestDataVersion>9.0.0-beta.25266.2</SystemNetTestDataVersion>
<SystemPrivateRuntimeUnicodeDataVersion>9.0.0-beta.25266.2</SystemPrivateRuntimeUnicodeDataVersion>
<SystemRuntimeTimeZoneDataVersion>9.0.0-beta.25266.2</SystemRuntimeTimeZoneDataVersion>
<SystemSecurityCryptographyX509CertificatesTestDataVersion>9.0.0-beta.25266.2</SystemSecurityCryptographyX509CertificatesTestDataVersion>
<SystemTextRegularExpressionsTestDataVersion>9.0.0-beta.25266.2</SystemTextRegularExpressionsTestDataVersion>
<SystemWindowsExtensionsTestDataVersion>9.0.0-beta.25266.2</SystemWindowsExtensionsTestDataVersion>
<MicrosoftDotNetCilStripSourcesVersion>9.0.0-beta.25266.2</MicrosoftDotNetCilStripSourcesVersion>
<!-- dotnet-optimization dependencies -->
<optimizationwindows_ntx64MIBCRuntimeVersion>1.0.0-prerelease.24462.2</optimizationwindows_ntx64MIBCRuntimeVersion>
<optimizationwindows_ntx86MIBCRuntimeVersion>1.0.0-prerelease.24462.2</optimizationwindows_ntx86MIBCRuntimeVersion>
Expand Down Expand Up @@ -184,9 +184,9 @@
<!-- Testing -->
<MicrosoftNETCoreCoreDisToolsVersion>1.4.0</MicrosoftNETCoreCoreDisToolsVersion>
<MicrosoftNETTestSdkVersion>17.4.0-preview-20220707-01</MicrosoftNETTestSdkVersion>
<MicrosoftDotNetXHarnessTestRunnersCommonVersion>9.0.0-prerelease.25228.2</MicrosoftDotNetXHarnessTestRunnersCommonVersion>
<MicrosoftDotNetXHarnessTestRunnersXunitVersion>9.0.0-prerelease.25228.2</MicrosoftDotNetXHarnessTestRunnersXunitVersion>
<MicrosoftDotNetXHarnessCLIVersion>9.0.0-prerelease.25228.2</MicrosoftDotNetXHarnessCLIVersion>
<MicrosoftDotNetXHarnessTestRunnersCommonVersion>9.0.0-prerelease.25269.3</MicrosoftDotNetXHarnessTestRunnersCommonVersion>
<MicrosoftDotNetXHarnessTestRunnersXunitVersion>9.0.0-prerelease.25269.3</MicrosoftDotNetXHarnessTestRunnersXunitVersion>
<MicrosoftDotNetXHarnessCLIVersion>9.0.0-prerelease.25269.3</MicrosoftDotNetXHarnessCLIVersion>
<MicrosoftDotNetHotReloadUtilsGeneratorBuildToolVersion>9.0.0-alpha.0.25209.2</MicrosoftDotNetHotReloadUtilsGeneratorBuildToolVersion>
<NUnitVersion>3.12.0</NUnitVersion>
<NUnit3TestAdapterVersion>4.5.0</NUnit3TestAdapterVersion>
Expand Down Expand Up @@ -215,11 +215,11 @@
<!-- Docs -->
<MicrosoftPrivateIntellisenseVersion>9.0.0-preview-20241010.1</MicrosoftPrivateIntellisenseVersion>
<!-- Mono Cecil -->
<MicrosoftDotNetCecilVersion>0.11.5-alpha.25228.2</MicrosoftDotNetCecilVersion>
<MicrosoftDotNetCecilVersion>0.11.5-alpha.25275.2</MicrosoftDotNetCecilVersion>
<!-- ILCompiler -->
<MicrosoftDotNetILCompilerVersion>9.0.0-rtm.24511.16</MicrosoftDotNetILCompilerVersion>
<!-- ICU -->
<MicrosoftNETCoreRuntimeICUTransportVersion>9.0.0-rtm.25258.1</MicrosoftNETCoreRuntimeICUTransportVersion>
<MicrosoftNETCoreRuntimeICUTransportVersion>9.0.0-rtm.25304.1</MicrosoftNETCoreRuntimeICUTransportVersion>
<MicrosoftNETCoreRuntimeICUTransportVersion>9.0.0-rtm.24466.4</MicrosoftNETCoreRuntimeICUTransportVersion>
<!-- MsQuic -->
<MicrosoftNativeQuicMsQuicSchannelVersion>2.4.8</MicrosoftNativeQuicMsQuicSchannelVersion>
Expand Down Expand Up @@ -263,7 +263,7 @@
<MicrosoftSymbolStoreVersion>1.0.406601</MicrosoftSymbolStoreVersion>
<!-- sdk version, for testing workloads -->
<!-- <SdkVersionForWorkloadTesting>$(MicrosoftDotNetApiCompatTaskVersion)</SdkVersionForWorkloadTesting> -->
<SdkVersionForWorkloadTesting>9.0.105</SdkVersionForWorkloadTesting>
<SdkVersionForWorkloadTesting>9.0.106</SdkVersionForWorkloadTesting>
<runtimewinx64MicrosoftNETCoreRuntimeWasmNodeTransportPackageVersion>9.0.0-alpha.1.24175.1</runtimewinx64MicrosoftNETCoreRuntimeWasmNodeTransportPackageVersion>
<EmsdkPackageVersion>$(MicrosoftNETRuntimeEmscriptenVersion)</EmsdkPackageVersion>
<NodePackageVersion>$(runtimewinx64MicrosoftNETCoreRuntimeWasmNodeTransportPackageVersion)</NodePackageVersion>
Expand Down
6 changes: 6 additions & 0 deletions eng/common/core-templates/post-build/post-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,11 @@ parameters:
displayName: Publish installers and checksums
type: boolean
default: true

- name: requireDefaultChannels
displayName: Fail the build if there are no default channel(s) registrations for the current build
type: boolean
default: false

- name: SDLValidationParameters
type: object
Expand Down Expand Up @@ -312,5 +317,6 @@ stages:
-PublishingInfraVersion ${{ parameters.publishingInfraVersion }}
-AzdoToken '$(System.AccessToken)'
-WaitPublishingFinish true
-RequireDefaultChannels ${{ parameters.requireDefaultChannels }}
-ArtifactsPublishingAdditionalParameters '${{ parameters.artifactsPublishingAdditionalParameters }}'
-SymbolPublishingAdditionalParameters '${{ parameters.symbolPublishingAdditionalParameters }}'
7 changes: 6 additions & 1 deletion eng/common/post-build/publish-using-darc.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ param(
[Parameter(Mandatory=$false)][string] $MaestroApiEndPoint = 'https://maestro.dot.net',
[Parameter(Mandatory=$true)][string] $WaitPublishingFinish,
[Parameter(Mandatory=$false)][string] $ArtifactsPublishingAdditionalParameters,
[Parameter(Mandatory=$false)][string] $SymbolPublishingAdditionalParameters
[Parameter(Mandatory=$false)][string] $SymbolPublishingAdditionalParameters,
[Parameter(Mandatory=$false)][string] $RequireDefaultChannels
)

try {
Expand Down Expand Up @@ -33,6 +34,10 @@ try {
if ("false" -eq $WaitPublishingFinish) {
$optionalParams.Add("--no-wait") | Out-Null
}

if ("true" -eq $RequireDefaultChannels) {
$optionalParams.Add("--default-channels-required") | Out-Null
}

& $darc add-build-to-channel `
--id $buildId `
Expand Down
10 changes: 5 additions & 5 deletions global.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
{
"sdk": {
"version": "9.0.105",
"version": "9.0.106",
"allowPrerelease": true,
"rollForward": "major"
},
"tools": {
"dotnet": "9.0.105"
"dotnet": "9.0.106"
},
"msbuild-sdks": {
"Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25255.5",
"Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25255.5",
"Microsoft.DotNet.SharedFramework.Sdk": "9.0.0-beta.25255.5",
"Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25302.2",
"Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25302.2",
"Microsoft.DotNet.SharedFramework.Sdk": "9.0.0-beta.25302.2",
"Microsoft.Build.NoTargets": "3.7.0",
"Microsoft.Build.Traversal": "3.4.0",
"Microsoft.NET.Sdk.IL": "9.0.0-rtm.24511.16"
Expand Down
8 changes: 8 additions & 0 deletions src/coreclr/gc/gc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10717,6 +10717,14 @@ size_t gc_heap::sort_mark_list()
size_t region_index = get_basic_region_index_for_address (heap_segment_mem (region));
uint8_t* region_limit = heap_segment_allocated (region);

// Due to GC holes, x can point to something in a region that already got freed. And that region's
// allocated would be 0 and cause an infinite loop which is much harder to handle on production than
// simply throwing an exception.
if (region_limit == 0)
{
FATAL_GC_ERROR();
}

uint8_t*** mark_list_piece_start_ptr = &mark_list_piece_start[region_index];
uint8_t*** mark_list_piece_end_ptr = &mark_list_piece_end[region_index];
#else // USE_REGIONS
Expand Down
12 changes: 12 additions & 0 deletions src/coreclr/jit/codegenxarch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6268,6 +6268,18 @@ void CodeGen::genCallInstruction(GenTreeCall* call X86_ARG(target_ssize_t stackA
{
retSize = emitTypeSize(retTypeDesc->GetReturnRegType(0));
secondRetSize = emitTypeSize(retTypeDesc->GetReturnRegType(1));

if (retTypeDesc->GetABIReturnReg(1, call->GetUnmanagedCallConv()) == REG_INTRET)
{
// If the second return register is REG_INTRET, then the first
// return is expected to be in a SIMD register.
// The emitter has hardcoded belief that retSize corresponds to
// REG_INTRET and secondRetSize to REG_INTRET_1, so fix up the
// situation here.
assert(!EA_IS_GCREF_OR_BYREF(retSize));
retSize = secondRetSize;
secondRetSize = EA_UNKNOWN;
}
}
else
{
Expand Down
17 changes: 15 additions & 2 deletions src/coreclr/jit/gcencode.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,21 @@ ReturnKind GCInfo::getReturnKind()
case 1:
return VarTypeToReturnKind(retTypeDesc.GetReturnRegType(0));
case 2:
return GetStructReturnKind(VarTypeToReturnKind(retTypeDesc.GetReturnRegType(0)),
VarTypeToReturnKind(retTypeDesc.GetReturnRegType(1)));
{
var_types first = retTypeDesc.GetReturnRegType(0);
var_types second = retTypeDesc.GetReturnRegType(1);
#ifdef UNIX_AMD64_ABI
if (varTypeUsesFloatReg(first))
{
// first does not consume an int register in this case so an obj/ref
// in the second ReturnKind would actually be found in the first int reg.
first = second;
second = TYP_UNDEF;
}
#endif // UNIX_AMD64_ABI
return GetStructReturnKind(VarTypeToReturnKind(first),
VarTypeToReturnKind(second));
}
default:
#ifdef DEBUG
for (unsigned i = 0; i < regCount; i++)
Expand Down
2 changes: 1 addition & 1 deletion src/coreclr/jit/gentree.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30167,7 +30167,7 @@ unsigned* SsaNumInfo::GetOutlinedNumSlot(Compiler* compiler, unsigned index) con
// Copy over all of the already encoded numbers.
if (!baseNum.IsInvalid())
{
for (int i = 0; i < SIMPLE_NUM_COUNT; i++)
for (int i = 0; i < count; i++)
{
pFirstSlot[i] = baseNum.GetNum(compiler, i);
}
Expand Down
4 changes: 2 additions & 2 deletions src/coreclr/jit/morphblock.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -250,8 +250,6 @@ void MorphInitBlockHelper::PropagateBlockAssertions()
//
void MorphInitBlockHelper::PropagateExpansionAssertions()
{
// Consider doing this for FieldByField as well
//
if (m_comp->optLocalAssertionProp && (m_transformationDecision == BlockTransformation::OneStoreBlock))
{
m_comp->fgAssertionGen(m_store);
Expand Down Expand Up @@ -408,6 +406,7 @@ void MorphInitBlockHelper::TryInitFieldByField()
if (m_comp->fgGlobalMorph && m_dstLclNode->IsLastUse(i))
{
JITDUMP("Field-by-field init skipping write to dead field V%02u\n", fieldLclNum);
m_comp->fgKillDependentAssertionsSingle(m_dstLclNum DEBUGARG(m_store));
continue;
}

Expand Down Expand Up @@ -1236,6 +1235,7 @@ GenTree* MorphCopyBlockHelper::CopyFieldByField()
{
INDEBUG(unsigned dstFieldLclNum = m_comp->lvaGetDesc(m_dstLclNum)->lvFieldLclStart + i);
JITDUMP("Field-by-field copy skipping write to dead field V%02u\n", dstFieldLclNum);
m_comp->fgKillDependentAssertionsSingle(m_dstLclNum DEBUGARG(m_store));
continue;
}

Expand Down
21 changes: 17 additions & 4 deletions src/coreclr/vm/method.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1324,6 +1324,15 @@ ReturnKind MethodDesc::ParseReturnKindFromSig(INDEBUG(bool supportStringConstruc
regKinds[i] = RT_Scalar;
}
}

if (eeClass->GetEightByteClassification(0) == SystemVClassificationTypeSSE)
{
// Skip over SSE types since they do not consume integer registers.
// An obj/byref in the 2nd eight bytes will be in the first integer register.
regKinds[0] = regKinds[1];
regKinds[1] = RT_Scalar;
}

ReturnKind structReturnKind = GetStructReturnKind(regKinds[0], regKinds[1]);
return structReturnKind;
}
Expand Down Expand Up @@ -3687,10 +3696,14 @@ MethodDesc::EnumMemoryRegions(CLRDataEnumMemoryFlags flags)
ILCodeVersion ilVersion = pCodeVersionManager->GetActiveILCodeVersion(dac_cast<PTR_MethodDesc>(this));
if (!ilVersion.IsNull())
{
ilVersion.GetActiveNativeCodeVersion(dac_cast<PTR_MethodDesc>(this));
ilVersion.GetVersionId();
ilVersion.GetRejitState();
ilVersion.GetIL();
EX_TRY
{
ilVersion.GetActiveNativeCodeVersion(dac_cast<PTR_MethodDesc>(this));
ilVersion.GetVersionId();
ilVersion.GetRejitState();
ilVersion.GetIL();
}
EX_CATCH_RETHROW_ONLY_COR_E_OPERATIONCANCELLED
}
#endif

Expand Down
Loading
Loading