Bruce Forstall [Wed, 1 Nov 2017 16:51:08 +0000 (09:51 -0700)]
Merge pull request #14616 from sdmaclea/PR-ARM64-SIMDINTRINSICLIST
[Arm64] Implement simdintrinsiclist.h
Bruce Forstall [Wed, 1 Nov 2017 16:35:32 +0000 (09:35 -0700)]
Merge pull request #14790 from sdmaclea/PR-ARM64-insEncodeDatasizeLS
[Arm64] Revise insEncodeDatasizeLS
Steve MacLean [Tue, 31 Oct 2017 18:20:35 +0000 (14:20 -0400)]
[Arm64] Revise insEncodeDatasizeLS
Andy Ayers [Wed, 1 Nov 2017 07:23:31 +0000 (00:23 -0700)]
Update URLs to use for formatter job (#14785)
Need 2.0 SDK now. Not sure of the best URLs but these seem to work.
Also shorten path so we don't run into windows pathlength issues.
Carol Eidt [Wed, 1 Nov 2017 04:56:14 +0000 (21:56 -0700)]
Merge pull request #14767 from CarolEidt/Fix14373
Fix checking for reg in use
Karthik Rajasekaran [Wed, 1 Nov 2017 03:44:27 +0000 (20:44 -0700)]
Remove intermediate sync for test build (#14775)
Carol Eidt [Tue, 31 Oct 2017 21:04:11 +0000 (14:04 -0700)]
PR feedback & fix an error in `isRegInUse`
Bruce Forstall [Tue, 31 Oct 2017 20:37:37 +0000 (13:37 -0700)]
Merge pull request #14705 from hseok-oh/ryujit/fix_14666
[RyuJIT/ARMARCH] Use ActualType for PutArgStk size
Koundinya Veluri [Tue, 31 Oct 2017 19:04:44 +0000 (12:04 -0700)]
Clean up YieldProcessorNormalized (#14739)
Move YieldProcessorNormalized into separate files
Clean up YieldProcessorNormalized
Viktor Hofer [Tue, 31 Oct 2017 15:06:35 +0000 (16:06 +0100)]
Make NonRandomizedStringEqualityComparer serialize into GenericEqualityComparer<string> (#14756)
Carol Eidt [Tue, 31 Oct 2017 14:49:51 +0000 (07:49 -0700)]
Fix checking for reg in use
Combine the check for an inactive but not-yet-freed interval, with the check for other cases of a register that is in use at the current location. This simplifies the code and fixes the assert condition for double registers.
Fix #14373
Carol Eidt [Tue, 31 Oct 2017 14:25:33 +0000 (07:25 -0700)]
Merge pull request #14614 from hqueue/arm/ryujit/issue_14374_pr2
[RyuJIT/ARM32] Fix resolving TYP_DOUBLE and TYP_FLOAT intervals
Dan Seefeldt [Tue, 31 Oct 2017 14:17:39 +0000 (09:17 -0500)]
Merge pull request #14748 from dseefeld/addRetryInInitTools
Add retry logic for setup of dotnet cli
Jan Kotas [Tue, 31 Oct 2017 10:34:45 +0000 (03:34 -0700)]
Change leading bracked to char as well
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Stephen Toub [Tue, 31 Oct 2017 12:30:29 +0000 (08:30 -0400)]
Merge pull request #14759 from stephentoub/gettaskforresult_inlining
Don't inline GetTaskForResult when await'ing ValueTask
Jan Kotas [Tue, 31 Oct 2017 10:15:14 +0000 (03:15 -0700)]
Move System.Tuple to shared CoreLib partition (#14762)
dotnet-maestro-bot [Tue, 31 Oct 2017 10:14:43 +0000 (03:14 -0700)]
Update BuildTools, PgoData to prerelease-02131-01, master-
20171031-0018, respectively (#14764)
dotnet-maestro-bot [Tue, 31 Oct 2017 06:43:37 +0000 (23:43 -0700)]
Update CoreFx to preview1-25831-01 (#14760)
Hyung-Kyu Choi [Fri, 20 Oct 2017 08:23:32 +0000 (17:23 +0900)]
[RyuJIT/ARM32] Fix resolving TYP_DOUBLE and TYP_FLOAT intervals
- When generating fromReg to toReg move to resolve edges,
we have to consider either of fromReg and toReg can contain double type.
- Add a new helper, i.e. addResolutionForDouble()
- Fix bug when reserving temp reigster for TYP_DOUBLE by introducing tempRegDbl.
There was a bug when it can't find a double reg, but find a even-numbered float reg,
because we check validness of tempFltReg with register number only.
We found that it is not easy to check validness of tempRegFlt,
if we use tempRegFlt for both TYP_DOUBLE for TYP_FLOAT.
Therefore we decide to introduce tempRegDbl to reserve a temp double reigster separately.
- Apply review feedback
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
dseefeld [Mon, 30 Oct 2017 20:28:22 +0000 (20:28 +0000)]
Add retry logic for setup of dotnet cli
Stephen Toub [Tue, 31 Oct 2017 01:39:28 +0000 (21:39 -0400)]
Don't inline GetTaskForResult when await'ing ValueTask
When await'ing a ValueTask, we should only ever end up calling AwaitUnsafeOnCompleted when the ValueTask wraps a non-null _task; if its _task were null, IsCompleted would have returned true due to treating the _result as the successful result. However, the value task's AsTask() is currently used via an inlined interface invocation in AwaitUnsafeOnCompleted to get the _task from the ValueTask, and AsTask ends up inlining the _task==null branch that inlines AsyncTaskMethodBuilder'1.GetTaskForResult, which ends up bloating the asm unnecessarily. We can simply change the interface implementation used by AwaitUnsafeOnCompleted to not inline GetTaskForResult. In a simple example, this cuts the asm for AwaitUnsafeOnCompleted by ~50%.
Andy Ayers [Tue, 31 Oct 2017 01:34:02 +0000 (18:34 -0700)]
Add wrapper support for getUnboxedEntry (#14752)
Karthik Rajasekaran [Tue, 31 Oct 2017 00:49:45 +0000 (17:49 -0700)]
Set toolset dir only for ARM64 (#14755)
Bruce Forstall [Tue, 31 Oct 2017 00:41:07 +0000 (17:41 -0700)]
Merge pull request #14730 from fiigii/SSE4
[RyuJIT] Rename and Simplify SSE3_4 flag
Sean Gillespie [Tue, 31 Oct 2017 00:18:55 +0000 (17:18 -0700)]
[Local GC] Fix an issue where the size of ScanContext differs between EE and GC (#14747)
Jan Kotas [Tue, 31 Oct 2017 00:18:09 +0000 (17:18 -0700)]
Fix build warning (#14751)
dotnet-maestro-bot [Tue, 31 Oct 2017 00:03:52 +0000 (17:03 -0700)]
Update BuildTools to prerelease-02130-03 (#14750)
Wes Haggard [Mon, 30 Oct 2017 22:06:18 +0000 (15:06 -0700)]
Merge pull request #14683 from weshaggard/MergeDevRelease200
Merge changes from dev/release/2.0.0
Andy Ayers [Tue, 24 Oct 2017 21:39:29 +0000 (14:39 -0700)]
Update code in AwaitUnsafeOnCompleted to use interface matching
Given that the jit can now avoid boxing on some interface calls to value types,
generalize the patterns introduced in AwaitUnsafeOnCompleted in #14718 by
using interfaces instead of checking for specific types.
Also move the catch-all processing back in line as the jit can now fold the
interface tests early and not pull in the EH portion of the method unless it is
needed.
Andy Ayers [Tue, 24 Oct 2017 00:46:41 +0000 (17:46 -0700)]
JIT: optimize calls on boxed objects
For calls with boxed this objects, invoke the unboxed entry point if available
and modify the box to copy the original value or struct to a local. Pass the
address of this local as the first argument to the unboxed entry point.
Defer for cases where the unboxed entry point requires an extra type parameter.
This may enable subsequent inlining of the method, and if the method has other
boxed parameters, may enable undoing those boxes as well.
The jit is not yet as proficient at eliminating the struct copies, but they
are present with or without this change, and some may even be required when the
methods mutate the fields of `this`.
Closes #14213.
Carol Eidt [Mon, 30 Oct 2017 20:34:48 +0000 (13:34 -0700)]
Merge pull request #14677 from CarolEidt/Fix14626
Avoid allocating IP0 and IP1
Wes Haggard [Wed, 25 Oct 2017 00:09:55 +0000 (17:09 -0700)]
Update dependencies to latest with new property names
Wes Haggard [Fri, 27 Oct 2017 18:38:23 +0000 (11:38 -0700)]
Update dependency properties used in PerfHarness project
Wes Haggard [Fri, 27 Oct 2017 17:11:35 +0000 (10:11 -0700)]
Add RoslynIncompatibleMsbuildVersion condition on Roslyn import
Due to merge conflict this condition got removed so adding it back
to allow for older msbuild versions to work (at least temporarily).
Wes Haggard [Fri, 27 Oct 2017 00:26:57 +0000 (17:26 -0700)]
Add blob feed to the restore sources
Merge the blob feed restore source added in
https://github.com/dotnet/coreclr/pull/14709
Wes Haggard [Thu, 26 Oct 2017 16:31:31 +0000 (09:31 -0700)]
Switch to sourcing in init-tools to enable the return statements to work
Wes Haggard [Wed, 25 Oct 2017 16:02:45 +0000 (09:02 -0700)]
Move CoreCLRPackageVersion property useage
Also did some small clean-up:
Fix missing tag from bad merge
Fix spacing in init-tools.sh
Wes Haggard [Tue, 24 Oct 2017 23:46:07 +0000 (16:46 -0700)]
Use restore with no --source for optdata proj feed
This lets dotnet pick up RestoreSources hierarchically rather than only use what's predefined in DotnetRestoreCommand (in dir.props).
Wes Haggard [Tue, 24 Oct 2017 23:44:37 +0000 (16:44 -0700)]
Implement auto dependency flow Repo API (#14518)
Wes Haggard [Tue, 24 Oct 2017 23:38:17 +0000 (16:38 -0700)]
Pass overridden packages directory to CMake
Wes Haggard [Tue, 24 Oct 2017 23:36:03 +0000 (16:36 -0700)]
Align init-tools scripts with other source-build repos
Wes Haggard [Tue, 24 Oct 2017 23:22:45 +0000 (16:22 -0700)]
Normalize the alpine and rhel RIDs
See: https://github.com/dotnet/core-setup/commit/
c8a27076f93c3107759b8a86a02ea4f40d100b67
We need to strip the last part of the version number for alpine and rhel because
they are compatible and we don't want the specific versions.
Wes Haggard [Tue, 24 Oct 2017 23:21:08 +0000 (16:21 -0700)]
Remove coreclr patches from source-build repo
Updates the branch to include patches that were applied in source-build:
0001-Respect-NUGET_PACKAGES-if-it-is-set.patch
0002-Unify-CLI-and-BuildTools-Versions.patch
0003-Add-clear-to-NuGet.config.patch
0004-PATCH-Use-clang-3.9-by-default.patch
dotnet-maestro-bot [Mon, 30 Oct 2017 19:35:42 +0000 (12:35 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to prerelease-02130-01, preview1-25829-02, preview1-25830-02, master-
20171030-0047, respectively (#14714)
Steve MacLean [Fri, 20 Oct 2017 16:02:06 +0000 (12:02 -0400)]
[Arm64] Implement simdintrinsiclist.h
Fei Peng [Mon, 30 Oct 2017 18:32:08 +0000 (11:32 -0700)]
Rename and simplify SSE3_4 to SSE4
Petr Bred [Mon, 30 Oct 2017 18:08:34 +0000 (21:08 +0300)]
Fix gtNewStringLiteralNode (#14744)
- there is IAT_VALUE case from constructStringLiteral(CoreRT)
Signed-off-by: Petr Bred <bredpetr@gmail.com>
Jan Kotas [Mon, 30 Oct 2017 18:03:48 +0000 (11:03 -0700)]
Simplify Comparer/EqualityComparers (#14737)
- Make EnumEqualityComparer sealed. This helps with JIT optimizations.
- Delete SByteEnumEqualityComparer and ShortEnumEqualityComparer because of they are not needed anymore. The optimization that they were introduced for is done by the JIT now.
- Deleted ForwardedFrom attributes on types that do not need them
Vance Morrison [Mon, 30 Oct 2017 17:50:17 +0000 (10:50 -0700)]
Fix spelling error in comment (#14745)
Sergey Andreenko [Mon, 30 Oct 2017 17:45:53 +0000 (10:45 -0700)]
delete unused functions and arguments in lower. (#14726)
* move putArg inside
* delete unused function
LowerPutArgStk with two arguments was never used.
* delete extra argument
Carol Eidt [Mon, 30 Oct 2017 17:33:27 +0000 (10:33 -0700)]
Merge pull request #14456 from fiigii/crc32
Enable Crc32 , Popcnt, Lzcnt intrinsics
Bruce Forstall [Mon, 30 Oct 2017 16:26:49 +0000 (09:26 -0700)]
Merge pull request #14712 from BruceForstall/VS2017Arm64
Allow building arm64 using VS2017 tools
Vance Morrison [Mon, 30 Oct 2017 15:49:36 +0000 (08:49 -0700)]
Fix for issue EventSource MultiEnable bug (#14729)
Fixes issue #14728
Carol Eidt [Mon, 30 Oct 2017 04:16:46 +0000 (21:16 -0700)]
Merge pull request #14733 from CarolEidt/Fix14732
Fix another overly agressive assert
Carol Eidt [Sun, 29 Oct 2017 22:16:30 +0000 (15:16 -0700)]
Formatting & typo
Andrew Anikin [Sun, 29 Oct 2017 14:22:39 +0000 (17:22 +0300)]
Update Hashtable.cs (#14741)
Fix little misspelling.
Carol Eidt [Sat, 28 Oct 2017 01:59:55 +0000 (18:59 -0700)]
Fix another overly agressive assert
Fix #14732
Carol Eidt [Sat, 28 Oct 2017 01:50:20 +0000 (18:50 -0700)]
Merge pull request #14717 from CarolEidt/Fix14624
Fix FixedReg assert
Maoni Stephens [Sat, 28 Oct 2017 00:36:57 +0000 (17:36 -0700)]
Don't wake up other GC threads when we decide to not proceed with the GC (#14719)
Vance Morrison [Sat, 28 Oct 2017 00:00:17 +0000 (17:00 -0700)]
Enable Portable Pdb generation (#14721)
When https://github.com/dotnet/corefx/pull/24025 goes through to change coreFX over to use portable PDBs we want to do the same for System.private.Corelib.pdb in CoreCLR. This change does this.
Jan Kotas [Fri, 27 Oct 2017 23:08:24 +0000 (16:08 -0700)]
Delete dead code (#14703)
Andy Ayers [Fri, 27 Oct 2017 23:07:57 +0000 (16:07 -0700)]
Revise class hierarchy for some EqualityComparer<T> subclasses (#14723)
Make GenericEqualityComparer<T> a final class and reparent
NonRandomizedStringEqualityComparer.
Also add a note to the jit sources indicating why we can't be more aggressive
about devirtualizing `get_Default` if we have a shared type (in particular
__Canon).
Jarret Shook [Fri, 27 Oct 2017 22:32:42 +0000 (15:32 -0700)]
Merge pull request #14715 from jashook/14667_regression_test
Add regression test for double counting retbuf
Karthik Rajasekaran [Fri, 27 Oct 2017 22:24:17 +0000 (15:24 -0700)]
Revert "Move to DotNetCore-Build agent pool (#14693)" (#14731)
This reverts commit
4103b6276cd5c3d497cd4a20de14bda6a98495cb.
Wes Haggard [Fri, 27 Oct 2017 21:50:25 +0000 (14:50 -0700)]
Merge pull request #14515 from 4creators/master
Fix Windows arm target cross build: detect prerelease VS2017, stay in repo root
Sean Gillespie [Fri, 27 Oct 2017 21:37:54 +0000 (14:37 -0700)]
[Local GC] Implement loader protocol for a standalone GC (#14663)
* First cut of the load protocol
* Implement for non-standalone GC
* Initial working implementation
* First steps towards not using GetProcAddress when not using a standalone GC
* Factor out loading routines into standalone and non-standalone cases
* Remove the FEATURE_STANDALONE_GC_ONLY build
* Code cleanup and comments
* Comments for the version numbers
* Use more appropriate type for config string
* add GC_LOAD_STATUS_BEFORE_START to disambiguate failures before the start of the load and failures at the beginning of the load
* FEATURE_STANDALONE_GC on by default
* Implement YieldProcessor and MemoryBarrier for arm and arm64
* Remove missed FEATURE_STANDALONE_GC feature check
Jacek Blaszczynski [Fri, 27 Oct 2017 18:58:51 +0000 (20:58 +0200)]
Address code review feedback
Jacek Blaszczynski [Fri, 27 Oct 2017 18:57:22 +0000 (20:57 +0200)]
Merge branch 'master' of https://github.com/dotnet/coreclr
Brian Sullivan [Fri, 27 Oct 2017 18:37:04 +0000 (11:37 -0700)]
Merge pull request #14640 from briansull/ind-icon
Added gtNewIndOfIconHandleNode
Carol Eidt [Fri, 27 Oct 2017 18:31:16 +0000 (11:31 -0700)]
Merge pull request #14678 from fiigii/vex
[RyuJIT] Decoupling SIMD levels from instruction sets
jashook [Thu, 26 Oct 2017 22:41:27 +0000 (15:41 -0700)]
Add regression test for double counting retbuf
This relates to #14667.
Michelle McDaniel [Fri, 27 Oct 2017 12:21:59 +0000 (05:21 -0700)]
Remove adiaaida from list of arm64 users (#14710)
Jan Vorlicek [Fri, 27 Oct 2017 12:21:21 +0000 (14:21 +0200)]
Add janvorli to the list of arm64 users (#14718)
Roman Artemev [Fri, 27 Oct 2017 06:01:27 +0000 (23:01 -0700)]
Implemented TailCall ELT hook for arm32 Linux (#14713)
* Added TailCall ELT hook for arm32 Linux
* fixed review
Viktor Hofer [Fri, 27 Oct 2017 00:50:51 +0000 (02:50 +0200)]
Make EventSourcException serializable in corert scenarios (#14716)
Brian Sullivan [Fri, 27 Oct 2017 00:39:17 +0000 (17:39 -0700)]
Fixes for zero diffs
William Godbe [Thu, 26 Oct 2017 22:03:40 +0000 (15:03 -0700)]
Merge pull request #14709 from wtgodbe/TransportFeed
Restore from transport feed in test build
Carol Eidt [Thu, 26 Oct 2017 20:53:44 +0000 (13:53 -0700)]
Fix FixedReg assert
With JitStressRegs (various values) it is possible to have RefPositions that have a single candidate, even though they are not really a fixed reference to the given register.
Fix #14624
Jarret Shook [Thu, 26 Oct 2017 20:46:03 +0000 (13:46 -0700)]
Merge pull request #14667 from hseok-oh/ryujit/ftc_callee_retbuf
Fix callee argument count bug in fgCanFastTailCall
Brian Sullivan [Thu, 26 Oct 2017 20:36:23 +0000 (13:36 -0700)]
Changes for Zero Asm Diffs
Bruce Forstall [Thu, 26 Oct 2017 20:29:55 +0000 (13:29 -0700)]
Allow building arm64 using VS2017 tools
VS2017 now includes ARM64 compilers. Change the build scripts so
that the normal VC tools path is used for the builds for ARM64.
However, if -toolset_dir is passed, then use the specified tools,
as before.
wtgodbe [Thu, 26 Oct 2017 20:21:49 +0000 (13:21 -0700)]
Restore from transport feed in test build
Karthik Rajasekaran [Thu, 26 Oct 2017 20:19:03 +0000 (13:19 -0700)]
Move to DotNetCore-Build agent pool (#14693)
Sean Gillespie [Thu, 26 Oct 2017 17:46:21 +0000 (10:46 -0700)]
[Local GC] Move IsGCThread and IsGCSpecialThread to GCToEEInterface (#14685)
* [Local GC] Move IsGCThread and IsGCSpecialThread to GCToEEInterface
* Fix the windows and sample builds
dotnet-maestro-bot [Thu, 26 Oct 2017 16:44:36 +0000 (09:44 -0700)]
Update BuildTools, CoreClr, PgoData to prerelease-02126-01, preview1-25826-01, master-
20171026-0034, respectively (#14704)
Brian Robbins [Thu, 26 Oct 2017 08:20:42 +0000 (10:20 +0200)]
Port EventSource Nuget Package Changes (#14669)
* Add missing resource strings.
* Bring back code changes required to build the nuget package.
Hyeongseok Oh [Thu, 26 Oct 2017 07:46:54 +0000 (16:46 +0900)]
[RyuJIT/ARMARCH] Use ActualType for PutArgStk size
Use ActualType istead of real type for PutArgStk
Same as XARCH
Fei Peng [Tue, 10 Oct 2017 17:19:17 +0000 (10:19 -0700)]
Enable Crc32 , Popcnt, Lzcnt intrinsics
Mike McLaughlin [Wed, 25 Oct 2017 23:31:42 +0000 (16:31 -0700)]
Fix source/line info on Windows for Windows PDBs. (#14696)
Now attempts to load the diasymreader from the coreclr module path.
Issue #21079
dotnet-maestro-bot [Wed, 25 Oct 2017 22:36:59 +0000 (15:36 -0700)]
Update CoreFx, PgoData to preview1-25825-08, master-
20171025-1102, respectively (#14694)
William Godbe [Wed, 25 Oct 2017 22:17:46 +0000 (15:17 -0700)]
Merge pull request #14695 from wtgodbe/DisableVerify
Disable VerifyDependencies target in package restore
Fei Peng [Tue, 24 Oct 2017 21:35:18 +0000 (14:35 -0700)]
Decoupling SIMD levels from instruction sets
Brian Sullivan [Fri, 20 Oct 2017 22:11:31 +0000 (15:11 -0700)]
Added gtNewIndOfIconHandleNode
Renamed GTF_ICON_CIDMID_HDL to GTF_ICON_MID_HDL
Added a standard function header comment for gtNewIndOfIconHandleNode
Made compiletimeHandle a required argument instead of an option argument for gtNewIconEmbHndNode
Added new isInvariant arg to gtNewIndOfIconHandleNode, it will set GTF_IND_INVARIANT when true
Converted IBC Block Counts to use new gtNewIndOfIconHandleNode method
Simplified gtNewStringLiteralNode
Bruce Forstall [Wed, 25 Oct 2017 20:46:56 +0000 (13:46 -0700)]
Merge pull request #14697 from BruceForstall/FixCorefxTesting
Fix CoreFx testing
Bruce Forstall [Wed, 25 Oct 2017 19:48:38 +0000 (12:48 -0700)]
Fix CoreFx testing
Currently, build.cmd will pass through all arguments starting with
an argument it doesn't recognize. Since it doesn't process/recognize
'-priority', make sure this is the last argument passed.
wtgodbe [Wed, 25 Oct 2017 18:28:49 +0000 (11:28 -0700)]
Disable VerifyDependencies target in package restore
Jarret Shook [Wed, 25 Oct 2017 17:48:58 +0000 (10:48 -0700)]
Merge pull request #14138 from jashook/arm64_32_multiarch_documentation
Add multiarch arm64(32) Documentation
jashook [Fri, 22 Sep 2017 16:02:38 +0000 (09:02 -0700)]
Add multiarch arm64(32) Documentation
Helps setup running armhf code on an arm64 kernal.
Jarret Shook [Wed, 25 Oct 2017 17:04:41 +0000 (10:04 -0700)]
Merge pull request #14668 from hqueue/arm/reenable_armel_ci
[ARM] Re-enable armel CI
Michelle McDaniel [Wed, 25 Oct 2017 16:54:37 +0000 (09:54 -0700)]
Merge pull request #14691 from adiaaida/fixenforcepgooption
Fix enforcepgo option in netci.groovy