Skip to content

Commit 17ea9ab

Browse files
committed
Merged PR 34793: [internal/release/8.0] Merge from public
Merge from public release/8.0 to internal/release/8.0 and resolve conflicts if necessary
2 parents 4796219 + 2066e8f commit 17ea9ab

File tree

347 files changed

+29457
-5831
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

347 files changed

+29457
-5831
lines changed

NuGet.config

+5
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,11 @@
77
</fallbackPackageFolders>
88
<packageSources>
99
<clear />
10+
<!--Begin: Package sources managed by Dependency Flow automation. Do not edit the sources below.-->
11+
<!-- Begin: Package sources from dotnet-emsdk -->
12+
<add key="darc-pub-dotnet-emsdk-51bf18a" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/darc-pub-dotnet-emsdk-51bf18a2/nuget/v3/index.json" />
13+
<!-- End: Package sources from dotnet-emsdk -->
14+
<!--End: Package sources managed by Dependency Flow automation. Do not edit the sources above.-->
1015
<!--
1116
'src/test/PrepareTestAssets/PrepareTestAssets.proj' generates a NuGet.config file using this
1217
one as a template. The following line is a marker to insert the test restore sources.

docs/project/list-of-diagnostics.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ The diagnostic id values reserved for .NET Libraries analyzer warnings are `SYSL
251251
| __`SYSLIB1214`__ | Options validation generator: Can't validate constants, static fields or properties. |
252252
| __`SYSLIB1215`__ | Options validation generator: Validation attribute on the member is inaccessible from the validator type. |
253253
| __`SYSLIB1216`__ | C# language version not supported by the options validation source generator. |
254-
| __`SYSLIB1217`__ | *_`SYSLIB1201`-`SYSLIB1219` reserved for Microsoft.Extensions.Options.SourceGeneration.* |
254+
| __`SYSLIB1217`__ | The validation attribute is only applicable to properties of type string, array, or ICollection; it cannot be used with other types. |
255255
| __`SYSLIB1218`__ | *_`SYSLIB1201`-`SYSLIB1219` reserved for Microsoft.Extensions.Options.SourceGeneration.* |
256256
| __`SYSLIB1219`__ | *_`SYSLIB1201`-`SYSLIB1219` reserved for Microsoft.Extensions.Options.SourceGeneration.* |
257257
| __`SYSLIB1220`__ | JsonSourceGenerator encountered a [JsonConverterAttribute] with an invalid type argument. |

eng/Analyzers.targets

+7
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
11
<Project>
2+
<PropertyGroup Condition="'$(UsingMicrosoftNoTargetsSdk)' == 'true' or
3+
'$(UsingMicrosoftDotNetSharedFrameworkSdk)' == 'true' or
4+
'$(MSBuildProjectExtension)' == '.pkgproj' or
5+
'$(UsingMicrosoftTraversalSdk)' == 'true'">
6+
<!-- Explicitly disable running analyzers to avoid trying to discover the correct ILLink tool pack for a project that has no sources. -->
7+
<RunAnalyzers>false</RunAnalyzers>
8+
</PropertyGroup>
29
<PropertyGroup>
310
<!-- Disable analyzers in sourcebuild -->
411
<RunAnalyzers Condition="'$(DotNetBuildFromSource)' == 'true'">false</RunAnalyzers>

eng/Subsets.props

+2-2
Original file line numberDiff line numberDiff line change
@@ -502,7 +502,7 @@
502502
<ItemGroup Condition="'$(PgoInstrument)' != 'true'">
503503
<SharedFrameworkProjectToBuild Condition="'$(BuildMonoAOTCrossCompilerOnly)' != 'true'" Include="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Ref.sfxproj" />
504504
</ItemGroup>
505-
<ItemGroup Condition="'$(BuildNativeAOTRuntimePack)' != 'true'">
505+
<ItemGroup Condition="'$(BuildNativeAOTRuntimePack)' != 'true' and '$(PgoInstrument)' != 'true'">
506506
<SharedFrameworkProjectToBuild Condition="'$(RuntimeFlavor)' == '$(PrimaryRuntimeFlavor)'" Include="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Host.sfxproj" />
507507
<SharedFrameworkProjectToBuild Condition="'$(RuntimeFlavor)' != 'Mono'" Include="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Crossgen2.sfxproj" />
508508
<SharedFrameworkProjectToBuild Condition="'$(RuntimeFlavor)' == '$(PrimaryRuntimeFlavor)'" Include="$(InstallerProjectRoot)pkg\sfx\installers\dotnet-host.proj" />
@@ -512,7 +512,7 @@
512512
<SharedFrameworkProjectToBuild Condition="'$(MonoCrossAOTTargetOS)' != ''" Include="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\monocrossaot.sfxproj" Pack="true" />
513513
</ItemGroup>
514514
<ItemGroup>
515-
<ProjectToBuild Condition="'$(NativeAotSupported)' == 'true' and '$(RuntimeFlavor)' != 'Mono'" Include="$(InstallerProjectRoot)\pkg\projects\nativeaot-packages.proj" Category="packs" />
515+
<ProjectToBuild Condition="'$(NativeAotSupported)' == 'true' and '$(RuntimeFlavor)' != 'Mono' and '$(PgoInstrument)' != 'true'" Include="$(InstallerProjectRoot)\pkg\projects\nativeaot-packages.proj" Category="packs" />
516516
</ItemGroup>
517517
<ItemGroup>
518518
<SharedFrameworkProjectToBuild Condition="'$(BuildMonoAOTCrossCompilerOnly)' != 'true'" Include="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Runtime.sfxproj" />

eng/Version.Details.xml

+144-136
Large diffs are not rendered by default.

eng/Versions.props

+74-71
Large diffs are not rendered by default.

eng/common/sdk-task.ps1

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ try {
6464
$GlobalJson.tools | Add-Member -Name "vs" -Value (ConvertFrom-Json "{ `"version`": `"16.5`" }") -MemberType NoteProperty
6565
}
6666
if( -not ($GlobalJson.tools.PSObject.Properties.Name -match "xcopy-msbuild" )) {
67-
$GlobalJson.tools | Add-Member -Name "xcopy-msbuild" -Value "17.6.0-2" -MemberType NoteProperty
67+
$GlobalJson.tools | Add-Member -Name "xcopy-msbuild" -Value "17.8.1-2" -MemberType NoteProperty
6868
}
6969
if ($GlobalJson.tools."xcopy-msbuild".Trim() -ine "none") {
7070
$xcopyMSBuildToolsFolder = InitializeXCopyMSBuild $GlobalJson.tools."xcopy-msbuild" -install $true

eng/common/tools.ps1

+3-3
Original file line numberDiff line numberDiff line change
@@ -379,13 +379,13 @@ function InitializeVisualStudioMSBuild([bool]$install, [object]$vsRequirements =
379379
}
380380

381381
# Minimum VS version to require.
382-
$vsMinVersionReqdStr = '17.6'
382+
$vsMinVersionReqdStr = '17.7'
383383
$vsMinVersionReqd = [Version]::new($vsMinVersionReqdStr)
384384

385385
# If the version of msbuild is going to be xcopied,
386386
# use this version. Version matches a package here:
387-
# https://dev.azure.com/dnceng/public/_artifacts/feed/dotnet-eng/NuGet/RoslynTools.MSBuild/versions/17.6.0-2
388-
$defaultXCopyMSBuildVersion = '17.6.0-2'
387+
# https://dev.azure.com/dnceng/public/_artifacts/feed/dotnet-eng/NuGet/RoslynTools.MSBuild/versions/17.8.1-2
388+
$defaultXCopyMSBuildVersion = '17.8.1-2'
389389

390390
if (!$vsRequirements) {
391391
if (Get-Member -InputObject $GlobalJson.tools -Name 'vs') {

eng/native/ijw/IJW.cmake

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ if (CLR_CMAKE_HOST_WIN32)
5151

5252
# 4365 - signed/unsigned mismatch
5353
# 4679 - Could not import member. This is an issue with IJW and static abstract methods in interfaces.
54-
add_compile_options(/wd4365 /wd4679)
54+
add_compile_options(/wd4365 /wd4679 /wd5271)
5555

5656
# IJW
5757
add_compile_options(/clr:netcore)

eng/pipelines/common/evaluate-default-paths.yml

+2
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,7 @@ jobs:
241241
- src/mono/tools/*
242242
- src/mono/wasi/*
243243
- src/mono/wasm/debugger/*
244+
- src/mono/wasm/host/*
244245
- src/mono/wasm/Wasm.Build.Tests/*
245246
- ${{ parameters._const_paths._wasm_pipelines }}
246247
- ${{ parameters._const_paths._always_exclude }}
@@ -258,6 +259,7 @@ jobs:
258259
- eng/testing/workloads-testing.targets
259260
- src/mono/mono/component/mini-wasm-debugger.c
260261
- src/mono/wasm/debugger/*
262+
- src/mono/wasm/host/*
261263
- src/mono/wasm/Wasm.Build.Tests/*
262264
- src/mono/nuget/Microsoft.NET.Runtime*
263265
src/mono/nuget/Microsoft.NET.Sdk.WebAssembly.Pack/*

eng/pipelines/common/xplat-setup.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ jobs:
108108
- ${{ if eq(parameters.archType, 'wasm') }}:
109109
- name: wasmDarcDependenciesChanged
110110
value: $[ or(
111-
eq(dependencies.evaluate_paths.outputs['DarcDependenciesChanged.Microsoft_NET_Workload_Emscripten_Current_Manifest-8_0_100_Transport'], true),
111+
eq(dependencies.evaluate_paths.outputs['DarcDependenciesChanged.Microsoft_NET_Workload_Emscripten_Current_Manifest-8_0_100'], true),
112112
eq(dependencies.evaluate_paths.outputs['DarcDependenciesChanged.Microsoft_DotNet_Build_Tasks_Workloads'], true),
113113
eq(dependencies.evaluate_paths.outputs['DarcDependenciesChanged.System_Runtime_TimeZoneData'], true),
114114
eq(dependencies.evaluate_paths.outputs['DarcDependenciesChanged.Microsoft_Net_Compilers_Toolset'], true),

eng/pipelines/coreclr/perf.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ trigger:
33
branches:
44
include:
55
- main
6-
- release/8.0-rc1
6+
- release/8.0
77
paths:
88
include:
99
- '*'

eng/pipelines/runtime-llvm.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ extends:
119119
testGroup: innerloop
120120
nameSuffix: AllSubsets_Mono_LLVMAOT
121121
buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
122-
/p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
122+
/p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
123123
condition: >-
124124
or(
125125
eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
@@ -138,7 +138,7 @@ extends:
138138
testGroup: innerloop
139139
nameSuffix: AllSubsets_Mono_LLVMAOT
140140
buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
141-
/p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
141+
/p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
142142
condition: >-
143143
or(
144144
eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),

eng/pipelines/runtime-official.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -334,7 +334,7 @@ extends:
334334
runtimeFlavor: mono
335335
jobParameters:
336336
buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
337-
/p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
337+
/p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
338338
nameSuffix: AllSubsets_Mono_LLVMAOT
339339
runtimeVariant: LLVMAOT
340340
isOfficialBuild: ${{ variables.isOfficialBuild }}

eng/pipelines/runtime-wasm-perf.yml

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
# UI to this, and thus avoid any scheduled triggers
44

55
trigger: none
6+
pr: none
67

78
variables:
89
- template: /eng/pipelines/common/variables.yml

eng/pipelines/runtime.yml

+44-3
Original file line numberDiff line numberDiff line change
@@ -556,6 +556,47 @@ extends:
556556
extraBuildArgs: /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS)
557557
alwaysRun: ${{ variables.isRollingBuild }}
558558

559+
#
560+
# Android devices
561+
# Build the whole product using Mono and run libraries tests
562+
#
563+
- template: /eng/pipelines/common/platform-matrix.yml
564+
parameters:
565+
jobTemplate: /eng/pipelines/common/global-build-job.yml
566+
helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
567+
buildConfig: Release
568+
runtimeFlavor: mono
569+
platforms:
570+
- android_arm
571+
- android_arm64
572+
variables:
573+
# map dependencies variables to local variables
574+
- name: librariesContainsChange
575+
value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
576+
- name: monoContainsChange
577+
value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ]
578+
jobParameters:
579+
testGroup: innerloop
580+
nameSuffix: AllSubsets_Mono
581+
buildArgs: -s mono+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true /p:EnableAdditionalTimezoneChecks=true
582+
timeoutInMinutes: 480
583+
condition: >-
584+
or(
585+
eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
586+
eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
587+
eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
588+
eq(variables['isRollingBuild'], true))
589+
# extra steps, run tests
590+
extraStepsTemplate: /eng/pipelines/libraries/helix.yml
591+
extraStepsParameters:
592+
creator: dotnet-bot
593+
testRunNamePrefixSuffix: Mono_$(_BuildConfig)
594+
condition: >-
595+
or(
596+
eq(variables['librariesContainsChange'], true),
597+
eq(variables['monoContainsChange'], true),
598+
eq(variables['isRollingBuild'], true))
599+
559600
#
560601
# iOS/tvOS devices - Full AOT + AggressiveTrimming to reduce size
561602
# Build the whole product using Mono and run libraries tests
@@ -739,7 +780,7 @@ extends:
739780
testGroup: innerloop
740781
nameSuffix: AllSubsets_Mono_LLVMAOT
741782
buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
742-
/p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
783+
/p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
743784
condition: >-
744785
or(
745786
eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
@@ -758,7 +799,7 @@ extends:
758799
testGroup: innerloop
759800
nameSuffix: AllSubsets_Mono_LLVMAOT
760801
buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
761-
/p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
802+
/p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
762803
condition: >-
763804
or(
764805
eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
@@ -1277,7 +1318,7 @@ extends:
12771318
testGroup: innerloop
12781319
nameSuffix: AllSubsets_Mono_LLVMAot_RuntimeTests
12791320
runtimeVariant: llvmaot
1280-
buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
1321+
buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
12811322
timeoutInMinutes: 180
12821323

12831324
condition: >-

eng/resolveContract.targets

+3-2
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,9 @@
7373
That is necessary as APICompat is invoked twice, once for the ref <-> src comparision and then again
7474
for the package validation (which doesn't include reference assemblies). As both operations don't have
7575
all the inputs available, some suppressions might only apply to one or the other and hence unnecessary
76-
suppressions can't be determined. -->
77-
<PropertyGroup Condition="'$(IsPackable)' == 'true' and '$(IsRuntimeAndReferenceAssembly)' != 'true'">
76+
suppressions can't be determined.
77+
Disable the validation under source build as that might use an out-of-date SDK and not the ApiCompat.Task package. -->
78+
<PropertyGroup Condition="('$(IsPackable)' == 'true' and '$(IsRuntimeAndReferenceAssembly)' != 'true') or '$(DotNetBuildFromSource)' == 'true'">
7879
<ApiCompatPreserveUnnecessarySuppressions>true</ApiCompatPreserveUnnecessarySuppressions>
7980
<ApiCompatPermitUnnecessarySuppressions>true</ApiCompatPermitUnnecessarySuppressions>
8081
</PropertyGroup>

eng/testing/performance/performance-setup.ps1

+1-1
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ if ($iOSNativeAOT) {
101101
}
102102

103103
# FIX ME: This is a workaround until we get this from the actual pipeline
104-
$CleanedBranchName = "main"
104+
$CleanedBranchName = "release/8.0"
105105
if($Branch.Contains("refs/heads/release"))
106106
{
107107
$CleanedBranchName = $Branch.replace('refs/heads/', '')

eng/testing/performance/performance-setup.sh

+3-6
Original file line numberDiff line numberDiff line change
@@ -358,9 +358,7 @@ if [[ "$physicalpromotion" == "true" ]]; then
358358
configurations="$configurations PhysicalPromotionType=physicalpromotion"
359359
fi
360360

361-
362-
363-
cleaned_branch_name="main"
361+
cleaned_branch_name="release/8.0"
364362
if [[ $branch == *"refs/heads/release"* ]]; then
365363
cleaned_branch_name=${branch/refs\/heads\//}
366364
fi
@@ -404,15 +402,14 @@ if [[ -n "$wasm_bundle_directory" ]]; then
404402
using_wasm=true
405403
wasm_bundle_directory_path=$payload_directory
406404
mv $wasm_bundle_directory/* $wasm_bundle_directory_path
407-
find $wasm_bundle_directory_path -type d
408-
wasm_args="--experimental-wasm-eh --expose_wasm"
405+
wasm_args="--expose_wasm"
409406
if [ "$javascript_engine" == "v8" ]; then
410407
# for es6 module support
411408
wasm_args="$wasm_args --module"
412409
fi
413410

414411
# Workaround: escaping the quotes around `--wasmArgs=..` so they get retained for the actual command line
415-
extra_benchmark_dotnet_arguments="$extra_benchmark_dotnet_arguments --wasmEngine /home/helixbot/.jsvu/bin/$javascript_engine --wasmArgs \\\"$wasm_args\\\" --cli \$HELIX_CORRELATION_PAYLOAD/dotnet/dotnet --wasmDataDir \$HELIX_CORRELATION_PAYLOAD/wasm-data"
412+
extra_benchmark_dotnet_arguments="$extra_benchmark_dotnet_arguments --wasmEngine /home/helixbot/.jsvu/bin/$javascript_engine \\\"--wasmArgs=$wasm_args\\\" --cli \$HELIX_CORRELATION_PAYLOAD/dotnet/dotnet --wasmDataDir \$HELIX_CORRELATION_PAYLOAD/wasm-data"
416413
if [[ "$wasmaot" == "true" ]]; then
417414
extra_benchmark_dotnet_arguments="$extra_benchmark_dotnet_arguments --aotcompilermode wasm --buildTimeout 3600"
418415
fi

global.json

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
{
22
"sdk": {
3-
"version": "8.0.100-preview.7.23376.3",
3+
"version": "8.0.100-rtm.23506.1",
44
"allowPrerelease": true,
55
"rollForward": "major"
66
},
77
"tools": {
8-
"dotnet": "8.0.100-preview.7.23376.3"
8+
"dotnet": "8.0.100-rtm.23506.1"
99
},
1010
"msbuild-sdks": {
11-
"Microsoft.DotNet.Arcade.Sdk": "8.0.0-beta.23463.1",
12-
"Microsoft.DotNet.Helix.Sdk": "8.0.0-beta.23463.1",
13-
"Microsoft.DotNet.SharedFramework.Sdk": "8.0.0-beta.23463.1",
11+
"Microsoft.DotNet.Arcade.Sdk": "8.0.0-beta.23516.4",
12+
"Microsoft.DotNet.Helix.Sdk": "8.0.0-beta.23516.4",
13+
"Microsoft.DotNet.SharedFramework.Sdk": "8.0.0-beta.23516.4",
1414
"Microsoft.Build.NoTargets": "3.7.0",
1515
"Microsoft.Build.Traversal": "3.4.0",
1616
"Microsoft.NET.Sdk.IL": "8.0.0-rc.1.23406.6"

src/coreclr/debug/daccess/dacdbiimpl.cpp

+2-1
Original file line numberDiff line numberDiff line change
@@ -7788,8 +7788,9 @@ HRESULT DacStackReferenceWalker::Next(ULONG count, DacGcReference stackRefs[], U
77887788
stackRefs[i].i64ExtraData = 0;
77897789

77907790
const SOSStackRefData &sosStackRef = mList.Get(i);
7791-
if (sosStackRef.Flags & GC_CALL_INTERIOR)
7791+
if (sosStackRef.Flags & GC_CALL_INTERIOR || sosStackRef.Address == 0)
77927792
{
7793+
// Direct pointer case - interior pointer, Frame ref, or enregistered var.
77937794
stackRefs[i].pObject = CLRDATA_ADDRESS_TO_TADDR(sosStackRef.Object) | 1;
77947795
}
77957796
else

src/coreclr/debug/daccess/dacimpl.h

-11
Original file line numberDiff line numberDiff line change
@@ -1253,17 +1253,6 @@ class ClrDataAccess
12531253
/* [out] */ union STUB_BUF* outBuffer,
12541254
/* [out] */ ULONG32* outFlags);
12551255

1256-
DebuggerJitInfo* GetDebuggerJitInfo(MethodDesc* methodDesc,
1257-
TADDR addr)
1258-
{
1259-
if (g_pDebugger)
1260-
{
1261-
return g_pDebugger->GetJitInfo(methodDesc, (PBYTE)addr, NULL);
1262-
}
1263-
1264-
return NULL;
1265-
}
1266-
12671256
HRESULT GetMethodExtents(MethodDesc* methodDesc,
12681257
METH_EXTENTS** extents);
12691258
HRESULT GetMethodVarInfo(MethodDesc* methodDesc,

src/coreclr/debug/daccess/task.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -5225,7 +5225,7 @@ EnumMethodInstances::Next(ClrDataAccess* dac,
52255225
}
52265226
}
52275227

5228-
if (!m_methodIter.Current()->HasNativeCodeReJITAware())
5228+
if (!m_methodIter.Current()->HasNativeCodeAnyVersion())
52295229
{
52305230
goto NextMethod;
52315231
}
@@ -5243,7 +5243,7 @@ EnumMethodInstances::CdStart(MethodDesc* methodDesc,
52435243
CLRDATA_ENUM* handle)
52445244
{
52455245
if (!methodDesc->HasClassOrMethodInstantiation() &&
5246-
!methodDesc->HasNativeCodeReJITAware())
5246+
!(methodDesc->HasNativeCodeAnyVersion()))
52475247
{
52485248
*handle = 0;
52495249
return S_FALSE;

src/coreclr/debug/di/breakpoint.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -211,11 +211,13 @@ HRESULT CordbFunctionBreakpoint::Activate(BOOL fActivate)
211211
if (codeIsIL)
212212
{
213213
pEvent->BreakpointData.nativeCodeMethodDescToken = pEvent->BreakpointData.nativeCodeMethodDescToken.NullPtr();
214+
pEvent->BreakpointData.codeStartAddress = 0;
214215
}
215216
else
216217
{
217218
pEvent->BreakpointData.nativeCodeMethodDescToken =
218219
(m_code.GetValue()->AsNativeCode())->GetVMNativeCodeMethodDescToken().ToLsPtr();
220+
pEvent->BreakpointData.codeStartAddress = (m_code.GetValue()->AsNativeCode())->GetAddress();
219221
}
220222

221223
// Note: we're sending a two-way event, so it blocks here

src/coreclr/debug/di/rsclass.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ HRESULT CordbClass::GetStaticFieldValue(mdFieldDef fieldDef,
132132
IMetaDataImport * pImport = NULL;
133133
EX_TRY
134134
{
135+
RSLockHolder lockHolder(GetProcess()->GetProcessLock());
135136
pImport = GetModule()->GetMetaDataImporter(); // throws
136137

137138
// Validate the token.
@@ -1191,4 +1192,3 @@ HRESULT CordbClass::SearchFieldInfo(
11911192
// Well, the field doesn't even belong to this class...
11921193
ThrowHR(E_INVALIDARG);
11931194
}
1194-

0 commit comments

Comments
 (0)