Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preparation for JIT\Regression test merging - assembly/file renames #79489

Merged
merged 8 commits into from
Dec 13, 2022

Conversation

markples
Copy link
Member

@markples markples commented Dec 10, 2022

This is a collection of renames that can be merged independently of actual test merging. It may be easier to look at each commit separately. I have them collected here in order to just do one PR process, but I can split them if needed. Automated changes were done with the ILTransform tool (started by @trylek, my version at https://github.com/markples/utils/tree/for-PR-dotnet-runtime-79489, commit 131b3764).

[ILTransform -p] Rename projects due to project name suffixes or proj…

  • Standardize project suffixes since _d, etc., are special cases for test merging but -dbg is not
  • Rename a few tests where the project and IL files had CaSiNg differences

[ILTransform -ilfile] Rename IL files and Includes to match…

  • Rename IL files to match the .ilproj root name (which excludes suffixes such as _d)
  • Update the project files to refer to the new filenames using $(MSBuildProjectName) except src/tests/JIT/Regression/CLR-x86-JIT/V2.0-Beta2/b323557 where the IL file doesn't have the suffix

[ILTransform -m] Remove .module from IL files

  • Remove all .module (including extern) lines from IL files

[ILTransform -a] Update .assembly to match filename in IL files

  • Rename IL .assembly names to match their filenames
  • Some lines were .assembly foo // as "foo" - remove those comments too

[ILTransform -n -a -ilfile] Deduplicate project names and update IL f…

  • Deduplicate project names across JIT/Regression
    • If a set of duplicates is simply one csproj and one ilproj, then add _il to the ilproj and leave the csproj alone
    • Otherwise append the difference in the closest different directory names. For example:
      • V1-M11-Beta1/b40347/b40347.ilproj -> b40347_M11-Beta1.ilproj
      • V1-M12-Beta2/b40347/b40347.ilproj -> b40347_M12-Beta2.ilproj
    • However, avoid creating foo_foo. For example:
      • V1-M12-Beta2/b51875/b51875.csproj ->
      • V1-M12-Beta2/b51875/Desktop/b51875.csproj -> b51875_Desktop.csproj
  • Also rename IL files and .assembly names to match the new project names

Fix assembly reference in test dev11_132534
Fix assembly reference in test dev11_145295

Handwritten fixes to for IL->C# assembly references that were broken by the renames.

@markples markples added test-enhancement Improvements of test source code area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI labels Dec 10, 2022
@markples markples added this to the 8.0.0 milestone Dec 10, 2022
@markples markples self-assigned this Dec 10, 2022
@ghost
Copy link

ghost commented Dec 10, 2022

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

Issue Details

TODO - fill in details

Author: markples
Assignees: markples
Labels:

test-enhancement, area-CodeGen-coreclr

Milestone: 8.0.0

@markples
Copy link
Member Author

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@markples
Copy link
Member Author

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@markples
Copy link
Member Author

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@markples
Copy link
Member Author

All failures are #79517

@markples markples marked this pull request as ready for review December 12, 2022 22:41
Copy link
Member

@trylek trylek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thank you! I also love the way you modified the msbuild projects to refer to $(MSBuildProjectName) instead of the particular test IL name, that's exactly the type of maintenance cost reduction cleanup the infra is all about.

Copy link
Member

@BruceForstall BruceForstall left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@markples markples merged commit 4aae104 into dotnet:main Dec 13, 2022
@markples markples deleted the renaming branch December 13, 2022 02:19
@ghost ghost locked as resolved and limited conversation to collaborators Jan 12, 2023
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 test-enhancement Improvements of test source code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants