Skip to content

Conversation

@AndyAyersMS
Copy link
Member

Under jit stress, optOptimizeBoolsGcStress will modify trees. Since this now happens in a phase that runs after fgSetBlockOrder, it must also recost and rethread the trees.

Fixes #75944.

Under jit stress, `optOptimizeBoolsGcStress` will modify trees. Since this
now happens in a phase that runs after `fgSetBlockOrder`, it must also
recost and rethread the trees.

Fixes dotnet#75944.
@ghost ghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Sep 21, 2022
@ghost ghost assigned AndyAyersMS Sep 21, 2022
@ghost
Copy link

ghost commented Sep 21, 2022

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

Issue Details

Under jit stress, optOptimizeBoolsGcStress will modify trees. Since this now happens in a phase that runs after fgSetBlockOrder, it must also recost and rethread the trees.

Fixes #75944.

Author: AndyAyersMS
Assignees: -
Labels:

area-CodeGen-coreclr

Milestone: -

@AndyAyersMS
Copy link
Member Author

@jakobbotsch PTAL
cc @dotnet/jit-contrib

Likely also fixes #75942 and #75941.

@AndyAyersMS
Copy link
Member Author

/azp run runtime-coreclr jitstress

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@AndyAyersMS
Copy link
Member Author

Still seeing some failures so will need to revise this.

@AndyAyersMS
Copy link
Member Author

We are ending up with out of order threading, despite calling fgSetStmtSeq. Seems like we are recosting part of the tree after this call, which leads to operand swapping after threading. Since OOB runs later now than it once did, there is no need to recost.

@AndyAyersMS
Copy link
Member Author

Not the first time I've been surprised by gtPrepareCost's operand swapping, and probably not the last.

@AndyAyersMS
Copy link
Member Author

/azp run runtime-coreclr jitstress

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@AndyAyersMS
Copy link
Member Author

Another segfault from msbuild during restore:

/__w/1/s/.dotnet/sdk/7.0.100-preview.7.22377.5/MSBuild.dll /nologo -maxcpucount /m -verbosity:m /v:minimal /bl:/__w/1/s/artifacts/log/Checked/ToolsetRestore.binlog /clp:Summary /clp:ErrorsOnly;NoSummary /nr:false /p:TreatWarningsAsErrors=true /p:ContinuousIntegrationBuild=true /p:__ToolsetLocationOutputFile=/__w/1/s/artifacts/toolset/8.0.0-beta.22469.1.txt /t:__WriteToolsetLocation /warnaserror /__w/1/s/artifacts/toolset/restore.proj
/__w/1/s/eng/common/tools.sh: line 474:   503 Segmentation fault      (core dumped) "$_InitializeBuildTool" "$@"

@AndyAyersMS
Copy link
Member Author

Arm64 SPMI is lack of MCH, perhaps I'm too close to a GUID update or collections are broken?

No Azure Storage MCH files to download from 11b4ea58-c400-4c3d-995e-4e2f0676f6e8/linux/arm64/

@AndyAyersMS
Copy link
Member Author

x86 failure is in CriticalFinalizer which is supposedly fixed by #75952.

@AndyAyersMS
Copy link
Member Author

More critical finalizer failures in the jitstress legs. So far, no other failures there.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Test failure baseservices\\exceptions\\unittests\\RecursiveThrowNew\\RecursiveThrowNew.cmd

2 participants