dotnet-maestro-bot [Mon, 19 Jun 2017 15:51:33 +0000 (08:51 -0700)]
Update CoreClr, CoreFx to preview1-25419-02, preview1-25419-02, respectively (dotnet/coreclr#12342)
Commit migrated from https://github.com/dotnet/coreclr/commit/
383c35f0c2cb28cb215cbeddd1510afcb0a4716a
James Ko [Sun, 18 Jun 2017 13:53:45 +0000 (09:53 -0400)]
Cleanup most code in StringBuilder (dotnet/coreclr#10156)
* Cleanup most code in StringBuilder
* Respond to PR feedback
* Document StringBuilder's fields
* VerifyClassInvariant -> AssertInvariants
* Fix always-true assert
* Respond to PR feedback from @stephentoub
Commit migrated from https://github.com/dotnet/coreclr/commit/
a8aa9b6c8ef0ce6e1f0cb482a1fbe619926e7c05
Pat Gavlin [Sun, 18 Jun 2017 02:43:46 +0000 (19:43 -0700)]
Merge pull request dotnet/coreclr#12335 from mikedn/assert-prop-alloc
Remove unnecessary bitvec allocation in assertion prop
Commit migrated from https://github.com/dotnet/coreclr/commit/
cd72c54483f9ccdcde08cb42a683d2b4df181378
Stephen Toub [Sun, 18 Jun 2017 01:40:38 +0000 (21:40 -0400)]
Further improve perf of Char.IsWhiteSpace (dotnet/coreclr#12353)
IsWhiteSpaceLatin1 is not being inlined. By changing a range check done with two comparison operations to instead be done with a subtraction and a single comparison, the code is shortened to not only be less expensive but also then get inlined into IsWhiteSpace and then further into String.IsNullOrWhiteSpace. The net result is a measurable throughput improvement for IsNullOrWhiteSpace.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7c197b63914af560d467e8a95c04177495f160d9
Jan Kotas [Sat, 17 Jun 2017 21:07:16 +0000 (14:07 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3911 from jkotas/nmirror-merge
Merge nmirror to master
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
d6d35047a2d0ef27ccfe5c55bbacdb99bda84e44
Jan Vorlicek [Sat, 17 Jun 2017 14:36:46 +0000 (16:36 +0200)]
Add regression test for issue dotnet/coreclr#12224 (dotnet/coreclr#12331)
This change adds regression test for EH getting stuck in an infinite
loop when NullReferenceException happens inside a handler of another
NullReferenceException.
Commit migrated from https://github.com/dotnet/coreclr/commit/
16d41f11e55d1e137cb799d7b1884e02df600c66
Hugh Bellamy [Sat, 17 Jun 2017 14:32:10 +0000 (21:32 +0700)]
Remove some dead argument checks for unsigned primitives for less than zero (dotnet/coreclr#12349)
* Remove dead comparisons of unsigned primitive less than zero
* Delete bad assertition that is consistently hit using the Debug coreclr using the tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
34f33a8ccb1ce0f522ea14edde8ceb976997855f
Jan Vorlicek [Sat, 17 Jun 2017 12:13:39 +0000 (14:13 +0200)]
Fix chained hardware exception handling on Unix (dotnet/coreclr#12344)
There is an issue when hardware exception occurs while handling another hardware exception. In such case,
the exception unwinding ends up in an infinite loop. It is caused by the kernel reusing the same location
for signal handler context.
The fix is to use a windows style context local variable in the common_signal_handler that contains
the right context - it is the original signal context converted to windows style context.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a02634eb41284dbd432ef84aa38f526f955e5f64
Hugh Bellamy [Sat, 17 Jun 2017 10:49:26 +0000 (17:49 +0700)]
Throw ArgumentNullException on Unix calling Marshal.IsComObject(null) (dotnet/coreclr#12348)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a6ed71c6472c8ea0f680507ae34f56aeaf6bb3d2
Swaroop Sridhar [Sat, 17 Jun 2017 01:50:31 +0000 (18:50 -0700)]
Fix perf.groovy
Fix perf.groovy so that ILLink perf tests can be triggered.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a98c8f20475dbdbfc5e9bdafcfdabf0e8826d5d5
Gaurav Khanna [Sat, 17 Jun 2017 00:26:11 +0000 (17:26 -0700)]
LoadFromResolve event handler should return null incase of any load error (dotnet/coreclr#12329)
Commit migrated from https://github.com/dotnet/coreclr/commit/
27e625f0108915fb514e20c870072fbef2d6291c
Tarek Mahmoud Sayed [Fri, 16 Jun 2017 22:53:03 +0000 (15:53 -0700)]
Fix CompareInfo.Version on Windows (dotnet/coreclr#12330)
We call Windows to get the sort version. We call Windows passing the structure NlsVersionInfoEx but Windows expect we have to initialize the size of this structure which we are missing.
Commit migrated from https://github.com/dotnet/coreclr/commit/
660a3e67071e0273eaffe44cf08b72ed675c3ddc
Ravi Eda [Fri, 16 Jun 2017 22:31:17 +0000 (17:31 -0500)]
Security build JSONs. (dotnet/coreclr#12279)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d055dcf991a0a24d6c9542cf0f1e5d69e7403205
dotnet-maestro-bot [Fri, 16 Jun 2017 21:30:57 +0000 (14:30 -0700)]
Update CoreClr, CoreFx to preview1-25416-04, preview1-25416-02, respectively (dotnet/coreclr#12319)
Commit migrated from https://github.com/dotnet/coreclr/commit/
01ab148528b5b6216c848c1aff4d1efd7cff77bf
Dan Moseley [Fri, 16 Jun 2017 20:45:27 +0000 (13:45 -0700)]
Add path to exception messages (dotnet/coreclr#12322)
* Remove dead code
* Arg_PathIllegal
* IO_PathTooLong
* Remove no longer necessary path sanitization
* Argument_PathFormatNotSupported
* Arg_PathIllegalUNC
* Arg_InvalidSearchPattern
* Dead strings
* Missing nameof
Commit migrated from https://github.com/dotnet/coreclr/commit/
6ba74dc2a7194f8d6c86c3aeab572a074ef645c8
Mike Danes [Fri, 16 Jun 2017 18:50:07 +0000 (21:50 +0300)]
Remove unnecessary bitvec allocation in assertion prop
optVnNonNullPropCurStmt is called for each node and every time it allocates an empty BitVec because optNonNullAssertionProp_Call and optAssertionProp_Ind require it, they are also used in other code paths that do provide a non-empty BitVec.
Commit migrated from https://github.com/dotnet/coreclr/commit/
53cc741cb949c540834172ee0e813a01bdcfae28
William Godbe [Fri, 16 Jun 2017 18:45:54 +0000 (11:45 -0700)]
Merge pull request dotnet/coreclr#12203 from wtgodbe/Timing
Fix timing issues in some baseservices tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
9f0fc63eb9157bbb547ebeb8ab389a7d98cc7f9f
Bruce Forstall [Fri, 16 Jun 2017 17:26:45 +0000 (10:26 -0700)]
Merge pull request dotnet/coreclr#12321 from BruceForstall/FixMeasureSize2
Convert size measurements for nodes to unsigned __int64
Commit migrated from https://github.com/dotnet/coreclr/commit/
81fbe2dd57bbf8334b7065a3d7a9db201f7d9334
Christopher Costa [Fri, 16 Jun 2017 16:39:13 +0000 (09:39 -0700)]
Remove unused source causing restore error
Commit migrated from https://github.com/dotnet/coreclr/commit/
ec9383bcdc7a21942104e18abff823805e82db78
Jonghyun Park [Fri, 16 Jun 2017 15:50:43 +0000 (00:50 +0900)]
[ARM] Set local variables as addr-exposed (for LEGACY_BACKEND) (dotnet/coreclr#12237)
Commit migrated from https://github.com/dotnet/coreclr/commit/
16d58b4e2555a8efadba07b57f763f4d7e9a7423
Hyung-Kyu Choi [Fri, 16 Jun 2017 13:13:46 +0000 (22:13 +0900)]
Disable Portable RID build for Tizen (dotnet/coreclr#12292)
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
72d31187429b9e421433a1db87a5d09e4ea824be
Jan Vorlicek [Fri, 16 Jun 2017 11:23:34 +0000 (13:23 +0200)]
Fix chained hardware exception handling on Unix (dotnet/coreclr#12316)
There is an issue when hardware exception occurs while handling another hardware exception. In such case,
the exception unwinding ends up in an infinite loop. It is caused by the kernel reusing the same location
for signal handler context.
The fix is to use the windows style context local variable in the common_signal_handler that contains
the right context - it is the original signal context converted to windows style context.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b594d588bc8a7778c30cf0445599ce97cc2edac9
Bruce Forstall [Fri, 16 Jun 2017 07:06:05 +0000 (00:06 -0700)]
Merge pull request dotnet/coreclr#12320 from BruceForstall/CompactGenTreeCall2
Compact the size of GenTreeCall nodes
Commit migrated from https://github.com/dotnet/coreclr/commit/
23cbc3e9a2d8b0602a8e154b15b2a11ced71c17f
Carol Eidt [Fri, 16 Jun 2017 02:27:07 +0000 (19:27 -0700)]
Merge pull request dotnet/coreclr#12185 from hqueue/arm/ryujit/lsra_11851_resolve_edges
[RyuJIT/ARM32] Select proper temp register when resolving edges
Commit migrated from https://github.com/dotnet/coreclr/commit/
237cbb52f15dc1e8587819626309eb3450e067d6
Bruce Forstall [Fri, 16 Jun 2017 02:24:50 +0000 (19:24 -0700)]
Compact the size of GenTreeCall nodes
The data stored in GenTreeCall under `#ifdef FEATURE_MULTIREG_RET`
(defined for x86 (RyuJIT), amd64/Linux, arm32, arm64) was poorly
packed. Improving this reduces x86 GenTreeCall node size from 124 to 112 bytes.
Since GenTreeCall is the largest node, it also reduces the size of all
"large" nodes.
Commit migrated from https://github.com/dotnet/coreclr/commit/
989ba91ef9f5fd76384a18f9a05b75fc73b7b3d0
Bruce Forstall [Fri, 16 Jun 2017 02:20:14 +0000 (19:20 -0700)]
Convert size measurements for nodes to unsigned __int64
I found these numbers overflowing a size_t on x86 with a long
SuperPMI run.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b11d827dcddaff312293b0d21def4c7da5d2c7fc
Jarret Shook [Fri, 16 Jun 2017 01:13:50 +0000 (18:13 -0700)]
Merge pull request dotnet/coreclr#12298 from dotnet/revert-12227-PR-12197
Revert "[Arm64] JIT_WriteBarrier optimization"
Commit migrated from https://github.com/dotnet/coreclr/commit/
f4781d3a6ff2ca9a5553810f8b0fb624a7dfda08
Hanjoung Lee [Fri, 16 Jun 2017 00:53:44 +0000 (09:53 +0900)]
[x86/Linux] Enable gcMarkFilterVarsPinned (WIN64EXCEPTIONS) (dotnet/coreclr#11281)
* [x86/Linux] Enable gcMarkFilterVarsPinned
Do gcMarkFilterVarsPinned() for WIN64EXCEPTIONS
* [x86/Linux] GCInfo : Force this pointer untracked
`this` pointer is now always untracked so we can use pinned flag in tracked lifetimes.
This allows us to make the refs(inside filter) pinned to prevent from double-relocation.
* [x86/Linux] GCInfo : fix comment and formatting
* [x86/Linux] GCInfo : Update
- Force "this" pointer untracked only when "this" is generic context
- Style fixes
* [x86/Linux] GCInfo : remove this_OFFSET_FLAG
Commit migrated from https://github.com/dotnet/coreclr/commit/
0c96db33ddb7d784cda9bd0368756046f436e8bc
dotnet-maestro-bot [Thu, 15 Jun 2017 23:05:38 +0000 (16:05 -0700)]
Update CoreFx to preview1-25415-03 (dotnet/coreclr#12305)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5580664eb419cb868a3669253d5d9666a3def641
Stephen Toub [Thu, 15 Jun 2017 22:49:56 +0000 (18:49 -0400)]
Merge pull request dotnet/coreclr#12307 from stephentoub/iswhitespace
Small cleanup to Char.IsWhiteSpaceLatin1
Commit migrated from https://github.com/dotnet/coreclr/commit/
e70c1bd377040ff49ea9a044556debedee1da959
Jarret Shook [Thu, 15 Jun 2017 22:01:00 +0000 (15:01 -0700)]
Merge pull request dotnet/coreclr#12311 from jashook/arm64_unix_ci
Add the arm64 unix CI
Commit migrated from https://github.com/dotnet/coreclr/commit/
b73a9d93c9aa8c2c3ca105e235a3d7869484b201
wtgodbe [Fri, 9 Jun 2017 20:32:31 +0000 (13:32 -0700)]
Fix timing issues in some baseservices tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d58bb520fc8beabddeff1a1ba70438ac4192bf0
Jarret Shook [Thu, 15 Jun 2017 21:36:22 +0000 (14:36 -0700)]
Merge branch 'master' into arm64_unix_ci
Commit migrated from https://github.com/dotnet/coreclr/commit/
894ddb42988a1c0d9dcfbf924ded7d7747e4f6ba
jashook [Mon, 17 Apr 2017 22:53:12 +0000 (15:53 -0700)]
Add the arm64 unix CI
This will enable unix arm64 testing in CI. Currently there are no
default tirggers; however, anyone will be able to request the jobs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f75b7093f12137364f1a296545dc6defb528fd10
Jarret Shook [Thu, 15 Jun 2017 21:31:55 +0000 (14:31 -0700)]
Merge pull request dotnet/coreclr#12310 from dotnet/revert-11743-arm64_unix_ci
Revert "Add the arm64 unix CI"
Commit migrated from https://github.com/dotnet/coreclr/commit/
8c4dfb133c7a4d162fdd1030c6316397ab6b892d
Jarret Shook [Thu, 15 Jun 2017 21:31:30 +0000 (14:31 -0700)]
Revert "Add the arm64 unix CI"
Commit migrated from https://github.com/dotnet/coreclr/commit/
1c64ce59afa1d028ee5098166b2030b8a7ed278c
Jarret Shook [Thu, 15 Jun 2017 21:20:11 +0000 (14:20 -0700)]
Merge pull request dotnet/coreclr#11743 from jashook/arm64_unix_ci
Add the arm64 unix CI
Commit migrated from https://github.com/dotnet/coreclr/commit/
35ab28fd818de8933f6e02472ea34196b52df40e
Stephen Toub [Thu, 15 Jun 2017 20:22:10 +0000 (16:22 -0400)]
Merge pull request dotnet/coreclr#12297 from stephentoub/getdatepart
Avoid duplicated computations with DateTime.GetDatePart
Commit migrated from https://github.com/dotnet/coreclr/commit/
d5d64fe951e939512eea2bb944691dd427976cc6
Stephen Toub [Thu, 15 Jun 2017 20:14:32 +0000 (16:14 -0400)]
Small cleanup to Char.IsWhiteSpaceLatin1
For some reason this is resulting in measurably better throughput, in particular for non-whitespace chars, so much so that it's visible in microbenchmarks against string.IsNullOrWhiteSpace.
If nothing else, it's cleaner.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2f05efea2ea9e9c9e1ee9772a9da5fae4ca76ad7
Jan Kotas [Thu, 15 Jun 2017 14:32:54 +0000 (07:32 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3890 from jkotas/nmirror-merge
Merge nmirror to master
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
dcd16e7fd27fd01309a5e85a20c2d98e0f97a944
Roman Artemev [Thu, 15 Jun 2017 19:51:28 +0000 (12:51 -0700)]
Merge pull request dotnet/coreclr#12047 from rartemev/issue_4122_2
Fixed determintaion of need to make code that contains tail.call loop fully interuptible
Commit migrated from https://github.com/dotnet/coreclr/commit/
110eebb91dae1a7d2765803be02491802603ef31
Sean Gillespie [Thu, 15 Jun 2017 19:45:12 +0000 (12:45 -0700)]
[Local GC] Fix a number of handle table interface violations (dotnet/coreclr#12277)
* Fix a smattering of GC handle table interface violations
Stub out a few other handle violations
* [Local GC] Add SetExtraInfoForHandle onto GC handle manager interface
* [Local GC] Changes uses of HndGetHandleADIndex to GetHandleContext
* Add HandleGetType to GC handle table interface
1) Change IGCHandleManager methods that take "int" to represent the type of a handle to HandleType, and fix callers to cast to HandleType
2) Add HandleFetchType to IGCHandleManager, returning a HandleType
3) Fix uses of handtablepriv's HandleFetchType and remove the GC directory from the include path
* 9 -> HNDTYPE_WEAK_WINRT, 0 -> HNDTYPE_WEAK_SHORT in assert
Commit migrated from https://github.com/dotnet/coreclr/commit/
dda6b6136e21901842758970d831f31687913a35
Jarret Shook [Thu, 15 Jun 2017 18:28:54 +0000 (11:28 -0700)]
Merge branch 'master' into arm64_unix_ci
Commit migrated from https://github.com/dotnet/coreclr/commit/
308c352f07b4e3e0c4069ac1d403900381a0afd5
Brian Sullivan [Thu, 15 Jun 2017 18:16:42 +0000 (11:16 -0700)]
Merge pull request dotnet/coreclr#12287 from briansull/nowarn-SIMD
Crossgen - Disable the Target-dependent SIMD vector types warning
Commit migrated from https://github.com/dotnet/coreclr/commit/
d734877cd86016296fc6c6e884a2b119339545ec
Bruce Forstall [Thu, 15 Jun 2017 17:15:47 +0000 (10:15 -0700)]
Merge pull request dotnet/coreclr#12251 from kyulee1/override
Missing override keyword to DoPhase
Commit migrated from https://github.com/dotnet/coreclr/commit/
dd2181cde582168752335d7859c92b3274028f77
Steve MacLean [Thu, 15 Jun 2017 15:52:15 +0000 (15:52 +0000)]
Add sdmaclea to arm64Users
Commit migrated from https://github.com/dotnet/coreclr/commit/
0d73bbd8c3b26ce311ee4cf8d933bc453de84a0b
dotnet-maestro-bot [Thu, 15 Jun 2017 15:42:52 +0000 (08:42 -0700)]
Update CoreClr, CoreFx to preview1-25415-03, preview1-25415-01, respectively (dotnet/coreclr#12284)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c0214b5a3c22e4134b720f32e72582904b4a11d7
Jarret Shook [Thu, 15 Jun 2017 15:42:07 +0000 (08:42 -0700)]
Revert "[Arm64] JIT_WriteBarrier optimization (dotnet/coreclr#12227)"
This reverts commit dotnet/coreclr@
b5914c8d1b20be898b8982a4dfcf9d8e9046b2ec.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4aa14e9da9d0f9bf7c0399176b6e0a0b9a9a7eea
Stephen Toub [Thu, 15 Jun 2017 15:31:12 +0000 (11:31 -0400)]
Avoid duplicated compuations with DateTime.GetDatePart
- Remove duplicate code in GregorianCalendar. GetDatePart is identical to the implementation in DateTime. Just reuse it via the Year/Month/Day properties. Also avoids an unnecessary virtual call.
- Then copy GetDatePart into a version that returns year/month/day rather than just one of them.
- And use that in several places throughout corelib where all three are retrieved, avoiding redoing all of the calculations three times.
Commit migrated from https://github.com/dotnet/coreclr/commit/
17c23bed6395f3e12dc0b4471b2bb566c3aa136c
Hyung-Kyu Choi [Thu, 15 Jun 2017 08:16:14 +0000 (17:16 +0900)]
[RyuJIT/ARM32] Reserve a double register for both TYP_DOUBLE and TYP_FLOAT
First, try to reserve a double temp register for both TYP_DOUBLE and TYP_FLOAT.
If fails, try to reserve a float temp register for only TYP_FLOAT.
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
a0a4799cdea1d779f40579c9223de6bf9ae996f2
Hyung-Kyu Choi [Wed, 14 Jun 2017 03:36:03 +0000 (12:36 +0900)]
[RyuJIT/ARM32] Fix typo
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
64dc94178e3f30b4026ed6b64005af48845e4b46
Steve MacLean [Thu, 15 Jun 2017 06:35:49 +0000 (02:35 -0400)]
[Arm64] JIT_WriteBarrier optimization (dotnet/coreclr#12227)
* [Arm64] JIT_WriteBarrier optimization
Add skipEphemeralCheck if gcServer=1
Copy all gc parameters into a literal pool which
fits in single cache line
Add dmb ishst on gcHeap changes
Reduce unpredictable branches
Remove unneeded instructiuons
Fixes dotnet/coreclr#11374
Fixes dotnet/coreclr#12197
* [Arm64] fix typo in asm
* Fixup asm
* [Arm64] Revise per comments
Nits - Whitespace, Labels to PascalCase
Fix state change order
Add Suspend/Resume to fix race
Fix errors in Windows arm64 assembly
* [Arm64] Remove SuspendEE/RestartEE in StompWriteBarrierResize
* Use Volatile<> for g_highest_address
* Revise synchronization per comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
b5914c8d1b20be898b8982a4dfcf9d8e9046b2ec
Jonghyun Park [Thu, 15 Jun 2017 06:06:41 +0000 (15:06 +0900)]
Remove unused forward declaration (dotnet/coreclr#12288)
Commit migrated from https://github.com/dotnet/coreclr/commit/
34320b9242f4e16eedcb9adc2f0901702b19deac
chcosta [Thu, 15 Jun 2017 06:05:46 +0000 (23:05 -0700)]
Fix build break
Download from Azure task does not retain blob prefix when downloading blobs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ac5484c841eb5ecab69526aeb6400be45308383f
Brian Sullivan [Thu, 15 Jun 2017 01:44:12 +0000 (18:44 -0700)]
Crossgen - Disable the Target-dependent SIMD vector types warning
When a SIMD type is referenced during CEEPreloader instead of loading it
we throw a type load exception with a unique resource ID and message.
This commit changed the ICorCompileDataStore interface to allow us to pass
the unique resource ID over to the zapper from the VM.
The Zapper can then demote certain resource ID warnings down to the
lowest informational level, so that they aren't printed out during crossgen.
With this commit we currently are demoting IDS_EE_SIMD_NGEN_DISALLOWED
Commit migrated from https://github.com/dotnet/coreclr/commit/
f79d7e81f70739ab9ae266382aecdfd8c750d06d
dotnet-maestro-bot [Thu, 15 Jun 2017 00:29:45 +0000 (17:29 -0700)]
Update CoreClr to preview1-25414-05 (dotnet/coreclr#12282)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f5f2e55f67c098d326988aff1f7616fd34ccdf56
chcosta [Thu, 15 Jun 2017 00:28:10 +0000 (17:28 -0700)]
Update buildtools to 2.0.0-prerelease-01714-04 (dotnet/coreclr#12280)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d83f176fdc71dc321eb33a7ea8e20150c5e62e9d
Tarek Mahmoud Sayed [Wed, 14 Jun 2017 23:36:24 +0000 (16:36 -0700)]
Fix NullReferenceException thrown when using CurrentCulture (dotnet/coreclr#12281)
CurrentCulture used the static field s_userDefaultCulture which used to store the current culture. We always ensure this field is initialized all the time. When we introduced the v2.0 added APIs, we have added ClearCachedData(). This method was setting s_userDefaultCulture to null which can cause any other thread to throw this NullReferenceException if it is using s_userDefaultCulture. Here is example of such stack
System.NullReferenceException : Object reference not set to an instance of an object.
Stack Trace :
at System.Globalization.NumberFormatInfo.get_CurrentInfo()
at System.Double.ToString(String format, IFormatProvider provider)
Commit migrated from https://github.com/dotnet/coreclr/commit/
018e5252ed8427aeffea43a2935114149e10bc1b
Viktor Hofer [Wed, 14 Jun 2017 19:57:36 +0000 (21:57 +0200)]
Renaming serializable field (dotnet/coreclr#12273)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7f00fec141ca1b222b1c113d2de055e80728bb99
Brian Sullivan [Wed, 14 Jun 2017 19:57:20 +0000 (12:57 -0700)]
Remove the warning about Implicit boxing during crossgen (dotnet/coreclr#12274)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2ffe2ba52989a224a524027227509acf1735ca96
Jarret Shook [Wed, 14 Jun 2017 19:47:55 +0000 (12:47 -0700)]
Merge pull request dotnet/coreclr#12272 from jashook/add_documentation_for_building_tests_on_unix
Add documentation for building test(s) on Unix
Commit migrated from https://github.com/dotnet/coreclr/commit/
5db60d53a783e1d4a04ec7289b2571a7bcc27d18
jashook [Wed, 14 Jun 2017 17:01:58 +0000 (10:01 -0700)]
Add documentation for building test(s) on Unix
This also includes steps on how to build individual tests.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ba2acbdfe136cb5ab1b875368ed2768193d59b5e
Han Lee [Wed, 14 Jun 2017 16:14:18 +0000 (09:14 -0700)]
Fix a COMDouble::Round() issue (dotnet/coreclr#12210)
* Fix a COMDouble::Round() issue
fixes https://github.com/dotnet/coreclr/issues/12137
* Add a couple tests for Math.Round(double)
based on https://github.com/dotnet/coreclr/issues/12137
* Use G17 format specifier for printing double values
Commit migrated from https://github.com/dotnet/coreclr/commit/
395f145ba0c220afb1d85ff8c26f34909d8ea424
dotnet-maestro-bot [Wed, 14 Jun 2017 16:09:10 +0000 (09:09 -0700)]
Update CoreClr to preview1-25414-04 (dotnet/coreclr#12270)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7b051348604398af834713af786ac7d6ee3e5bc7
Jiyoung Giuliana Yun [Wed, 14 Jun 2017 14:50:51 +0000 (23:50 +0900)]
Add `-PortableBuild=false` option in Tizen CI build (dotnet/coreclr#12241)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a2ecf158bf2618e46510ea67352b08fd66ed854b
sergey ignatov [Wed, 14 Jun 2017 14:28:12 +0000 (17:28 +0300)]
Additional to fix dotnet/coreclr#12104 for CoreRT issue dotnet/coreclr#3672 (armel tizen) (dotnet/coreclr#12244)
* Additional to fix dotnet/coreclr#12104 for CoreRT issue dotnet/coreclr#3672 (armel tizen)
* Fix for unregistered info.compLvFrameListRoot
Commit migrated from https://github.com/dotnet/coreclr/commit/
9255b5ea1acac68f62207f03dab509de97da93a9
Viktor Hofer [Wed, 14 Jun 2017 11:34:45 +0000 (13:34 +0200)]
Fix gethashcode for ordinal comparer (dotnet/coreclr#12267)
Fix GetHashCode for ordinal comparer
Commit migrated from https://github.com/dotnet/coreclr/commit/
905efa9828b0b02fcbfd339d155982aa4b36f8be
Jacek Blaszczynski [Wed, 14 Jun 2017 06:16:26 +0000 (08:16 +0200)]
Rewrite of OpCodeGen.pl script to generate correctly IL OpCodes (dotnet/coreclr#12040)
* Rewrite of OpCodeGen.pl script to generate correctly IL OpCodes related C# code: FlowControl.cs, OpCodes.cs, OpCodeTypes.cs, OperandType.cs, StackBehaviour.cs from opcode.def file
* Update OpcodeType.cs to OpCodeType.cs in System.Private.CorLib.csproj
Commit migrated from https://github.com/dotnet/coreclr/commit/
116a6cc7dd0ff0912251f7d1febed36460ea11cd
Bruce Forstall [Wed, 14 Jun 2017 06:16:05 +0000 (23:16 -0700)]
Improve the packing of RefPosition (dotnet/coreclr#12263)
The LSRA RefPosition type was not packing well. In particular,
bitfields don't pack unless they have the same base type.
Move all the data member declarations to the top, and make them adjacent,
so it is easier to see them all together. Also, change all bitfields
to "unsigned char" base type.
This reduces the size from 36 to 28 bytes for x86, and 48 to 40 bytes
for x64 (release, on Windows).
Commit migrated from https://github.com/dotnet/coreclr/commit/
d7e2ca54816f6a8bda589fde91a5e395f0896d29
Steve MacLean [Wed, 14 Jun 2017 06:04:01 +0000 (02:04 -0400)]
[Arn64/Unix] Revise Volatile.T barriers (dotnet/coreclr#12156)
* [Arm64] Revise Volatile<T> barriers
* Remove VolateStore from CopyValueClassUnchecked
* Replace MemoryBarrier() in CopyValueClassUnchecked
Commit migrated from https://github.com/dotnet/coreclr/commit/
d23a2bc131eae32c473e39fcb3b640af1a95d244
Omair Majid [Wed, 14 Jun 2017 05:39:08 +0000 (01:39 -0400)]
Keep previous cmake arguments when using buildstandalonegc (dotnet/coreclr#12108)
Currently, using buildstandalonegc makes ./build.sh discard any
previous values of __cmakearg set explicitly or implicitly. Preserve
those arguments.
Without this fix, the following invocations behave differently:
$ ./build.sh ignorewarnings buildstandalonegc verbose
$ ./build.sh buildstandalonegc ignorewarnings verbose
Commit migrated from https://github.com/dotnet/coreclr/commit/
d2f9e21c69e70f1d0edac2392ff95d4670edff6e
dotnet-maestro-bot [Wed, 14 Jun 2017 05:29:42 +0000 (22:29 -0700)]
Update CoreClr, CoreFx to preview1-25414-02, preview1-25414-01, respectively (dotnet/coreclr#12258)
Commit migrated from https://github.com/dotnet/coreclr/commit/
40228489c1340b02567a23a263378872fcc45fba
Viktor Hofer [Wed, 14 Jun 2017 01:49:02 +0000 (03:49 +0200)]
Remove serializable attribute from OrdinalIgnoreCaseComparer (dotnet/coreclr#12215)
* Remove serializable attribute from OrdinalIgnoreCaseComparer
* Introducing OrdinalCaseSensitiveComparer to serialize correctly with netfx
* Updated PR feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
fe22770b9fe8f665679bde1c08d1372fb9f78e0e
Brian Sullivan [Wed, 14 Jun 2017 00:55:05 +0000 (17:55 -0700)]
Merge pull request dotnet/coreclr#12255 from briansull/concat-fix
Removed the unused vararg version of String Concat
Commit migrated from https://github.com/dotnet/coreclr/commit/
9def2055bab6e154806a800816a05ab811f056f6
Brian Sullivan [Tue, 13 Jun 2017 21:19:30 +0000 (14:19 -0700)]
Removed the unused vararg version of String Concat
The __arglist version of varargs is not supported on CoreCLR
Fixes issue dotnet/coreclr#12146 - crossgen warning - Vararg calling convention not supported.
Added a new test case for String Concat
Added <DebugType>None
Fixed src\JIT\Directed\Misc\gettype csproj as well
Commit migrated from https://github.com/dotnet/coreclr/commit/
91c8ecf830d0d336bff3337019d6501f6efafc12
Daniel Podder [Tue, 13 Jun 2017 21:51:55 +0000 (14:51 -0700)]
Skip PGO if clang is too old, and add warnings for skipped PGO (dotnet/coreclr#12248)
Clang/LLVM cannot merge profile data generated by a newer version of
itself. Training currently requires 3.6, but we don't want to completely
break the build for 3.5. I'm adding a version check to allow non-PGO
release builds on 3.5, along with a warning message. I'm also updating
the LTO detection to print a warning message if it causes PGO to be
disabled.
Commit migrated from https://github.com/dotnet/coreclr/commit/
94788b256bc2aaa930341e27dc5ae3baf3bbf8b5
Brian Sullivan [Tue, 13 Jun 2017 20:57:33 +0000 (13:57 -0700)]
Added the checked CORE_ROOT path to this
Commit migrated from https://github.com/dotnet/coreclr/commit/
25bc371325b21a4bed9e0337192dd04ad7051b54
William Godbe [Tue, 13 Jun 2017 20:55:54 +0000 (13:55 -0700)]
Merge pull request dotnet/coreclr#12092 from wtgodbe/CoreDisTools
Explicitly download correct version of CoreDisTools package
Commit migrated from https://github.com/dotnet/coreclr/commit/
7e8cb3efb7556eea02ad43292b8baa8651e14e79
Brian Sullivan [Tue, 13 Jun 2017 20:08:43 +0000 (13:08 -0700)]
Specified where the failing tests are listed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
000343606a00124501cec18badc9ca551a636dc1
Brian Sullivan [Tue, 13 Jun 2017 20:04:12 +0000 (13:04 -0700)]
Updated the path for the test results html file
Commit migrated from https://github.com/dotnet/coreclr/commit/
33908992423ac89e7e2fa5af903ce2a3d81d3623
Brian Sullivan [Tue, 13 Jun 2017 19:59:42 +0000 (12:59 -0700)]
Fixed typo
Commit migrated from https://github.com/dotnet/coreclr/commit/
6708d2db1b51bc2695c7fef2e62eed04701dc598
Brian Sullivan [Tue, 13 Jun 2017 19:58:37 +0000 (12:58 -0700)]
Updated for checked build testing and corrected some paths
Commit migrated from https://github.com/dotnet/coreclr/commit/
7c02f85f175f3c96b0c77b3683f5132e6dccaacf
Kyungwoo Lee [Tue, 13 Jun 2017 18:37:14 +0000 (11:37 -0700)]
Missing override keyword to DoPhase
Commit migrated from https://github.com/dotnet/coreclr/commit/
a075b765d3ce3707c50f0a87c5c6a8a7e4c65f68
Bruce Forstall [Tue, 13 Jun 2017 17:35:43 +0000 (10:35 -0700)]
Merge pull request dotnet/coreclr#12105 from alpencolt/ryu-arm-softfp-pass-ret
[RyuJIT/armel] Fix for correct passing and returning float values.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0d122b4cdb7beaf8fcae466e14134d1706b3e4c1
Sujin Kim [Tue, 13 Jun 2017 17:31:50 +0000 (02:31 +0900)]
[RyuJIT/ARM32] Fix assertion when using invalid imm for INS_add (dotnet/coreclr#12162)
* [RyuJIT/ARM32] Fix assertion when using invalid imm for INS_add
`JIT/Regression/CLR-x86-JIT/V1-M12-Beta2/b54611/b54611/b54611.sh`
Assertion failed '!"Instruction cannot be encoded" has been occurred.
INS_add couldn't process with the invalid imm of -273 on this test.
So in this PR, If it got the value that cannot be processed, moving to register that after changing status would be ran so that it can be processed.
* Modify 'Lowering::IsContainableImmed' to work normally.
insFlags when the function is called was always INS_FLAGS_DONT_CARE.
In this case, if the imm is such as -273, the result would be false.
The correct flags have to be set.
* add ifdef for the flags variable
Commit migrated from https://github.com/dotnet/coreclr/commit/
92fab181d26b47bc564add2c547e01cb1fa4bd95
Bruce Forstall [Tue, 13 Jun 2017 17:16:30 +0000 (10:16 -0700)]
Merge pull request dotnet/coreclr#12243 from hqueue/arm/ryujit/issue_11842
[RyuJIT/ARM32] Enable HasMultiRegRetVal() for struct
Commit migrated from https://github.com/dotnet/coreclr/commit/
f2d31ca29b32be3ee227539c6fd696f485d184c1
Vance Morrison [Tue, 13 Jun 2017 16:56:20 +0000 (09:56 -0700)]
Make ActivityID guids process specific. (dotnet/coreclr#11726)
This is a port a change from the Nuget version of this library.
Bascially it hashs in the process ID into the activity ID GUID. This make collisions across processes unlikely.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8ab98b752fc8a9db28586a418448f5a7e1b577e3
Bruce Forstall [Tue, 13 Jun 2017 16:50:40 +0000 (09:50 -0700)]
Merge pull request dotnet/coreclr#12235 from BruceForstall/FixSuperPmiCollect
Fix SuperPMI collection script to allow passing arch/flavor args
Commit migrated from https://github.com/dotnet/coreclr/commit/
845d2597c1bae425c735ee3b86c921ae0be49327
Michelle McDaniel [Tue, 13 Jun 2017 16:27:39 +0000 (09:27 -0700)]
Merge pull request dotnet/coreclr#12245 from adiaaida/throughputJobChanges
Replace System.Private.CoreLib with new version in TP jobs
Commit migrated from https://github.com/dotnet/coreclr/commit/
24fe4185b30e283fb64a88745d9d06de85912253
Daniel Podder [Tue, 13 Jun 2017 16:22:29 +0000 (09:22 -0700)]
Pull CoreCLR build from RHEL7.2 in perf runs (dotnet/coreclr#12238)
Our Ubuntu perf testing has been creating Linux CoreCLR builds by
creating the build locally. This fits the local developer scenario, but
doesn't actually test the bits that ship; the 'official' product
configuration is generated by building on RHEL 7.2 and packaging those
bits for various distros, including Ubuntu.
In order to more accurately measure end-user-perceived performance, we
should do the same thing official builds do: build on RHEL7.2, then copy
those bits onto other OSes to test perf on those OSes.
This PR makes that happen by structuring Linux perf and throughput jobs
as flow jobs, with builds up front on a RHEL VM, before the bits are
dropped onto Ubuntu perf test machines.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d133544362e7bed58c4cbff4aa58d927764320d0
dotnet bot [Tue, 13 Jun 2017 15:28:51 +0000 (08:28 -0700)]
Update CoreClr, CoreFx to preview1-25413-01, preview1-25413-02, respectively (dotnet/coreclr#12242)
Commit migrated from https://github.com/dotnet/coreclr/commit/
02fbd334c4d2b7b654fcc58b64d9bef5df55f74c
Michelle McDaniel [Tue, 13 Jun 2017 15:03:18 +0000 (08:03 -0700)]
Replace System.Private.CoreLib with new version in TP jobs
SPC and the jit/coreclr are tightly coupled. With the changes to
crossgen into the dll, rather than the ni.dll, the throughput jobs are
now using the non-crossgen'd version of SPC on TP runs, which led to a
regression in TP on Linux because our comparison was not the same. This
change updates testing to replace the System.Private.CoreLib in the
throughput directory with the System.Private.CoreLib built by the
coreclr build.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6de9e94f4896c541eaa7711a204436f03e0549b4
Ruben Ayrapetyan [Tue, 13 Jun 2017 13:58:41 +0000 (16:58 +0300)]
Partially remove relocations for ModuleSection (ZapVirtualSectionType). (dotnet/coreclr#11853)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b258792e59b09060f54e0c9bbd31edc3e67d1ae8
Davis Goodin [Tue, 13 Jun 2017 13:55:25 +0000 (08:55 -0500)]
Use NuGetPush target from BuildTools (dotnet/coreclr#12221)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8115d8bdaa208f100897c30d9016c77259adb762
Hyung-Kyu Choi [Tue, 13 Jun 2017 13:04:23 +0000 (22:04 +0900)]
[RyuJIT/ARM32] Enable HasMultiRegRetVal() for struct
This will pass some tests and will trigger NYI assertions as expected.
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
c5782d53e52ecbbce25b182c8b8b50da0d18f243
Daniel Podder [Tue, 13 Jun 2017 08:14:34 +0000 (01:14 -0700)]
Fix Linux PGO optdata consumption + PGO count update (dotnet/coreclr#12239)
* Update PGO package version to
20170612-1411
* Fix PGO optdata path issue on Linux
Commit migrated from https://github.com/dotnet/coreclr/commit/
a3ebe55ad325b1a68c5418a5e163ddbf71168a73
dotnet bot [Tue, 13 Jun 2017 04:01:29 +0000 (21:01 -0700)]
Update CoreClr, CoreFx to preview1-25412-03, preview1-25413-01, respectively (dotnet/coreclr#12234)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e977dde4c5f5210447564ca8779d3c6c00eaf7c1
Jarret Shook [Tue, 13 Jun 2017 02:34:48 +0000 (19:34 -0700)]
Fix legacy backend build when FEATURE_READYTORUN_COMPILER is undefined (dotnet/coreclr#12232)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9a249583f3d5c581dc13eeaca784a2bc50e08eca
William Godbe [Tue, 13 Jun 2017 00:56:29 +0000 (17:56 -0700)]
Merge pull request dotnet/coreclr#12175 from wtgodbe/VS2017
Use roslyn common props in test build
Commit migrated from https://github.com/dotnet/coreclr/commit/
b14ac34a328831c1a34fb78a8ecc7dc1a495813b
Drew Scoggins [Tue, 13 Jun 2017 00:16:24 +0000 (17:16 -0700)]
Merge pull request dotnet/coreclr#12223 from DrewScoggins/AddHelpToPerf
Add help statement for perf.groovy
Commit migrated from https://github.com/dotnet/coreclr/commit/
7f118db246205f40dd2a96eb5bff88f531fd0fdc