diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json
index 72af997c0c254..6ff1559a00ab9 100644
--- a/.config/dotnet-tools.json
+++ b/.config/dotnet-tools.json
@@ -15,7 +15,7 @@
]
},
"microsoft.dotnet.xharness.cli": {
- "version": "8.0.0-prerelease.24060.1",
+ "version": "8.0.0-prerelease.24112.2",
"commands": [
"xharness"
]
diff --git a/NuGet.config b/NuGet.config
index a681bc250bc9e..97380116615ba 100644
--- a/NuGet.config
+++ b/NuGet.config
@@ -9,7 +9,7 @@
-
+
diff --git a/eng/Publishing.props b/eng/Publishing.props
index 920e79cbbd2f7..8b796225f8274 100644
--- a/eng/Publishing.props
+++ b/eng/Publishing.props
@@ -1,6 +1,7 @@
-
+
- 3
+ true
-
\ No newline at end of file
+
+
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index b54cff26d4cff..7bad61f7c233a 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -90,13 +90,13 @@
45dd3a73dd5b64b010c4251303b3664bb30df029
-
+
https://github.com/dotnet/emsdk
- 9a29abdd764a4de0f253ed368871877a47725247
+ 1639670c6547454278f51afc5c74e20f8acc7abd
-
+
https://github.com/dotnet/emsdk
- 9a29abdd764a4de0f253ed368871877a47725247
+ 1639670c6547454278f51afc5c74e20f8acc7abd
@@ -104,9 +104,9 @@
453a37ef7ae6c335cd49b3b9ab7713c87faeb265
-
+
https://github.com/dotnet/source-build-externals
- 83274d94c7e2ff21081b0d75ecbec2da2241f831
+ 7a9b99e457a2b9792a3c17ccaf95d80038725108
@@ -185,57 +185,57 @@
https://github.com/dotnet/arcade
da98edc4c3ea539f109ea320672136ceb32591a7
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
https://github.com/dotnet/llvm-project
@@ -322,17 +322,17 @@
https://github.com/dotnet/runtime
edbd5c769a19798b6955050baccf99e6797d3208
-
+
https://github.com/dotnet/xharness
- a417169d3ba558fd6daa522f04e686574bbce520
+ c055cc57f21796e79ace4bca2b070a8777f2446a
-
+
https://github.com/dotnet/xharness
- a417169d3ba558fd6daa522f04e686574bbce520
+ c055cc57f21796e79ace4bca2b070a8777f2446a
-
+
https://github.com/dotnet/xharness
- a417169d3ba558fd6daa522f04e686574bbce520
+ c055cc57f21796e79ace4bca2b070a8777f2446a
https://github.com/dotnet/arcade
@@ -358,9 +358,9 @@
https://github.com/dotnet/hotreload-utils
bc857c64c5c5f1fc73048261e8f471c3310224d2
-
+
https://github.com/dotnet/runtime-assets
- ca6c46012f68934198ce0d303196c3ae179230f5
+ 0827f89642a6443c96a87990e3b910f6aa4cc4ed
https://github.com/dotnet/roslyn
diff --git a/eng/Versions.props b/eng/Versions.props
index 9c3641d22d16b..e67e223bb4188 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -143,20 +143,20 @@
4.5.0
8.0.0-rc.1.23406.6
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
- 8.0.0-beta.24108.4
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
+ 8.0.0-beta.24115.2
1.0.0-prerelease.23566.3
1.0.0-prerelease.23566.3
@@ -165,7 +165,7 @@
1.0.0-prerelease.23566.3
1.0.0-prerelease.23566.3
- 16.11.29-beta1.23404.4
+ 17.8.7-beta1.24113.1
2.0.0-beta4.23307.1
3.0.3
2.1.0
@@ -183,9 +183,9 @@
1.1.0
17.4.0-preview-20220707-01
- 8.0.0-prerelease.24060.1
- 8.0.0-prerelease.24060.1
- 8.0.0-prerelease.24060.1
+ 8.0.0-prerelease.24112.2
+ 8.0.0-prerelease.24112.2
+ 8.0.0-prerelease.24112.2
8.0.0-alpha.0.24072.2
2.4.2
1.0.0
@@ -240,7 +240,7 @@
Note: when the name is updated, make sure to update dependency name in eng/pipelines/common/xplat-setup.yml
like - DarcDependenciesChanged.Microsoft_NET_Workload_Emscripten_Current_Manifest-8_0_100_Transport
-->
- 8.0.3
+ 8.0.4
$(MicrosoftNETWorkloadEmscriptenCurrentManifest80100Version)
1.1.87-gba258badda
diff --git a/src/coreclr/jit/codegencommon.cpp b/src/coreclr/jit/codegencommon.cpp
index 72e31c388154a..c6892747e0548 100644
--- a/src/coreclr/jit/codegencommon.cpp
+++ b/src/coreclr/jit/codegencommon.cpp
@@ -6154,8 +6154,14 @@ void CodeGen::genFnProlog()
};
#if defined(TARGET_AMD64) || defined(TARGET_ARM64) || defined(TARGET_ARM)
- assignIncomingRegisterArgs(&intRegState);
+ // Handle float parameters first; in the presence of struct promotion
+ // we can have parameters that are homed into float registers but
+ // passed in integer registers. So make sure we get those out of the
+ // integer registers before we potentially override those as part of
+ // handling integer parameters.
+
assignIncomingRegisterArgs(&floatRegState);
+ assignIncomingRegisterArgs(&intRegState);
#else
assignIncomingRegisterArgs(&intRegState);
#endif
diff --git a/src/coreclr/jit/lsra.cpp b/src/coreclr/jit/lsra.cpp
index 0a33ba3faba9b..c4f2d68e00d70 100644
--- a/src/coreclr/jit/lsra.cpp
+++ b/src/coreclr/jit/lsra.cpp
@@ -1663,6 +1663,21 @@ bool LinearScan::isRegCandidate(LclVarDsc* varDsc)
return false;
}
+ // Avoid allocating parameters that are passed in float regs into integer
+ // registers. We currently home float registers before integer registers,
+ // so that kind of enregistration can trash integer registers containing
+ // other parameters.
+ // We assume that these cases will be homed to float registers if they are
+ // promoted.
+ // TODO-CQ: Combine integer and float register homing to handle these kinds
+ // of conflicts.
+ if ((varDsc->TypeGet() == TYP_STRUCT) && varDsc->lvIsRegArg && !varDsc->lvPromoted &&
+ varTypeUsesIntReg(varDsc->GetRegisterType()) && genIsValidFloatReg(varDsc->GetArgReg()))
+ {
+ compiler->lvaSetVarDoNotEnregister(lclNum DEBUGARG(DoNotEnregisterReason::IsStructArg));
+ return false;
+ }
+
// Are we not optimizing and we have exception handlers?
// if so mark all args and locals as volatile, so that they
// won't ever get enregistered.
diff --git a/src/coreclr/nativeaot/BuildIntegration/Microsoft.DotNet.ILCompiler.SingleEntry.targets b/src/coreclr/nativeaot/BuildIntegration/Microsoft.DotNet.ILCompiler.SingleEntry.targets
index 178d8aaa93aa9..299840345a791 100644
--- a/src/coreclr/nativeaot/BuildIntegration/Microsoft.DotNet.ILCompiler.SingleEntry.targets
+++ b/src/coreclr/nativeaot/BuildIntegration/Microsoft.DotNet.ILCompiler.SingleEntry.targets
@@ -5,8 +5,7 @@
<_hostOS>$(NETCoreSdkPortableRuntimeIdentifier.SubString(0, $(NETCoreSdkPortableRuntimeIdentifier.LastIndexOf('-'))))
<_targetOS>$(RuntimeIdentifier.SubString(0, $(RuntimeIdentifier.LastIndexOf('-'))))
- <_indexOfPeriod>$(_targetOS.IndexOf('.'))
- <_targetOS Condition="'$(_indexOfPeriod)' > -1">$(_targetOS.SubString(0, $(_indexOfPeriod)))
+ <_targetOS Condition="$(_targetOS.Contains('.'))">$(_targetOS.SubString(0, $(_targetOS.IndexOf('.'))))
<_targetOS Condition="$(_targetOS.StartsWith('win'))">win
diff --git a/src/coreclr/vm/zapsig.cpp b/src/coreclr/vm/zapsig.cpp
index bbbab9a51c84d..dfd447f94eaaf 100644
--- a/src/coreclr/vm/zapsig.cpp
+++ b/src/coreclr/vm/zapsig.cpp
@@ -1350,6 +1350,9 @@ BOOL ZapSig::EncodeMethod(
else
{
Instantiation inst = pMethod->GetMethodInstantiation();
+
+ pSigBuilder->AppendData(inst.GetNumArgs());
+
for (DWORD i = 0; i < inst.GetNumArgs(); i++)
{
TypeHandle t = inst[i];
diff --git a/src/installer/prepare-artifacts.proj b/src/installer/prepare-artifacts.proj
index 5413e825c9513..a9e0931c11601 100644
--- a/src/installer/prepare-artifacts.proj
+++ b/src/installer/prepare-artifacts.proj
@@ -23,6 +23,8 @@
+
+
@@ -56,6 +58,16 @@
+
+
+
+ DotNetReleaseShipping=true
+
+
+