platform/upstream/coreclr.git
6 years agoUpdate DockerTag to use the image from dotnet-buildtools-prereqs-docker#38 which...
Egor Chesakov [Fri, 23 Mar 2018 19:36:13 +0000 (12:36 -0700)]
Update DockerTag to use the image from dotnet-buildtools-prereqs-docker#38 which enables running x86_arm/crossgen

6 years agoMerge pull request #17133 from sdmaclea/PR-FIX-17095
Bruce Forstall [Fri, 23 Mar 2018 21:57:52 +0000 (14:57 -0700)]
Merge pull request #17133 from sdmaclea/PR-FIX-17095

[Arm64] Fix #17095

6 years agoMerge pull request #17136 from weshaggard/OptDataSouceBuildFixes
Wes Haggard [Fri, 23 Mar 2018 20:28:18 +0000 (13:28 -0700)]
Merge pull request #17136 from weshaggard/OptDataSouceBuildFixes

Fix source-build issues in optdata

6 years agoMerge pull request #17083 from BruceForstall/RemoveArmDeadCode
Bruce Forstall [Fri, 23 Mar 2018 17:47:12 +0000 (10:47 -0700)]
Merge pull request #17083 from BruceForstall/RemoveArmDeadCode

Remove arm32/arm64 dead code

