Wes Haggard [Thu, 9 Nov 2017 17:29:23 +0000 (09:29 -0800)]
Merge pull request #14882 from 4creators/cleanall
[Infrastructure] Improve clean.{cmd|sh} by adding git clean -xdf cleanup step, unifying implementation with corefx and adding VBCScompiler.exe kill logic and
Vance Morrison [Tue, 7 Nov 2017 19:07:39 +0000 (11:07 -0800)]
Merge pull request dotnet/corefx#25092 from brianrob/missing_define
Add PLATFORM_WINDOWS define for MDT EventSource package
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Michelle McDaniel [Thu, 9 Nov 2017 14:44:01 +0000 (06:44 -0800)]
Remove Linux perf from pr pipeline job (#14943)
* Remove Linux perf from pr pipeline job
We don't have a lot of linux perf machines and the sheer number of PR
jobs is causing them to be overloaded, so the perf leg is taking too
long. Disable them for prs for now until we can increase capacity.
* Disable baseline jobs
Jarret Shook [Thu, 9 Nov 2017 06:57:59 +0000 (22:57 -0800)]
Merge pull request #14954 from dotnet/revert-14722-arm64_windows_nt_rework
Revert "Rework Arm64 Windows jobs to flow jobs"
Jarret Shook [Thu, 9 Nov 2017 06:56:46 +0000 (22:56 -0800)]
Revert "Rework Arm64 Windows jobs to flow jobs"
Jarret Shook [Thu, 9 Nov 2017 05:50:32 +0000 (21:50 -0800)]
Merge pull request #14722 from jashook/arm64_windows_nt_rework
Rework Arm64 Windows jobs to flow jobs
jashook [Fri, 27 Oct 2017 18:22:19 +0000 (11:22 -0700)]
Rework Arm64 Windows jobs to flow jobs
This drops our dependency on the internal Arm64CI
Bruce Forstall [Thu, 9 Nov 2017 05:27:01 +0000 (21:27 -0800)]
[RyuJIT/arm32] Fix GC hole in address mode generation requiring temps (#14949)
* [RyuJIT/arm32] Fix GC hole in address mode generation requiring temps
In cases requiring a temp register to compute a portion of an LEA,
where the partial computation involves a GCREF/BYREF base register,
the temp register must be marked as a BYREF, so it can get
updated during a GC.
This fixes a case like this:
```
add r2, r0, r1 LSL 2
ldr r0, [r2+24]
```
where `r2` needs to be marked BYREF.
Related to #14856.
* Formatting
Stephen Toub [Thu, 9 Nov 2017 04:19:46 +0000 (23:19 -0500)]
Merge pull request #14906 from stephentoub/add_memory_string
Add string support to ReadOnlyMemory<char>
Bruce Forstall [Thu, 9 Nov 2017 02:14:17 +0000 (18:14 -0800)]
Merge pull request #14918 from BruceForstall/NoLegacyUnsafeCpBlk
Don't allow unsafe CpBlk for legacy backend
Carol Eidt [Thu, 9 Nov 2017 01:12:45 +0000 (17:12 -0800)]
Merge pull request #14935 from sdmaclea/PR-ARM64-SIMD-genCodeForLclFld
[ARM64] SIMD genCodeForLclFld
Stephen Toub [Thu, 9 Nov 2017 01:02:50 +0000 (20:02 -0500)]
Add foreach support to Span<T> and ReadOnlySpan<T> (#14922)
Adds a ref struct Enumerator, and a corresponding GetEnumerator method to each.
Brian Sullivan [Wed, 8 Nov 2017 23:29:30 +0000 (15:29 -0800)]
Merge pull request #14912 from briansull/add-b124443
Added missing JIT test V1-M15-SP2/b124443/b124443.cs
Ahson Khan [Wed, 8 Nov 2017 22:29:51 +0000 (14:29 -0800)]
Adding placeholder Span debugger proxy (#14749)
* Adding placeholder Span debugger proxy.
* Remove unnecessary unsafe keyword.
José Rivero [Wed, 8 Nov 2017 22:09:14 +0000 (14:09 -0800)]
Small number of bug fixes. (#14900)
- Added stability prefix to the scenario benchmark (JitBench)
- Specify output directory to the `run-xunit-perf.cmd` script and avoid the extra step to xcopy files to the archive folder.
- Added a command line parser class to the illink scenario, and changed its behavior where it used to fail when a new command line option passed to xUnit was not recognized.
- Save the output log of the tests into the sandbox-logs folder.
- Updating the label of the machine pool used by the illink scenario
Wes Haggard [Wed, 8 Nov 2017 21:48:12 +0000 (13:48 -0800)]
Merge pull request #14942 from jcagme/master
Adding IsPublic to CreateAzureContainer
Juan Carlos Aguilera Mendez [Wed, 8 Nov 2017 21:44:48 +0000 (13:44 -0800)]
Adding IsPublic to CreateAzureContainer
Karthik Rajasekaran [Wed, 8 Nov 2017 21:44:35 +0000 (13:44 -0800)]
Change Sym publish to use UnzipSymbolPackagesForPublish (#14941)
Jan Kotas [Wed, 8 Nov 2017 21:03:58 +0000 (13:03 -0800)]
Add missing license header (#14936)
Karthik Rajasekaran [Wed, 8 Nov 2017 20:24:39 +0000 (12:24 -0800)]
Increase retry attempts in publish (#14940)
Karthik Rajasekaran [Wed, 8 Nov 2017 20:06:29 +0000 (12:06 -0800)]
Pass in property SkipCreateWindowsPdbsFromPortablePdbs to fix (#14939)
Karthik Rajasekaran [Wed, 8 Nov 2017 19:54:33 +0000 (11:54 -0800)]
Remove RelativePath from Publish (#14938)
Brian Sullivan [Wed, 8 Nov 2017 00:30:21 +0000 (16:30 -0800)]
Added missing test JIT/Regression/CLR-x86-JIT/V1-M15-SP2/b124443/b124443.cs
Also added an IL version of this test for regression repro on CoreCLR
Carol Eidt [Wed, 8 Nov 2017 19:13:15 +0000 (11:13 -0800)]
Merge pull request #14928 from sdmaclea/PR-ARM64-SIMD-genPutArgStk
[Arm64] SIMD genPutArgStk
JC Aguilera [Wed, 8 Nov 2017 18:59:12 +0000 (10:59 -0800)]
Merge pull request #14937 from jcagme/master
Updating BuildTools version
Juan Carlos Aguilera Mendez [Wed, 8 Nov 2017 18:39:38 +0000 (10:39 -0800)]
Updating BuildTools version
Steve MacLean [Fri, 3 Nov 2017 17:28:38 +0000 (13:28 -0400)]
[ARM64] SIMD genCodeForLclFld
Carol Eidt [Wed, 8 Nov 2017 17:37:43 +0000 (09:37 -0800)]
Merge pull request #14861 from sdmaclea/PR-ARM64-SIMD-genFnPrologCalleeRegArgs
[Arm64] SIMD genFnPrologCalleeRegArgs
Karthik Rajasekaran [Wed, 8 Nov 2017 17:28:47 +0000 (09:28 -0800)]
Remove ConfigurationGroup from Publish Symbols (#14931)
Jacek Blaszczynski [Wed, 8 Nov 2017 16:57:57 +0000 (17:57 +0100)]
Update clean.sh script to reflect changes introduced in clean.cmd, unify messages and functionality
Andy Ayers [Wed, 8 Nov 2017 16:48:49 +0000 (08:48 -0800)]
JIT: make suitably optimistic prejit inline assessments (#14850)
When prejitting, the jit assesses whether each root method is a potential
inline candidate for any possible caller. Methods deemed un-inlinable in any
caller are marked in the runtime as "noinline" to save the jit some work
later on when it sees calls to these methods.
This assessment was too conservative and led to prejit-ordering dependences
for inlines. It also meant that prejitting was missing some inlines that
would have happened had we not done the prejit root assessment.
This change removes some of the prejit observation blockers. These mostly
will enable more prejit methods to become candidates. We also now track when
a method argument reaches a test.
When we are assessing profitability for a prejit root, assume the call site
best possible case.
Also, update the inline XML to capture the prejit assessments.
This increases the number of inlines considered and performed when prejitting
and will also lead to slightly more inlining when jitting. However we do not
expect a large througput impact when jitting -- the main impact of this change
is that inlining when prejitting is now just as aggressive as inlining when
jitting, and the decisions no longer depend on the order in which methods are
prejitted.
Closes #14441.
Closes #3482.
Steve MacLean [Mon, 6 Nov 2017 21:59:42 +0000 (16:59 -0500)]
[Arm64] SIMD genPutArgStk
Stephen Toub [Wed, 8 Nov 2017 15:01:50 +0000 (10:01 -0500)]
Add MemoryMarshal.AsMemory
Stephen Toub [Tue, 7 Nov 2017 22:00:08 +0000 (17:00 -0500)]
Add string support to ReadOnlyMemory<char>
Jacek Blaszczynski [Wed, 8 Nov 2017 14:11:18 +0000 (15:11 +0100)]
Refactor clean.cmd based on corefx implementation
clean.cmd supports removal of bin dir, repo-local nuget packeges
directory and user-local nuget packages directory. In addition it
is possible to clean repo using git clean -xdf command by passing
-all command line switch to clean.cmd. In addition logic supporting
killing of VBCScompiler.exe process is added
Jacek Blaszczynski [Wed, 8 Nov 2017 12:01:49 +0000 (13:01 +0100)]
Merge branch 'master' of https://github.com/dotnet/coreclr into cleanall
Karthik Rajasekaran [Wed, 8 Nov 2017 09:09:39 +0000 (01:09 -0800)]
fix symbol sync (#14925)
Brian Sullivan [Wed, 8 Nov 2017 08:43:22 +0000 (00:43 -0800)]
Merge pull request #14911 from briansull/fix-desktop-warn
Fix warning about signed/unsigned mismatch in new assert
Brian Sullivan [Wed, 8 Nov 2017 08:42:49 +0000 (00:42 -0800)]
Merge pull request #14913 from briansull/retail-fix
Fix desktop retail build break
Karthik Rajasekaran [Wed, 8 Nov 2017 07:48:57 +0000 (23:48 -0800)]
Fix glob paths for nupkgs in publish (#14924)
Karthik Rajasekaran [Wed, 8 Nov 2017 05:06:32 +0000 (21:06 -0800)]
Download pkg and symbolpkg flat (#14919)
JC Aguilera [Wed, 8 Nov 2017 04:13:55 +0000 (20:13 -0800)]
Merge pull request #14896 from dotnet-maestro-bot/master-UpdateDependencies
Update BuildTools, CoreFx, PgoData to prerelease-02207-02, preview1-25907-04, master-
20171107-0019, respectively (master)
Roman Artemev [Wed, 8 Nov 2017 03:35:49 +0000 (19:35 -0800)]
Fixed trash register usage at PollGC helper (#14347)
* Fixed trash register usage at PollGC helper
Bruce Forstall [Wed, 8 Nov 2017 03:03:24 +0000 (19:03 -0800)]
Don't allow unsafe CpBlk for legacy backend
The arm32 legacy backend does not implement the code to disable/re-enable
GC interruptibility based on the gtBlkOpGcUnsafe flag. So, disable
that mode of OBJ to BLK morphing.
Fixes an arm32 legacy backend GCStress=C case in #14856.
Brian Sullivan [Wed, 8 Nov 2017 00:59:11 +0000 (16:59 -0800)]
Fix warning about signed/unsigned mismatch in complex assert
Brian Sullivan [Wed, 8 Nov 2017 01:30:39 +0000 (17:30 -0800)]
Fix desktop retail build break
error C2220: warning treated as error -
from jit\codegencommon.cpp(11228): warning C4702: unreachable code
Bruce Forstall [Wed, 8 Nov 2017 00:22:25 +0000 (16:22 -0800)]
Merge pull request #14908 from BruceForstall/AddNoSimdTesting
Add `COMPlus_FeatureSIMD=0` testing
Brian Sullivan [Wed, 8 Nov 2017 00:16:55 +0000 (16:16 -0800)]
Merge pull request #14899 from mikedn/rc-fix
Make sure that Limit::vn is initialized
Carol Eidt [Wed, 8 Nov 2017 00:04:14 +0000 (16:04 -0800)]
Merge pull request #14883 from sdmaclea/PR-ARM64-SIMD-misc-varTypeIsStruct
[Arm64] SIMD miscellaneous varTypeIsStruct
Jan Kotas [Tue, 7 Nov 2017 23:19:30 +0000 (15:19 -0800)]
Delete dead code (#14901)
dotnet-maestro-bot [Tue, 7 Nov 2017 23:18:52 +0000 (15:18 -0800)]
Update BuildTools, CoreFx, PgoData to prerelease-02207-02, preview1-25907-04, master-
20171107-0019, respectively
Bruce Forstall [Tue, 7 Nov 2017 22:55:34 +0000 (14:55 -0800)]
Add `COMPlus_FeatureSIMD=0` testing
Carol Eidt [Tue, 7 Nov 2017 22:12:33 +0000 (14:12 -0800)]
Merge pull request #14887 from sdmaclea/PR-ARM64-genSIMDIntrinsicNarrow-Widen
[Arm64] genSIMDIntrinsicNarrow/Widen
Steve MacLean [Tue, 31 Oct 2017 21:29:42 +0000 (17:29 -0400)]
[Arm64] SIMD miscellaneous varTypeIsStruct
Carol Eidt [Tue, 7 Nov 2017 21:13:30 +0000 (13:13 -0800)]
Merge pull request #14853 from sdmaclea/PR-ARM64-SIMD-applyCalleeSaveHeuristics
[Arm64] SIMD applyCalleeSaveHeuristics
Matt Galbraith [Tue, 7 Nov 2017 20:44:07 +0000 (12:44 -0800)]
Merge pull request #14904 from dotnet/MattGal-patch-1
Fix Conditional Task Expressions
Matt Galbraith [Tue, 7 Nov 2017 20:36:14 +0000 (12:36 -0800)]
Fix Conditional Task Expressions
Other conditions in the folder look OK.
Tom Deseyn [Tue, 7 Nov 2017 19:10:10 +0000 (20:10 +0100)]
Remove XplatEventLogger::IsEventLogging where possible (#14706)
Bruce Forstall [Tue, 7 Nov 2017 18:41:18 +0000 (10:41 -0800)]
Merge pull request #14881 from sdmaclea/PR-ARM64-SIMD-ContainCheckStoreLoc
[Arm64] SIMD ContainCheckStoreLoc
Bruce Forstall [Tue, 7 Nov 2017 18:39:49 +0000 (10:39 -0800)]
Merge pull request #14879 from sdmaclea/PR-ARM64-SIMD-ins_Move_Extend
[ARM64] SIMD ins_Move_Extend
Mike Danes [Tue, 7 Nov 2017 18:38:58 +0000 (20:38 +0200)]
Make sure that Limit::vn is initialized
There is code in RangeCheck::MergeEdgeAssertions that checks the limit's vn even if the limit type is keConstant.
Wes Haggard [Tue, 7 Nov 2017 18:34:02 +0000 (10:34 -0800)]
Always attempt to create container to ensure it exists
Wes Haggard [Tue, 7 Nov 2017 17:46:31 +0000 (09:46 -0800)]
Fix RelativePath and item metadata in publishing project
Steve MacLean [Fri, 3 Nov 2017 17:08:48 +0000 (13:08 -0400)]
[Arm64] SIMD genFnPrologCalleeRegArgs
Tanner Gooding [Tue, 7 Nov 2017 16:24:28 +0000 (08:24 -0800)]
Merge pull request #14287 from tannergooding/benchmarks-game
Adding the new fastest mandelbrot implementation to benchmarks-game.
Steve MacLean [Fri, 3 Nov 2017 15:20:13 +0000 (11:20 -0400)]
[Arm64] SIMD applyCalleeSaveHeuristics
Jan Kotas [Tue, 7 Nov 2017 15:05:22 +0000 (07:05 -0800)]
Delete AllTestProjects.sln (#14894)
Fixes #14074
Stephen Toub [Tue, 7 Nov 2017 13:53:25 +0000 (08:53 -0500)]
Temporarily add back old TryParse signatures (#14893)
My previous change updated the primitive TryParse signatures based on
the new design, but until corefx consumes that change, live corefx bits
won't work with the latest coreclr bits. Until it can be consumed, I'm
putting back the old signatures as well.
Joseph Tremoulet [Tue, 7 Nov 2017 13:09:01 +0000 (08:09 -0500)]
Merge pull request #14415 from mikedn/rc-cleanup
RangeCheck cleanup
Carol Eidt [Tue, 7 Nov 2017 06:09:09 +0000 (22:09 -0800)]
Merge pull request #14891 from CarolEidt/Fix14626
ARM64: Fix two register selection issues
Andy Ayers [Tue, 7 Nov 2017 03:43:49 +0000 (19:43 -0800)]
Add test case for jit dup stloc optimization (#14803)
See #14784 for details.
Wes Haggard [Mon, 6 Nov 2017 23:46:20 +0000 (15:46 -0800)]
Fix the flat publishing to blob feed
Sergey Andreenko [Tue, 7 Nov 2017 00:38:05 +0000 (16:38 -0800)]
Delete OldStyleClearD. (#14874)
* Delete OldStyleClearD from flowgraph
BlockSetOps::Assign requires sets to have the same size, there is no an
additional risk to use ClearD then.
* delete OldStyleClearD from regalloc
regalloc doesn't create new local variables and doesn't change epoch.
* Delete OldStyleClearD from copyprop
CopyProp doesn't create new vars.
Also `VarSetOps::Assign(this, compCurLife, block->bbLiveIn); ` before
the loop requires epoch to be the same.
* Delete OldStyleClearD from assertionpop
Assertion prop doesn't change epoch.
* Delete OldStyleClearD from the emmit
Because it doesn't create new local vars.
* Delete declarations
Carol Eidt [Tue, 7 Nov 2017 00:36:31 +0000 (16:36 -0800)]
Merge pull request #14854 from sdmaclea/PR-ARM64-Slot-Immediate-Size
ARM64 slot access immediate register size
Brian Sullivan [Tue, 7 Nov 2017 00:15:28 +0000 (16:15 -0800)]
Merge pull request #14888 from briansull/fix-break
Fix build break
Carol Eidt [Tue, 7 Nov 2017 00:06:11 +0000 (16:06 -0800)]
Merge pull request #14281 from mikedn/mixed-type-relop
Cleanup some mixed type relops the JIT produces
Carol Eidt [Mon, 6 Nov 2017 23:54:38 +0000 (15:54 -0800)]
ARM64: Fix two register selection issues
On ARM64 IP0 and IP1 are not in the register selection order, though there are some cases where they must be allocated. See #14607. So we may see them as free when looking for a register to spill.
Also, V15 was missing from the selection order (V16 was in the order twice).
Fix #14626
dotnet-maestro-bot [Mon, 6 Nov 2017 22:41:26 +0000 (14:41 -0800)]
Update CoreFx, PgoData to preview1-25906-03, master-
20171105-0123, respectively (#14865)
Stephen Toub [Mon, 6 Nov 2017 22:36:38 +0000 (17:36 -0500)]
Fix TryParse overloads using optional arguments (#14877)
When we originally added Parse and TryParse overloads for `ReadOnlySpan<char>`, we used optional arguments to minimize the number of new overloads needed. This worked decently well for Parse, but for TryParse it necessitated reordering the parameters from the string counterparts, so that the out result argument would come before the optional parameters. This makes it more difficult to port string-based calls to span-based calls, and we agreed to add the missing overloads so that we could order the parameters "correctly" to match the existing string-based overloads. This does so.
Koundinya Veluri [Mon, 6 Nov 2017 22:30:44 +0000 (14:30 -0800)]
Shorten delay in some monitor tests to avoid timeout (#14852)
Shorten delay in some monitor tests to avoid timeout
Koundinya Veluri [Mon, 6 Nov 2017 22:28:41 +0000 (14:28 -0800)]
Fix GC reporting for slow tail call arguments of type `Span<T>` (#14826)
Fix GC reporting for slow tail call arguments of type `Span<T>`
Fixes https://github.com/dotnet/coreclr/issues/9032:
- Refactored by-ref-like method table walking to find offsets of by-ref pointers in siginfo.hpp/cpp
- Reused that for appending GC layout when creating the copy-args helper for a slow tail call
Brian Sullivan [Mon, 6 Nov 2017 21:51:57 +0000 (13:51 -0800)]
Fix build break
Carol Eidt [Mon, 6 Nov 2017 21:43:35 +0000 (13:43 -0800)]
Merge pull request #14024 from mikedn/long-cast-comm
Move genLongToIntCast call to codegenlinear
Carol Eidt [Mon, 6 Nov 2017 21:42:29 +0000 (13:42 -0800)]
Merge pull request #14735 from mikedn/emit-const-cleanup
Cleanup const data emission
Mike Danes [Wed, 25 Oct 2017 18:01:32 +0000 (21:01 +0300)]
RangeCheck cleanup
* Remove unused function paramter `stmt`
* Remove unused function parameter `path`
* Remove unused function parameter `block`
* Use GenTreeLclVarCommon* instead of GenTree* where possible
* Track RangeCheck memory allocations
* Remove useless noway_asserts from MergeEdgeAssertions
* Stop passing the search path via a parameter
* Eliminate unnecessary search path lookup
* Cleanup some local variable uses
* Remove redundant hashtable lookup
* Remove unused keSsaVar
* Pass the actual binary node to BinOp functions
* Fix broken assert
* Remove unused keBinOp
* Remove redundant check
Jan Kotas [Mon, 6 Nov 2017 20:56:00 +0000 (12:56 -0800)]
Cleanup BCLDebug (#14868)
- Delete BCLDebug and related types since it was replaced by the public System.Diagnostic.Debug
- Preserve commented out or conditionally compiled logging in a few place where it seemed potentially useful
Fixes #11389
Steve MacLean [Fri, 3 Nov 2017 21:41:59 +0000 (17:41 -0400)]
[Arm64] genSIMDIntrinsicNarrow/Widen
Michelle McDaniel [Mon, 6 Nov 2017 19:20:40 +0000 (11:20 -0800)]
Reenable PGO optimization on release builds (#14885)
Brian Sullivan [Mon, 6 Nov 2017 19:15:10 +0000 (11:15 -0800)]
Merge pull request #14855 from briansull/improved-jitdump
Improved the dump when fgOptimizeBranch clones statements
Ben Adams [Mon, 6 Nov 2017 18:25:38 +0000 (19:25 +0100)]
Add .NET Core 2.0 performance post (#14875)
Yuri Vanin [Mon, 6 Nov 2017 18:20:02 +0000 (10:20 -0800)]
Allow any string length in Environment.SetEnvironmentVariable (#14872)
Fix for CoreFX #16766
Bruce Forstall [Mon, 6 Nov 2017 18:18:56 +0000 (10:18 -0800)]
Merge pull request #14873 from BruceForstall/ImproveCorefxAltjitTesting
Improve altjit corefx testing
Brian Sullivan [Mon, 6 Nov 2017 18:18:17 +0000 (10:18 -0800)]
Merge pull request #14506 from mikedn/alloc-mess
Streamline JIT memory allocation
Brian Sullivan [Mon, 6 Nov 2017 18:17:55 +0000 (10:17 -0800)]
Merge pull request #14871 from mikedn/vn-dead-divmod
Remove unused VNF_DIV_UN and VNF_MOD_UN
Carol Eidt [Mon, 6 Nov 2017 17:49:36 +0000 (09:49 -0800)]
Merge pull request #14840 from CarolEidt/ShrinkLSRADump
LSRA Dump: don't print unused regs
Bruce Forstall [Mon, 6 Nov 2017 17:11:42 +0000 (09:11 -0800)]
Merge pull request #14857 from sdmaclea/PR-ARM64-SIMD12-IND
[Arm64] SIMD12 Indirect Load/Store
Steve MacLean [Tue, 31 Oct 2017 22:37:44 +0000 (18:37 -0400)]
[Arm64] SIMD ContainCheckStoreLoc
Jacek Blaszczynski [Mon, 6 Nov 2017 16:49:59 +0000 (17:49 +0100)]
Improve clean.cmd by adding VBCScompiler.exe kill logic and git clean -xdf cleanup
Steve MacLean [Fri, 3 Nov 2017 17:22:36 +0000 (13:22 -0400)]
[ARM64] SIMD ins_Move_Extend
Steve MacLean [Mon, 6 Nov 2017 16:15:07 +0000 (11:15 -0500)]
[Arm64] Prefer EA_PTRSIZE for addresses