Skip to content

Commit be2a3fc

Browse files
CopilotCopilot
andauthored
Re-enable crossgen2 composite R2R benchmark scenarios (#2188)
Re-enable crossgen2 composite R2R benchmark scenarios Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 55225405-8111-4b09-ac9a-a25318624623
1 parent e3ae0da commit be2a3fc

3 files changed

Lines changed: 8 additions & 28 deletions

File tree

build/crossgen2-scenarios.yml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,9 @@ parameters:
3333
- displayName: Default
3434
arguments: --property profile=default
3535
condition: 'true'
36-
# Disabled: fails with ILCompiler.CodeGenerationFailedException (IndexOutOfRangeException
37-
# in CorInfoImpl.HandleToModuleToken) during the crossgen2 composite publish, and on
38-
# Windows runs causes crank to hang, blocking the rest of the jobs in the pipeline.
39-
# Root cause fixed by dotnet/runtime#129053 (composite R2R token corruption for
40-
# devirtualized async-variant callees, merged 2026-06-06). Re-enable once that fix
41-
# flows into the .NET 11 SDK consumed by the benchmark agents.
4236
- displayName: CG2 composite # since 6.0-preview4 CG2 is the default when PublishReadyToRun=true is set
4337
arguments: --property profile=composite --application.buildArguments \"/p:PublishReadyToRun=true /p:PublishReadyToRunComposite=true /p:PublishReadyToRunUseCrossgen2=true \"
44-
condition: 'false'
38+
condition: 'true'
4539
- displayName: CG2 non-composite # /p:PublishReadyToRunComposite=false is the default
4640
arguments: --property profile=non-composite --application.buildArguments \"/p:PublishReadyToRun=true /p:PublishReadyToRunUseCrossgen2=true /p:PublishReadyToRunComposite=false\"
4741
condition: 'true'

build/nativeaot-scenarios.yml

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,7 @@ parameters:
3434

3535
- displayName: Goldilocks Stage 1 (CoreCLR - Trim R2R SingleFile)
3636
arguments: --scenario basicminimalapipublishtrimr2rsinglefile $(goldilocksJobs) --property scenario=Stage1TrimR2RSingleFile --property publish=coreclr --application.environmentVariables DOTNET_GCDynamicAdaptationMode=1
37-
# Disabled: hits dotnet/runtime crossgen2 composite R2R bug on async-variant callees
38-
# (Kestrel Http1ChunkedEncodingMessageBody.PumpAsync). Re-enable once
39-
# https://github.com/dotnet/runtime/pull/129053 flows into the .NET 11 SDK.
40-
condition: 'false'
37+
condition: 'true'
4138

4239
- displayName: Goldilocks Stage 1 (NativeAOT)
4340
# workaround https://github.com/dotnet/runtime/issues/81382 by explicitly referencing a Microsoft.DotNet.ILCompiler version
@@ -73,9 +70,7 @@ parameters:
7370

7471
- displayName: Goldilocks Stage 2 (CoreCLR - Trim R2R SingleFile)
7572
arguments: --scenario todosapipublishtrimr2rsinglefile $(goldilocksJobs) --property scenario=Stage2TrimR2RSingleFile --property publish=coreclr --application.environmentVariables DOTNET_GCDynamicAdaptationMode=1
76-
# Disabled: see note on "Goldilocks Stage 1 (CoreCLR - Trim R2R SingleFile)" above.
77-
# Re-enable once https://github.com/dotnet/runtime/pull/129053 flows into the .NET 11 SDK.
78-
condition: 'false'
73+
condition: 'true'
7974

8075
- displayName: Goldilocks Stage 2 (NativeAOT)
8176
# workaround https://github.com/dotnet/runtime/issues/81382 by explicitly referencing a Microsoft.DotNet.ILCompiler version
@@ -111,9 +106,7 @@ parameters:
111106

112107
- displayName: Goldilocks gRPC Stage 1 (CoreCLR - Trim R2R SingleFile)
113108
arguments: --scenario basicgrpcpublishtrimr2rsinglefile $(goldilocksJobs) --property scenario=Stage1GrpcTrimR2RSingleFile --property publish=coreclr --application.environmentVariables DOTNET_GCDynamicAdaptationMode=1
114-
# Disabled: see note on "Goldilocks Stage 1 (CoreCLR - Trim R2R SingleFile)" above.
115-
# Re-enable once https://github.com/dotnet/runtime/pull/129053 flows into the .NET 11 SDK.
116-
condition: 'false'
109+
condition: 'true'
117110

118111
- displayName: Goldilocks gRPC Stage 1 (NativeAOT)
119112
# workaround https://github.com/dotnet/runtime/issues/81382 by explicitly referencing a Microsoft.DotNet.ILCompiler version

build/singlefile-scenarios.yml

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -33,29 +33,22 @@ parameters:
3333
- displayName: Self-contained
3434
arguments: --application.buildArguments \"/p:PublishReadyToRun=true /p:PublishSingleFile=false\" --property mode=SelfContained
3535
condition: 'true'
36-
# Disabled: hangs / fails with ILCompiler.CodeGenerationFailedException
37-
# (IndexOutOfRangeException in CorInfoImpl.HandleToModuleToken) during the
38-
# crossgen2 composite publish on .NET 11 preview SDKs predating
39-
# dotnet/runtime#129053 ("Fix composite R2R token corruption for devirtualized
40-
# async-variant callees", merged 2026-06-06). Re-enable once that fix flows
41-
# into the SDK consumed by the benchmark agents.
4236
- displayName: Single-file
4337
arguments: --application.buildArguments \"/p:PublishReadyToRun=true /p:PublishSingleFile=true\" --property mode=SingleFile
44-
condition: 'false'
38+
condition: 'true'
4539
- displayName: Trimmed
4640
arguments: --application.buildArguments \"/p:PublishReadyToRun=true /p:PublishSingleFile=true /p:PublishTrimmed=true\" --property mode=Trimmed
47-
condition: 'false'
41+
condition: 'true'
4842
- displayName: AOT
4943
# workaround https://github.com/dotnet/runtime/issues/81382 by explicitly referencing a Microsoft.DotNet.ILCompiler version
5044
arguments: --application.buildArguments \"/p:PublishAot=true /p:StripSymbols=true\" --property mode=Aot --application.packageReferences \"Microsoft.DotNet.ILCompiler=$(MicrosoftNETCoreAppPackageVersion)\"
5145
condition: 'true'
52-
# Disabled: see note on "Single-file" above (dotnet/runtime#129053).
5346
- displayName: R2RComposite-Windows
5447
arguments: --application.buildArguments \"/p:PublishReadyToRun=true /p:PublishReadyToRunComposite=true /p:PublishSingleFile=true /p:RuntimeIdentifier=win-x64\" --property mode=R2RComposite --property rid=win-x64 --application.options.requiredOperatingSystem windows
55-
condition: 'false'
48+
condition: 'true'
5649
- displayName: R2RComposite-Linux
5750
arguments: --application.buildArguments \"/p:PublishReadyToRun=true /p:PublishReadyToRunComposite=true /p:PublishSingleFile=true /p:RuntimeIdentifier=linux-x64\" --property mode=R2RComposite --property rid=linux-x64 --application.options.requiredOperatingSystem linux
58-
condition: 'false'
51+
condition: 'true'
5952

6053
steps:
6154
- ${{ each s in parameters.scenarios }}:

0 commit comments

Comments
 (0)