Skip to content

Commit 2f2e220

Browse files
authored
Merge branch 'main' into feature/cdac/riscv64-unwinder
2 parents 51149e9 + 780d05e commit 2f2e220

File tree

21 files changed

+239
-583
lines changed

21 files changed

+239
-583
lines changed

.config/dotnet-tools.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
]
1616
},
1717
"microsoft.dotnet.xharness.cli": {
18-
"version": "10.0.0-prerelease.25255.1",
18+
"version": "10.0.0-prerelease.25330.2",
1919
"commands": [
2020
"xharness"
2121
]

eng/Version.Details.xml

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -291,37 +291,37 @@
291291
<Uri>https://github.com/dotnet/dotnet</Uri>
292292
<Sha>eaa19c281d34580a8168cff9ce1e7337da8bfe4f</Sha>
293293
</Dependency>
294-
<Dependency Name="Microsoft.DotNet.XHarness.TestRunners.Common" Version="10.0.0-prerelease.25255.1">
294+
<Dependency Name="Microsoft.DotNet.XHarness.TestRunners.Common" Version="10.0.0-prerelease.25330.2">
295295
<Uri>https://github.com/dotnet/xharness</Uri>
296-
<Sha>e85bb14e85357ab678c2bcb0b6f2bac634fdd49b</Sha>
296+
<Sha>feac80219b22c403d32df9b6bd61cbf78e1b9986</Sha>
297297
</Dependency>
298-
<Dependency Name="Microsoft.DotNet.XHarness.TestRunners.Xunit" Version="10.0.0-prerelease.25255.1">
298+
<Dependency Name="Microsoft.DotNet.XHarness.TestRunners.Xunit" Version="10.0.0-prerelease.25330.2">
299299
<Uri>https://github.com/dotnet/xharness</Uri>
300-
<Sha>e85bb14e85357ab678c2bcb0b6f2bac634fdd49b</Sha>
300+
<Sha>feac80219b22c403d32df9b6bd61cbf78e1b9986</Sha>
301301
</Dependency>
302-
<Dependency Name="Microsoft.DotNet.XHarness.CLI" Version="10.0.0-prerelease.25255.1">
302+
<Dependency Name="Microsoft.DotNet.XHarness.CLI" Version="10.0.0-prerelease.25330.2">
303303
<Uri>https://github.com/dotnet/xharness</Uri>
304-
<Sha>e85bb14e85357ab678c2bcb0b6f2bac634fdd49b</Sha>
304+
<Sha>feac80219b22c403d32df9b6bd61cbf78e1b9986</Sha>
305305
</Dependency>
306306
<Dependency Name="Microsoft.DotNet.PackageTesting" Version="10.0.0-beta.25351.106">
307307
<Uri>https://github.com/dotnet/dotnet</Uri>
308308
<Sha>eaa19c281d34580a8168cff9ce1e7337da8bfe4f</Sha>
309309
</Dependency>
310-
<Dependency Name="optimization.windows_nt-x64.MIBC.Runtime" Version="1.0.0-prerelease.25256.1">
310+
<Dependency Name="optimization.windows_nt-x64.MIBC.Runtime" Version="1.0.0-prerelease.25324.1">
311311
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
312-
<Sha>a68196f69e40740fce716778138acaa26488b333</Sha>
312+
<Sha>86968b14b5c2ba5104d205665c76c22544c067f6</Sha>
313313
</Dependency>
314-
<Dependency Name="optimization.windows_nt-x86.MIBC.Runtime" Version="1.0.0-prerelease.25256.1">
314+
<Dependency Name="optimization.windows_nt-x86.MIBC.Runtime" Version="1.0.0-prerelease.25324.1">
315315
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
316-
<Sha>a68196f69e40740fce716778138acaa26488b333</Sha>
316+
<Sha>86968b14b5c2ba5104d205665c76c22544c067f6</Sha>
317317
</Dependency>
318-
<Dependency Name="optimization.linux-x64.MIBC.Runtime" Version="1.0.0-prerelease.25256.1">
318+
<Dependency Name="optimization.linux-x64.MIBC.Runtime" Version="1.0.0-prerelease.25324.1">
319319
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
320-
<Sha>a68196f69e40740fce716778138acaa26488b333</Sha>
320+
<Sha>86968b14b5c2ba5104d205665c76c22544c067f6</Sha>
321321
</Dependency>
322-
<Dependency Name="optimization.PGO.CoreCLR" Version="1.0.0-prerelease.25256.1">
322+
<Dependency Name="optimization.PGO.CoreCLR" Version="1.0.0-prerelease.25324.1">
323323
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
324-
<Sha>a68196f69e40740fce716778138acaa26488b333</Sha>
324+
<Sha>86968b14b5c2ba5104d205665c76c22544c067f6</Sha>
325325
</Dependency>
326326
<Dependency Name="Microsoft.DotNet.HotReload.Utils.Generator.BuildTool" Version="10.0.0-alpha.0.25302.2">
327327
<Uri>https://github.com/dotnet/hotreload-utils</Uri>
@@ -355,13 +355,13 @@
355355
<Uri>https://github.com/dotnet/dotnet</Uri>
356356
<Sha>eaa19c281d34580a8168cff9ce1e7337da8bfe4f</Sha>
357357
</Dependency>
358-
<Dependency Name="optimization.windows_nt-arm64.MIBC.Runtime" Version="1.0.0-prerelease.25256.1">
358+
<Dependency Name="optimization.windows_nt-arm64.MIBC.Runtime" Version="1.0.0-prerelease.25324.1">
359359
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
360-
<Sha>a68196f69e40740fce716778138acaa26488b333</Sha>
360+
<Sha>86968b14b5c2ba5104d205665c76c22544c067f6</Sha>
361361
</Dependency>
362-
<Dependency Name="optimization.linux-arm64.MIBC.Runtime" Version="1.0.0-prerelease.25256.1">
362+
<Dependency Name="optimization.linux-arm64.MIBC.Runtime" Version="1.0.0-prerelease.25324.1">
363363
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
364-
<Sha>a68196f69e40740fce716778138acaa26488b333</Sha>
364+
<Sha>86968b14b5c2ba5104d205665c76c22544c067f6</Sha>
365365
</Dependency>
366366
<!-- Necessary for source-build. This allows the package to be retrieved from previously-source-built artifacts
367367
and flow in as dependencies of the packages produced by runtime. -->

eng/Versions.props

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -165,18 +165,18 @@
165165
<MicrosoftDotNetCilStripSourcesVersion>10.0.0-beta.25310.1</MicrosoftDotNetCilStripSourcesVersion>
166166
<MicrosoftNETHostModelTestDataVersion>10.0.0-beta.25310.1</MicrosoftNETHostModelTestDataVersion>
167167
<!-- xharness dependencies -->
168-
<MicrosoftDotNetXHarnessTestRunnersCommonVersion>10.0.0-prerelease.25255.1</MicrosoftDotNetXHarnessTestRunnersCommonVersion>
169-
<MicrosoftDotNetXHarnessTestRunnersXunitVersion>10.0.0-prerelease.25255.1</MicrosoftDotNetXHarnessTestRunnersXunitVersion>
170-
<MicrosoftDotNetXHarnessCLIVersion>10.0.0-prerelease.25255.1</MicrosoftDotNetXHarnessCLIVersion>
168+
<MicrosoftDotNetXHarnessTestRunnersCommonVersion>10.0.0-prerelease.25330.2</MicrosoftDotNetXHarnessTestRunnersCommonVersion>
169+
<MicrosoftDotNetXHarnessTestRunnersXunitVersion>10.0.0-prerelease.25330.2</MicrosoftDotNetXHarnessTestRunnersXunitVersion>
170+
<MicrosoftDotNetXHarnessCLIVersion>10.0.0-prerelease.25330.2</MicrosoftDotNetXHarnessCLIVersion>
171171
<!-- hotreload-utils dependencies -->
172172
<MicrosoftDotNetHotReloadUtilsGeneratorBuildToolVersion>10.0.0-alpha.0.25302.2</MicrosoftDotNetHotReloadUtilsGeneratorBuildToolVersion>
173173
<!-- dotnet-optimization dependencies -->
174-
<optimizationwindows_ntx64MIBCRuntimeVersion>1.0.0-prerelease.25256.1</optimizationwindows_ntx64MIBCRuntimeVersion>
175-
<optimizationwindows_ntx86MIBCRuntimeVersion>1.0.0-prerelease.25256.1</optimizationwindows_ntx86MIBCRuntimeVersion>
176-
<optimizationwindows_ntarm64MIBCRuntimeVersion>1.0.0-prerelease.25256.1</optimizationwindows_ntarm64MIBCRuntimeVersion>
177-
<optimizationlinuxx64MIBCRuntimeVersion>1.0.0-prerelease.25256.1</optimizationlinuxx64MIBCRuntimeVersion>
178-
<optimizationlinuxarm64MIBCRuntimeVersion>1.0.0-prerelease.25256.1</optimizationlinuxarm64MIBCRuntimeVersion>
179-
<optimizationPGOCoreCLRVersion>1.0.0-prerelease.25256.1</optimizationPGOCoreCLRVersion>
174+
<optimizationwindows_ntx64MIBCRuntimeVersion>1.0.0-prerelease.25324.1</optimizationwindows_ntx64MIBCRuntimeVersion>
175+
<optimizationwindows_ntx86MIBCRuntimeVersion>1.0.0-prerelease.25324.1</optimizationwindows_ntx86MIBCRuntimeVersion>
176+
<optimizationwindows_ntarm64MIBCRuntimeVersion>1.0.0-prerelease.25324.1</optimizationwindows_ntarm64MIBCRuntimeVersion>
177+
<optimizationlinuxx64MIBCRuntimeVersion>1.0.0-prerelease.25324.1</optimizationlinuxx64MIBCRuntimeVersion>
178+
<optimizationlinuxarm64MIBCRuntimeVersion>1.0.0-prerelease.25324.1</optimizationlinuxarm64MIBCRuntimeVersion>
179+
<optimizationPGOCoreCLRVersion>1.0.0-prerelease.25324.1</optimizationPGOCoreCLRVersion>
180180
<!-- Not auto-updated. -->
181181
<MicrosoftDiaSymReaderVersion>2.0.0</MicrosoftDiaSymReaderVersion>
182182
<MicrosoftDiaSymReaderNativeVersion>17.10.0-beta1.24272.1</MicrosoftDiaSymReaderNativeVersion>
Lines changed: 13 additions & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -1,121 +1,30 @@
1-
# helper to add set of include directories to unwinder targets
2-
macro(add_unwinder_include_directories TARGET)
3-
target_include_directories(${TARGET} BEFORE PRIVATE ${VM_DIR})
4-
target_include_directories(${TARGET} BEFORE PRIVATE ${VM_DIR}/${ARCH_SOURCES_DIR})
5-
target_include_directories(${TARGET} BEFORE PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
6-
target_include_directories(${TARGET} BEFORE PRIVATE ${CLR_DIR}/unwinder)
7-
target_include_directories(${TARGET} PRIVATE ${CLR_DIR}/debug/ee)
8-
target_include_directories(${TARGET} PRIVATE ${CLR_DIR}/gc)
9-
target_include_directories(${TARGET} PRIVATE ${CLR_DIR}/gcdump)
10-
target_include_directories(${TARGET} PRIVATE ${CLR_DIR}/debug/daccess)
11-
target_include_directories(${TARGET} PRIVATE ${ARCH_SOURCES_DIR})
12-
endmacro()
1+
include_directories(BEFORE ${VM_DIR})
2+
include_directories(BEFORE ${VM_DIR}/${ARCH_SOURCES_DIR})
3+
include_directories(BEFORE ${CMAKE_CURRENT_SOURCE_DIR})
4+
include_directories(BEFORE ${CLR_DIR}/unwinder)
5+
include_directories(${CLR_DIR}/debug/ee)
6+
include_directories(${CLR_DIR}/gc)
7+
include_directories(${CLR_DIR}/gcdump)
8+
include_directories(${CLR_DIR}/debug/daccess)
139

1410
set(UNWINDER_SOURCES
1511
baseunwinder.cpp
12+
)
13+
14+
# Include platform specific unwinder for applicable (native and cross-target) builds.
15+
include_directories(${ARCH_SOURCES_DIR})
16+
list(APPEND UNWINDER_SOURCES
1617
${ARCH_SOURCES_DIR}/unwinder.cpp
1718
)
1819

1920
convert_to_absolute_path(UNWINDER_SOURCES ${UNWINDER_SOURCES})
2021

2122
if(CLR_CMAKE_HOST_UNIX)
2223
add_library_clr(unwinder_wks OBJECT ${UNWINDER_SOURCES})
23-
add_unwinder_include_directories(unwinder_wks)
2424
add_dependencies(unwinder_wks eventing_headers)
2525
endif(CLR_CMAKE_HOST_UNIX)
2626

2727
add_library_clr(unwinder_dac ${UNWINDER_SOURCES})
28-
add_unwinder_include_directories(unwinder_dac)
2928
add_dependencies(unwinder_dac eventing_headers)
3029
set_target_properties(unwinder_dac PROPERTIES DAC_COMPONENT TRUE)
3130
target_compile_definitions(unwinder_dac PRIVATE FEATURE_NO_HOST)
32-
33-
### cDAC Unwinders ####
34-
35-
set(BASE_UNWINDER_SOURCES baseunwinder.cpp)
36-
convert_to_absolute_path(BASE_UNWINDER_SOURCES ${BASE_UNWINDER_SOURCES})
37-
add_library_clr(unwinder_cdac_base STATIC ${BASE_UNWINDER_SOURCES})
38-
39-
target_include_directories(unwinder_cdac_base BEFORE PUBLIC ${VM_DIR})
40-
target_include_directories(unwinder_cdac_base BEFORE PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
41-
target_include_directories(unwinder_cdac_base BEFORE PUBLIC ${CLR_DIR}/unwinder)
42-
target_include_directories(unwinder_cdac_base PUBLIC ${CLR_DIR}/debug/ee)
43-
target_include_directories(unwinder_cdac_base PUBLIC ${CLR_DIR}/gc)
44-
target_include_directories(unwinder_cdac_base PUBLIC ${CLR_DIR}/gcdump)
45-
target_include_directories(unwinder_cdac_base PUBLIC ${CLR_DIR}/debug/daccess)
46-
target_compile_definitions(unwinder_cdac_base PUBLIC FEATURE_NO_HOST FEATURE_CDAC_UNWINDER)
47-
48-
if (CLR_CMAKE_TARGET_WIN32)
49-
# cDAC unwinders are statically linked into the NativeAOT runtime which is built with
50-
# release version of the statically linked CRT. Therefore we do the same here.
51-
set_property(TARGET unwinder_cdac_base PROPERTY MSVC_RUNTIME_LIBRARY MultiThreaded)
52-
53-
# _DEBUG is always passed as a parameter if the build is a debug build.
54-
# This causes the debug CRT on MSVC to be used so we need to undefine it.
55-
target_compile_options(unwinder_cdac_base PRIVATE -U_DEBUG)
56-
endif()
57-
58-
install_clr(TARGETS unwinder_cdac_base DESTINATIONS cdaclibs COMPONENT cdac)
59-
60-
# Helper function for platform specific cDAC uwninder builds.
61-
function(create_platform_unwinder)
62-
set(oneValueArgs TARGET ARCH)
63-
set(multiValueArgs DESTINATIONS)
64-
cmake_parse_arguments(TARGETDETAILS "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
65-
66-
if(TARGETDETAILS_ARCH STREQUAL "x64")
67-
set(ARCH_SOURCES_DIR amd64)
68-
elseif((TARGETDETAILS_ARCH STREQUAL "arm") OR (TARGETDETAILS_ARCH STREQUAL "armel"))
69-
set(ARCH_SOURCES_DIR arm)
70-
elseif(TARGETDETAILS_ARCH STREQUAL "x86")
71-
set(ARCH_SOURCES_DIR i386)
72-
elseif(TARGETDETAILS_ARCH STREQUAL "arm64")
73-
set(ARCH_SOURCES_DIR arm64)
74-
else()
75-
clr_unknown_arch()
76-
endif()
77-
78-
set(UNWINDER_SOURCES ${ARCH_SOURCES_DIR}/unwinder.cpp)
79-
convert_to_absolute_path(UNWINDER_SOURCES ${UNWINDER_SOURCES})
80-
add_library_clr(${TARGETDETAILS_TARGET} STATIC ${UNWINDER_SOURCES})
81-
82-
target_include_directories(${TARGETDETAILS_TARGET} BEFORE PRIVATE ${VM_DIR}/${ARCH_SOURCES_DIR})
83-
target_include_directories(${TARGETDETAILS_TARGET} PRIVATE ${ARCH_SOURCES_DIR})
84-
85-
target_link_libraries(${TARGETDETAILS_TARGET} PRIVATE unwinder_cdac_base)
86-
if (CLR_CMAKE_TARGET_WIN32)
87-
# cDAC unwinders are statically linked into the NativeAOT runtime which is built with
88-
# release version of the statically linked CRT. Therefore we do the same here.
89-
set_property(TARGET ${TARGETDETAILS_TARGET} PROPERTY MSVC_RUNTIME_LIBRARY MultiThreaded)
90-
91-
# _DEBUG is always passed as a parameter if the build is a debug build.
92-
# This causes the debug CRT on MSVC to be used so we need to undefine it.
93-
target_compile_options(${TARGETDETAILS_TARGET} PRIVATE -U_DEBUG)
94-
endif()
95-
96-
# add the install targets
97-
install_clr(TARGETS ${TARGETDETAILS_TARGET} DESTINATIONS ${TARGETDETAILS_DESTINATIONS} COMPONENT cdac)
98-
99-
# Set the target to be built for the specified OS and ARCH
100-
set_target_definitions_to_custom_os_and_arch(TARGET ${TARGETDETAILS_TARGET} OS win ARCH ${TARGETDETAILS_ARCH})
101-
102-
target_compile_definitions(${TARGETDETAILS_TARGET} PRIVATE FEATURE_NO_HOST FEATURE_CDAC_UNWINDER)
103-
endfunction()
104-
105-
if(CLR_CMAKE_TARGET_WIN32 AND CLR_CMAKE_TARGET_ARCH_AMD64)
106-
create_platform_unwinder(TARGET unwinder_cdac_amd64 ARCH x64 DESTINATIONS cdaclibs)
107-
create_platform_unwinder(TARGET unwinder_cdac_arm64 ARCH arm64 DESTINATIONS cdaclibs)
108-
endif(CLR_CMAKE_TARGET_WIN32 AND CLR_CMAKE_TARGET_ARCH_AMD64)
109-
110-
if(CLR_CMAKE_TARGET_WIN32 AND CLR_CMAKE_TARGET_ARCH_ARM64)
111-
create_platform_unwinder(TARGET unwinder_cdac_arm64 ARCH arm64 DESTINATIONS cdaclibs)
112-
endif(CLR_CMAKE_TARGET_WIN32 AND CLR_CMAKE_TARGET_ARCH_ARM64)
113-
114-
if(NOT CLR_CMAKE_TARGET_WIN32 AND CLR_CMAKE_TARGET_ARCH_AMD64)
115-
create_platform_unwinder(TARGET unwinder_cdac_amd64 ARCH x64 DESTINATIONS cdaclibs)
116-
endif(NOT CLR_CMAKE_TARGET_WIN32 AND CLR_CMAKE_TARGET_ARCH_AMD64)
117-
118-
if(NOT CLR_CMAKE_TARGET_WIN32 AND CLR_CMAKE_TARGET_ARCH_ARM64)
119-
create_platform_unwinder(TARGET unwinder_cdac_arm64 ARCH arm64 DESTINATIONS cdaclibs)
120-
endif(NOT CLR_CMAKE_TARGET_WIN32 AND CLR_CMAKE_TARGET_ARCH_ARM64)
121-

0 commit comments

Comments
 (0)