Stephen Toub [Thu, 28 Feb 2019 21:42:27 +0000 (16:42 -0500)]
Fix GetApartmentState value on Unix to be Unknown (dotnet/coreclr#22928)
* Fix GetApartmentState value on Unix to be Unknown
The code in corefx is returning ApartmentState.Unknown on Unix. This new coreclr implementation should do the same.
* Fix visibility on TrySetApartmentStateUnchecked
Commit migrated from https://github.com/dotnet/coreclr/commit/
0a93b5136621040b93b9f805e26e7d27d11dc955
Andy Ayers [Thu, 28 Feb 2019 20:15:19 +0000 (12:15 -0800)]
JIT: allow slightly more general promotion of structs with struct fields (dotnet/coreclr#22867)
For a while now the jit has been able to promote an outer struct A with an
inner struct field B that itself has a single non-struct field C, provided
that C occupies all of B and that C and B are pointer-sized.
For example, this comes up when supporting promotion of `Span<T>`, as a span
contains a `ByReference<T>` field that itself contains a pointer-sized field.
This change relaxes the constraints slightly, allowing B and C to be less than
pointer sized, provided C still occupies all of B, and B is suitably aligned
within A.
Doing so allows promotion of the new `Range` type, which contains two `Index`
fields that each wrap an `int`. This improves performance for uses of `Range`
for simple examples like those in dotnet/coreclr#22079.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8f5bf71321ca29dcd9c5847185e15c0b7fb9a8e7
Steve MacLean [Thu, 28 Feb 2019 19:47:58 +0000 (14:47 -0500)]
Remove unused packages from init-tools.msbuild (dotnet/coreclr#22884)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a2460500555f6c47aad1f3cef19f4df0c099a078
Steve MacLean [Thu, 28 Feb 2019 19:08:06 +0000 (14:08 -0500)]
Remove sdmaclea from active arm64 users (dotnet/coreclr#22924)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1e087524a6ed3a64a0c682423c6655308c062d3d
Egor Chesakov [Thu, 28 Feb 2019 17:55:28 +0000 (09:55 -0800)]
Re-partition MSBuild test groups (dotnet/coreclr#22885)
This changes a tests partitioning scheme of coreclr tests in several different ways:
1. Make the test groups are of equal (to some extent) sizes keeping the number of tests in one group less than 1000;
2. As a resulf of 1) this increases a number of groups needed for Pri0 tests to 3 and decreases a number of groups for Pri1 tests to 10;
3. This also changes a way of tests partitioning scheme is defined - instead of explicitly specifying MSBuild Include-patterns this defines a boundaries between test groups in a form of _StartsWith ItemGroup. Then I use StringComparer.Ordinal to pick tests that belong to a particular group.
Commit migrated from https://github.com/dotnet/coreclr/commit/
39b643fa45e62cd016b36c173d6166c41d85f0f7
Jan Kotas [Thu, 28 Feb 2019 07:41:42 +0000 (23:41 -0800)]
Fix CoreRT build break
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
062597365c5fe0cbab66aa11447e8e6459179cd6
Michelle McDaniel [Thu, 28 Feb 2019 06:52:30 +0000 (22:52 -0800)]
Change IBC package layout to match what we generate (dotnet/coreclr#22799)
* Change IBC package layout to match what the optimization repo now generates
Commit migrated from https://github.com/dotnet/coreclr/commit/
d639ff3a0fe8677ff0a4963a92d5dbd1c465bf48
Stephen Toub [Thu, 28 Feb 2019 04:23:46 +0000 (23:23 -0500)]
Merge pull request dotnet/coreclr#22890 from stephentoub/fixthreadbehavior
Fix Thread-related behavior changes
Commit migrated from https://github.com/dotnet/coreclr/commit/
4a0a0c043eb07a3cc75ba94dcbd8072455ddcab5
Juan Hoyos [Thu, 28 Feb 2019 02:27:31 +0000 (18:27 -0800)]
Update BuildTools, CoreClr, IbcData, PgoData to preview1-03723-01, preview4-27427-72, master-
20190227.1, master-
20190227.1, respectively (master) [Manual] (dotnet/coreclr#22903)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7566ca9442cb43c167523e63ffc34658bd438c01
Stephen Toub [Wed, 27 Feb 2019 22:53:25 +0000 (17:53 -0500)]
Address PR feedback (clean up style in Thread.CoreCLR.cs)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d30aaca62d40d235a55a445edff2f85b8c56ba26
Aaron Robinson [Thu, 28 Feb 2019 00:49:26 +0000 (16:49 -0800)]
Remove legacy classfactory.cpp implementation for managed COM activation (dotnet/coreclr#22895)
Commit migrated from https://github.com/dotnet/coreclr/commit/
83e6a8043699da675c241a3ef325eff54c6a59cb
Maoni Stephens [Thu, 28 Feb 2019 00:35:03 +0000 (16:35 -0800)]
added a lightweight GC profiling option (dotnet/coreclr#22866)
added a profiling event mask in the high 32-bit, COR_PRF_HIGH_BASIC_GC, for basic GC monitoring. it can be set via `ICorProfilerInfo5::SetEventMask2`. all this gives you is
* GC start callback
* GC end callback
* update generational bounds
note that one different behavior between this and the existing COR_PRF_MONITOR_GC is, aside from the obvious that it doesn't give you any info beyond the above, is that the GC end callback + update generational bounds are enabled for _all_ GCs, not just non concurrent GCs. I kept the behavior the same for COR_PRF_MONITOR_GC because I don't want to risk breaking existing profiling tools that do not anticipate these for concurrent GCs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ea099fba14da84c3e81eb8d5ad93ecae7c659489
Tomáš Matoušek [Thu, 28 Feb 2019 00:20:36 +0000 (16:20 -0800)]
Merge pull request dotnet/coreclr#22736 from dotnet/dev/tomat/copyrights
Set copyright and package license
Commit migrated from https://github.com/dotnet/coreclr/commit/
d0743a467c1df473f511ca0ab73eaf1d119a309b
Stephen Toub [Wed, 27 Feb 2019 13:43:03 +0000 (08:43 -0500)]
Fix BitOperations using in standalone EventSource build
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
63b850917dd28c7ab08a51954c8799ca5440ea4e
Jan Kotas [Wed, 27 Feb 2019 06:21:32 +0000 (22:21 -0800)]
Fix EventSource StubEnvironment
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
39c57ad960fe37e265e426d23f3a158c508f672f
Steve MacLean [Wed, 27 Feb 2019 21:53:08 +0000 (16:53 -0500)]
Fix sync.sh syntax error (dotnet/coreclr#22883)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e7289a7c8f9c1fcc9d6fa4c9d4954cdbf5ba4acc
José Rivero [Wed, 27 Feb 2019 21:46:54 +0000 (13:46 -0800)]
[Test fix] Test failure: tracing_eventsource._eventpipeandetw_eventpipeandetw_eventpipeandetw_/_eventpipeandetw_eventpipeandetw_eventpipeandetw_cmd (dotnet/coreclr#22870)
- Fixes dotnet/coreclr#19302
Commit migrated from https://github.com/dotnet/coreclr/commit/
95207c60d472047aeb1688d04f23b77216aafeae
José Rivero [Wed, 27 Feb 2019 21:41:45 +0000 (13:41 -0800)]
Disabling runtimeeventsource to unblock official build. (dotnet/coreclr#22899)
- Related failures: dotnet/coreclr#18907, dotnet/coreclr#19340, dotnet/coreclr#22441, dotnet/coreclr#22729.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1ca41721bf335d0ef21612fe5907854e8f24ecad
Sung Yoon Whang [Wed, 27 Feb 2019 21:34:36 +0000 (13:34 -0800)]
Disabling windows event log test till further investigation on frequent failures (dotnet/coreclr#22889)
Commit migrated from https://github.com/dotnet/coreclr/commit/
70b477b41fc7df148c7627886380a31053dbd5ae
Tanner Gooding [Wed, 27 Feb 2019 20:14:00 +0000 (12:14 -0800)]
Fixing hwintrinsicArm64 to return nullptr for the Base_As intrinsics if featureSimd is false (dotnet/coreclr#22831)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5c95e296a3f67d6d04146f455fe364e2fd9e9ddc
Stephen Toub [Wed, 27 Feb 2019 19:51:50 +0000 (14:51 -0500)]
Fix Thread-related breaking changes
- Thread.ExecutionContext needs to return ExecutionContext.Capture() to public callers.
- Fix restoring of culture to be inside of the ExecutionContext callback where applicable
Commit migrated from https://github.com/dotnet/coreclr/commit/
3042c90aa8ed4bfe56b6f6bc21c4bd93545ee239
Stephen Toub [Wed, 27 Feb 2019 18:16:11 +0000 (13:16 -0500)]
Fix Thread.ExecutionContext breaking change (dotnet/coreclr#22882)
Its getter is a public API and can't be made internal.
Commit migrated from https://github.com/dotnet/coreclr/commit/
12167a75fc494deb8040fa3a04961ca5f10d14aa
Stephen Toub [Wed, 27 Feb 2019 17:40:06 +0000 (12:40 -0500)]
Fix WaitTimeout breaking change (dotnet/coreclr#22881)
WaitHandle.WaitTimeout is a public API. It can't be made internal.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5472a34cc2ffcc4465dfd0ef1a99afefc37df90e
Russ Keldorph [Tue, 26 Feb 2019 19:02:53 +0000 (11:02 -0800)]
Remove BuildTestsAgainstPackages logic
No longer necessary without PipeBuild logic
Commit migrated from https://github.com/dotnet/coreclr/commit/
d0c9a5380eec480dcd3b63ac2da46754fd6e5cd1
Jeremy Koritzinsky [Wed, 27 Feb 2019 06:59:33 +0000 (22:59 -0800)]
Add blob feed to dependencies.props (dotnet/coreclr#22857)
Commit migrated from https://github.com/dotnet/coreclr/commit/
39f9e894aa16113c2c0dda1e99ce5dd606bd45a6
Jan Kotas [Wed, 27 Feb 2019 06:51:21 +0000 (22:51 -0800)]
Preserve Marshal.GetLastWin32Error in SafeHandle.DangerousRelease (dotnet/coreclr#22871)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4e2d07b5f592627530ee5645fd94325f17ee9487
Filip Navara [Wed, 27 Feb 2019 06:48:33 +0000 (07:48 +0100)]
Move Thread to shared CoreLib (dotnet/coreclr#22744)
* Move Thread to shared CoreLib
* Remove all local variables from Thread in shared code
* Remove duplicate checks
* Port back CoreRT changes needed for shared code
* Fix missing culture initialization in ThreadStart()
* Adjust for shared WaitHandle
Commit migrated from https://github.com/dotnet/coreclr/commit/
a94826d9aac0eae32c5cc59ad0e013d8dc3e0817
Grant [Wed, 27 Feb 2019 05:04:37 +0000 (21:04 -0800)]
Make BitOperations public (CoreCLR) (dotnet/coreclr#22864)
* Make BitOps public
* Update name to BitOperations
* Change namespace to System.Numerics
* Fix file name
* Alphabetical
Commit migrated from https://github.com/dotnet/coreclr/commit/
95eb6a45d50a3b104b5c8c22ff053d076f034271
Andrew Au [Wed, 27 Feb 2019 04:39:30 +0000 (20:39 -0800)]
Remove bogus assert in Thread::MarkThreadForAbort (dotnet/coreclr#22869)
Commit migrated from https://github.com/dotnet/coreclr/commit/
06137e01b64cd7771a229a7eb01ef3c948720bbb
Noah Falk [Wed, 27 Feb 2019 03:32:34 +0000 (19:32 -0800)]
Update EventCounter spec (dotnet/coreclr#22852)
* Update EventCounter spec
We made a flurry of decisions in our meeting last wednesday.
Partly this fills in areas of the design we didn't adequately decide on and
partly this suggests a few changes after having had time to think on it.
1) My suggestion to use IntervalSec as an identifier for a series doesn't
work. I proposed a new field 'Series' that is used for that same purpose.
2) I am proposing we no longer standardize on the five-tuple of stats.
Although it made sense to me at the time, decisions we made later in the
meeting invalidated the basis for that choice IMO.
3) Aggregating seems like an overly generic name that all counters do, so
I propose 'Incrementing' as a more specific term.
4) I am proposing we stop accepting fractional time intervals because
probably nobody would have used them anyways and now we don't have to worry
about floating point rounding and canonicalization issues when determining
if two clients share the same time series or in round tripping the identifier
back to them.
5) I defined specific fields for 'DisplayName' and 'CounterType' in our
wire protocol. Although not opposed to a generic metadata field for other
purposes, it seemed unnecessary for our current purposes.
6) I switched Incrementing coutner to float, because it it
would be a shame if we had to make a whole new counter in the future
that did exactly the same thing just with floating point values. For example
'GC Seconds Paused'
Commit migrated from https://github.com/dotnet/coreclr/commit/
417f87ccaa75e45ece97835cb46fe7658ef86543
Sergey Andreenko [Wed, 27 Feb 2019 00:58:37 +0000 (16:58 -0800)]
Fix `optVNConstantPropOnTree`. (dotnet/coreclr#22865)
It should use the same VN that `optVNConstantPropOnTree` uses.
Without this fix `optVNConstantPropOnTree` was doing nothing.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6b088eea28220094f2d0023165d30b5e676c20ef
Jan Vorlicek [Tue, 26 Feb 2019 22:46:00 +0000 (23:46 +0100)]
Fix Assembly::Load context for collectible assemblies (dotnet/coreclr#22494)
* Fix Assembly::Load context for collectible assemblies
This change fixes a problem when Assembly::Load is called from an
assembly in a collectible AssemblyLoadContext. In that case, we ended up
loading it into the default context instead of the context of the
calling assembly.
Commit migrated from https://github.com/dotnet/coreclr/commit/
19394b01ed59d3771c0602ec321ec4520bcd2aa2
Eric StJohn [Tue, 26 Feb 2019 22:16:55 +0000 (14:16 -0800)]
Fix _IlasmDir definition (dotnet/coreclr#22856)
Commit migrated from https://github.com/dotnet/coreclr/commit/
79341dcfaeb454d684e039e648f2a555f7da4bd0
Andy Ayers [Tue, 26 Feb 2019 19:39:46 +0000 (11:39 -0800)]
JIT: In morph, only call DefinesLocal on assignments (dotnet/coreclr#22753)
When checking for local assertions to kill in morph, only call `DefinesLocal` on `GT_ASG` nodes.
Also, assert that we never see LIR style assignments.
Resolves dotnet/coreclr#22747.
Commit migrated from https://github.com/dotnet/coreclr/commit/
56697257c4e24aa24a64b70eb4ce07d91882005b
John Salem [Tue, 26 Feb 2019 18:11:11 +0000 (10:11 -0800)]
Merge pull request dotnet/coreclr#22841 from josalem/stacktrace-cache-unloading-20179-prechange
Adds collection of `Assembly` objects while walking the stack in `DebugStackTrace::GetStackFrameInternal`
* new field in `StackFrameHelper` in both managed and native (plus mscorlib macro definition)
* retrieved via `methodDesc->GetAssembly()->GetDomainAssembly()->GetExposedAssemblyObject()`
Calls `GetSourceLineInfo` with delegate signature that *does not* consume an `Assembly`. As a result, this there will be a follow up change to call the updated version after it exists in CoreFX.
dotnet/coreclr#20179
Commit migrated from https://github.com/dotnet/coreclr/commit/
d05683140358e69109d126770f8076bfe5090092
David Mason [Tue, 26 Feb 2019 16:56:45 +0000 (08:56 -0800)]
Update added types and methoddefs on ApplyMetadata (dotnet/coreclr#22617)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ee755e322dabc2fc280e2561b0fbaf6e90aedf54
Sinan Kaya [Tue, 26 Feb 2019 10:55:05 +0000 (05:55 -0500)]
GCC compatibility fixes dotnet/coreclr#7 (dotnet/coreclr#22810)
* Use thread_local for thread local storage on non MSVC targets
* Use local copy of visitor rather than function parameter
* Remove extra class qualifier
* Replace hex number representation in ASM files
* Reorder STDAPI and DLLEXPORT
* Suppress conversion
Suppress warning during hash
add casting
* Remove anonymous struct
src/vm/codeversion.h:112:16: warning: ‘struct NativeCodeVersion::<anonymous union>::SyntheticStorage’ invalid; an anonymous union can only have non-static data members [-fpermissive]
struct SyntheticStorage
* Remove class declaration
Remove extra class declaration
* Remove extern C
* Add implicit paranthesis
src/vm/amd64/virtualcallstubcpu.hpp:735:103: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
resolveInit.toMiss1 = offsetof(ResolveStub,miss)-(offsetof(ResolveStub,toMiss1)+1) & 0xFF;
^
src/vm/amd64/virtualcallstubcpu.hpp:741:103: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
resolveInit.toMiss2 = offsetof(ResolveStub,miss)-(offsetof(ResolveStub,toMiss2)+1) & 0xFF;
Add parenthesis
src/vm/dataimage.cpp:631:55: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
previousRvaInfo->rva == rvaInfo->rva && previousRvaInfo->size >= rvaInfo->size
Add parenthesis
src/debug/daccess/daccess.cpp:6871:29: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
_ASSERTE(peFile == NULL && reflectionModule != NULL || peFile != NULL && reflectionModule == NULL);
Add parenthesis
src/vm/dataimage.cpp:631:57: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
(previousRvaInfo->rva == rvaInfo->rva) && (previousRvaInfo->size >= rvaInfo->size)
* Initialize member 1
src/ilasm/method.cpp:35:36: warning: operation on ‘((Method*)this)->Method::m_ulColumns[0]’ may be undefined [-Wsequence-point]
m_ulColumns[0]=m_ulColumns[0]=0;
* Remove unknown compiler option
* Abstract DLLEXPORT
Commit migrated from https://github.com/dotnet/coreclr/commit/
cbd672eb2735d583ee6fa46aaf599241fdf6face
Noah Falk [Tue, 26 Feb 2019 08:17:02 +0000 (00:17 -0800)]
Spec for EventCounter changes (dotnet/coreclr#22811)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9901aa14bef2006f614d450ff0e45b6081262de7
Jeremy Koritzinsky [Tue, 26 Feb 2019 07:54:21 +0000 (23:54 -0800)]
Add the coreclr blob feed as a restore source for test builds. (dotnet/coreclr#22839)
* Add the coreclr blob feed as a restore source for test builds.
* Use one NuGet.config in the root folder for restore targets.
Commit migrated from https://github.com/dotnet/coreclr/commit/
dc6252fa381d370c5feee9820d4cc5884fcbf719
Stephen Toub [Tue, 26 Feb 2019 03:17:19 +0000 (22:17 -0500)]
Special-case 1 module per assembly in Assembly.GetTypes/DefinedTypes (dotnet/coreclr#22825)
It's very common for an assembly to have only one module, in which case we can avoid unnecessary allocations and copies in Assembly.GetTypes() and Assembly.DefinedTypes.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8509bbd72ed937a626fc436715b962d3f86fa380
Steve MacLean [Tue, 26 Feb 2019 01:57:44 +0000 (20:57 -0500)]
Remove buildpipelines (dotnet/coreclr#22835)
* Remove old buildpipeline
* Remove obsolete publish-packages
* Remove obsolete helix scripts
Commit migrated from https://github.com/dotnet/coreclr/commit/
af6d24190078f64f892a60967f69c86d838f06c2
Egor Chesakov [Tue, 26 Feb 2019 00:41:40 +0000 (16:41 -0800)]
Add platforms template parameter to platform-matrix.yml (dotnet/coreclr#22800)
Commit migrated from https://github.com/dotnet/coreclr/commit/
265f3c31751ed9f11abbef3a158f45ee2b2e3688
Jarret Shook [Mon, 25 Feb 2019 23:50:59 +0000 (15:50 -0800)]
For linux-musl-arm64 use OutputRid (dotnet/coreclr#22840)
This variable was added for linux-musl-x64 in our old official builds,
because our current logic in src/.nuget/dirs.props incorrectly parses
the __DistroRid passed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
84f0ae886cc659fabd8d8b499861383bb801fa08
Andy Ayers [Mon, 25 Feb 2019 23:50:03 +0000 (15:50 -0800)]
Fix and re-enable some finalizer tests (dotnet/coreclr#22771)
Mark key allocating methods noinline, otherwise they may get inlined
under jit stress and leave jit temps referring to allocations that the test
expects should be collectible.
Resolves dotnet/coreclr#19218.
Commit migrated from https://github.com/dotnet/coreclr/commit/
268a6b777febf10e97badede96dcddd54b54c4e1
Filip Navara [Mon, 25 Feb 2019 23:38:54 +0000 (00:38 +0100)]
Remove support for ICLRExecutionManager and pause/resume code for waits (dotnet/coreclr#22834)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ea5971a6fe1672f0334c9530d68e8621a9877128
John Salem [Mon, 25 Feb 2019 22:53:16 +0000 (14:53 -0800)]
Simplify getting exposed Assembly, and specifies parameter types for GetSourceLineInfo
Commit migrated from https://github.com/dotnet/coreclr/commit/
3d26dad131abc354aeb4388139ecfaafe6cc4c60
Filip Navara [Mon, 25 Feb 2019 17:28:46 +0000 (18:28 +0100)]
Move WaitHandle to shared CoreLib (dotnet/coreclr#22634)
* Move part of WaitHandle to shared CoreLib
* Bring back OpenExistingResult to fix build
* Move reminder of WaitHandle to shared, implement SynchronizationContext logic in managed code, handle SafeHandle referencing in managed code
* Update with changes neeeded for CoreRT
* Span -> ReadOnlySpan
* Remove dead code
* Fix SafeHandle error handling
* Avoid double check on input values in WaitHandle.WaitOne overloads
* Make OpenExistingResult private protected instead of internal
* Make WaitHandle._waitHandle private
* Code style fixes
* Remove unnecessary GC.KeepAlive
* Move ERROR_TOO_MANY_POSTS exception handling to CoreCLR specific code
* Add cache for wait arrays to match previous CoreRT behavior and reduce GC pressure, change unmanaged code to allocate small array on stack
* Address PR feedback
* Reduce allocations/copying by moving stack allocation to managed code
* Address PR feedback
* Minor code reshuffle
* Move thread local access close to each other
* Address code style feedback
* Add const to Wait* constants
Commit migrated from https://github.com/dotnet/coreclr/commit/
cf85f56e473b6cdc4a68e9758f57dc571e14c9cb
Eric StJohn [Mon, 25 Feb 2019 17:19:01 +0000 (09:19 -0800)]
Merge pull request dotnet/coreclr#22796 from ericstj/splitILAsmCopy
Split out copy of Ilasm and make it optional
Commit migrated from https://github.com/dotnet/coreclr/commit/
5ffa6ecefe6b1dcd2418ce7a5524f367e7f865f0
John [Sat, 23 Feb 2019 17:08:00 +0000 (17:08 +0000)]
Removed erroneous use of 'PROCESSOR_ARCHITECTURE' Enviroment variable (dotnet/coreclr#22743)
Removed erroneous use of 'PROCESSOR_ARCHITECTURE' Enviroment variable
Changed all uses of 'Enviroment.GetEnviromentVariable("PROCESSOR_ARCHITECTURE")'
to usage of 'System.Runtime.InteropServices.RuntimeInformation.ProcessArchitecture'
and 'enum System.Runtime.InteropServices.Architecture'.
Fix dotnet/coreclr#22694
Commit migrated from https://github.com/dotnet/coreclr/commit/
333232d98639df980133205c41791cb9dc7f3d34
Clinton Ingram [Sat, 23 Feb 2019 17:06:16 +0000 (09:06 -0800)]
fix BSWAP16 intrinsic handling of signed values (dotnet/coreclr#22666)
Commit migrated from https://github.com/dotnet/coreclr/commit/
56da27b66c9463f0a28b2427aabbe2af0614efdc
Marek Safar [Sat, 23 Feb 2019 10:06:32 +0000 (11:06 +0100)]
Move AssemblyLoadContext to shared partition (dotnet/coreclr#22685)
* Move AssemblyLoadContext to shared partition
* Move static initializer to DefaultAssemblyLoadContext
and remove stream copying from lock scope
Commit migrated from https://github.com/dotnet/coreclr/commit/
2c61b985c0513d9a70eee7221fa15910e7003d16
Eric StJohn [Sat, 23 Feb 2019 02:20:16 +0000 (18:20 -0800)]
Make System.Runtime.CompilerServices.Unsafe inbox (dotnet/corefxdotnet/coreclr#35526)
* Make System.Runtime.CompilerServices.Unsafe inbox
Fix a couple places where we wanted to use it from other inbox assemblies but couldn't.
Unsafe remains as a package and newer versions of Unsafe will replace the inbox Version,
permitting us to add API over time.
* Update Rune tests to use TryEncodeToUtf8Bytes directly
* Add temporary suppression to package tests
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
89ecfac9aa06491295e067edaa91193a88ae7b9c
Tanner Gooding [Sat, 23 Feb 2019 03:11:32 +0000 (19:11 -0800)]
Adding a missing single-quote (dotnet/coreclr#22809)
Commit migrated from https://github.com/dotnet/coreclr/commit/
cb20f3982d3d2b1426c477d66221d6887eaec168
Dan Moseley [Sat, 23 Feb 2019 02:57:02 +0000 (18:57 -0800)]
Remove 'from HRESULT' (dotnet/coreclr#22782)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e3d73ad3c8216118d3fa7962a6d169ba8932902e
Jan Kotas [Sat, 23 Feb 2019 01:56:02 +0000 (17:56 -0800)]
Change Environment.Version to return product version (dotnet/coreclr#22664)
* Change Environment.Version to return product version
- Contributes to https://github.com/dotnet/corefx/issues/31099
- Use AssemblyInformationalVersion attribute as fallback
* Add sanity test for Environment.Version
* Disable CodeDom tests
* Fix test assembly name
Commit migrated from https://github.com/dotnet/coreclr/commit/
83e9a3959620da5fd3ecdb1ee9d1fa6a80569cf8
Jarret Shook [Sat, 23 Feb 2019 00:01:03 +0000 (16:01 -0800)]
Correctly build packages for linux-musl-arm64 (dotnet/coreclr#22793)
* Correctly build packages for linux-musl-arm64
Also add build-package step to PR.
* Correctly add back if
* Fix build-packages
Commit migrated from https://github.com/dotnet/coreclr/commit/
3e8cd50bbf3f510ade4a4e8ab889d1cb184ad6eb
Mukul Sabharwal [Fri, 22 Feb 2019 23:56:28 +0000 (15:56 -0800)]
Enable FEATURE_BASICFREEZE (dotnet/coreclr#22776)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4932d0f6fa87b9a6e3293aacd35cecedde44d87a
John Salem [Fri, 22 Feb 2019 23:36:23 +0000 (15:36 -0800)]
Restore original delegate use until corresponding corefx changes have gone through
Commit migrated from https://github.com/dotnet/coreclr/commit/
8d1908e7ff4fbf01dc6c84e174dee79ff0cdf826
John Salem [Fri, 22 Feb 2019 22:29:10 +0000 (14:29 -0800)]
Mirror StackFrameHelperChanges in mscorlib.h and change allocation type to more generic g_pObjectClass
Commit migrated from https://github.com/dotnet/coreclr/commit/
10764205f7523cbd97fefb32c9e3afb8274a562e
Jan Vorlicek [Fri, 22 Feb 2019 22:11:14 +0000 (23:11 +0100)]
Add fatal error details printing (dotnet/coreclr#22789)
Before this change, we were only printing details on fatal errors with
error code COR_E_FAILFAST. For other error codes we were just silently
exiting.
This change enables printing fatal error details for all kinds of fatal
errors.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6a392d9084a1afe8b9861138e5d0e5b688deca44
Sergey Andreenko [Fri, 22 Feb 2019 21:38:50 +0000 (13:38 -0800)]
Update CoreFX Windows Arm32 exclusion list. (dotnet/coreclr#22695)
* Update CoreFX Windows Arm32 exclusion list.
* Exclude System.Globalization.Calendars.Tests.
* Disable System.Net.Sockets.Tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
ec41a807d2698379e9a1ad0da296898def46c54d
Eric St. John [Fri, 22 Feb 2019 21:09:31 +0000 (13:09 -0800)]
Split out copy of Ilasm and make it optional
Allow for a repository to provide its own copy of ILAsm rather than restoring & copying it its own location.
To use, set the ILAsmToolPath proerty to the directory containing ilasm, similar to CscToolPath.
I noticed that these targets left behind the ILAsm files in temp for each project every time it
built when ToolsDir wasn't defined, so I've fixed that by instead copying to obj.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9069830185d02c4753ab03a6d4b8c9036644f825
Stephen Toub [Fri, 22 Feb 2019 21:15:31 +0000 (16:15 -0500)]
Ignore EINVAL/EBADF errors from FTruncate in FileStream.Init (dotnet/coreclr#22788)
They indicate we're working with a special file, where failure to truncate is not a fatal condition.
Commit migrated from https://github.com/dotnet/coreclr/commit/
187ce49c992aef74cdbf60c445d5f68a60c37f4d
Jeremy Koritzinsky [Fri, 22 Feb 2019 20:39:56 +0000 (12:39 -0800)]
Disable IJW tests on Windows 7. (dotnet/coreclr#22779)
Windows 7 loads desktop mscoree.dll when loading System.Private.CoreLib, before we can load our fake mscoree. So, when IJW modules are loaded, they load the real mscoree.dll, which breaks coreclr's IJW loading. Once we have true .NET Core IJW support in the MSVC++ compiler and .NET Core, then we'll be able to reenable these tests on Win7.
Fixes dotnet/coreclr#21796.
cc: @RussKeldorph @echesakovMSFT
Commit migrated from https://github.com/dotnet/coreclr/commit/
3984fc9b98770289def807e1953533bc4a28781a
Simon Nattress [Thu, 21 Feb 2019 21:37:50 +0000 (13:37 -0800)]
R2RDump - Gracefully handle inability to parse GC Info
The Amd64 GC Info parser is not complete in its implementation and
sometimes will index to a location beyond the size of the image.
If we fail to parse the GC info for a method, continue dumping the rest
of the image.
Emit a warning when this happens so we don't forget about this.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b43650c6b60b47c5823c9bf1806fab0a5ca3f7c1
Sinan Kaya [Fri, 22 Feb 2019 19:11:19 +0000 (14:11 -0500)]
More GNUC Fixes (dotnet/coreclr#22687)
* Replace __sync_swap with __atomic_exchange_n
__sync_swap() is a clang specific function.
* Remove multiline comment
* Add paranthesis around sum
src/md/hotdata/../inc/streamutil.h:73:34: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
UINT32 aligned = *totalBytes + 3 & ~3;
* Define __int64
* Define windows types for tests
* Remove undefined has_builtin defines and define alloca and inline for GNUC
* Remove __clang__ where possible
* Add implicit casting to help compiler find WCHAR* variant
src/binder/assembly.cpp:294:73: error: no matching function for call to ‘SString::SString(SString)’
return (pAsmName == nullptr ? nullptr : pAsmName->GetSimpleName());
^
In file included from src/inc/sstring.h:1082:0,
from src/inc/ex.h:19,
from src/inc/stgpool.h:28,
from src/inc/../md/inc/metamodel.h:18,
from src/inc/../md/inc/metamodelro.h:19,
from src/inc/metadata.h:17,
from src/binder/../vm/util.hpp:19,
from src/binder/../vm/common.h:110,
from src/binder/assembly.cpp:14:
src/inc/sstring.inl:73:8: note: candidate: SString::SString(void*, COUNT_T)
inline SString::SString(void *buffer, COUNT_T size)
^
src/inc/sstring.inl:73:8: note: candidate expects 2 arguments, 1 provided
src/inc/sstring.inl:436:8: note: candidate: SString::SString(SString::tagLiteral, const WCHAR*, COUNT_T)
inline SString::SString(tagLiteral dummytag, const WCHAR *literal, COUNT_T count)
^
src/inc/sstring.inl:436:8: note: candidate expects 3 arguments, 1 provided
src/inc/sstring.inl:418:8: note: candidate: SString::SString(SString::tagLiteral, const WCHAR*)
inline SString::SString(tagLiteral dummytag, const WCHAR *literal)
^
src/inc/sstring.inl:418:8: note: candidate expects 2 arguments, 1 provided
src/inc/sstring.inl:401:8: note: candidate: SString::SString(SString::tagUTF8Literal, const UTF8*)
inline SString::SString(tagUTF8Literal dummytag, const UTF8 *literal)
^
src/inc/sstring.inl:401:8: note: candidate expects 2 arguments, 1 provided
src/inc/sstring.inl:382:8: note: candidate: SString::SString(SString::tagLiteral, const CHAR*)
inline SString::SString(tagLiteral dummytag, const ASCII *literal)
* Reorder DLLEXPORT and STDAPI
GNUC wants extern "C" <attribute> format.
* Abstract __FUNCSIG__
* Abstract __debugbreak()
* Move common compiler options out of clang and add Wno-unused-value
* Add paranthesis around || and &&
src/gc/gc.cpp:9084:38: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
(!chosen_power2) && (i < free_space_count));
* Set Wno-delete-non-virtual-dtor for CXX files only
* Don't warn on unterminated endif labels
* Suppress unused functions
* Use 0x syntax rather than h syntax on GNU asm files
* Correct constructor call directly
src/ToolBox/superpmi/superpmi-shared/logging.cpp:301:27: required from here
src/inc/clr_std/string:58:9: error: cannot call constructor ‘std::basic_string<char>::basic_string’ directly
this->basic_string::basic_string(_Ptr, c_len(_Ptr));
* Suppress NULL used in arithmetic warnings
Commit migrated from https://github.com/dotnet/coreclr/commit/
0495f7377fca88999d335757e9680052cfedc51d
Jarret Shook [Fri, 22 Feb 2019 17:32:38 +0000 (09:32 -0800)]
Disable tests that fail to build under 3.0.0-preview3 (dotnet/coreclr#22774)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1376e5fc5fa4b01a175e26be467a416f1c8765fc
Sergey Andreenko [Fri, 22 Feb 2019 17:27:21 +0000 (09:27 -0800)]
Exclude /Interop/COM/NETClients/Events/NETClientEvent for arm32 Windows. (dotnet/coreclr#22785)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ccf62746dcc5455b80df1f8d8638b75c975788a6
Michal Strehovský [Fri, 22 Feb 2019 14:44:01 +0000 (15:44 +0100)]
Store information about partial ngen in R2R images (dotnet/coreclr#22680)
Commit migrated from https://github.com/dotnet/coreclr/commit/
dbf6006da52845624577f88f3200447c4a1d8db2
David Mason [Fri, 22 Feb 2019 07:59:54 +0000 (23:59 -0800)]
Update ReJIT/MethodDescBackpatchInfoTracker lock relationship (dotnet/coreclr#22741)
Commit migrated from https://github.com/dotnet/coreclr/commit/
df4aa3315f64f43344b4aaf6e57aad9fe0b36cbf
Jan Kotas [Fri, 22 Feb 2019 06:33:31 +0000 (22:33 -0800)]
Delete unused FEATURE flags (dotnet/coreclr#22781)
Commit migrated from https://github.com/dotnet/coreclr/commit/
eb1aa094dbd32f98fd4ce5dead9f27f9c78a32c5
Sergey Andreenko [Fri, 22 Feb 2019 05:50:06 +0000 (21:50 -0800)]
Fix CoreFX build break. (dotnet/coreclr#22773)
* Fix CoreFX build break.
Introduced by https://github.com/dotnet/corefx/pull/34385.
Commit migrated from https://github.com/dotnet/coreclr/commit/
82c4573473ebca2eb59a6cd074c7bef8914798d5
Jan Kotas [Fri, 22 Feb 2019 02:16:16 +0000 (18:16 -0800)]
Cleanup unnecessary COUNTER_ONLY (dotnet/coreclr#22759)
Commit migrated from https://github.com/dotnet/coreclr/commit/
bd84f468ac3f82847669d49614d01eba8dd2a9a0
Sung Yoon Whang [Fri, 22 Feb 2019 01:48:48 +0000 (17:48 -0800)]
Add exception counter (dotnet/coreclr#22734)
* Add exception counter
* Fix build
* Make FCall return UINT32
* Move GetExceptionCount to Exception
* more PR comments, fix x86 build
* Remove global variable initialization
Commit migrated from https://github.com/dotnet/coreclr/commit/
521e73c0031c84297088381688d464ce619156a9
Jarret Shook [Fri, 22 Feb 2019 00:29:59 +0000 (16:29 -0800)]
Correct __CrossBuild in build-packages to be 0 or 1 (dotnet/coreclr#22769)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2c10ccaefa48d3418d1fc4fbc4f49eee5745b623
Brian Sullivan [Thu, 21 Feb 2019 23:37:55 +0000 (15:37 -0800)]
Merge pull request dotnet/coreclr#22731 from briansull/issue-22436
Fix Issue 22436 - noway_assert 'expTyp == cseLclVarTyp' in optcse.cpp
Commit migrated from https://github.com/dotnet/coreclr/commit/
bb0c2df97117060ad21371cfe71fb27e727cd27c
Jarret Shook [Thu, 21 Feb 2019 22:41:40 +0000 (14:41 -0800)]
Do not use portablebuild=false for linux-musl (dotnet/coreclr#22760)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f7e6da36550bcf847bf80a4601d890c6bf3c0d12
Sergey Andreenko [Thu, 21 Feb 2019 22:38:42 +0000 (14:38 -0800)]
[XUnit] Use ParallelRun==Collections on all platforms. (dotnet/coreclr#22746)
* Use ParallelRun==Collections on all platforms.
* Fix formatting
Commit migrated from https://github.com/dotnet/coreclr/commit/
3e140890fd7ba79bd96ee42735c946b14d65d55b
Sung Yoon Whang [Thu, 21 Feb 2019 22:19:27 +0000 (14:19 -0800)]
Remove unused perfcounter code (dotnet/coreclr#22742)
* removing references to COUNTER_ONLY, ENABLE_PERF_COUNTERS in src/vm directory
* removing perfcounters* files
* Fix build
* Remove PerfCounterSupportedBuild
* Some more cleanup on the GC side
Commit migrated from https://github.com/dotnet/coreclr/commit/
2dfd1779ae9eebe89b223cff6fd77825301971dd
Jarret Shook [Thu, 21 Feb 2019 21:16:33 +0000 (13:16 -0800)]
[Unix|*] Rework and share the logic for determining __DistroRid (dotnet/coreclr#22628)
* [Unix|*] Rework and share the logic for determining __DistroRid
This will consolidate all of our different functions which determine
the __DistroRid into one file. In addition, it will remove the unused
__HostDistroRid file.
Lastly, it corrects the rid choice when crossbuilding musl-arm64 as the
cross-rootfs non-portable build will correctly be picked up.
* Fix typo and use __BuildArch in place of __Arch
* Correct non-portable build decision
* Add error for missing redhat-release
* Fix redhat comparison
* Correct previous rhel or
* Fix cross scenerio
* Fix missed $
* Set __RuntimeId for runtest.proj
* Correct naming convention of file
* Address feedback and support -portablebuild=0
With this change:
1. build.sh and build-test.sh should build portable by default.
2. init-distro-rid.sh checks __PortableBuild=1. If so, then it must force rhel 6 and freebsd to __PortableBuild=0 and use the non-portable build
- For __PortableBuild=0 init-distro-rid.sh sets the non-portable rid correctly to "${ID}.${VERSION_ID}-${buildArch}"
* Correct arguments
* Fix if to include then
* A few more changes to correct linux-musl-arm64
* Add error for non-cross build and correctly pass ROOTFS_DIR
* Correctly exit instead of echo
* Correct isCrossBuild and use rootfsDir only
* Add documentation
* Address feedback
* Rework rhel if
Commit migrated from https://github.com/dotnet/coreclr/commit/
a006c44d06d56829a230bbbce17b74b21a0b8842
Maoni Stephens [Thu, 21 Feb 2019 19:54:27 +0000 (11:54 -0800)]
increasing LocalGC version to 3 for 3.0 (dotnet/coreclr#22751)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d559d44e02471854748763a6c7eb52cbdc56168f
Marek Safar [Thu, 21 Feb 2019 18:54:17 +0000 (19:54 +0100)]
Clean up unused parameters around Assembly::Load (dotnet/coreclr#22716)
Commit migrated from https://github.com/dotnet/coreclr/commit/
aa542e489034335f3536782f05f5c502d855736b
Brian Sullivan [Thu, 21 Feb 2019 17:53:40 +0000 (09:53 -0800)]
Mispelling
Commit migrated from https://github.com/dotnet/coreclr/commit/
28dcdac7f0251cd3bfff722030e43901688a70ad
Aaron Robinson [Thu, 21 Feb 2019 17:51:10 +0000 (09:51 -0800)]
Support COM events (dotnet/coreclr#22721)
* Add support for COM events
* Add COM Event tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
344004681ace2b49dbc40d83ce422f81aa7efcb5
Brian Sullivan [Thu, 21 Feb 2019 17:29:07 +0000 (09:29 -0800)]
Added enclosing brances for if/then stmts
Commit migrated from https://github.com/dotnet/coreclr/commit/
d5541e44fbae473aefe229de81d56fe238b405e8
Andy Ayers [Thu, 21 Feb 2019 16:25:52 +0000 (08:25 -0800)]
JIT: handle preference miss two register xmm return case (dotnet/coreclr#22733)
Fix a bug in codegen when returning a Vector3 result where the target
register is not one of the two return registers.
Re-enable the associated test.
Closes dotnet/coreclr#22401.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ee8a0634d77a502f76d700c3a7eaf7cc59d1ceea
Noah Falk [Thu, 21 Feb 2019 12:10:41 +0000 (04:10 -0800)]
Add VS debugging info to our instructions
Commit migrated from https://github.com/dotnet/coreclr/commit/
5ec1eeaa95362be9e76f9f79c9b44162527e95ad
Tanner Gooding [Thu, 21 Feb 2019 11:09:40 +0000 (03:09 -0800)]
Enable the HWIntrinsic extension methods and remove the instance implementations (dotnet/coreclr#22705)
* Removing various S.R.I.Vector instance method APIs, since they should now be exposed as extension methods
* Updating the JIT to recognize the S.R.I.Vector extension methods.
* Updating various S.R.I.Vector test templates
* Regenerating the S.R.I tests that are created from a template.
* Fixing the numArgs for Base_Vector256_GetLower
* Fixing the handling for `Base_VectorXXX_As` to normalize the struct type.
* Adding the Base_Vector128_As intrinsics back for arm64
Commit migrated from https://github.com/dotnet/coreclr/commit/
4ba958c9fd412b217e21a1dd508ec466a21aa462
Filip Navara [Thu, 21 Feb 2019 02:23:41 +0000 (03:23 +0100)]
Move Thread to shared CoreLib (dotnet/corefxdotnet/coreclr#35462)
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
feed8ae9df458f336b2dd76cc9abe934bb2a5751
Ben Adams [Thu, 21 Feb 2019 07:26:06 +0000 (07:26 +0000)]
Reduce struct copy by 1 in ValueTask.GetAwaiter (dotnet/coreclr#22738)
* Reduce struct copy by 1 in ValueTask.GetAwaiter
* Bit more explicit
Commit migrated from https://github.com/dotnet/coreclr/commit/
f18123aa255793fde4d027f648744af4f2157160
Tomas Matousek [Thu, 21 Feb 2019 02:07:28 +0000 (18:07 -0800)]
Set copyright and package license
Commit migrated from https://github.com/dotnet/coreclr/commit/
d02a88dc53a24debebb51fc7af471dd95ca2c56b
Andrew Au [Wed, 20 Feb 2019 04:39:26 +0000 (20:39 -0800)]
Removed some dead code
Commit migrated from https://github.com/dotnet/coreclr/commit/
bbed8b0df6e43de80dbb6570b13bc79ffa01aad4
Brian Sullivan [Thu, 21 Feb 2019 00:26:38 +0000 (16:26 -0800)]
Fix Isuue 22436 - noway_assert 'expTyp == cseLclVarTyp' in optcse.cpp
We now allow TYP_BYREF to be compatible with TYP_I_IMPL when performing CSE substitutions.
Re-enable the failing BestFitMapping interop tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
7221f02352e5699b0f4e3ac0c94cab4fa06d7708
Egor Chesakov [Wed, 20 Feb 2019 22:43:35 +0000 (14:43 -0800)]
Remove accidentally added Windows.10.Nano.Amd64 from Windows_x86 in platform-matrix.yml (dotnet/coreclr#22723)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fae2a56cd032d9b68c58fd4dc960160b7013842a
Andy Ayers [Wed, 20 Feb 2019 20:39:02 +0000 (12:39 -0800)]
Fix dblarray tests and reenable for arm32 (dotnet/coreclr#22718)
Run the allocate/gen-check sequence under a forbid GC region, and enable the
tests for arm32.
Closes dotnet/coreclr#22015.
Commit migrated from https://github.com/dotnet/coreclr/commit/
33f693194fb6c0fb907e513eab9936397498a9e5
John Salem [Wed, 20 Feb 2019 20:22:24 +0000 (12:22 -0800)]
Fix GC Hole by using SetAt on the PTRARRAY for the Assembly objects
Commit migrated from https://github.com/dotnet/coreclr/commit/
a63e6487936b54dd707636d8b8210dfd956f37d7
Stephen Toub [Wed, 20 Feb 2019 19:36:56 +0000 (14:36 -0500)]
Use ThrowHelper in ManualResetValueTaskSourceCore (dotnet/coreclr#22714)
Just move the helper being used to ThrowHelper.
Commit migrated from https://github.com/dotnet/coreclr/commit/
57b0be625346712fd3bafb71a9568edb579971f1
Egor Chesakov [Wed, 20 Feb 2019 19:35:58 +0000 (11:35 -0800)]
Use Build.DefinitionName for Creator when submitting tests to Helix (dotnet/coreclr#22692)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8c03cd9968165287b558d83473b22e3a617ab42c
Konstantin Baladurin [Wed, 20 Feb 2019 19:13:35 +0000 (22:13 +0300)]
Fix tizen rootfs building (dotnet/coreclr#22715)
Move tizen-release package from base to unified repo
Commit migrated from https://github.com/dotnet/coreclr/commit/
1b136ae2ae550d1085612e73648b9cc376f28d57
Stephen Toub [Wed, 20 Feb 2019 18:34:32 +0000 (13:34 -0500)]
Fix bug introduced during cleanup in JapaneseLunisolarCalendar (dotnet/coreclr#22717)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4eaa54bcd29217fffadc7c6d6babcc048bb14285