Add unit test for NZST
Attempt to implement GetTimeZoneData to support all hemispheres
Fix compile warning and break from for loop once complete
Further reduce the chance of an NRE in WebConnection, ref: 55f400b6446024adef5dcc8cc690b6951af98125
Return empty result array when calling Task.WhenAllCore<T> with empty argument list. Fixes #15956
Added tests for Task.WhenAll w/ empty list
[runtime] Preserve the call chain in mono_arch_setup_async_callback () on amd64 to prevent crashes in the libgcc unwinder (#15969).
[monolinker] Add additional preserve instruction for IReadOnlyCollection on System.Array
[runtime] Only do the stack manipulation added by 79e0856ffda4c2566314ba31677fe55f2d7f53f2 on linux, since it seems to crash on osx.
[runtime] Remove some debug spew.
[jit] Implement support for OP_TLS_GET on amd64+llvm.
[jit] Fix sgen support in LLVM. Use the new LLVM 'invariant.load' metadata instead of our 'mono.noalias' metadata.
[jit] Remove a few LLVM_MONO_BRANCH defines, we don't support non-mono versions of LLVM any more.
Merge pull request #800 from alistair/south_timezone_fix

Southern Hemisphere timezone fix
fix package build.
[Mono.Tuner] Make ISubStep.Initialize public virtual instead of private, so that consumers can override.

Previously derived classes could implement ISubStep.Initialize, but after
da82237da061cf this (correctly) not allowed anymore.
[jit] Make ABCREM really remove bounds checks, not just when running with -v -v -v -v.
[jit] Remove references to unused llvm.invariant.start/end intrinsics.
Fix an NRE in System.Timers.Timer.Dispose ().

This would happen because _lock is nullified by the GC during
finalization. Dispose () calls Close () which sets the Enabled
property to false, which then attempts to lock on _lock.
Improve my previous change a bit.

Checking the `disposing` argument is cleaner.