Konstantin Baladurin [Thu, 22 Mar 2018 14:02:43 +0000 (17:02 +0300)]
[ARM64] Fix UMEntryThunkCode::Poison method (dotnet/coreclr#17122)
Fix hex value of the instruction ldp x16, x0, [x12]
Commit migrated from https://github.com/dotnet/coreclr/commit/
aa95b54845fd5d67475e6a6b17da80e7f6d4c4de
dotnet-maestro-bot [Thu, 22 Mar 2018 05:13:42 +0000 (00:13 -0500)]
Update BuildTools, CoreClr to preview3-02622-01, preview3-26322-01, respectively (dotnet/coreclr#17105)
Commit migrated from https://github.com/dotnet/coreclr/commit/
949e8d7e82ec5709b98f96412acd0dd31fefdf84
Brian Robbins [Thu, 22 Mar 2018 04:34:24 +0000 (21:34 -0700)]
Fix incorrect array dereference. (dotnet/coreclr#17113)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a4845dca1e1edffe07286d0c8ddff04aadab0181
Ahson Khan [Thu, 22 Mar 2018 01:03:02 +0000 (18:03 -0700)]
Rename {Try}Read/WriteMachineEndian to just {Try}Read/Write (dotnet/coreclr#17106)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c00c62f0f332731a186d44b5eb9f9b783b1e6e8b
Jan Vorlicek [Thu, 22 Mar 2018 00:11:59 +0000 (01:11 +0100)]
Remove dependency on libunwind (dotnet/coreclr#17094)
* Add original source of libunwind 1.3-stable
Taken from:
https://github.com/libunwind/libunwind/tree/v1.3-stable
* Enable building of libunwind
This change enables building libunwind and removes
dependency on the libunwind package for all Unixes
except OSX. In OSX the libunwind is part of the OS
and also has support for compact unwind info that
is OSX specific, so we keep using that one.
* Disable warnings in code we don't execute
Commit migrated from https://github.com/dotnet/coreclr/commit/
d104270f8412381b5eb7715a775c3999f28b740c
Mike McLaughlin [Wed, 21 Mar 2018 22:43:15 +0000 (15:43 -0700)]
Update debugging doc on lldb versions and disabling managed debugging (dotnet/coreclr#17107)
Commit migrated from https://github.com/dotnet/coreclr/commit/
08224572d6d2dd20d599bcf7725b4516eea2d5b9
Stephen Toub [Wed, 21 Mar 2018 21:35:56 +0000 (17:35 -0400)]
Improve DateTime{Offset} "r" and "o" formatting performance (dotnet/coreclr#17092)
Two main changes:
1. Rewrote the formatting to use span, only to then discover that we already had almost exactly the same implementation in Utf8Formatter. As that one had some extra optimizations around JIT behaviors, I ported that over instead.
2. Avoided [ThreadStatic] lookups unless necessary.
ToString/TryFormat for "o"/"O" improve by ~2.5x.
ToString/TryFormat for "r"/"R" improve by ~3x.
Commit migrated from https://github.com/dotnet/coreclr/commit/
06be68e39634b0fa6490a2d500912e83dc78ed1e
Brian Robbins [Wed, 21 Mar 2018 20:31:04 +0000 (13:31 -0700)]
Add More Process Information to EventPipe Traces (dotnet/coreclr#17080)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b82063e24b34c875891916a1bbc01728b9022bf3
Frank Gambino [Wed, 21 Mar 2018 20:08:00 +0000 (16:08 -0400)]
Fix strings from being concatenated (dotnet/coreclr#17040)
Commit migrated from https://github.com/dotnet/coreclr/commit/
166258a0b07246bb829695cebb1223b057339b49
Jeff Schwartz [Wed, 21 Mar 2018 20:07:00 +0000 (13:07 -0700)]
null terminate the converted LPStr at the right index (dotnet/coreclr#17079)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e99c94d3108257c61d5690d15662c020a2b5ba07
Mike McLaughlin [Wed, 21 Mar 2018 19:42:49 +0000 (12:42 -0700)]
Add missing license header to test py and cs files (dotnet/coreclr#17102)
Issue dotnet/coreclr#13471
Commit migrated from https://github.com/dotnet/coreclr/commit/
3d5b1d3d28d3b0a73b41716998600d8675a1d9e0
Ahson Khan [Wed, 21 Mar 2018 19:34:48 +0000 (12:34 -0700)]
Moving Span APIs that allow skipping visibility checks to MemoryMarshal (dotnet/coreclr#17087)
Commit migrated from https://github.com/dotnet/coreclr/commit/
967e6544ce2bbaeb233411456fd6a306ceb7de90
Ben Adams [Wed, 21 Mar 2018 19:33:56 +0000 (19:33 +0000)]
Small tweaks to Dict asm size (dotnet/coreclr#17096)
Commit migrated from https://github.com/dotnet/coreclr/commit/
06f6f87df8432ea1c9105b7b755fd5534d5f7be5
Sergey Ignatov [Wed, 21 Mar 2018 11:40:42 +0000 (14:40 +0300)]
Fixed dotnet/coreclr#16564: the test objmonhelper hangs forever with GCStress=0x3
Commit migrated from https://github.com/dotnet/coreclr/commit/
d488ef7b6e136cac6fe61a7186d158aa59bcf00f
JC Aguilera [Wed, 21 Mar 2018 16:14:17 +0000 (09:14 -0700)]
Change directory in AgentTools script
Commit migrated from https://github.com/dotnet/coreclr/commit/
f4e81cfd664bf33eab1d4c21ed66e3cef9c9691a
dotnet-maestro-bot [Wed, 21 Mar 2018 14:33:18 +0000 (09:33 -0500)]
Update BuildTools, CoreClr, CoreFx to preview3-02620-10, preview3-26321-06, preview3-26319-04, respectively (dotnet/coreclr#17012)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e2ff69f7cbcfe120414ff0e3130eaa48a252ab34
Stephen Toub [Wed, 21 Mar 2018 08:27:15 +0000 (04:27 -0400)]
Avoid allocating when SuppressFlow'ing in default ExecutionContext (dotnet/coreclr#17081)
* Avoid allocating when SuppressFlow'ing in default ExecutionContext
* Address PR feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
c2ba3e1370e53ca992477c4a19dddf09d9d137bb
Ahson Khan [Wed, 21 Mar 2018 05:27:20 +0000 (22:27 -0700)]
API consistency for System.Memory APIs (argument names) (dotnet/coreclr#28160)
* AsBytes and Cast: Change arg name source -> span
* CopyTo: Change arg name array/sequence -> source
* Several APIs: Change arg name arraySegment -> segment
* Several APIs: Change arg name readOnlyMemory -> memory
* BinaryPrimitives and Utf8Formatter: Change arg name buffer -> source or destination
* Base64: Change arg name consumed/written -> bytesConsumed/bytesWritten
* Utf8Parser: Change arg name text -> source
* TryGetOwnedMemory: Change arg name ownedMemory -> owner, index -> start
* BuffersExtensions.Write: Change arg name bufferWriter -> writer
* Span Compare APIs: Change arg name first -> span, second/value -> other
* ROSequence.TryGet & BuffersExtensions: Change arg name data -> memory, sequence -> source
* Fix mistake in BinaryPrimitives Writer APIs, source -> destination.
* BufferExtensions.Write: Change arg name source -> span
* SequencePosition.Equals: Change arg name position -> other
* BufferExtensions ToArray: Change arg name source -> sequence
* Rename leftover arraySegment to segment in MemoryMarshal.TryGetArray
* BufferExtensions.Write: Change arg name span -> value
* Contains, StartsWith, EndsWith: Change arg name other -> value
Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
4113c35a3fcfb3952da7e088158a99f003cf9cd8
Günther Foidl [Wed, 21 Mar 2018 00:56:41 +0000 (01:56 +0100)]
Updated steps in 'Viewing JIT Dumps' to see optimized code (dotnet/coreclr#17077)
If one follows the current described steps, one won't see the JIT dump for optimized code in the core lib.
This PR adds the necessary step to see optimized code.
Cf. https://github.com/dotnet/coreclr/issues/17065#issuecomment-
374772011
Commit migrated from https://github.com/dotnet/coreclr/commit/
a3468372f80e9b8056f668b43a07f8b28de4e10c
Carol Eidt [Wed, 21 Mar 2018 00:01:14 +0000 (17:01 -0700)]
Merge pull request dotnet/coreclr#16955 from fiigii/moreavx
Implement more AVX/AVX2 intrinsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
0ebc0979a899d2e9da0643e3b5601618bcc3c4eb
Kyungwoo Lee [Tue, 20 Mar 2018 22:46:15 +0000 (15:46 -0700)]
Fix type for lvaCachedGenericContextArgOffs (dotnet/coreclr#14260)
lvaCachedGenericContextArgOffs should be signed since it's initially
assigned with a negative virtual offset. Finally depending on
frame pointer use with different arch, it could become positive or negative.
Luckily enough, so far such issue was by-passed since amd64 encoder didn't
care such signness when encoding move offset even though the value is
negative. For arm64, it is typically positive since FP is saved on the
bottom of stack.
Commit migrated from https://github.com/dotnet/coreclr/commit/
103fe23ca43b9583f4de41ec3ed7572eef4025d5
Atsushi Kanamori [Tue, 20 Mar 2018 21:14:41 +0000 (14:14 -0700)]
Port System.Memory performance improvements to Convert.TryFromBase64Chars (dotnet/coreclr#17033)
* Copy over Base64.DecodeFromUtf8 verbatim
* Don't need the InPlace api
* Change input from Utf8 to Utf16
* isFinalBlock will always be true, so constant fold it through
* I only need a true/false result, so get rid of OperationStatus
* Rename variables to reflect Utf8->Utf16 change
* Update comments and some minor cleanup
* Make Convert use Base64 as a fast-path
* Incorporate PR feedback.
* Delete FromBase64_Decode
* Use a single safe stackalloc
* Rename Base64.cs to Convert.Base64.cs
and make its contents a part of the Convert class.
We should eventually move all the Base64-related
stuff into this new file but not as part of this PR.
We want to be able to diff the implementation change
separately from the code movement.
* Thanks VS for the unasked for indent
Commit migrated from https://github.com/dotnet/coreclr/commit/
e0fa11308de58684cde6bf8b7d0da287b48f01e9
Andrew Marino [Tue, 20 Mar 2018 20:31:17 +0000 (13:31 -0700)]
Fix header inclusion order; avoids use of RCWCache before definition (dotnet/coreclr#17067)
Commit migrated from https://github.com/dotnet/coreclr/commit/
0597eed6a6674ad0b0f531a851475c212c7478c5
Jan Kotas [Fri, 16 Mar 2018 18:34:56 +0000 (11:34 -0700)]
Fix build break
Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
f0e315f0fccfa96fd8b228fd0471821bcc1268c0
Bruce Forstall [Tue, 20 Mar 2018 16:00:19 +0000 (09:00 -0700)]
Merge pull request dotnet/coreclr#17056 from BruceForstall/Arm64LclFldContainedZero
Allow arm64 to contain zero in GT_STORE_LCL_FLD
Commit migrated from https://github.com/dotnet/coreclr/commit/
e431eb23fc21b773c17b96bb0f8189597d436b98
Andy Ayers [Tue, 20 Mar 2018 15:36:14 +0000 (08:36 -0700)]
JIT: remove boxing for interface call to shared generic struct (dotnet/coreclr#17006)
Improve the jit's ability to optimize a box-interface call sequence
to handle cases where the unboxed entry point requires a method table
argument.
Added two test cases, one from the inspiring issue, and another where
the jit is then able to inline the method.
Closes dotnet/coreclr#16982.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a3e9b7ff25a31baa41db2df4c3a164aa4882b88c
Jan Kotas [Mon, 19 Mar 2018 21:10:18 +0000 (14:10 -0700)]
Fix major System.Memory performance regression on .NET Framework x86 (dotnet/coreclr#28179)
* Use Unsafe.AddByteOffset instead of Unsafe.Add where possible
* Use pointer for NUint backing field
* Delete unnecessary unchecked scopes, fixed comments
* Avoid unnecessary overflow checks when converting from IntPtr
* Switch SequenceEqual to IntPtr pointer arithmetic
This is fixing 10x regression introduced by use of NUint
* Delete NUint operators that are no longer necessary
* Fix CoreCLR build break
Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
dfd1f1caa5685e968be2a845b5c0bc3ad17390dc
Jan Kotas [Tue, 20 Mar 2018 10:53:06 +0000 (03:53 -0700)]
Move CompareInfo.* to shared CoreLib partition (dotnet/coreclr#17062)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ff2abe597b602c5228bae66c9f3f581a632ff4fb
Jan Kotas [Tue, 20 Mar 2018 10:34:35 +0000 (03:34 -0700)]
Move EncodingTable and CodePageDataItem to System.Text namespace (dotnet/coreclr#17061)
This is the more logical namespace for it and it matches the namespace that these live under in CoreRT.
Commit migrated from https://github.com/dotnet/coreclr/commit/
101df105c3b94860d76b100dea1308a3ff371b11
Fei [Tue, 20 Mar 2018 10:07:59 +0000 (02:07 -0800)]
Implement more AVX/AVX2 intrinsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
dd96fc5e1eec6b3d14fbf0537f4da36306a7c02a
Fei [Tue, 20 Mar 2018 10:06:21 +0000 (02:06 -0800)]
Add tests for AVX/AVX2 intrinsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
e9e33773a86f2433008ccce2632d44f3d9bb7f00
Jan Kotas [Tue, 20 Mar 2018 04:16:23 +0000 (21:16 -0700)]
Fix copy&paste bug (dotnet/coreclr#17059)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a0562b40a961a05b9854ed3bc2bb959a07c2e215
Sven Boemer [Tue, 20 Mar 2018 03:24:01 +0000 (20:24 -0700)]
Fix unloading of images mapped by PAL (dotnet/coreclr#17053)
* Fix unloading of images mapped by PAL
The m_FileView member of MappedImageLayout is a CLRMapViewHolder,
which runs CLRUnmapViewOfFile on release. This is fine on Windows,
where the MappedImageLayout constructor calls
CLRMapViewOfFile. However, with FEATURE_PAL, the constructor calls
PAL_LOADLoadPEFile, which simulates LoadLibrary and records multiple
mapping entries. Each entry increases the refcount of the underlying
file handle PAL object. PAL_LOADUnloadPEFile should be called in this
case (instead of CLRUnmapViewOfFile), to decrease the refcount for
each mapping entry.
Fixes https://github.com/dotnet/coreclr/issues/15189.
* Fix build failure
Commit migrated from https://github.com/dotnet/coreclr/commit/
0bec57741b0005c64cd1609a6ae2cbe69ac18fdc
Sven Boemer [Tue, 20 Mar 2018 03:23:39 +0000 (20:23 -0700)]
Use flat layout for GetAssemblyName (dotnet/coreclr#17052)
* Use flat layout for GetAssemblyName
This change will result in the use flat layouts for the temporary
layouts created by GetAssemblyName. This allows crossgen'd PE images
created for a different OS to be loaded in the code path that
retrieves the assembly name.
* Respond to PR feedback
Add comment, and remove dead code.
Commit migrated from https://github.com/dotnet/coreclr/commit/
77d4c11fcd67414d2195a63287e9c8e0b6f32958
Bruce Forstall [Tue, 20 Mar 2018 01:30:51 +0000 (18:30 -0700)]
Allow arm64 to contain zero in GT_STORE_LCL_FLD
The codegen to handle this in codegenarm64.cpp, CodeGen::genCodeForStoreLclFld()
already exists.
Commit migrated from https://github.com/dotnet/coreclr/commit/
80d3c595bdeb2fb412d8544d3adbcdfd762d9b85
Mike McLaughlin [Tue, 20 Mar 2018 01:26:59 +0000 (18:26 -0700)]
Add new ICLRDebuggingLibraryProvider2 interface for OpenVirtualProces that works on Linux (dotnet/coreclr#16978)
Add new ICLRDebuggingLibraryProvider2 interface for OpenVirtualProcess that works on Linux.
The old ICLRDebuggingLibraryProvider::ProviderLibrary returns module handles that can't
be properly supported on Linux.
ICLRDebuggerLibraryProvider2 returns the module path string instead of a handle. Works on
both Windows and Linux. If ICLRDebuggerLibraryProvider2 is QI'ed, OpenVirtualProcess will
NOT fall back to ICLRDebuggerLibraryProvider if ProviderLibrary2 fails.
HRESULT ProvideLibrary2(
[in] const WCHAR* pwszFileName,
[in] DWORD dwTimestamp,
[in] DWORD dwSizeOfImage,
[out] LPWSTR* ppResolvedModulePath);
ppResolvedModulePath - Where *ppResolvedModulePath is a null terminated path to the module dll. On Windows it should be allocated
with CoTaskMemAlloc. On Unix it should be allocated with malloc. Failure leave it untouched.
Commit migrated from https://github.com/dotnet/coreclr/commit/
66758f48163b90700f0551fd9df4f15bcd1a8a45
Brian Sullivan [Tue, 20 Mar 2018 00:54:45 +0000 (17:54 -0700)]
Merge pull request dotnet/coreclr#17049 from briansull/fix-fgInstrumentMethod
Fix for fgInstrumentMethod
Commit migrated from https://github.com/dotnet/coreclr/commit/
96e83a82e2b7cad75ab363739326cb39c25c5f33
Andy Ayers [Tue, 20 Mar 2018 00:28:51 +0000 (17:28 -0700)]
JIT: tolerate nonzero constant byrefs in impCheckForNullPointer (dotnet/coreclr#17042)
With the advent of dotnet/coreclr#16966 we may now see constant nonzero byrefs from
things like RVA statics. Tolerate these in `impCheckForNullPointer`.
Note previously we'd type these as ints/longs and so bail out of
`impCheckForNullPointer` after the first check.
Closes dotnet/coreclr#17008.
Commit migrated from https://github.com/dotnet/coreclr/commit/
58f8744af4fb3494ca8cc305c2d1a0eb3fb9d35a
Sergey Andreenko [Mon, 19 Mar 2018 22:08:09 +0000 (15:08 -0700)]
delete unused debug arg from genChangeLife and compChangeLife. (dotnet/coreclr#17041)
* delete unused debug arg from genChangeLife(VARSET_VALARG_TP
* remove unused debug arg from compChangeLife
Commit migrated from https://github.com/dotnet/coreclr/commit/
20f7c219e79f55ab8062282c6cb1d89310f365ea
Brian Sullivan [Mon, 19 Mar 2018 22:04:54 +0000 (15:04 -0700)]
Fix jit-format
Commit migrated from https://github.com/dotnet/coreclr/commit/
69c8700dab08eba6ce80359b73efd92a5c079155
Matt Mitchell [Mon, 19 Mar 2018 21:44:59 +0000 (14:44 -0700)]
Remove obselete buildtests (dotnet/coreclr#17050)
BuildTests definition now lives under buildpipeline\tests\
Commit migrated from https://github.com/dotnet/coreclr/commit/
39831d5bd30e0e0f1759ea3a042c73e96f8a3e87
Brian Sullivan [Mon, 19 Mar 2018 21:19:10 +0000 (14:19 -0700)]
Fix for fgInstrumentMethod
There was a bug creating profiling images using /Tuning
We computed the wrong value for addrOfBlockCount at the end of this method
This would result in method having proper block counts,
but still not getting marked as being executed.
This regressed in PR dotnet/coreclr#14640
Commit migrated from https://github.com/dotnet/coreclr/commit/
9835d0508fc3a30cce3566f35e6d19e2f29668bb
Michal Strehovský [Mon, 19 Mar 2018 18:08:34 +0000 (19:08 +0100)]
Fix ProjectN build break and work around MCG bug (dotnet/corertdotnet/coreclr#5576)
Unblocks integration to TFS.
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
4b4611b9dd8001de7748878734ee4926c262af5d
Jan Kotas [Mon, 19 Mar 2018 19:51:33 +0000 (12:51 -0700)]
Switch over to managed Marvin implementation for string hashing (dotnet/coreclr#17029)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d3b818787748f09e63106b9b08d7bd6f5cd171bb
Jose Perez Rodriguez [Mon, 19 Mar 2018 18:41:58 +0000 (11:41 -0700)]
Adding running tests on Alpine for coreclr build (dotnet/coreclr#17038)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3169b78f2da0a44c8de2b285db5eeb553a7c8231
Egor Chesakov [Mon, 19 Mar 2018 18:33:59 +0000 (11:33 -0700)]
Publish x86_arm/crossgen during Linux/arm build (dotnet/coreclr#16953)
* Publish CrossCrossGen during Linux/arm build
* Update DockerTag to the image that includes two rootfs-s
Commit migrated from https://github.com/dotnet/coreclr/commit/
7aa346736a71ade9b9348336e1a66b69d6378778
Tanner Gooding [Sun, 18 Mar 2018 17:06:34 +0000 (10:06 -0700)]
Fixing the x86 ScalarUnOpTest template to no longer write out of bounds
Commit migrated from https://github.com/dotnet/coreclr/commit/
cd680d44f44269b4ed77a5a1233ac98caddf294c
Tanner Gooding [Sun, 18 Mar 2018 05:46:10 +0000 (22:46 -0700)]
Updating the x86 extract instructions to be properly listed as MR
Commit migrated from https://github.com/dotnet/coreclr/commit/
c691fe9c8a1960a7f9a78fe218763530462452e5
Tanner Gooding [Fri, 16 Mar 2018 22:31:33 +0000 (15:31 -0700)]
Regenerating the x86 HWIntrinsic tests to track each vector size separately
Commit migrated from https://github.com/dotnet/coreclr/commit/
d74772b94656ad876ff40bc52ee069dc522552c1
Tanner Gooding [Fri, 16 Mar 2018 22:30:22 +0000 (15:30 -0700)]
Updating the x86 HWIntrinsic templates to track each vector size separately
Commit migrated from https://github.com/dotnet/coreclr/commit/
48f03db99df3b7824d39a864edaab77b02020077
Tanner Gooding [Fri, 16 Mar 2018 18:33:37 +0000 (11:33 -0700)]
Updating the x86 HWIntrinsic DataTable types to assert the alignment returned is correct
Commit migrated from https://github.com/dotnet/coreclr/commit/
c06fc2a5225f73411eb70ac9d0bbc00b9ad20308
Tanner Gooding [Thu, 15 Mar 2018 10:57:53 +0000 (03:57 -0700)]
Regenerating the x86 HWIntrinsics tests to no longer have a GC hole
Commit migrated from https://github.com/dotnet/coreclr/commit/
f849dcf6bc341f12fd0583f81d88760e08316ac9
Tanner Gooding [Thu, 15 Mar 2018 10:50:44 +0000 (03:50 -0700)]
Fixing the x86 HWIntrinsic test templates to not leave a GC hole
Commit migrated from https://github.com/dotnet/coreclr/commit/
e01064aef5ae9c29d0d01bd1a6f4b0335a10213b
Vance Morrison [Mon, 19 Mar 2018 17:19:07 +0000 (10:19 -0700)]
Merge pull request dotnet/coreclr#17034 from vancem/FixPath
Use better path (fixes dotnet/coreclr#17004)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fe7e46907b73022c9a8680eee86932cef6037890
Victor "Nate" Graf [Mon, 19 Mar 2018 16:38:36 +0000 (09:38 -0700)]
Fix eventpipe rundown test with crossgen (dotnet/coreclr#16784)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8b30f80f53b8a4d5537eb53cbdcd3a34f991a3ac
Egor Chesakov [Mon, 19 Mar 2018 15:44:24 +0000 (08:44 -0700)]
Merge pull request dotnet/coreclr#16968 from echesakovMSFT/LimitFeatureUnixAMD64StructPassingWhenTargetUnixAMD64
Define FEATURE_UNIX_AMD64_STRUCT_PASSING only when target Unix/AMD64
Commit migrated from https://github.com/dotnet/coreclr/commit/
26bf1b30894591775af57e9b3a5906710ea4a9c1
Vance Morrison [Mon, 19 Mar 2018 15:25:33 +0000 (08:25 -0700)]
Use better path (fixes dotnet/coreclr#17004)
Commit migrated from https://github.com/dotnet/coreclr/commit/
09f01b3bbcff8842247dc365622d438d020e83d8
Jan Kotas [Mon, 19 Mar 2018 13:59:33 +0000 (06:59 -0700)]
Delete unused downlevel globalization support (dotnet/coreclr#17022)
Delete ENABLE_DOWNLEVEL_FOR_NLS and everything under it
Commit migrated from https://github.com/dotnet/coreclr/commit/
e7bb40f52d46671f5001012284a2f54eaa658e35
Russ Keldorph [Sat, 17 Mar 2018 22:24:30 +0000 (15:24 -0700)]
Fix BuildConfiguration casing so publishing works
Commit migrated from https://github.com/dotnet/coreclr/commit/
259006de1cb285e5c15490013289e0b214c6cb21
Vance Morrison [Sun, 18 Mar 2018 14:33:51 +0000 (07:33 -0700)]
Merge pull request dotnet/coreclr#17004 from vancem/DacTableGenFor2017
This change make DacTableGen work for VS2017
Commit migrated from https://github.com/dotnet/coreclr/commit/
4e1ec7f1dfd70d1a84fcc3282add9bdf3be115e3
Vance Morrison [Sun, 18 Mar 2018 14:31:17 +0000 (07:31 -0700)]
Review feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
d27214498a8229cc78bdff80345640435a9e185c
Jan Kotas [Sat, 17 Mar 2018 00:54:20 +0000 (17:54 -0700)]
Switch back to more performant and portable Marvin implementation
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
ba30b493466832bc264c83c21e572ffa17f5a46d
Brian Robbins [Sat, 17 Mar 2018 22:18:25 +0000 (15:18 -0700)]
Fix EventSource Test Failures in CoreFX (dotnet/coreclr#16999)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8a5464f322a9f01e4da37c349359836af548b3c0
Mike McLaughlin [Sat, 17 Mar 2018 18:12:21 +0000 (11:12 -0700)]
Add environment variable (COMPlus_EnableDiagnostics) to disable debugging and profiling. (dotnet/coreclr#16141)
This reverts commit dotnet/coreclr@
e9985126acb0f1efd7c780faac4e66bc798b73c0.
Commit migrated from https://github.com/dotnet/coreclr/commit/
828c6c3306e74d2a3c140496d3c1c0587b3f4682
Jeremy Kuhne [Sat, 17 Mar 2018 11:15:24 +0000 (04:15 -0700)]
Use Win32Marshal from CoreLib shared code (dotnet/corefxdotnet/coreclr#28161)
* Use Win32Marshal from CoreLib shared code
Fix hr issue caught by Common.Tests.
* Move string condition inside exception arguments
Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
d25e794bfd7c6c31247450cb48c4c8c561e771c1
Jan Kotas [Sat, 17 Mar 2018 14:16:35 +0000 (07:16 -0700)]
Use vectorized SpanHelpers.SequenceEqual for string equality (dotnet/coreclr#16994)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f8228fe21b87e90a7d17782a31a495a55e26fee3
Russ Keldorph [Sat, 17 Mar 2018 12:08:28 +0000 (05:08 -0700)]
Update prerelease label to preview3
Commit migrated from https://github.com/dotnet/coreclr/commit/
62eea6871d226f3b49ed8c47cde3d6a63d79bdda
mikedn [Sat, 17 Mar 2018 03:43:59 +0000 (05:43 +0200)]
Do not compute the IDF for all blocks in advance (dotnet/coreclr#15146)
InsertsPhiFunctions visits each block only once so there's no need to compute and store the IDFs for all blocks in advance. The IDF of a given block can be computed when the block is visited and discarded after that. This way a single BlkVector can be reused for all blocks.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3968088f04cd9e940be6b16983b4b17a7bf7da73
dotnet-maestro-bot [Sat, 17 Mar 2018 03:05:47 +0000 (22:05 -0500)]
Update BuildTools, CoreClr, CoreFx to preview3-02616-02, preview2-26316-09, preview2-26317-01, respectively (dotnet/coreclr#16993)
Commit migrated from https://github.com/dotnet/coreclr/commit/
de7e6a9f88fcdc9aa88acad5e630ca3550a841b0
Ahson Khan [Fri, 16 Mar 2018 18:05:14 +0000 (11:05 -0700)]
Use vectorized T=byte implementations to optimize all MemoryExtensions APIs for T != byte (dotnet/coreclr#28080)
* Adding IsTypeNumeric helper
* Add more NUint operations and use IsTypeNumeric everywhere.
* Revert addition of LangVersion 7.2
* Fix formatting
* Revert use of nuint and IsNumericType for *IndexOf* APIs
* Fix comment, undo leftover changes, and fix indentation.
* Address PR feedback - use nuint where possible.
* PR feedback - Cleanup SequenceEqual just like SequenceCompareTo
* Add new NUInt operations for netcoreapp/coreclr mirror.
* Address PR feedback
* Add T = char and T = long tests for StartsWith and EndsWith
Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
cea438a8e885cc11f96671367bebf23137f45a5a
Carol Eidt [Sat, 17 Mar 2018 01:39:02 +0000 (18:39 -0700)]
Merge pull request dotnet/coreclr#17000 from sdmaclea/PR-Enable-Arm64-Simd
[Arm64] Enable arm64 simd test
Commit migrated from https://github.com/dotnet/coreclr/commit/
5cdf8755129b79fa040b10c4d621e822346c3ab6
Ben Adams [Sat, 17 Mar 2018 01:24:16 +0000 (21:24 -0400)]
Prevent concurrent use corruption from causing infinite loops (dotnet/coreclr#16991)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f2f327d8c5bdfe0d9c93bb70d5c3e7cd162351ab
Marek Safar [Sat, 17 Mar 2018 00:58:18 +0000 (01:58 +0100)]
Updates unsafe String constructors to be consistent when handling null value (dotnet/coreclr#17002)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5a80cd2e8d7cb4d3419064a2beaf33ecdb304f45
Vance Morrison [Sat, 17 Mar 2018 00:26:21 +0000 (17:26 -0700)]
This change make DacTableGen work for VS2017
There was a issue (see https://github.com/dotnet/coreclr/issues/11305) where
a tool used in the CoreCLR build called DacTableGen requires a old version of the
msdia120.dll. The symptom is that this tool would fail with a class not registered errror.
This tool comes from a very old nuget package microsoft.dotnet.buildtools.coreclr, which
we no longer can build easly. Our guidance now is to move tools that are only used in
one repository (like this one) out of nuget packages and simply build them as part of the build.
This change makes a step in that direction. The DacTableGen code actually was already
in the CoreCLR repo, so this change
1. Fixes the source of DacTableGen so that tool no longer needs a com object to be registered
(but it DOES need msdia140.dll to be on the path. This is true for VS2017.
2. Turns on the build of DacTableGen
3. Change the build use the built DacTableGen (unless running on VS2017, in that case we use the
the version in the tool package.
4.) Remove the hack that warns people to register msdia120 (since you don't need to anymore)
There is also an unrelated addition to the docs.
This change should still work for VS2015 (because it falls back to the old DacTableGen in that case)
Finally we should move to using the Linux method of creating the DAC, and so all these tools and
their nuget package can be removed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ebdc98cf6c19e8a4f2de02e28f51048d25cbf70f
JC Aguilera [Fri, 16 Mar 2018 23:51:39 +0000 (16:51 -0700)]
Merge pull request dotnet/coreclr#16980 from jcagme/master
Move extension task at beginning and end of build def
Commit migrated from https://github.com/dotnet/coreclr/commit/
0dc6bc8f13827d0bb432df775bf4bf292eaeac61
Juan Carlos Aguilera Mendez [Fri, 16 Mar 2018 23:42:34 +0000 (16:42 -0700)]
Add task extension to test pipeline
Commit migrated from https://github.com/dotnet/coreclr/commit/
74a9377f2c0efacde7fe95982ae30a34f638e8a6
Juan Carlos Aguilera Mendez [Fri, 16 Mar 2018 23:40:12 +0000 (16:40 -0700)]
Merge branch 'master' of https://github.com/dotnet/coreclr
Commit migrated from https://github.com/dotnet/coreclr/commit/
9228200d3fa73a33761dcd3f0831aa9efe298da9
Jeremy Kuhne [Fri, 16 Mar 2018 22:49:15 +0000 (15:49 -0700)]
Put the path on IOException strings when possible (dotnet/coreclr#16998)
Remove internal only copy of DriveNotFoundException. Will create an issue
to move the implementation down from S.IO.DriveInfo.
Note that this Win32Marshal can be used directly from CoreFX, will follow up
once this flows. (e.g. remove the copy in CoreFX)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3fb9102f2050f802f3dbcae4209d449e2ea34847
Steve MacLean [Fri, 16 Mar 2018 21:11:33 +0000 (17:11 -0400)]
[Arm64] Disable broken tests dependent on dotnet/coreclr#16310
Commit migrated from https://github.com/dotnet/coreclr/commit/
3a598d14236b56e558bfb04afb6eb2ae2c3158a7
Steve MacLean [Wed, 7 Mar 2018 21:15:00 +0000 (16:15 -0500)]
[Arm64] Enable HW Intrinsic Simd tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
c42c758ce91df3473a08b16260f09ad95bf0c9a1
Sung Yoon Whang [Fri, 16 Mar 2018 18:56:24 +0000 (11:56 -0700)]
Fix test for GC.GetAllocatedBytesForCurrentThread to be more lenient with the accuracy (dotnet/coreclr#16976)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d6b2ead7f821e06b8e7bdc4a82812d1cfbc732ac
Stephen Toub [Fri, 16 Mar 2018 18:10:36 +0000 (14:10 -0400)]
Avoid allocating _IOCompletionCallback when flow is suppressed (dotnet/coreclr#16984)
This delegate was showing up in a sockets allocation trace, even though execution flow is suppressed while creating the associated PreAllocatedOverlapped.
Commit migrated from https://github.com/dotnet/coreclr/commit/
df996e2e64a88463169f523a2b5542730116b4fb
Juan Carlos Aguilera Mendez [Fri, 16 Mar 2018 16:50:50 +0000 (09:50 -0700)]
Merge branch 'master' of https://github.com/dotnet/coreclr
Commit migrated from https://github.com/dotnet/coreclr/commit/
f7823fb541745735d7566dfb376d9fd7c750c7a8
dotnet-maestro-bot [Fri, 16 Mar 2018 16:41:33 +0000 (11:41 -0500)]
Update CoreClr, CoreFx to preview2-26316-03, preview2-26316-03, respectively (dotnet/coreclr#16988)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ed49badc8baf90bca56b2df0b98eb20355d9a998
Andy Ayers [Fri, 16 Mar 2018 15:07:30 +0000 (08:07 -0700)]
JIT: fix return type mismatch inline block for literal argument (dotnet/coreclr#16966)
When we inline a method that returns one of its arguments, we need to make sure
to apply the callee's view of the argument type.
We fixed this for arguments that are caller locals in dotnet/coreclr#11218. This change applies
similar logic to handle the case where the caller passes a literal constant.
Closes dotnet/coreclr#16944.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f6213ca44958a2868d29f7ec806d24f5e84dde48
Matt Mitchell [Fri, 16 Mar 2018 15:04:23 +0000 (08:04 -0700)]
Remove tests from main pipeline.json (dotnet/coreclr#16975)
* Remove tests from main pipeline.json
Tests are now broken out into a separate json file, which means prodcon builds avoid waiting on tests.
Commit migrated from https://github.com/dotnet/coreclr/commit/
914e684fb155c53db8d33d35c4ecf108f40fca74
Viktor Hofer [Fri, 16 Mar 2018 14:18:16 +0000 (15:18 +0100)]
Fix comment in IgnoreCase CompareInfo handling.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8d99f32d3351310955d7d324fa80bf0b8b7657b1
Viktor Hofer [Fri, 16 Mar 2018 14:04:50 +0000 (15:04 +0100)]
Use managed marvin hashing for IgnoreCase comparison (dotnet/coreclr#16945)
* Use managed marvin hashing for IgnoreCase comparison
* Return rented buffer & reduce string allocation
* Move Marvin to shared partition & PR feedback
* Marvin input slicing & ToUpper optimization
* Use ToUpperInvariant instead of ToUpper
* Use ToUpperInvariant in favor of the whole manual optimization logic
* Fix typo
* Use ToUpperInvariant length for slicing
Commit migrated from https://github.com/dotnet/coreclr/commit/
956278873ebb5f055006d383e66128cfc959a123
Fei Peng [Fri, 16 Mar 2018 07:44:47 +0000 (00:44 -0700)]
Implement AVX/AVX2 InsertVector128 and ExtractVector128 intrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
781b6c6a906b35bd5210fd9f828cfafe97c26ce9
Fei Peng [Wed, 14 Mar 2018 00:02:14 +0000 (17:02 -0700)]
Implement AVX Insert/Extract helper-intrinsics in managed code
Commit migrated from https://github.com/dotnet/coreclr/commit/
be277315271ba8c60df4225310d09fa4814e6259
Fei Peng [Wed, 14 Mar 2018 00:01:59 +0000 (17:01 -0700)]
Add tests for AVX Insert/Extract helper-intrinsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
1eb0f32788f4805581e427e482b557e58dd6cca8
Fei Peng [Tue, 13 Mar 2018 05:24:40 +0000 (22:24 -0700)]
Add tests for AVX Insert/ExtractVector128
Commit migrated from https://github.com/dotnet/coreclr/commit/
eb57af5faeb71460d747fe87710b0e3d0b15b214
Fei Peng [Tue, 13 Mar 2018 00:20:42 +0000 (17:20 -0700)]
Add tests and templates for AVX2 Insert/Extract
Commit migrated from https://github.com/dotnet/coreclr/commit/
c25f8d50830be0f66cf4e90b3d9653f931675895
Adam Sitnik [Fri, 16 Mar 2018 12:25:08 +0000 (13:25 +0100)]
Add AllReady scenario to JitBench (dotnet/coreclr#16905)
* reuse MusicStoreBenchmark for AllReady scenario
* bug fix, should set JITBENCH_FRAMEWORK_VERSION, not JITBENCH_TARGET_FRAMEWORK_VERSION
* include informations from AllReady.dll
* temp: point to my fork before the https://github.com/aspnet/JitBench/pull/85 gets merged
* clone the repo and get the submodule, downloading .zip is not enough when working with GIT submodules
* fail benchmark when git command fails
* point to the updated aspnet/JitBench repo, not my fork
Commit migrated from https://github.com/dotnet/coreclr/commit/
7ee3f63601af7b78a9158be912a1428e42aa559f
Steve MacLean [Fri, 16 Mar 2018 09:51:29 +0000 (05:51 -0400)]
[Arm64/Ubuntu] Enable official builds (dotnet/coreclr#16981)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9d0e7065b788333c712a31d11fc46fe561887b66
dotnet-maestro-bot [Fri, 16 Mar 2018 03:33:36 +0000 (22:33 -0500)]
Update CoreClr, CoreFx to preview2-26315-05, preview2-26316-01, respectively (dotnet/coreclr#16970)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a847c49412d8f38a263123c036b08cb02711a6d4
Jacek Blaszczynski [Wed, 14 Mar 2018 22:06:32 +0000 (23:06 +0100)]
Convert Sse2 tests to template driven version - part 1
Commit migrated from https://github.com/dotnet/coreclr/commit/
d440b16bdcb5eb89aa68f87e32c056e4162f5e5b
Juan Carlos Aguilera Mendez [Fri, 16 Mar 2018 01:18:49 +0000 (18:18 -0700)]
Move extension task at beginning and end of build def
Commit migrated from https://github.com/dotnet/coreclr/commit/
8b54e0b93f795ba983ce2f4b99ed85769ef25d03
Atsushi Kanamori [Thu, 15 Mar 2018 13:54:58 +0000 (06:54 -0700)]
Port SequentialEqual() optimizations to ReadOnlySpan overloads (dotnet/coreclr#28073)
Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
8758f76b4e5ba6733e4f3184293414fc9182d06f
Egor Chesakov [Thu, 15 Mar 2018 20:54:42 +0000 (13:54 -0700)]
Merge pull request dotnet/coreclr#16858 from echesakovMSFT/FixGenerateEventLogCrossArchBuildFailure
Fix etmdummy.h file not found during Linux/arm crosscomponent build
Commit migrated from https://github.com/dotnet/coreclr/commit/
7dcd77c6544c97ccc0fd67615fa20dccf54ece55