Mark Probst [Thu, 5 Nov 2015 16:59:52 +0000 (08:59 -0800)]
Merge pull request #2197 from mono/feature-disable-specific-finalizers
[sgen] Allow disabling finalization of specific classes.
Marek Safar [Thu, 5 Nov 2015 08:38:00 +0000 (09:38 +0100)]
Merge pull request #2199 from mhutch/pcl46
[xbuild] Add PCL 4.6 targets
Alexander Köplinger [Thu, 5 Nov 2015 00:16:08 +0000 (01:16 +0100)]
[acceptance-tests] Bump coreclr to pick up
65b122151adb6b5ef7c27d8e0c268ef479fbe8b4
+11 more passing tests. At this point I think there are no more false positives left and the rest are real bugs.
Zoltan Varga [Wed, 4 Nov 2015 21:27:29 +0000 (16:27 -0500)]
[runtime] Implement native-to-managed marshalling of byref delegate arguments. Fixes #35545.
Zoltan Varga [Wed, 4 Nov 2015 21:26:45 +0000 (16:26 -0500)]
[aot] Fix a crash introduced by
51c4e47f2 when the mscorlib aot image is missing.
Martin Baulig [Wed, 4 Nov 2015 20:10:29 +0000 (15:10 -0500)]
Cosmetic; remove unused variable.
(cherry picked from commit
a9afeddd80773abfe7400c77e0796acf6e5369c0)
Martin Baulig [Wed, 4 Nov 2015 20:03:33 +0000 (15:03 -0500)]
Cleanup unused usings.
Mono.Net.Security/LegacySslStream.cs is the only file which should
reference the 'Mono.Security.Protocol.Tls' namespace.
(cherry picked from commit
43307ff08684e6889bc24976cb128216e82b7179)
Michael Hutchinson [Wed, 4 Nov 2015 19:08:44 +0000 (14:08 -0500)]
[xbuild] Add PCL 4.6 targets
Mark Probst [Tue, 3 Nov 2015 20:47:57 +0000 (12:47 -0800)]
[sgen] Allow disabling finalization of specific classes.
Alexander Köplinger [Wed, 4 Nov 2015 16:43:10 +0000 (17:43 +0100)]
[acceptance-tests] Sort source files and add a new MONO define when compiling the tests
This allows us to customize test behavior that is different on Mono on purpose.
Sorting the files provides a much nicer output in the test runner.
Bump CoreCLR to include changes from
20789373370fe8f72dde01ad7ffc0816f618197c
Martin Baulig [Wed, 4 Nov 2015 00:14:23 +0000 (19:14 -0500)]
[Facades]: Remove 'System.IO.Compression'.
We do not need a 'System.IO.Compression' facade assembly because we
already have a regular assembly with the same name, which contains all
the classes from here - either as actual implementation or as type-forwarders.
(cherry picked from commit
fff780579463094dc194b9a5fb0036f4afa7a3a2)
Ludovic Henry [Wed, 4 Nov 2015 16:03:22 +0000 (16:03 +0000)]
Merge pull request #2196 from alexischr/coop-gc_stackdata-problem
[coop] Make sure 'gc_stackdata' is aligned and properly sized.
Zoltan Varga [Mon, 2 Nov 2015 23:16:47 +0000 (17:16 -0600)]
[sdb] Add another fastpath to the invoke code to skip more of the single stepping code during invokes.
Zoltan Varga [Wed, 4 Nov 2015 06:50:49 +0000 (01:50 -0500)]
[llvm] Get rid of the 'pindexes' array in LLVMCallInfo, store the parameter index in LLVMArgInfo.
Zoltan Varga [Wed, 4 Nov 2015 05:07:02 +0000 (00:07 -0500)]
[llvm] Add new llvm argument passing conventions for passing/returning scalar arguments by ref. Not yet used.
Rodrigo Kumpera [Wed, 4 Nov 2015 04:51:09 +0000 (23:51 -0500)]
Merge pull request #2193 from kumpera/loader-error-cleanup2
Get do_mono_metadata_parse_type to use MonoError
Zoltan Varga [Tue, 3 Nov 2015 18:53:07 +0000 (12:53 -0600)]
Merge pull request #2194 from alexrp/ppdb-status-crash
[ppdb] Fix a crash caused by mono_ppdb_load_file ().
Alexis Christoforides [Tue, 3 Nov 2015 14:06:14 +0000 (09:06 -0500)]
[coop] Make sure 'gc_stackdata' is aligned and properly sized.
The size of the gc_stackdata buffer was not a multiple of 8 bytes on 64-bits, so sgen_conservatively_pin_objects_from () would address invalid memory on its last iteration, as it progresses down the buffer by pointer size. The function also expects memory references to be aligned.
This is still not a guarantee that we are aligning memory references properly as two misaligns will still give the right size, but we can catch some of them here. Proper sizing is a smaller issue because we could always pad.
Alexander Köplinger [Tue, 3 Nov 2015 15:00:14 +0000 (16:00 +0100)]
[acceptance-tests] Bump coreclr to pick up
c1f0812bd0f94f085eb29199ef3b5bd69eab24bb:
Ludovic Henry [Tue, 3 Nov 2015 13:54:16 +0000 (13:54 +0000)]
Merge pull request #2195 from alexrp/tp-ms-io-trace-crash
[threadpool-ms-io] Fix some crashy mono_trace () calls.
Ludovic Henry [Tue, 3 Nov 2015 09:43:02 +0000 (09:43 +0000)]
[mini] Add safepoint support for all platforms
Alex Rønne Petersen [Tue, 3 Nov 2015 13:00:39 +0000 (14:00 +0100)]
[threadpool-ms-io] Fix some crashy mono_trace () calls.
The format strings declared a string argument that wasn't being passed so the
underlying format function crashed when trying to retrieve it.
Alex Rønne Petersen [Tue, 3 Nov 2015 12:26:39 +0000 (13:26 +0100)]
[ppdb] Fix a crash caused by mono_ppdb_load_file ().
As the `status` variable wasn't being passed along, the image loading code
would crash trying to set it.
Marek Safar [Tue, 3 Nov 2015 09:24:10 +0000 (10:24 +0100)]
Merge pull request #2190 from Numpsy/AddADNotFoundException
Add stub implementation of ActiveDirectoryObjectNotFoundException
Ludovic Henry [Tue, 3 Nov 2015 09:11:46 +0000 (09:11 +0000)]
Merge pull request #2192 from kumpera/suspend-crossfire
[suspend] Fix suspend race between mono-threads and sgen suspend when using the posix backend.
Rodrigo Kumpera [Tue, 3 Nov 2015 06:13:03 +0000 (01:13 -0500)]
[mono-error] Add MonoError to do_mono_metadata_parse_type and remove some of the type parsing scaffolds.
Rodrigo Kumpera [Tue, 3 Nov 2015 06:02:43 +0000 (01:02 -0500)]
[mono-error] Add MonoError to do_mono_metadata_parse_generic_class.
Rodrigo Kumpera [Tue, 3 Nov 2015 05:37:09 +0000 (00:37 -0500)]
[mono-error] Change mono_metadata_parse_generic_inst to use MonoError.
Rodrigo Kumpera [Tue, 3 Nov 2015 04:11:14 +0000 (23:11 -0500)]
[mono-error] Introduce MonoError into mono_metadata_parse_generic_param.
Alexander Köplinger [Tue, 3 Nov 2015 01:00:05 +0000 (02:00 +0100)]
[acceptance-tests] Make sure the latest version of coreclr-testlibrary.dll is in test directory
Also switch to creating symlinks instead of copying the file.
Rodrigo Kumpera [Tue, 3 Nov 2015 00:19:56 +0000 (19:19 -0500)]
[suspend] Fix suspend race between mono-threads and sgen suspend when using the posix backend.
The problem happens when a thread is left suspended by mono-threads and sgen tries to suspend it.
The signal mask of sigsuspend call in mono-threads didn't include sgen's suspend signal, making
it impossible for sgen to suspend it.
The fix is to include sgen's suspend signal into mono-threads sigsuspend mask. This way sgen
suspend can nest over mono-thread's.
The opposite is not needed as sgen never leaves threads suspended when it finishes and it holds
the suspend lock the whole time, making it impossible for mono-threads to initiate any suspend operation.
Vlad Brezae [Mon, 2 Nov 2015 23:05:50 +0000 (01:05 +0200)]
Merge pull request #2081 from BrzVlad/feature-concurrent-work
Concurrent sgen improvements
Alexander Köplinger [Mon, 2 Nov 2015 21:41:01 +0000 (22:41 +0100)]
[acceptance-tests] Output test list to file in chunks
On Jenkins we get a "make: execvp: /bin/sh: Argument list too long" error while executing the coreclr-runtest-basic target.
Since the shell doesn't like echoing our (very) big list of CoreCLR tests in one go, we need to split it up into chunks of
100 entries to hopefully avoid that.
João Matos [Mon, 2 Nov 2015 21:10:41 +0000 (21:10 +0000)]
Merge pull request #2191 from LogosBible/mono_amd64_have_tls_get
Add support for version of pthread_getspecific when launching from Xc…
Martin Potter [Mon, 2 Nov 2015 20:02:01 +0000 (12:02 -0800)]
Add support for version of pthread_getspecific when launching from Xcode with LLDB attached.
Ludovic Henry [Mon, 2 Nov 2015 16:06:47 +0000 (16:06 +0000)]
[trace] Synchronize output
Alexander Köplinger [Mon, 2 Nov 2015 18:18:33 +0000 (19:18 +0100)]
[mono] Rename NUnit xml result files to TestResult-{0}.xml convention
This is the convention used in other parts of the repo like mcs/, so we should try to be consistent here.
Alexander Köplinger [Mon, 2 Nov 2015 15:39:49 +0000 (16:39 +0100)]
[acceptance-tests] Remove some tests that were removed upstream
Also bump coreclr to pick up latest commit.
Ludovic Henry [Mon, 2 Nov 2015 11:43:54 +0000 (11:43 +0000)]
[threads] Remove assertion on `info` for socket syscall abort
This would trigger a crash with XS on clean process exit, due to the
assertion at socket-io.c:2757.
This fixes bug 35429
Alexander Köplinger [Mon, 2 Nov 2015 17:11:29 +0000 (18:11 +0100)]
[System.Core] Make sure DateTime.AddDays() is preserved by the linker in a test
We use the method in the code instead of just via reflection.
This allows the test to work on iOS device builds.
Richard Webb [Mon, 2 Nov 2015 16:32:44 +0000 (16:32 +0000)]
Add stub implementation of ActiveDirectoryObjectNotFoundException
largely copied from ActiveDirectoryOperationException
Marek Safar [Mon, 2 Nov 2015 13:44:21 +0000 (14:44 +0100)]
[mcs] Add codegen for try-finally block with unreachable closing brace. Fixes #35401
Marek Safar [Mon, 2 Nov 2015 13:22:00 +0000 (14:22 +0100)]
Merge pull request #2186 from ruediger-stevens/master
Exception serializes the InnerException as System.Exception
Alexander Köplinger [Mon, 2 Nov 2015 11:30:54 +0000 (12:30 +0100)]
[acceptance-tests] Reenable some tests now that #35410 is fixed
Marek Safar [Mon, 2 Nov 2015 10:06:57 +0000 (11:06 +0100)]
[mcs] add new test
Marek Safar [Mon, 2 Nov 2015 10:05:45 +0000 (11:05 +0100)]
[mcs] Add sbyte type to the list of valid cast tokens. Fixes #35410
github@mrblade.de [Mon, 2 Nov 2015 10:04:25 +0000 (11:04 +0100)]
Exception serializes the InnerException as System.Exception not as it's run-time type.
This makes serialization consistent with deserialization (where the InnerException is already retrieved as System.Exception explicitly).
Additionally it may allow serializers more options in serializing inner exceptions (i.e. fall back to System.Exception if the specific exception is not serializable itself).
Marek Safar [Mon, 2 Nov 2015 07:40:04 +0000 (08:40 +0100)]
Merge pull request #2185 from akoeplinger/json-move
[System.ServiceModel.Web] Remove old copy of S.R.Serialization.Json
Zoltan Varga [Sun, 1 Nov 2015 03:06:19 +0000 (23:06 -0400)]
Fix an obsolete comment.
Alexander Köplinger [Sat, 31 Oct 2015 00:10:35 +0000 (01:10 +0100)]
[System.ServiceModel.Web] Move System.Runtime.Serialization.Json tests into System.Runtime.Serialization assembly
That's where they belong on .NET 4.5+
Additionally, add a test case from https://bugzilla.xamarin.com/show_bug.cgi?id=4230
Alexander Köplinger [Fri, 30 Oct 2015 23:53:57 +0000 (00:53 +0100)]
[System.ServiceModel.Web] Remove old copy of System.Runtime.Serialization.Json
We don't need this here anymore since it moved to System.Runtime.Serialization.dll in
.NET 4.5 and
54f7c82d2b1ef2bedbf90c262fda28654727a5c9.
This copy is just confusing and not even built anymore, so delete it.
Martin Baulig [Fri, 30 Oct 2015 19:15:26 +0000 (15:15 -0400)]
[Mono.Security]: Add 'MonoTlsSettings.TrustAnchors' and 'CertificateValidationHelper.SupportsTrustAnchors'.
This is currently only supported on iOS and Mac (check 'CertificateValidationHelper.SupportsTrustAnchors')
and will pass a set of trusted root certificates to the OS validation function. Use for self-signed
certificates instead of providing a custom callback.
Alexander Köplinger [Fri, 30 Oct 2015 19:57:48 +0000 (20:57 +0100)]
[acceptance-tests] Pull in new CoreCLR tests added upstream
A bunch of tests were added in the upstream repo, add those to the source listings.
There's a suite of tests in the CoreMangLib folder which are mostly testing corelib,
added a separate target "coreclr-runtest-coremanglib" for it and renamed the existing
target to "coreclr-runtest-basic".
Build and link all cs testcases with the coreclr-testlibrary.dll which enables a
few more tests to run.
Alexander Köplinger [Fri, 30 Oct 2015 20:20:44 +0000 (21:20 +0100)]
[acceptance-tests] Bump coreclr to pick up
3b2969dffe191b03f1ac85a9c1e62417c9b7833b:
Alexander Köplinger [Fri, 30 Oct 2015 20:16:04 +0000 (21:16 +0100)]
[acceptance-tests] Add prefix in commit message for the bump commit helper
Additionally remove 'git pull', it doesn't work when no tracking branch is set and I can easily pull myself if I want to.
Martin Baulig [Fri, 30 Oct 2015 18:20:09 +0000 (14:20 -0400)]
Put back "[Mono.Security.Providers.OldTls]: Include all the sources from the old TLS implementation here."
The build problem should now be fixed.
This reverts commit
5a7c0a0d4cec82028e0f3ecbea59179da2ee0c78.
Martin Baulig [Fri, 30 Oct 2015 18:32:25 +0000 (14:32 -0400)]
[System/TLS]: In ChainValidationHelper, remove the overloads taking 'Mono.X509' certificates.
Martin Baulig [Fri, 30 Oct 2015 18:17:17 +0000 (14:17 -0400)]
[Mono.Security]: On mobile, 'Mono.Security.Interface.CertificateValidationHelper' becomes public in System.dll.
Martin Baulig [Fri, 30 Oct 2015 18:05:34 +0000 (14:05 -0400)]
Revert "[Mono.Security.Providers.OldTls]: Include all the sources from the old TLS implementation here."
This does not build on Mobile yet.
This reverts commit
9147778ee89b9bbc1935f6a43cf132d00220cf71.
Martin Baulig [Fri, 30 Oct 2015 17:16:23 +0000 (13:16 -0400)]
[Mono.Security.Providers.OldTls]: Include all the sources from the old TLS implementation here.
Martin Baulig [Fri, 30 Oct 2015 16:41:09 +0000 (12:41 -0400)]
[System]: Cleanup 'ChainValidationHelper', moving the actual validation code into a new class.
The actual validation code now lives in 'SystemCertificateValidator', whereas
'ChainValidationHelper' contains all the glue code which deals with 'ServicePointManager',
user-supplied callbacks, etc.
Rodrigo Kumpera [Fri, 30 Oct 2015 15:29:34 +0000 (11:29 -0400)]
[mono-error] Introduce MonoError into mono_metadata_parse_array_internal.
Jonathan Pryor [Fri, 30 Oct 2015 14:13:56 +0000 (10:13 -0400)]
Merge pull request #2152 from joelmartinez/mdoc-preserver
[mdoc] Marking `MDocPreserve` Obsolete.
Zoltan Varga [Fri, 30 Oct 2015 04:16:27 +0000 (00:16 -0400)]
[sdb] Add a fastpath to process_single_step_inner () for single stepping during invokes.
Zoltan Varga [Fri, 30 Oct 2015 03:58:44 +0000 (23:58 -0400)]
[llvm] Add names for some temporary variables representing got slots.
Martin Baulig [Thu, 29 Oct 2015 21:39:48 +0000 (17:39 -0400)]
[System/TLS]: On desktop, allow dynamic loading of the TLS Provider at runtime.
To do this, set the MONO_TLS_PROVIDER environment variable to either "default",
"newtls", "oldtls" or the full assembly-qualified type name of the MonoTlsProvider
(in this case, the class needs to derive from MonoTlsProvider and have a public
parameterless constructor and it needs to be installed in the GAC).
Ludovic Henry [Thu, 29 Oct 2015 20:31:24 +0000 (20:31 +0000)]
[coop] Fix typo for gc unsafe region enter/exit
The idea is to get the address of the top of the stack, so passing a
value is meaninless. This was a typo. It also fixes libtest.c which
used an outdated signature.
Martin Baulig [Thu, 29 Oct 2015 18:35:40 +0000 (14:35 -0400)]
[Mono.Security]: Add new MonoTlsProviderFactory.CreateHttpListener() API to create a HttpListener.
This new method lets you create a 'HttpListener' and specify the X509Certificate2 to use
(so you don't have to put it into ~/.config/.mono/httplistener) as well as an optional
'MonoTlsProvider' and optional 'MonoTlsSettings'.
Rodrigo Kumpera [Thu, 29 Oct 2015 19:53:01 +0000 (15:53 -0400)]
Merge pull request #2180 from kumpera/loader-error-cleanup
This is a small batch of MonoError cleanups.
Martin Baulig [Thu, 29 Oct 2015 17:44:19 +0000 (13:44 -0400)]
[System]: Use the new 'MonoTlsProvider' framework in 'HttpListener'.
This makes 'HttpListener' use 'SslStream', which can now switch the
TLS implementation at runtime.
Martin Baulig [Thu, 29 Oct 2015 17:40:21 +0000 (13:40 -0400)]
[System/TLS]: In LegacySslStream, call SslServerStream's .ctor and request, but not require a client certificate.
In SslStream.AuthenticateAsServer(), setting 'clientCertificateRequired' to true will ask for a client
certificate and - if the client does not provide one - invoke the 'RemoteCertificateValidationCallback'
with null and 'SslPolicyErrors.RemoteCertificateNotAvailable' - but resume the handshake if this callback
returns true.
Rodrigo Kumpera [Thu, 29 Oct 2015 19:51:34 +0000 (15:51 -0400)]
Fix windows build.
Zoltan Varga [Thu, 29 Oct 2015 19:47:29 +0000 (15:47 -0400)]
[llvm] Cleanup the code in process_call () a bit.
Martin Baulig [Thu, 29 Oct 2015 19:34:50 +0000 (15:34 -0400)]
Oops, also need to set it when cloning.
Martin Baulig [Thu, 29 Oct 2015 19:17:15 +0000 (15:17 -0400)]
[Mono.Security]: Add 'MonoTlsSettings.EnabledProtocols' property.
This is currently only used by the new TLS code, but allows to override
the protocol.
Martin Baulig [Thu, 29 Oct 2015 19:02:50 +0000 (15:02 -0400)]
[NewSystemSource]: Pass down the 'IMonoTlsProvider' to SSPIWrapper.
This should fix the issue where you pass 'NewTlsProvider' as custom provider
without installing it as the default.
João Matos [Thu, 29 Oct 2015 18:36:36 +0000 (18:36 +0000)]
Merge pull request #2182 from lewurm/fix-arm-build
mini-llvm: fix wrong usage
Bernhard Urban [Thu, 29 Oct 2015 18:31:19 +0000 (11:31 -0700)]
mini-llvm: fix wrong usage
Ludovic Henry [Thu, 29 Oct 2015 18:08:13 +0000 (18:08 +0000)]
[tests] Adjust MathTest double epsilon value
The double.Epsilon value represent the smallest value that double is
able to represent. And that is diferent from the machine epsilon, which
is the smallest difference between two double values.
The second is equal to 2 ^ (-52), because there are 52bits to
represent the mantissa in a IEEE 754 double.
Zoltan Varga [Thu, 29 Oct 2015 17:40:11 +0000 (13:40 -0400)]
[llvm] Split sig_to_llvm_sig () into two versions, one which takes an LLVMCallInfo argument, and one which doesn't.
Martin Baulig [Thu, 29 Oct 2015 17:07:56 +0000 (13:07 -0400)]
Comment-out [HostProtection] attribute in SslStream.cs, it seems to be causing problems.
Zoltan Varga [Thu, 29 Oct 2015 17:07:02 +0000 (13:07 -0400)]
[runtime] Disable the -Wreturn-stack-address clang warning.
Ludovic Henry [Thu, 29 Oct 2015 16:36:47 +0000 (16:36 +0000)]
[threads] Fix warning on Linux
Neale Ferguson [Thu, 29 Oct 2015 14:31:24 +0000 (10:31 -0400)]
s390x-codegen.h - Initial SIMD support
cpu-s390x.md - Add gc-safe-point instruction
mini-ops.h - Add TARGET_S390X for gc-safe-point
mini-s390x.c - Initial SIMD support; Fix floating point conversion
mini-s390x.h - Initial SIMD support
Rodrigo Kumpera [Tue, 27 Oct 2015 04:48:50 +0000 (00:48 -0400)]
[mono-error] Introduce mono_metadata_parse_type_checked variant that uses MonoError.
Rodrigo Kumpera [Sun, 25 Oct 2015 20:45:03 +0000 (16:45 -0400)]
[mono-error] Introduce MonoError in compare_type_literals.
Rodrigo Kumpera [Sun, 25 Oct 2015 20:30:49 +0000 (16:30 -0400)]
[metadata] Remove dead MonoParseTypeMode argument from non public functions.
Rodrigo Kumpera [Sun, 25 Oct 2015 20:07:02 +0000 (16:07 -0400)]
[loader-error] mono_metadata_parse_method_signature is no longer used by the runtime, so remove loader error handling from it.
Zoltan Varga [Thu, 29 Oct 2015 00:56:12 +0000 (20:56 -0400)]
[llvm] Clean up the naming convention in the backend. 'module' refers to a MonoLLVMModule while 'lmodule' refers to a LLVMModuleRef. Some other small cleanups.
Zoltan Varga [Thu, 29 Oct 2015 00:38:47 +0000 (20:38 -0400)]
[llvm] Merge LLVMCallInfo and LLVMSigInfo.
Martin Baulig [Wed, 28 Oct 2015 23:47:18 +0000 (19:47 -0400)]
[System]: Replace the 'SslStream' implementation with a proxy that's using the 'MonoTlsProvider' layer.
This allows consumers of the 'SslStream' class to take full advantage of
the new TLS switcher code.
Martin Baulig [Wed, 28 Oct 2015 23:12:48 +0000 (19:12 -0400)]
[Mono.Security]: It is legal for a TlsClientCertificate message to contain no certificates.
Zoltan Varga [Wed, 28 Oct 2015 22:45:16 +0000 (18:45 -0400)]
Fix the build, the stub for mono_llvm_cpp_throw_exception () was inside a DISABLE_JIT ifdef block.
Martin Baulig [Wed, 28 Oct 2015 22:38:43 +0000 (18:38 -0400)]
Fix my last commit.
Martin Baulig [Wed, 28 Oct 2015 22:26:55 +0000 (18:26 -0400)]
[Mono.Security]: Rename 'MonoTlsSettings.ServerCertificateValidationCallback' into 'RemoteCertificateValidationCallback'.
This callback is also used to validate client-certificates when using SslStream in server-mode.
Martin Baulig [Wed, 28 Oct 2015 21:10:26 +0000 (17:10 -0400)]
Don't pass a 'null' hostname to the system validator as it would crash.
Martin Baulig [Wed, 28 Oct 2015 20:27:43 +0000 (16:27 -0400)]
Kill dead code.
Zoltan Varga [Wed, 28 Oct 2015 21:31:19 +0000 (17:31 -0400)]
[runtime] Handle the conditional compilation of llvm-runtime.cpp at the automake level since including a c++ file into a c project seems to cause linking problems on some platforms.
Zoltan Varga [Wed, 28 Oct 2015 21:22:11 +0000 (17:22 -0400)]
[runtime] Add a configure check for unwind.h
Zoltan Varga [Wed, 28 Oct 2015 19:04:56 +0000 (15:04 -0400)]
[profiler] Avoid a crash at shutdown by installing the assembly unload hook for the 'start_unload' event instead of the 'end_unload' event, the latter receives a mostly freed assembly.