6 years agoUpdate CoreClr, CoreFx to preview3-26323-05, preview3-26323-06, respectively (#17146)
dotnet-maestro-bot [Fri, 23 Mar 2018 17:28:01 +0000 (12:28 -0500)]
Update CoreClr, CoreFx to preview3-26323-05, preview3-26323-06, respectively (#17146)

6 years agoFix Path.GetTempFileName on Windows (#17148)
Stephen Toub [Fri, 23 Mar 2018 16:41:21 +0000 (12:41 -0400)]
Fix Path.GetTempFileName on Windows (#17148)

GetTempFileNameW doesn't return the required length of the buffer; it returns the unique number used in the temporary file name.  But the calling code is using that result as a length, resulting in sometimes truncated paths, and sometimes paths that aren't at all related to the original due to state left over in a pooled buffer.

6 years agoFixes StringBuilder unbounded size growth in Clear() when we use a mix of Append...
Maryam Ariyan [Fri, 23 Mar 2018 16:29:55 +0000 (09:29 -0700)]
Fixes StringBuilder unbounded size growth in Clear() when we use a mix of Append and Insert (#16926)

* Fixing Clear infinitely growing when we combine usage of Insert and Append. Fixes #27625

* Move debug code to StringBuilder.Debug.cs and Applied code review feedback

* Adding missing debug condition check

* Adding comments and moving Condition on projitems after filename

* Moving the infinite capacity growth fix to Length setter

* Removing originalCapacity and Debug.Assert

* Applying PR feedbacks

* Minor cleanup

* simplifying to single loop

* keeping just one method for ShowChunks function

6 years agoMerge pull request #17135 from CarolEidt/DevDiv544985
Carol Eidt [Fri, 23 Mar 2018 16:22:13 +0000 (09:22 -0700)]
Merge pull request #17135 from CarolEidt/DevDiv544985

ARM: correctly unassign constant double

6 years agoFix RestoreSources for optdata packages
Wes Haggard [Wed, 21 Mar 2018 23:40:34 +0000 (16:40 -0700)]
Fix RestoreSources for optdata packages

Pass unprocessed args to restore optdata step so it
can override the sources when doing restore

Handle prority as an unprocessed arg for the sync alias

6 years agoRename new Stream.Read/Write{Async} Span/Memory source/Destination arguments to buffe...
Anirudh Agnihotry [Fri, 23 Mar 2018 12:43:47 +0000 (05:43 -0700)]
Rename new Stream.Read/Write{Async} Span/Memory source/Destination arguments to buffer (#17141)

* changed to buffer

* More Common changes

* fixed

* another fix

6 years agoFix Linux/x86 FuncEvalHijack stack alignment (#17143)
Igor Kulaychuk [Fri, 23 Mar 2018 11:12:54 +0000 (14:12 +0300)]
Fix Linux/x86 FuncEvalHijack stack alignment (#17143)

6 years agoUpdate BuildTools, CoreClr, CoreFx to preview3-02622-03, preview3-26322-08, preview3...
dotnet-maestro-bot [Fri, 23 Mar 2018 06:14:05 +0000 (01:14 -0500)]
Update BuildTools, CoreClr, CoreFx to preview3-02622-03, preview3-26322-08, preview3-26323-01, respectively (#17123)

6 years agoMerge pull request #17131 from BredPet/fix_relocation
Egor Chesakov [Fri, 23 Mar 2018 03:23:56 +0000 (20:23 -0700)]
Merge pull request #17131 from BredPet/fix_relocation

Fix for #17089

6 years ago[Arm64] Fix #17095
Steve MacLean [Thu, 22 Mar 2018 20:41:33 +0000 (16:41 -0400)]
[Arm64] Fix #17095

6 years agoARM: correctly unassign constant double
Carol Eidt [Thu, 22 Mar 2018 22:05:46 +0000 (15:05 -0700)]
ARM: correctly unassign constant double

When a `RefTypeFixedReg` is encountered for a floating point register, if it is currently holding a double constant, we need to free both halves - but the current register be either half.

6 years agoFix bug for #17089
Petr Bred [Thu, 22 Mar 2018 19:20:13 +0000 (22:20 +0300)]
Fix bug for #17089

Signed-off-by: Petr Bred <bredpetr@gmail.com>
6 years agoMerge pull request #17132 from dotnet-bot/from-tfs
Brian Sullivan [Thu, 22 Mar 2018 19:51:41 +0000 (12:51 -0700)]
Merge pull request #17132 from dotnet-bot/from-tfs

Merge changes from TFS

6 years agoMerge pull request #16849 from MattGal/use-dotnetcore-build
Matt Galbraith [Thu, 22 Mar 2018 19:45:52 +0000 (12:45 -0700)]
Merge pull request #16849 from MattGal/use-dotnetcore-build

Move windows agents to DotNetCore-Build

6 years agoMerge pull request #17112 from briansull/rollback-14481
Brian Sullivan [Thu, 22 Mar 2018 19:04:43 +0000 (12:04 -0700)]
Merge pull request #17112 from briansull/rollback-14481

Rollback Stack probing change - PR #14481

6 years agofix order of Serialize for linux build (#17119)
David Mason [Thu, 22 Mar 2018 18:44:37 +0000 (11:44 -0700)]
fix order of Serialize for linux build (#17119)

Fix for #17116. The build would work fine for dynamic events on Windows, but on Linux clang always takes the overloads with <Head, Tail...> until there are no arguments, then complains about no overload takes 0 arguments.

6 years agoMove windows agents to DotNetCore-Build to see if we can build in VS2017-only environment
Matt Galbraith [Sat, 10 Feb 2018 01:57:35 +0000 (17:57 -0800)]
Move windows agents to DotNetCore-Build to see if we can build in VS2017-only environment

6 years agoAdd emitIns_AR_R_I for vextracti/f128
Fei Peng [Wed, 21 Mar 2018 21:51:28 +0000 (14:51 -0700)]
Add emitIns_AR_R_I for vextracti/f128

6 years agofix Set tests on 32-bit platforms
Fei Peng [Tue, 20 Mar 2018 18:40:39 +0000 (11:40 -0700)]
fix Set tests on 32-bit platforms

6 years agoImplement SetAllVector256
Fei Peng [Mon, 19 Mar 2018 22:24:22 +0000 (15:24 -0700)]
Implement SetAllVector256

6 years agoImplement AVX SetVector256
Fei Peng [Mon, 19 Mar 2018 07:17:31 +0000 (00:17 -0700)]
Implement AVX SetVector256

6 years agoOptimize AVX Insert/Extract intrinsics
Fei Peng [Mon, 19 Mar 2018 07:16:34 +0000 (00:16 -0700)]
Optimize AVX Insert/Extract intrinsics

6 years agoAdd more tests for AVX Insert/Extract intrinsics
Fei Peng [Mon, 19 Mar 2018 07:15:02 +0000 (00:15 -0700)]
Add more tests for AVX Insert/Extract intrinsics

6 years ago[ARM64] Fix UMEntryThunkCode::Poison method (#17122)
Konstantin Baladurin [Thu, 22 Mar 2018 14:02:43 +0000 (17:02 +0300)]
[ARM64] Fix UMEntryThunkCode::Poison method (#17122)

Fix hex value of the instruction ldp x16, x0, [x12]

6 years agoUpdate BuildTools, CoreClr to preview3-02622-01, preview3-26322-01, respectively...
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 (#17105)

6 years agoFix incorrect array dereference. (#17113)
Brian Robbins [Thu, 22 Mar 2018 04:34:24 +0000 (21:34 -0700)]
Fix incorrect array dereference. (#17113)

6 years agoUpdate CODE_OWNERS.TXT (#17114)
Noah Falk [Thu, 22 Mar 2018 02:12:28 +0000 (19:12 -0700)]
Update CODE_OWNERS.TXT (#17114)

Updating owner on the profiler

6 years agoRename {Try}Read/WriteMachineEndian to just {Try}Read/Write (#17106)
Ahson Khan [Thu, 22 Mar 2018 01:03:02 +0000 (18:03 -0700)]
Rename {Try}Read/WriteMachineEndian to just {Try}Read/Write (#17106)

6 years agoRollback Stack probing change - PR #14481
Brian Sullivan [Thu, 22 Mar 2018 00:46:10 +0000 (17:46 -0700)]
Rollback Stack probing change - PR #14481

6 years agoRemove dependency on libunwind (#17094)
Jan Vorlicek [Thu, 22 Mar 2018 00:11:59 +0000 (01:11 +0100)]
Remove dependency on libunwind (#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

6 years agoDisable legacy_backend jits
dotnet-bot [Wed, 21 Mar 2018 22:49:46 +0000 (15:49 -0700)]
Disable legacy_backend jits

[tfs-changeset: 1692827]

6 years agoUpdate debugging doc on lldb versions and disabling managed debugging (#17107)
Mike McLaughlin [Wed, 21 Mar 2018 22:43:15 +0000 (15:43 -0700)]
Update debugging doc on lldb versions and disabling managed debugging (#17107)

6 years agoImprove DateTime{Offset} "r" and "o" formatting performance (#17092)
Stephen Toub [Wed, 21 Mar 2018 21:35:56 +0000 (17:35 -0400)]
Improve DateTime{Offset} "r" and "o" formatting performance (#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.

6 years agoAdd More Process Information to EventPipe Traces (#17080)
Brian Robbins [Wed, 21 Mar 2018 20:31:04 +0000 (13:31 -0700)]
Add More Process Information to EventPipe Traces (#17080)

6 years agoFix strings from being concatenated (#17040)
Frank Gambino [Wed, 21 Mar 2018 20:08:00 +0000 (16:08 -0400)]
Fix strings from being concatenated (#17040)

6 years agonull terminate the converted LPStr at the right index (#17079)
Jeff Schwartz [Wed, 21 Mar 2018 20:07:00 +0000 (13:07 -0700)]
null terminate the converted LPStr at the right index (#17079)

6 years agoAdd missing license header to test py and cs files (#17102)
Mike McLaughlin [Wed, 21 Mar 2018 19:42:49 +0000 (12:42 -0700)]
Add missing license header to test py and cs files (#17102)

Issue #13471

6 years agoMoving Span APIs that allow skipping visibility checks to MemoryMarshal (#17087)
Ahson Khan [Wed, 21 Mar 2018 19:34:48 +0000 (12:34 -0700)]
Moving Span APIs that allow skipping visibility checks to MemoryMarshal (#17087)

6 years agoSmall tweaks to Dict asm size (#17096)
Ben Adams [Wed, 21 Mar 2018 19:33:56 +0000 (19:33 +0000)]
Small tweaks to Dict asm size (#17096)

6 years agoFixed #16564: the test objmonhelper hangs forever with GCStress=0x3
Sergey Ignatov [Wed, 21 Mar 2018 11:40:42 +0000 (14:40 +0300)]
Fixed #16564: the test objmonhelper hangs forever with GCStress=0x3

6 years agoChange directory in AgentTools script
JC Aguilera [Wed, 21 Mar 2018 16:14:17 +0000 (09:14 -0700)]
Change directory in AgentTools script

6 years agoUpdate BuildTools, CoreClr, CoreFx to preview3-02620-10, preview3-26321-06, preview3...
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 (#17012)

6 years agoAvoid allocating when SuppressFlow'ing in default ExecutionContext (#17081)
Stephen Toub [Wed, 21 Mar 2018 08:27:15 +0000 (04:27 -0400)]
Avoid allocating when SuppressFlow'ing in default ExecutionContext (#17081)

* Avoid allocating when SuppressFlow'ing in default ExecutionContext

* Address PR feedback

6 years agoAPI consistency for System.Memory APIs (argument names) (#28160)
Ahson Khan [Wed, 21 Mar 2018 05:27:20 +0000 (22:27 -0700)]
API consistency for System.Memory APIs (argument names) (#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>
6 years agoRemove arm32/arm64 dead code
Bruce Forstall [Wed, 21 Mar 2018 03:15:31 +0000 (20:15 -0700)]
Remove arm32/arm64 dead code

Code in `IsContainableImmed()` appears to try to mark as contained
a floating-point 0.0 in comparison instructions. It doesn't work,
as comparison nodes have TYP_INT, and the zero comparison check
doesn't work for 0.0.

Remove the code, and add a tracking issue to implement it correctly.

6 years agoUpdated steps in 'Viewing JIT Dumps' to see optimized code (#17077)
Günther Foidl [Wed, 21 Mar 2018 00:56:41 +0000 (01:56 +0100)]
Updated steps in 'Viewing JIT Dumps' to see optimized code (#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

6 years agoMerge pull request #16955 from fiigii/moreavx
Carol Eidt [Wed, 21 Mar 2018 00:01:14 +0000 (17:01 -0700)]
Merge pull request #16955 from fiigii/moreavx

Implement more AVX/AVX2 intrinsics

6 years agoFix type for lvaCachedGenericContextArgOffs (#14260)
Kyungwoo Lee [Tue, 20 Mar 2018 22:46:15 +0000 (15:46 -0700)]
Fix type for lvaCachedGenericContextArgOffs (#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.

6 years agoPort System.Memory performance improvements to Convert.TryFromBase64Chars (#17033)
Atsushi Kanamori [Tue, 20 Mar 2018 21:14:41 +0000 (14:14 -0700)]
Port System.Memory performance improvements to Convert.TryFromBase64Chars (#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

6 years agoFix header inclusion order; avoids use of RCWCache before definition (#17067)
Andrew Marino [Tue, 20 Mar 2018 20:31:17 +0000 (13:31 -0700)]
Fix header inclusion order; avoids use of RCWCache before definition (#17067)

6 years agoFix build break
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>
6 years agoMerge pull request #17056 from BruceForstall/Arm64LclFldContainedZero
Bruce Forstall [Tue, 20 Mar 2018 16:00:19 +0000 (09:00 -0700)]
Merge pull request #17056 from BruceForstall/Arm64LclFldContainedZero

Allow arm64 to contain zero in GT_STORE_LCL_FLD

6 years agoJIT: remove boxing for interface call to shared generic struct (#17006)
Andy Ayers [Tue, 20 Mar 2018 15:36:14 +0000 (08:36 -0700)]
JIT: remove boxing for interface call to shared generic struct (#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 #16982.

6 years agoFix major System.Memory performance regression on .NET Framework x86 (#28179)
Jan Kotas [Mon, 19 Mar 2018 21:10:18 +0000 (14:10 -0700)]
Fix major System.Memory performance regression on .NET Framework x86 (#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>
6 years agoMove CompareInfo.* to shared CoreLib partition (#17062)
Jan Kotas [Tue, 20 Mar 2018 10:53:06 +0000 (03:53 -0700)]
Move CompareInfo.* to shared CoreLib partition (#17062)

6 years agoMove EncodingTable and CodePageDataItem to System.Text namespace (#17061)
Jan Kotas [Tue, 20 Mar 2018 10:34:35 +0000 (03:34 -0700)]
Move EncodingTable and CodePageDataItem to System.Text namespace (#17061)

This is the more logical namespace for it and it matches the namespace that these live under in CoreRT.

6 years agoImplement more AVX/AVX2 intrinsics
Fei [Tue, 20 Mar 2018 10:07:59 +0000 (02:07 -0800)]
Implement more AVX/AVX2 intrinsics

6 years agoAdd tests for AVX/AVX2 intrinsics
Fei [Tue, 20 Mar 2018 10:06:21 +0000 (02:06 -0800)]
Add tests for AVX/AVX2 intrinsics

6 years agoFix copy&paste bug (#17059)
Jan Kotas [Tue, 20 Mar 2018 04:16:23 +0000 (21:16 -0700)]
Fix copy&paste bug (#17059)

6 years agoFix unloading of images mapped by PAL (#17053)
Sven Boemer [Tue, 20 Mar 2018 03:24:01 +0000 (20:24 -0700)]
Fix unloading of images mapped by PAL (#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

6 years agoUse flat layout for GetAssemblyName (#17052)
Sven Boemer [Tue, 20 Mar 2018 03:23:39 +0000 (20:23 -0700)]
Use flat layout for GetAssemblyName (#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.

6 years agoAllow arm64 to contain zero in GT_STORE_LCL_FLD
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.

6 years agoAdd new ICLRDebuggingLibraryProvider2 interface for OpenVirtualProces that works...
Mike McLaughlin [Tue, 20 Mar 2018 01:26:59 +0000 (18:26 -0700)]
Add new ICLRDebuggingLibraryProvider2 interface for OpenVirtualProces that works on Linux (#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.

6 years agoMerge pull request #17049 from briansull/fix-fgInstrumentMethod
Brian Sullivan [Tue, 20 Mar 2018 00:54:45 +0000 (17:54 -0700)]
Merge pull request #17049 from briansull/fix-fgInstrumentMethod

Fix for fgInstrumentMethod

6 years agoJIT: tolerate nonzero constant byrefs in impCheckForNullPointer (#17042)
Andy Ayers [Tue, 20 Mar 2018 00:28:51 +0000 (17:28 -0700)]
JIT: tolerate nonzero constant byrefs in impCheckForNullPointer (#17042)

With the advent of #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 #17008.

6 years agodelete unused debug arg from genChangeLife and compChangeLife. (#17041)
Sergey Andreenko [Mon, 19 Mar 2018 22:08:09 +0000 (15:08 -0700)]
delete unused debug arg from genChangeLife and compChangeLife. (#17041)

* delete unused debug arg from genChangeLife(VARSET_VALARG_TP

* remove unused debug arg from compChangeLife

6 years agoFix jit-format
Brian Sullivan [Mon, 19 Mar 2018 22:04:54 +0000 (15:04 -0700)]
Fix jit-format

6 years agoRemove obselete buildtests (#17050)
Matt Mitchell [Mon, 19 Mar 2018 21:44:59 +0000 (14:44 -0700)]
Remove obselete buildtests (#17050)

BuildTests definition now lives under buildpipeline\tests\

6 years agoFix for fgInstrumentMethod
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 #14640

6 years agoFix ProjectN build break and work around MCG bug (dotnet/corert#5576)
Michal Strehovský [Mon, 19 Mar 2018 18:08:34 +0000 (19:08 +0100)]
Fix ProjectN build break and work around MCG bug (dotnet/corert#5576)

Unblocks integration to TFS.

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoSwitch over to managed Marvin implementation for string hashing (#17029)
Jan Kotas [Mon, 19 Mar 2018 19:51:33 +0000 (12:51 -0700)]
Switch over to managed Marvin implementation for string hashing (#17029)

6 years agoAdding running tests on Alpine for coreclr build (#17038)
Jose Perez Rodriguez [Mon, 19 Mar 2018 18:41:58 +0000 (11:41 -0700)]
Adding running tests on Alpine for coreclr build (#17038)

6 years agoPublish x86_arm/crossgen during Linux/arm build (#16953)
Egor Chesakov [Mon, 19 Mar 2018 18:33:59 +0000 (11:33 -0700)]
Publish x86_arm/crossgen during Linux/arm build (#16953)

* Publish CrossCrossGen during Linux/arm build
* Update DockerTag to the image that includes two rootfs-s

6 years agoFixing the x86 ScalarUnOpTest template to no longer write out of bounds
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

6 years agoUpdating the x86 extract instructions to be properly listed as MR
Tanner Gooding [Sun, 18 Mar 2018 05:46:10 +0000 (22:46 -0700)]
Updating the x86 extract instructions to be properly listed as MR

6 years agoRegenerating the x86 HWIntrinsic tests to track each vector size separately
Tanner Gooding [Fri, 16 Mar 2018 22:31:33 +0000 (15:31 -0700)]
Regenerating the x86 HWIntrinsic tests to track each vector size separately

6 years agoUpdating the x86 HWIntrinsic templates to track each vector size separately
Tanner Gooding [Fri, 16 Mar 2018 22:30:22 +0000 (15:30 -0700)]
Updating the x86 HWIntrinsic templates to track each vector size separately

6 years agoUpdating the x86 HWIntrinsic DataTable types to assert the alignment returned is...
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

6 years agoRegenerating the x86 HWIntrinsics tests to no longer have a GC hole
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

6 years agoFixing the x86 HWIntrinsic test templates to not leave a GC hole
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

6 years agoMerge pull request #17034 from vancem/FixPath
Vance Morrison [Mon, 19 Mar 2018 17:19:07 +0000 (10:19 -0700)]
Merge pull request #17034 from vancem/FixPath

Use better path (fixes #17004)

6 years agoFix eventpipe rundown test with crossgen (#16784)
Victor "Nate" Graf [Mon, 19 Mar 2018 16:38:36 +0000 (09:38 -0700)]
Fix eventpipe rundown test with crossgen (#16784)

6 years agoMerge pull request #16968 from echesakovMSFT/LimitFeatureUnixAMD64StructPassingWhenTa...
Egor Chesakov [Mon, 19 Mar 2018 15:44:24 +0000 (08:44 -0700)]
Merge pull request #16968 from echesakovMSFT/LimitFeatureUnixAMD64StructPassingWhenTargetUnixAMD64

Define FEATURE_UNIX_AMD64_STRUCT_PASSING only when target Unix/AMD64

6 years agoUse better path (fixes #17004)
Vance Morrison [Mon, 19 Mar 2018 15:25:33 +0000 (08:25 -0700)]
Use better path (fixes #17004)

6 years agoDelete unused downlevel globalization support (#17022)
Jan Kotas [Mon, 19 Mar 2018 13:59:33 +0000 (06:59 -0700)]
Delete unused downlevel globalization support (#17022)

Delete ENABLE_DOWNLEVEL_FOR_NLS and everything under it

6 years agoFix BuildConfiguration casing so publishing works
Russ Keldorph [Sat, 17 Mar 2018 22:24:30 +0000 (15:24 -0700)]
Fix BuildConfiguration casing so publishing works

6 years agoMerge pull request #17004 from vancem/DacTableGenFor2017
Vance Morrison [Sun, 18 Mar 2018 14:33:51 +0000 (07:33 -0700)]
Merge pull request #17004 from vancem/DacTableGenFor2017

This change make DacTableGen work for VS2017

6 years agoReview feedback
Vance Morrison [Sun, 18 Mar 2018 14:31:17 +0000 (07:31 -0700)]
Review feedback

6 years agoSwitch back to more performant and portable Marvin implementation
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>
6 years agoFix EventSource Test Failures in CoreFX (#16999)
Brian Robbins [Sat, 17 Mar 2018 22:18:25 +0000 (15:18 -0700)]
Fix EventSource Test Failures in CoreFX (#16999)

6 years agoAdd environment variable (COMPlus_EnableDiagnostics) to disable debugging and profili...
Mike McLaughlin [Sat, 17 Mar 2018 18:12:21 +0000 (11:12 -0700)]
Add environment variable (COMPlus_EnableDiagnostics) to disable debugging and profiling. (#16141)

This reverts commit e9985126acb0f1efd7c780faac4e66bc798b73c0.

6 years agoUse Win32Marshal from CoreLib shared code (dotnet/corefx#28161)
Jeremy Kuhne [Sat, 17 Mar 2018 11:15:24 +0000 (04:15 -0700)]
Use Win32Marshal from CoreLib shared code (dotnet/corefx#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>
6 years agoUse vectorized SpanHelpers.SequenceEqual for string equality (#16994)
Jan Kotas [Sat, 17 Mar 2018 14:16:35 +0000 (07:16 -0700)]
Use vectorized SpanHelpers.SequenceEqual for string equality (#16994)

6 years agoUpdate prerelease label to preview3
Russ Keldorph [Sat, 17 Mar 2018 12:08:28 +0000 (05:08 -0700)]
Update prerelease label to preview3

6 years agoDo not compute the IDF for all blocks in advance (#15146)
mikedn [Sat, 17 Mar 2018 03:43:59 +0000 (05:43 +0200)]
Do not compute the IDF for all blocks in advance (#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.

6 years agoUpdate BuildTools, CoreClr, CoreFx to preview3-02616-02, preview2-26316-09, preview2...
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 (#16993)