• A
    Reduce VM usage in emit tests · 3fcf7bac
    Andy Gocke 提交于
    This change reduces the VM used and memory allocated in the emit
    tests by moving the WinRT tests to their own DLL and removing
    the extra mscorlib reference.
    
    The cause of most of the allocations in the Emit unit tests was
    serializing the WinRT assemblies across app domains. There were
    three reasons the DLLs needed to be serialized:
    
    1) PeVerify currently requires a separate app domain to be used if
       any of the references of the assembly to be verified have already
       been loaded into the current app domain and have a different MVID.
    
    2) The WinRT tests all use a separate version of mscorlib, so they
       will all reference an assembly with a different MVID than the one
       loaded.
    
    3) Most of the WinRT tests were accidentally pulling two references
       to mscorlib, also always leading to a conflict.
    
    All of these issues should be resolved. The CSharp.Emit unit tests
    now allocated 400 MB less and have > 100 MB smaller peak VM.
    
    Fixes #386.
    3fcf7bac
HostedRuntimeEnvironment.cs 36.1 KB