platform/upstream/coreclr.git
5 years agoMove C/C++ and platform headers to pal/inc/rt/cpp folder
Ilia K [Thu, 28 Mar 2019 17:28:47 +0000 (20:28 +0300)]
Move C/C++ and platform headers to pal/inc/rt/cpp folder

Affected files: assert.h, emmintrin.h, and xmmintrin.h

Bug: 20784

5 years agoPermissionSet: follow netfx more in order to avoid workarounds with nullable (#23637)
Krzysztof Wicher [Tue, 2 Apr 2019 00:43:06 +0000 (17:43 -0700)]
PermissionSet: follow netfx more in order to avoid workarounds with nullable (#23637)

5 years agoUse join function in yaml for defining Helix queues and scenarios (#23367)
Egor Chesakov [Tue, 2 Apr 2019 00:37:53 +0000 (17:37 -0700)]
Use join function in yaml for defining Helix queues and scenarios (#23367)

* Enable Ubuntu.1804.Arm32.Open (running on Ubuntu.1604.Arm32.Open) against PRs

* Restrict Ubuntu.1404.Arm32.Open to running against CI (commit validation) only

* Enable Debian.9.Arm32.Open, Ubuntu.1604.Arm32.Open and Ubuntu.1804.Arm32.Open (running on Ubuntu.1604.Arm32.Open) against scheduled runs

* Enable Debian.9.Arm32, Ubuntu.1604.Arm32 and Ubuntu.1804.Arm32 (running on Ubuntu.1604.Arm32) in internal project (FYI, we haven't had any Linux arm32 testing in internal so far)

* Enable Debian.9.Arm64.Open (running on Ubuntu.1604.Arm64.Docker.Open) against scheduled runs

* Enable Alpine.38.Arm64 (running on Ubuntu.1604.Arm64.Docker) in internal project

5 years agoChange PermissionSet.SyncRoot to return this instead of null (#23631)
Krzysztof Wicher [Mon, 1 Apr 2019 23:23:52 +0000 (16:23 -0700)]
Change PermissionSet.SyncRoot to return this instead of null (#23631)

5 years agoMatch BOX idioms early in the importer (#23550)
Jan Kotas [Mon, 1 Apr 2019 23:20:55 +0000 (16:20 -0700)]
Match BOX idioms early in the importer (#23550)

5 years agoDisable load byte array (#23638)
Steve MacLean [Mon, 1 Apr 2019 22:09:41 +0000 (18:09 -0400)]
Disable load byte array (#23638)

* Disable AssemblyLoadByteArrayName test

* Fix typo

5 years agoDisable AssemblyLoadByteArrayName test (#23635)
Steve MacLean [Mon, 1 Apr 2019 21:52:51 +0000 (17:52 -0400)]
Disable AssemblyLoadByteArrayName test (#23635)

5 years agoFix bad Debug.Assert statements in UTF-8 processing (#23627)
Levi Broderick [Mon, 1 Apr 2019 21:25:55 +0000 (14:25 -0700)]
Fix bad Debug.Assert statements in UTF-8 processing (#23627)

5 years agoLSRA cleanup (#23617)
Carol Eidt [Mon, 1 Apr 2019 20:33:12 +0000 (13:33 -0700)]
LSRA cleanup (#23617)

* LSRA cleanup

These are zero-diff changes. Some cleanup, some in preparation for improvemetns to save/restore of upper vectors.

5 years agoAdd new era in Japan called "Reiwa" (#23614)
Acid Chicken (硫酸鶏) [Mon, 1 Apr 2019 19:53:10 +0000 (04:53 +0900)]
Add new era in Japan called "Reiwa" (#23614)

* Add new era in Japan called "Reiwa"

* Update Japanese eras English names

refs: <https://github.com/dotnet/coreclr/pull/23614#issuecomment-478680005>

5 years ago[master] Update dependencies from dotnet/corefx (#23593)
dotnet-maestro[bot] [Mon, 1 Apr 2019 19:32:01 +0000 (12:32 -0700)]
[master] Update dependencies from dotnet/corefx (#23593)

- Microsoft.NETCore.Platforms - 3.0.0-preview4.19181.2
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview4.19181.2

5 years agoEnable R2R compilation/inlining of PInvoke stubs where no marshalling is required...
Fadi Hanna [Mon, 1 Apr 2019 19:07:47 +0000 (12:07 -0700)]
Enable R2R compilation/inlining of PInvoke stubs where no marshalling is required (#22560)

* These changes enable the inlining of some PInvokes that do not require any marshalling. With inlined pinvokes, R2R performance should become slightly better, since we'll avoid jitting some of the pinvoke IL stubs that we jit today for S.P.CoreLib. Performance gains not yet measured.

* Added JIT_PInvokeBegin/End helpers for all architectures. Linux stubs not yet implemented
* Add INLINE_GETTHREAD for arm/arm64
* Set CORJIT_FLAG_USE_PINVOKE_HELPERS jit flag for ReadyToRun compilations
* Updating R2RDump tool to handle pinvokes

5 years agoEnable negative type-check results in CoreLib version bubble (#23549)
Jan Kotas [Mon, 1 Apr 2019 15:37:03 +0000 (08:37 -0700)]
Enable negative type-check results in CoreLib version bubble (#23549)

This negative type-check results are necessary to generate good code for AsyncTaskMethodBuilder.AwaitUnsafeOnCompleted

5 years agore-add test exclusion for #23545 (#23598)
Carol Eidt [Mon, 1 Apr 2019 00:02:38 +0000 (17:02 -0700)]
re-add test exclusion for #23545 (#23598)

5 years agoUpdate dependencies from https://github.com/dotnet/core-setup build 20190329.11 ...
Jan Kotas [Sat, 30 Mar 2019 15:03:14 +0000 (08:03 -0700)]
Update dependencies from https://github.com/dotnet/core-setup build 20190329.11 (#23594)

- Microsoft.NETCore.App - 3.0.0-preview4-27529-11

5 years agoUpdate dependencies from https://github.com/dotnet/arcade build 20190329.2 (#23592)
dotnet-maestro[bot] [Sat, 30 Mar 2019 15:02:49 +0000 (08:02 -0700)]
Update dependencies from https://github.com/dotnet/arcade build 20190329.2 (#23592)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19179.2
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19179.2

5 years agoFix ARM64 isFullyImplementedIsa (#23590)
Fei Peng [Sat, 30 Mar 2019 14:43:38 +0000 (07:43 -0700)]
Fix ARM64 isFullyImplementedIsa (#23590)

5 years agoUpdate dependencies from https://github.com/dotnet/core-setup build 20190329.11
dotnet-maestro [Sat, 30 Mar 2019 12:57:35 +0000 (12:57 +0000)]
Update dependencies from https://github.com/dotnet/core-setup build 20190329.11

- Microsoft.NETCore.App - 3.0.0-preview4-27529-11

5 years agoImplement IEquatable to Memory and ReadOnlyMemory (#23586)
Ganbarukamo41 [Sat, 30 Mar 2019 02:10:00 +0000 (02:10 +0000)]
Implement IEquatable to Memory and ReadOnlyMemory (#23586)

5 years agoClean up AssemblyLoadContext30Extensions test (#23581)
Steve MacLean [Sat, 30 Mar 2019 01:51:39 +0000 (21:51 -0400)]
Clean up AssemblyLoadContext30Extensions test (#23581)

Build test against corefx ref facade
Enable Assembly.Load(byte[], ...) test

5 years agoMerge pull request #23579 from sandreenko/removeFedoraRuns
Sergey Andreenko [Sat, 30 Mar 2019 00:18:44 +0000 (17:18 -0700)]
Merge pull request #23579 from sandreenko/removeFedoraRuns

Remove Fedora runs.

5 years agoIncrease GCStress test timeouts. (#23576)
Sergey Andreenko [Fri, 29 Mar 2019 23:45:31 +0000 (16:45 -0700)]
Increase GCStress test timeouts. (#23576)

New machines are slower that we had before, so increate the timeout for the longest runs.

5 years agoMake tracelogging GCStressIncompatible. (#23578)
Sergey Andreenko [Fri, 29 Mar 2019 23:45:06 +0000 (16:45 -0700)]
Make tracelogging GCStressIncompatible. (#23578)

5 years agoA new way of tracking variables (#23373)
Brian Bohe [Fri, 29 Mar 2019 23:38:53 +0000 (16:38 -0700)]
A new way of tracking variables (#23373)

* Defining VariableLiveRange class

* Adding some typedefs to avoid rewriting

* Defining VariableLiveDescriptor class

* Initializing VariableLiveRange structures before BasicBlock code is being generated

* Getting a siVarLoc for variable homes from a given LclVarDsc and stack level

* Defining VariableLiveKeeper class

* Reporting VariableLiveRanges on changes of variable livenesss or variable homes

* Adding USING_VARIABLE_LIVE_RANGE flag to enable disable VariableLiveRange

* Send VariableLiveRanges to debugger

* Reporting variable homes on prolog

* Wrong argument

* Miss to change variable homes count before sending them to debugger

* Adding dumper of VariableLiveRanges for each blocks and end of code generation

* Close all open VaribleLiveRanges on last BasicBlock

* Changing order of properties initialization on VariableLiveRange constructor

* Type error on assignation

* Rephrasing comments, moving dumps and fixing typos

* Changing const VARSET_TP* for VARSET_VALARG_TP on args

* Variable home was variable location in VariableLiveRange context

* Rephrase and rename of VariableLiveKeeper properties

* Missing some renames

* Adding const where BasicBlock should not be modified

* siBeginBlock and siInit have support for debug code for VariableLiveRange and siScope info

* Adding USING_VARIABLE_LIVE_RANGE flags on methods definition.

* Variable home -> variable location

* Renaming and rephrasing names and uses of VariableLiveRange

* Moving LiveRangeDumper ctor to class declation

* Removing destructors

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Removing blank spaces and reordering functions inside class definition

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Miss to increment the index after refactoring

* Logic for keeping the last BasicBlock end IL offset is shared between siScope and VariableLiverange for debug code

* Missing to print on debug the last block VariableLiveRanges

* Avoid updating VariableLiveRange when unspilling and dying at the same assembly instruction

* Rephrasing #ifs and #ifdefs

* Calling VariableLiveKeeper in one line

* Avoid copying siVarLoc on genSetScopeInfo

* Removing unused args from eeSetLVinfo

* Changing VariableLiveKeeper ctor

* Typo

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Updating VariableLiveDescriptor ctor

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Error on first argument

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Changing reference for pointer

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Renaming assembly offset -> native offset

* removing unnecesary comments and asserts

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Update VariableLiveRange dump message

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Moving VariableLiveRanges classes inside VariableLiveKeeper

* Wrong flag name

* Adding documentation about how we track variables for debug info

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Adding opened issues to doc file

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Changing dump tittle

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Renaming VariableLiveKeeper property

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Update documentation

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Updating comments on flags

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
* Setting Scope Info as default way of tracking variables for debug info

Signed-off-by: Brian Bohe <brianbohe@gmail.com>
5 years agoFix HW intrinsic containment bugs (#23558)
Carol Eidt [Fri, 29 Mar 2019 23:35:09 +0000 (16:35 -0700)]
Fix HW intrinsic containment bugs (#23558)

* Fix HW intrinsic containment bugs

For the Fma case (#23430), fix the handling of contained 3-operand HW intrinsic nodes.
For the Bmi case (#23534), fix a bad assert placement, and re-enable the Bmi tests.

Fix #23530
Fix #23534

* Add guard for Fma test

5 years agoAssembly.Load ALC name (#23574)
Steve MacLean [Fri, 29 Mar 2019 23:33:37 +0000 (19:33 -0400)]
Assembly.Load ALC name (#23574)

Use normalized path for ALC name

5 years agoRemove Fedora runs.
Sergey Andreenko [Fri, 29 Mar 2019 23:28:19 +0000 (16:28 -0700)]
Remove Fedora runs.

GCStress fails there because it can't use external disasembler when it is available in CoreRoot.

5 years agoMerge pull request #23533 from briansull/Issue_23441
Brian Sullivan [Fri, 29 Mar 2019 23:14:20 +0000 (16:14 -0700)]
Merge pull request #23533 from briansull/Issue_23441

Fix for issue 23411

5 years agoIncrease GCStress test timeouts.
Sergey Andreenko [Fri, 29 Mar 2019 22:31:28 +0000 (15:31 -0700)]
Increase GCStress test timeouts.

New machines are slower that we had before, so increate the timeout for the longest runs.

5 years agoUse GenTreeStmt* where it is implied. (#22963)
Sergey Andreenko [Fri, 29 Mar 2019 22:17:37 +0000 (15:17 -0700)]
Use GenTreeStmt* where it is implied. (#22963)

* Extract `impAppendStmt` and `impExtractLastStmt`.

* Delete `BEG_STMTS` fake stmt.

Use new functions to keep the list updated.

* Retype `impTreeList` and `impTreeLast` as statements.
Rename `impTreeList` and `impTreeLast` to show that they are statements.

* Fix fields that have to be stmt.

* Start using GenTreeStmt.

Change `optVNAssertionPropCurStmt` to use GenTreeStmt.
Replace `GenTree* stmt = block->bbTreeList` with `GenTreeStmt* stmt = block->firstStmt()`.
Save results of `FirstNonPhiDef` as `GenTreeStmt`.

* Replace do-while with for loop.

* Change type inside VNAssertionPropVisitorInfo.

* Delete unused args fron `optVNConstantPropOnTree`.

* Update fields to be stmt.

Update optVNConstantPropCurStmt to use Stmt.
Change `lvDefStmt` to stmt.
Update LoopCloning structs.
Update `optDebugLogLoopCloning`.
Make `compCurStmt` a statement.
Update declaration name in `BuildNode`.

* Clean simple cpp files.

Clean valuenum.
Clean ssabuilder.
Clean simd.
Clean optcse.
Clean loopcloning.
Clean copyprop.
Clean optimizer part1.

* Start cleaning importer, morph, flowgraph, gentree.

* Continue clean functons.

Clean assertionprop.
Clean morph.
Clean gentree.
Clean flowgraph.
Clean compiler.
Clean rangecheck.
Clean indirectcalltransofrmer.
Clean others.

* Create some temp stmt.

* Delete unnecessary noway_assert and casts.

* Init `impStmtList` and `impLastStmt` in release.

* Response review 1.

5 years agoSimplify and unify Vector64/128/256 platform-agnostic intrinsic handling (#23028)
Fei Peng [Fri, 29 Mar 2019 21:28:30 +0000 (14:28 -0700)]
Simplify and unify Vector64/128/256 platform-agnostic intrinsic handling (#23028)

* Simplify and unify Vector64/128/256 platform-agnostic intrinsic handling

* Removed unsupported ISAs

5 years agoUse char16_t for *_W macros in corhdr.h on Linux/MacOs (#23559)
Ilia [Fri, 29 Mar 2019 20:00:08 +0000 (23:00 +0300)]
Use char16_t for *_W macros in corhdr.h on Linux/MacOs (#23559)

It fixes COR_CTOR_METHOD_NAME_W and many other macros on Linux
to be of type char16_t[] (not wchar_t[]) by using W("") instead of L"".

Bug: #21977

5 years agoexclude failing test. (#23566)
Sergey Andreenko [Fri, 29 Mar 2019 19:32:33 +0000 (12:32 -0700)]
exclude failing test. (#23566)

5 years agoUpdate dependencies from https://github.com/dotnet/corefx build 20190328.7 (#23555)
dotnet-maestro[bot] [Fri, 29 Mar 2019 18:06:02 +0000 (14:06 -0400)]
Update dependencies from https://github.com/dotnet/corefx build 20190328.7 (#23555)

- Microsoft.NETCore.Platforms - 3.0.0-preview4.19178.7
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview4.19178.7

5 years agoCorrectly marshal structure return values in member functions on Win-x64 and Win...
Jeremy Koritzinsky [Fri, 29 Mar 2019 16:49:55 +0000 (09:49 -0700)]
Correctly marshal structure return values in member functions on Win-x64 and Win-x86 (#23145)

* In Windows-x64, if we have a native member function signature with a struct return type, we need to do a by-ref return.

* Implement support for marshalling structure return values via a return buffer argument correctly in instance signatures on AMD64-Windows.

* Change field initialization ordering to satisfy warning.

* Try to narrow down the conditions that trigger these changes to just COM methods.

* Don't bash the return type on AMD64 Windows. Only treat it as a byref return buffer.

* PR feedback.

* Enable returning structs from COM methods via a return buffer on x86 for structs <= 8 bytes.

* Add test for struct returns with ThisCall. Extend the "struct return buffer" fix to functions marked as unmanaged thiscall since they all must be instance methods

* Don't include the return-type-bashing switch on AMD64 platforms.

* Don't do the signature swapping/copy on non-instance functions with struct returns.

* Cast the return type of GetStubTargetCallingConv to the right calling convention enum type.

* If we're doing a thiscall, marshal the "this" parameter before the return buffer (if the return buffer exists) on all platforms.

* Remove temporary logging code I added in for debugging.

* Clean up class naming.

* Try using a vtable instead of a pointer-to-member-function.

* Remove delete of class with non-virtual destructor

5 years agoMerge pull request #23423 from franksinankaya/gcc_cleanup_16
Jan Vorlicek [Fri, 29 Mar 2019 16:44:01 +0000 (17:44 +0100)]
Merge pull request #23423 from franksinankaya/gcc_cleanup_16

SSE abstraction for GCC and abstract __if_exists

5 years agoChange Timer implementation on Unixes to use only one scheduling thread (#7071)
Koundinya Veluri [Fri, 29 Mar 2019 13:53:35 +0000 (06:53 -0700)]
Change Timer implementation on Unixes to use only one scheduling thread (#7071)

* Change Timer implementation on Unixes to use only one scheduling thread

- Separated from https://github.com/dotnet/corert/pull/7066

* Address feedback from https://github.com/dotnet/corert/pull/7066

* Remove reference to s_lock

* Reduce work inside lock

* Move _id

* Fix duplicate timers in scheduled timer list, move info to TimerQueue

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years agoUpdate dependencies from https://github.com/dotnet/core-setup build 20190328.14 ...
dotnet-maestro[bot] [Fri, 29 Mar 2019 15:03:10 +0000 (11:03 -0400)]
Update dependencies from https://github.com/dotnet/core-setup build 20190328.14 (#23556)

- Microsoft.NETCore.App - 3.0.0-preview4-27528-14

5 years agoUpdate dependencies from https://github.com/dotnet/arcade build 20190329.1 (#23554)
dotnet-maestro[bot] [Fri, 29 Mar 2019 15:02:57 +0000 (11:02 -0400)]
Update dependencies from https://github.com/dotnet/arcade build 20190329.1 (#23554)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19179.1
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19179.1

5 years agoif exists
Sinan Kaya [Sat, 16 Feb 2019 20:16:11 +0000 (20:16 +0000)]
if exists

llvm

5 years agoUnify clang with GNUC
Sinan Kaya [Sun, 24 Mar 2019 23:45:43 +0000 (23:45 +0000)]
Unify clang with GNUC

Enable SSE for GCC

5 years ago Updating BuildTools, CoreCLR to preview4-03828-01, preview4-27528-71, respectively...
Tanner Gooding [Fri, 29 Mar 2019 13:32:52 +0000 (06:32 -0700)]
 Updating BuildTools, CoreCLR to preview4-03828-01, preview4-27528-71, respectively (#23536)

* Removing FeedTasksPackageVersion from dependencies.props
* The corresponding metadata was removed in https://github.com/dotnet/coreclr/pull/22884

* Updating BuildTools, CoreCLR to preview4-03828-01, preview4-27528-71, respectively

* Adding a ! in String.Searching.cs

5 years agoAvoid boxing allocations for async in Tier0 (#22984)
Ben Adams [Fri, 29 Mar 2019 06:49:08 +0000 (23:49 -0700)]
Avoid boxing allocations for async in Tier0 (#22984)

5 years agoDelete simple unused vars2 (#23491)
Sergey Andreenko [Fri, 29 Mar 2019 06:37:29 +0000 (23:37 -0700)]
Delete simple unused vars2 (#23491)

* Clean `valuenum.cpp`.

* Clean `emitarm64.cpp`.

* Clean `lsraarm64.cpp`.

* Clean `lsraarmarch.cpp`.

* Clean `lowerarmarch.cpp`.

* Clean `lower.cpp`.

* Clean `ssabuilder.cpp`.

* Clean `simd.cpp`.

* Clear `simdcodegenxarch.cpp`.

* Clean `lowerxarch.cpp`.

* Clean `scopeinfo.cpp`.

5 years ago[master] Update dependencies from dotnet/core-setup (#23407)
dotnet-maestro[bot] [Fri, 29 Mar 2019 06:10:26 +0000 (23:10 -0700)]
[master] Update dependencies from dotnet/core-setup (#23407)

* Update dependencies from https://github.com/dotnet/core-setup build 20190328.01

- Microsoft.NETCore.App - 3.0.0-preview4-27528-01

5 years agoSimplify StackFrame class (#23483)
Marek Safar [Fri, 29 Mar 2019 06:09:12 +0000 (07:09 +0100)]
Simplify StackFrame class (#23483)

5 years agoDelete RuntimeThread.cs (#23532)
Jan Kotas [Fri, 29 Mar 2019 06:00:53 +0000 (23:00 -0700)]
Delete RuntimeThread.cs (#23532)

No longer needed

5 years agoImprove performance of Marvin32 (#22816)
Levi Broderick [Fri, 29 Mar 2019 05:25:16 +0000 (22:25 -0700)]
Improve performance of Marvin32 (#22816)

5 years agoExclude failing in PRs tests 2. (#23540)
Sergey Andreenko [Fri, 29 Mar 2019 02:00:01 +0000 (19:00 -0700)]
Exclude failing in PRs tests 2. (#23540)

* exclude failing in PRs tests

* And another one.

* Exclude for all platforms.

5 years agoDelete `setup_coredis_tools` from runtest.py. (#23495)
Sergey Andreenko [Fri, 29 Mar 2019 01:54:03 +0000 (18:54 -0700)]
Delete `setup_coredis_tools` from runtest.py. (#23495)

* Delete `setup_coredis_tools` from runtest.py.

* delete dead `setup_coredis_tools` .

5 years agoFix for issue #23441
Brian Sullivan [Wed, 27 Mar 2019 20:23:30 +0000 (13:23 -0700)]
Fix for issue #23441
Added test case GitHub_23411

5 years agoFix increment calculation in IncrementingPollingCounter (#23502)
Sung Yoon Whang [Fri, 29 Mar 2019 00:25:00 +0000 (17:25 -0700)]
Fix increment calculation in IncrementingPollingCounter (#23502)

* Add test for IncrementingPollingCounter

* Fix a bug in Increment calculation in IncrementingPollingCounter

* Remove setting DisplayName property since that's a private property for now

* fix comment

* Remove unused variables

5 years agoExclude failing in PRs tests. (#23535)
Sergey Andreenko [Fri, 29 Mar 2019 00:21:50 +0000 (17:21 -0700)]
Exclude failing in PRs tests. (#23535)

* exclude failing in PRs tests

5 years agoFix codegen for StoreNonTemporal (#23511)
Carol Eidt [Thu, 28 Mar 2019 20:45:32 +0000 (13:45 -0700)]
Fix codegen for StoreNonTemporal (#23511)

* Fix codegen for StoreNonTemporal

Also, add some asserts and mark some intrinsics as not supporting containment.

Fix #23509

5 years agoRestrict Ubuntu.1404.Arm32.Open from running against PRs (#23523)
Egor Chesakov [Thu, 28 Mar 2019 20:26:23 +0000 (13:26 -0700)]
Restrict Ubuntu.1404.Arm32.Open from running against PRs (#23523)

5 years agoStruct & SIMD improvements (#22255)
Carol Eidt [Thu, 28 Mar 2019 18:23:10 +0000 (11:23 -0700)]
Struct & SIMD improvements (#22255)

* [WIP] Struct & SIMD improvements

- Enable CSE of struct values when handle is available (and add code to get the handle of HW SIMD types)
- Don't require block nodes for SIMD assignments
- Don't set `GTF_GLOB_REF` on `GT_OBJ` if it is local
- Set `lvRegStruct` on promoted SIMD fields
- Add tests for #19910 (fixed with this PR) and #3539 & #19438 (fixed with #21314)
- Additional cleanup

Fix #19910

5 years agoFix Helix queue names (#23468)
Jeremy Koritzinsky [Thu, 28 Mar 2019 18:22:04 +0000 (11:22 -0700)]
Fix Helix queue names (#23468)

* Fix Helix queue names

* Fix open Deb9 queue name.

5 years agoSwitch to BYOC BuildPools in internal project (#23501)
Egor Chesakov [Thu, 28 Mar 2019 18:18:06 +0000 (11:18 -0700)]
Switch to BYOC BuildPools in internal project (#23501)

* dnceng-linux-internal-temp -> BuildPool.Ubuntu.1604.Amd64
* dotnet-internal-temp -> BuildPool.Windows.10.Amd64.VS2017

5 years agoMerge pull request #23519 from BruceForstall/RestoreWindowsArmBuildJobs
Bruce Forstall [Thu, 28 Mar 2019 18:08:05 +0000 (11:08 -0700)]
Merge pull request #23519 from BruceForstall/RestoreWindowsArmBuildJobs

Restore Windows arm32/arm64 innerloop build jobs

5 years agoNullable: System.Object (#23466)
Santiago Fernandez Madero [Wed, 27 Mar 2019 22:17:36 +0000 (15:17 -0700)]
Nullable: System.Object (#23466)

5 years agoNullable: all calendars (#23469)
Krzysztof Wicher [Wed, 27 Mar 2019 18:25:12 +0000 (11:25 -0700)]
Nullable: all calendars (#23469)

* calendar

* nullable: all calendars

* fix likely corert error

5 years agoNullable: System.Char (#23480)
Santiago Fernandez Madero [Wed, 27 Mar 2019 17:54:45 +0000 (10:54 -0700)]
Nullable: System.Char (#23480)

5 years agoRestore Windows arm32/arm64 innerloop build jobs
Bruce Forstall [Thu, 28 Mar 2019 16:55:55 +0000 (09:55 -0700)]
Restore Windows arm32/arm64 innerloop build jobs

These are required by the innerloop flow jobs.

5 years agoMerge pull request #23325 from VSadov/CmpExchA64
Vladimir Sadov [Thu, 28 Mar 2019 17:25:25 +0000 (10:25 -0700)]
Merge pull request #23325 from VSadov/CmpExchA64

Resolve 22303   (interlocked failures on ARM64)

5 years agoGetPinnableReference on String.cs (#23428)
simplejackcoder [Thu, 28 Mar 2019 15:20:15 +0000 (08:20 -0700)]
GetPinnableReference on String.cs (#23428)

* GetPinnableReference on String.cs

* Add attributes for debugger and performance

5 years ago[master] Update dependencies from dotnet/arcade (#23406)
dotnet-maestro[bot] [Thu, 28 Mar 2019 15:17:39 +0000 (08:17 -0700)]
[master] Update dependencies from dotnet/arcade (#23406)

* Update dependencies from https://github.com/dotnet/arcade build 20190327.11

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19177.11
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19177.11

5 years ago[master] Update dependencies from dotnet/corefx (#23455)
dotnet-maestro[bot] [Thu, 28 Mar 2019 15:16:53 +0000 (08:16 -0700)]
[master] Update dependencies from dotnet/corefx (#23455)

* Update dependencies from https://github.com/dotnet/corefx build 20190328.1

- Microsoft.NETCore.Platforms - 3.0.0-preview4.19178.1
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview4.19178.1

5 years agoMove QueryPerformanceCounter PInvokes to shared (dotnet/corefx#36409)
Jan Kotas [Thu, 28 Mar 2019 05:37:22 +0000 (22:37 -0700)]
Move QueryPerformanceCounter PInvokes to shared (dotnet/corefx#36409)

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years agoNullable updates for byte type (#23460)
buyaa-n [Wed, 27 Mar 2019 02:15:17 +0000 (19:15 -0700)]
Nullable updates for byte type (#23460)

5 years agoNullable changes for boolean type (#23451)
buyaa-n [Tue, 26 Mar 2019 16:32:15 +0000 (09:32 -0700)]
Nullable changes for boolean type (#23451)

* Nullable changes for boolean type

5 years agoNullable: String (#23450)
Santiago Fernandez Madero [Tue, 26 Mar 2019 16:27:32 +0000 (09:27 -0700)]
Nullable: String (#23450)

5 years agonullable: number (#23454)
Krzysztof Wicher [Tue, 26 Mar 2019 16:23:00 +0000 (09:23 -0700)]
nullable: number (#23454)

5 years agoNullable: Uint32, (U)Int16, (U)Int64 (#23449)
Krzysztof Wicher [Tue, 26 Mar 2019 04:10:24 +0000 (21:10 -0700)]
Nullable: Uint32, (U)Int16, (U)Int64 (#23449)

* Nullable: UInt32

* (U)Int16, (U)Int64

* Make NumberFormatInfo non-nullable

5 years agoNullable: Int32 (#23443)
Krzysztof Wicher [Tue, 26 Mar 2019 02:13:42 +0000 (19:13 -0700)]
Nullable: Int32 (#23443)

* Nullable: Int32

* remove restore and move nullable up front

* remove trailing \n after #nullable to make it easier to remove later

5 years agoALC Enhancement nits (#23506)
Steve MacLean [Thu, 28 Mar 2019 00:15:45 +0000 (20:15 -0400)]
ALC Enhancement nits (#23506)

isCollectible default should be false
String should be string

5 years agoALC enhancements (#22273)
Steve MacLean [Wed, 27 Mar 2019 23:49:17 +0000 (19:49 -0400)]
ALC enhancements (#22273)

* Initial implementatation of ALC enhancements

Add public constructor with name
Add Name property
Add Assemblies property
Add All property
Override ToString
Name Default and Assembly.Load(...) ALCs
Add AssemblyLoadContext30Extensions test

5 years agoExtend WindowsEventLog test for EntryPointFilter (#23178)
Steve MacLean [Wed, 27 Mar 2019 21:24:00 +0000 (17:24 -0400)]
Extend WindowsEventLog test for EntryPointFilter (#23178)

* Extend WindowsEventLog test

Verify EntryPointFilter solves logging problem with native host swallowing exceptions

WindowsEventLog only look at new entries
WindowsEventLog remove time check

Add mechanism to corhost to emulate host swallowing all exceptions

* PR feedback

5 years agoUpdate DllMap doc (#22804)
Swaroop Sridhar [Wed, 27 Mar 2019 21:03:25 +0000 (14:03 -0700)]
Update DllMap doc (#22804)

* Update DllMap doc

Update DllMap design doc:
* To note the NativeLibrary APIs that can be used to implement DllMap
* To point to a sample implementation of DllMap.

5 years agoAdd ALC.ContextualReflection.md (#23335)
Steve MacLean [Wed, 27 Mar 2019 18:02:18 +0000 (14:02 -0400)]
Add ALC.ContextualReflection.md (#23335)

5 years agoRevert "Delete unused variables in jit. Part 2. (#23481)" (#23488)
Sergey Andreenko [Wed, 27 Mar 2019 17:59:04 +0000 (10:59 -0700)]
Revert "Delete unused variables in jit. Part 2. (#23481)" (#23488)

This reverts commit 6cb120cc74ca61fc314e3cc43007778d2aafd041.

5 years agoDelete unused variables in jit. Part 2. (#23481)
Sergey Andreenko [Wed, 27 Mar 2019 17:22:18 +0000 (10:22 -0700)]
Delete unused variables in jit. Part 2. (#23481)

* Clean `valuenum.cpp`.

* Clean `emitarm64.cpp`.

* Clean `lsraarm64.cpp`.

* Clean `lsraarmarch.cpp`.

* Clean `lowerarmarch.cpp`.

* Clean `lower.cpp`.

* Clean `ssabuilder.cpp`.

* Clean `simd.cpp`.

* Clear `simdcodegenxarch.cpp`.

* Clean `lowerxarch.cpp`.

* Clean `scopeinfo.cpp`.

* Clean `hwintrinsiccodegenxarch.cpp`.

5 years agoEliminate EventPipeBuffer::Close()
Andrew Au [Wed, 27 Mar 2019 00:38:27 +0000 (17:38 -0700)]
Eliminate EventPipeBuffer::Close()

5 years agoFixing the codegen for x64 intrinsics to use EA_8BYTE where needed. (#23461)
Tanner Gooding [Wed, 27 Mar 2019 10:33:56 +0000 (03:33 -0700)]
Fixing the codegen for x64 intrinsics to use EA_8BYTE where needed. (#23461)

5 years agoAdd call to setup-stress-dependencies.sh to build-test.sh. (#23435)
Sergey Andreenko [Wed, 27 Mar 2019 07:25:06 +0000 (00:25 -0700)]
Add call to setup-stress-dependencies.sh to build-test.sh. (#23435)

5 years agoUpdate CoreFX arm64 test exclusions. (#23463)
Sergey Andreenko [Wed, 27 Mar 2019 07:14:38 +0000 (00:14 -0700)]
Update CoreFX arm64 test exclusions. (#23463)

5 years agoReplacing the /Trusted_Platform_Assemblies switch with a simpler /r switch that can...
Fadi Hanna [Wed, 27 Mar 2019 03:56:57 +0000 (20:56 -0700)]
Replacing the /Trusted_Platform_Assemblies switch with a simpler /r switch that can be used multiple times in the command line to provide a list of reference assemblies. Reference assemblies can now be passed as individual file entries instead of a giant string of semi-column separated entries. (#23462)

5 years agoUse DotNet-HelixApi-Access only in internal project (#23479)
Egor Chesakov [Wed, 27 Mar 2019 03:47:48 +0000 (20:47 -0700)]
Use DotNet-HelixApi-Access only in internal project (#23479)

5 years agoHandle addressing modes for HW intrinsics (#22944)
Carol Eidt [Tue, 26 Mar 2019 23:13:40 +0000 (16:13 -0700)]
Handle addressing modes for HW intrinsics (#22944)

* Handle addressing modes for HW intrinsics

Also, eliminate some places where the code size estimates were over-estimating.

Contribute to #19550
Fix #19521

5 years agoMake tests outerloop again
vsadov [Tue, 26 Mar 2019 22:10:26 +0000 (15:10 -0700)]
Make tests outerloop again

5 years agoCleaning up the P/Invoke signatures for QPF and QPC to avoid marshalling and pinning...
Tanner Gooding [Tue, 26 Mar 2019 15:48:03 +0000 (08:48 -0700)]
Cleaning up the P/Invoke signatures for QPF and QPC to avoid marshalling and pinning (#36071)

* Cleaning up the P/Invoke signatures for QPF and QPC to avoid marshalling and pinning

* Responding to PR feedback.

* Dropping support for low resolution stopwatch

* Removing BestFitMapping=false

* Removing unneeded unsafe declarations

* Addressing more PR feedback

* Fixing the pal_time header file

* Fixing the Unix P/Invoke signatures for GetTimestamp and GetTimestampResolution to return ulong.

* Fixing GetTimestampResolution to scale the result for HAVE_CLOCK_MONOTONIC

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years agoMerge pull request #23430 from janvorli/disable-ijw-load-in-collectible-alc
Jan Vorlicek [Mon, 25 Mar 2019 23:20:32 +0000 (00:20 +0100)]
Merge pull request #23430 from janvorli/disable-ijw-load-in-collectible-alc

Disable loading IJW assemblies into collectible ALC

5 years agoReplace Win32 resource reading logic with cross platform implementation (#23363)
David Wrighton [Mon, 25 Mar 2019 23:04:26 +0000 (16:04 -0700)]
Replace Win32 resource reading logic with cross platform implementation (#23363)

* FindResource direct implementation in PEDecoder

* Fixup bugs identified in resource reading

5 years agoJIT: don't treat whitespace as separator in assembly name lists (#23410)
Andy Ayers [Mon, 25 Mar 2019 22:05:45 +0000 (15:05 -0700)]
JIT: don't treat whitespace as separator in assembly name lists (#23410)

Only recognize ";" as a separator, so that we can support exclusions or inclusions
of assemblies whose names include spaces.

Impacts the altjit exclude list, and the disasm include list.

Addresses dotnet/jitutils#200.

5 years agoMark test GitHub_18582 as optimization sensitive (#23434)
Andy Ayers [Mon, 25 Mar 2019 22:00:26 +0000 (15:00 -0700)]
Mark test GitHub_18582 as optimization sensitive (#23434)

Jitstress on OSX will turn on cloning stress in `Test` and cause stack overflows
cloning the large `GT_LIST` subtree of the call.

See issue #23346.

5 years agoDisabled new IJW tests
Jan Vorlicek [Mon, 25 Mar 2019 17:07:25 +0000 (18:07 +0100)]
Disabled new IJW tests

There were couple of IJW tests added since the master I've based my
changes on. Adding disabling of those for unloadability testing.

5 years agoDisable loading IJW assemblies into collectible ALC
Jan Vorlicek [Fri, 22 Mar 2019 13:53:31 +0000 (14:53 +0100)]
Disable loading IJW assemblies into collectible ALC

5 years agoMerge pull request #23413 from luhenry/fix-gh22302-2
Jan Vorlicek [Mon, 25 Mar 2019 16:57:08 +0000 (17:57 +0100)]
Merge pull request #23413 from luhenry/fix-gh22302-2

Improve detection of CPU limits when running inside a Container

5 years agoMiscellaneous R2RDump improvements (#23215)
Tomáš Rylek [Mon, 25 Mar 2019 16:22:46 +0000 (17:22 +0100)]
Miscellaneous R2RDump improvements (#23215)

1) In Naked mode, hide the distinction amongst METHOD_ENTRY vs.
METHOD_ENTRY_REF_TOKEN vs. METHOD_ENTRY_DEF_TOKEN as it's not
important for correctness and causes undesirable churn in diffs.
This required propagating the DumpOptions around in a couple
of places.

2) For historical reasons, the DisassemblingTypeProvider had
its own implementations of metadata formatting that is now provided
by MetadataNameFormatter. I have removed at least a part of this
duplication in this change. [It was causing undesirable diffs as
one version used to output type owner assemblies whereas the other
did not.]

Thanks

Tomas

5 years agoRe-enable Index/Range Jit test (#23415)
Tarek Mahmoud Sayed [Mon, 25 Mar 2019 15:23:33 +0000 (08:23 -0700)]
Re-enable Index/Range Jit test (#23415)

5 years agotypo: Double word "both" (dotnet/corefx#36272)
Nick Schonning [Sun, 24 Mar 2019 20:46:16 +0000 (16:46 -0400)]
typo: Double word "both" (dotnet/corefx#36272)

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>