diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 14a3f8f9afda20..176c545e7e44f8 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -16,69 +16,69 @@
https://github.com/dotnet/wcf
7f504aabb1988e9a093c1e74d8040bd52feb2f01
-
+
https://github.com/dotnet/llvm-project
- 8688ea2538ef1287c6619d35a26b5750d355cc18
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- 8688ea2538ef1287c6619d35a26b5750d355cc18
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- 8688ea2538ef1287c6619d35a26b5750d355cc18
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- 8688ea2538ef1287c6619d35a26b5750d355cc18
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- 8688ea2538ef1287c6619d35a26b5750d355cc18
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- 8688ea2538ef1287c6619d35a26b5750d355cc18
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- 8688ea2538ef1287c6619d35a26b5750d355cc18
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- 8688ea2538ef1287c6619d35a26b5750d355cc18
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- c1304304028d603e34f6803b0740c34441f80d2e
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- c1304304028d603e34f6803b0740c34441f80d2e
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- c1304304028d603e34f6803b0740c34441f80d2e
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- 754d13817d834b716d339183e21aac7d2489c496
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- c1304304028d603e34f6803b0740c34441f80d2e
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- c1304304028d603e34f6803b0740c34441f80d2e
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- c1304304028d603e34f6803b0740c34441f80d2e
+ 2e1187ef495010c65842a001f34c46006d5a01bc
-
+
https://github.com/dotnet/llvm-project
- c1304304028d603e34f6803b0740c34441f80d2e
+ 2e1187ef495010c65842a001f34c46006d5a01bc
https://github.com/dotnet/command-line-api
diff --git a/eng/Versions.props b/eng/Versions.props
index c156052dd09503..5b1579d2d3981b 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -80,14 +80,14 @@
6.0.0
8.0.0-alpha.1.22475.4
- 1.0.0-alpha.1.22458.3
- 1.0.0-alpha.1.22458.3
- 1.0.0-alpha.1.22458.3
- 1.0.0-alpha.1.22458.3
- 1.0.0-alpha.1.22458.3
- 1.0.0-alpha.1.22458.3
- 1.0.0-alpha.1.22458.3
- 1.0.0-alpha.1.22458.3
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
6.0.0
1.1.1
@@ -206,13 +206,13 @@
1.0.0-v3.14.0.5722
6.0.0-preview.5.21275.7
- 1.0.0-alpha.1.22431.4
- 1.0.0-alpha.1.22431.4
- 1.0.0-alpha.1.22431.4
- 1.0.0-alpha.1.22431.4
- 1.0.0-alpha.1.22431.4
- 1.0.0-alpha.1.22431.4
- 1.0.0-alpha.1.22431.4
- 1.0.0-alpha.1.22431.4
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
+ 1.0.0-alpha.1.22478.1
diff --git a/eng/native/tryrun.cmake b/eng/native/tryrun.cmake
index 5c5344bd80161c..6355b0988f7ca9 100644
--- a/eng/native/tryrun.cmake
+++ b/eng/native/tryrun.cmake
@@ -64,7 +64,7 @@ if(DARWIN)
set_cache_value(SSCANF_CANNOT_HANDLE_MISSING_EXPONENT_EXITCODE 1)
set_cache_value(SSCANF_SUPPORT_ll_EXITCODE 0)
set_cache_value(UNGETC_NOT_RETURN_EOF_EXITCODE 1)
- set_cache_value(HAVE_SHM_OPEN_THAT_WORKS_WELL_ENOUGH_WITH_MMAP_EXITCODE 0)
+ set_cache_value(HAVE_SHM_OPEN_THAT_WORKS_WELL_ENOUGH_WITH_MMAP_EXITCODE 1)
else()
message(FATAL_ERROR "Arch is ${TARGET_ARCH_NAME}. Only arm64 or x64 is supported for OSX cross build!")
endif()
diff --git a/eng/pipelines/runtime-extra-platforms-other.yml b/eng/pipelines/runtime-extra-platforms-other.yml
index 95fe8858ba2ba5..6ea701939590a7 100644
--- a/eng/pipelines/runtime-extra-platforms-other.yml
+++ b/eng/pipelines/runtime-extra-platforms-other.yml
@@ -84,6 +84,8 @@ jobs:
platforms:
- windows_x64
- windows_arm64
+ - OSX_x64
+ - OSX_arm64
- Linux_x64
- Linux_arm64
- Linux_musl_x64
diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml
index 04e209c541cfea..09b192f74b1efc 100644
--- a/eng/pipelines/runtime.yml
+++ b/eng/pipelines/runtime.yml
@@ -273,6 +273,7 @@ jobs:
platforms:
- windows_arm64
- Linux_arm64
+ - OSX_arm64
jobParameters:
testGroup: innerloop
isSingleFile: true
diff --git a/eng/testing/tests.singlefile.targets b/eng/testing/tests.singlefile.targets
index 5081048c8032ca..ebe2867d78249e 100644
--- a/eng/testing/tests.singlefile.targets
+++ b/eng/testing/tests.singlefile.targets
@@ -21,8 +21,8 @@
$(CoreCLRILCompilerDir)
$(CoreCLRCrossILCompilerDir)
- clang-15
- clang-9
+ clang-15
+ clang-9
$(ROOTFS_DIR)
$(CoreCLRILCompilerDir)netstandard/ILCompiler.Build.Tasks.dll
$(CoreCLRAotSdkDir)
diff --git a/src/coreclr/nativeaot/BuildIntegration/Microsoft.DotNet.ILCompiler.SingleEntry.targets b/src/coreclr/nativeaot/BuildIntegration/Microsoft.DotNet.ILCompiler.SingleEntry.targets
index 4ea64f9b83be41..1b3d56e863c3fc 100644
--- a/src/coreclr/nativeaot/BuildIntegration/Microsoft.DotNet.ILCompiler.SingleEntry.targets
+++ b/src/coreclr/nativeaot/BuildIntegration/Microsoft.DotNet.ILCompiler.SingleEntry.targets
@@ -23,6 +23,8 @@
arm64
+ x64
+
$(OSHostArch)
runtime.$(OSIdentifier)-$(IlcHostArch).Microsoft.DotNet.ILCompiler
diff --git a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets
index 58937c04c18da6..28b87236e7046c 100644
--- a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets
+++ b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets
@@ -29,11 +29,12 @@ The .NET Foundation licenses this file to you under the MIT license.
libRuntime.ServerGC
- $(RuntimeIdentifier)
+ $(RuntimeIdentifier)
x86_64
- aarch64
+ aarch64
+ arm64
$(CrossCompileArch)-linux-gnu
@@ -85,7 +86,8 @@ The .NET Foundation licenses this file to you under the MIT license.
-
+
+
diff --git a/src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/DependencyAnalysis/ObjectWriter.cs b/src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/DependencyAnalysis/ObjectWriter.cs
index fb1f38266fbb1e..c18dc5f39b5c5c 100644
--- a/src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/DependencyAnalysis/ObjectWriter.cs
+++ b/src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/DependencyAnalysis/ObjectWriter.cs
@@ -713,6 +713,18 @@ public void EmitCFICodes(int offset)
// Internal compiler error
Debug.Assert(false);
}
+
+ if (_targetPlatform.OperatingSystem == TargetOS.OSX)
+ {
+ // Emit a symbol for beginning of the frame. This is workaround for ld64
+ // linker bug which would produce DWARF with incorrect pcStart offsets for
+ // exception handling blocks if there is no symbol present for them.
+ //
+ // To make things simple we just reuse blobSymbolName and change `_lsda`
+ // prefix to `_fram`.
+ "_fram"u8.CopyTo(blobSymbolName);
+ EmitSymbolDef(blobSymbolName);
+ }
}
// Emit individual cfi blob for the given offset
@@ -1272,7 +1284,7 @@ private static string GetLLVMTripleFromTarget(TargetDetails target)
break;
case TargetOS.OSX:
vendor = "apple";
- sys = "darwin";
+ sys = "darwin16";
abi = "macho";
break;
case TargetOS.WebAssembly:
diff --git a/src/libraries/System.Runtime.Extensions/tests/System/EnvironmentTests.cs b/src/libraries/System.Runtime.Extensions/tests/System/EnvironmentTests.cs
index 3c82cfe0032833..55c666ba0b8b4a 100644
--- a/src/libraries/System.Runtime.Extensions/tests/System/EnvironmentTests.cs
+++ b/src/libraries/System.Runtime.Extensions/tests/System/EnvironmentTests.cs
@@ -186,9 +186,13 @@ public void OSVersion_ValidVersion_OSX()
{
Version version = Environment.OSVersion.Version;
- // verify that the Environment.OSVersion.Version matches the current RID
- // As of 12.0, only major version numbers are included in the RID
- Assert.Contains(version.ToString(1), RuntimeInformation.RuntimeIdentifier);
+ // NativeAOT hard-codes the runtime identifier at build time
+ if (!PlatformDetection.IsNativeAot)
+ {
+ // verify that the Environment.OSVersion.Version matches the current RID
+ // As of 12.0, only major version numbers are included in the RID
+ Assert.Contains(version.ToString(1), RuntimeInformation.RuntimeIdentifier);
+ }
Assert.True(version.Minor >= 0, "OSVersion Minor should be non-negative");
Assert.True(version.Build >= 0, "OSVersion Build should be non-negative");
diff --git a/src/libraries/System.Runtime.InteropServices/tests/System.Runtime.InteropServices.UnitTests/System/Runtime/InteropServices/ObjectiveC/MessageSendTests.cs b/src/libraries/System.Runtime.InteropServices/tests/System.Runtime.InteropServices.UnitTests/System/Runtime/InteropServices/ObjectiveC/MessageSendTests.cs
index 6c45152e8fe2c7..1493fc255bf03a 100644
--- a/src/libraries/System.Runtime.InteropServices/tests/System.Runtime.InteropServices.UnitTests/System/Runtime/InteropServices/ObjectiveC/MessageSendTests.cs
+++ b/src/libraries/System.Runtime.InteropServices/tests/System.Runtime.InteropServices.UnitTests/System/Runtime/InteropServices/ObjectiveC/MessageSendTests.cs
@@ -16,6 +16,7 @@ namespace System.Runtime.InteropServices.Tests
{
[PlatformSpecific(TestPlatforms.OSX)]
[SkipOnMono("Not currently implemented on Mono")]
+ [ConditionalClass(typeof(PlatformDetection), nameof(PlatformDetection.IsNotNativeAot))] // https://github.com/dotnet/runtimelab/issues/155
public unsafe class MessageSendTests
{
private static int s_count = 1;