Improve superilc test copying speed and cleanup (dotnet/coreclr#27025)
authorJan Vorlicek <janvorli@microsoft.com>
Mon, 7 Oct 2019 19:39:46 +0000 (21:39 +0200)
committerGitHub <noreply@github.com>
Mon, 7 Oct 2019 19:39:46 +0000 (21:39 +0200)
commit4de837b2de9296ebbbb18125e480c3727bf9d00b
tree71d1d44cd0cc38bce9bf779a9391975011023264
parentc472903e41daa70c7f29dcad5d94e6fde143010e
Improve superilc test copying speed and cleanup (dotnet/coreclr#27025)

The superilc is copying all files that are not found to be managed
assemblies from the original test folder to the target folder.
This includes .pdb and .ilk files that are huge and slow down the
copying process significantly. And they are not needed anyways. So this
change filters these files out.

During cleanup, superilc was removing all .out folders. But I've found
that in most cases, I want it to remove only these folders for crossgen or
crossgen2 based on the compiler types selected using command line
options. This allows me to keep crossgen results and keep comparing them
with new crossgen2 results as I work on fixing issues.
So I have added such a functionality.

Commit migrated from https://github.com/dotnet/coreclr/commit/b015c8433186f5e1a4bb6fd5da334499640ba2e2
src/coreclr/src/tools/ReadyToRun.SuperIlc/BuildFolder.cs
src/coreclr/src/tools/ReadyToRun.SuperIlc/Commands/CompileDirectoryCommand.cs
src/coreclr/src/tools/ReadyToRun.SuperIlc/Commands/CompileNugetCommand.cs
src/coreclr/src/tools/ReadyToRun.SuperIlc/Commands/CompileSubtreeCommand.cs
src/coreclr/src/tools/ReadyToRun.SuperIlc/PathHelpers.cs