More preparation for JIT\Regression test merging (#79697)
This is another collection of changes that can be merged independently of actual test merging. Automated changes were done with the ILTransform tool (started by @trylek, my version at https://github.com/markples/utils/tree/for-PR-dotnet-runtime-79697, commit
6324a32f).
- Remove test JIT/Regression/VS-ia64-JIT/V1.2-Beta1/b102887 (identical to JIT/Regression/VS-ia64-JIT/V1.2-M02/b28077)
- Dedup class names in GitHub_23199
- JIT/Regression/JitBlue/GitHub_23199 used #ifdefs to create 32 and 64 bit versions of the test
- Both versions can run on any host
- Duplicate the test with different names and no ifdefs
- Run both versions on all hosts
- Merge b399444 into one test that handles both cases
- JIT/Regression/CLR-x86-JIT/V2.0-Beta2/b399444 used #ifdefs to create two tests
- Combine both into one test that checks both without #ifdefs
- Delete unused .xml files
- Add RequiresProcessIsolation
- Automated via `ILTransform -prociso`
- Add `<RequiresProcessIsolation>true</RequiresProcessIsolation>` for any test with CLRTestTargetUnsupported, GCStressIncompatible, UnloadabilityIncompatible, JitOptimizationSensitive, TieringTestIncompatible, HeapVerifyIncompatible, IlasmRoundTripIncompatible, SynthesizedPgoIncompatible, or CrossGenTest properties.
- Add `<RequiresProcessIsolation>true</RequiresProcessIsolation>` for any test with CLRTestBashEnvironmentVariable, CLRTestBatchEnvironmentVariable, CLRTestEnvironmentVariable, Content, CMakeProjectReference (not sure about the last two, but they only impact 3 tests and can be examined later)
- Add `<RequiresProcessIsolation>true</RequiresProcessIsolation>` for any test that calls Environment.Exit
- Add comment explaining why RequiresProcessIsolation is set to help with removing them later
- Make entry points public
- Automated via `ILTransform -public`
- Update entry point method (`Main` for C#, whatever is marked `.entrypoint` for IL) to be public
- Update entry point's enclosing type to be public if it exists
- Wrap IL entry points in a new class if one doesn't exist (e.g., CLR-x86-JIT/V1-M09.5-PDC/b10940/b10940a.il)
- Manual fixes for public changes
- These were all C# cases where Main was previously in a non-public type with other public methods that contained non-public types
- Fix in all cases is to just make the other method not public