platform/upstream/coreclr.git
6 years agoFixed method name in comment (#18571)
Alfred Myers [Wed, 20 Jun 2018 23:31:00 +0000 (20:31 -0300)]
Fixed method name in comment (#18571)

6 years agoMerge pull request #18573 from CarolEidt/ExplicitLayoutTest
Carol Eidt [Wed, 20 Jun 2018 23:26:58 +0000 (16:26 -0700)]
Merge pull request #18573 from CarolEidt/ExplicitLayoutTest

Add another test for #17971

6 years agoAn UnusedValue still requires a target reg (#18561)
Carol Eidt [Wed, 20 Jun 2018 21:55:12 +0000 (14:55 -0700)]
An UnusedValue still requires a target reg (#18561)

* An UnusedValue still requires a target reg

The BuildSimple method wasn't creating a def for an unused value. Although (in this case) the code is dead, the code generator must still be able to generate code for it.

* Add test case for #18295 to arm/arm64 tests.lst

6 years agoadded concurrent access detection to Remove() (#18524)
Marco Rossignoli [Wed, 20 Jun 2018 19:19:06 +0000 (21:19 +0200)]
added concurrent access detection to Remove() (#18524)

6 years agoAdd another test for #17971
Carol Eidt [Wed, 20 Jun 2018 18:02:27 +0000 (11:02 -0700)]
Add another test for #17971

6 years agoRemove MaskLoad tests from arm and arm64 lst files (#18569)
Jarret Shook [Wed, 20 Jun 2018 17:39:04 +0000 (10:39 -0700)]
Remove MaskLoad tests from arm and arm64 lst files (#18569)

This will disable the test from being run with smart in our windows arm
testing. This corresponds to the tests being deleted in #17637.

6 years agoAvoid extra allocation in IDNA (#18551)
Tarek Mahmoud Sayed [Wed, 20 Jun 2018 01:50:38 +0000 (18:50 -0700)]
Avoid extra allocation in IDNA (#18551)

* Avoid extra allocation in IDNA

* cache the indexd value in StringBuilder

6 years agoFix instruction groups offset on the border between cold/hot code. (#17775)
Sergey Andreenko [Wed, 20 Jun 2018 01:02:11 +0000 (18:02 -0700)]
Fix instruction groups offset on the border between cold/hot code. (#17775)

* add an additional debug printing.

* add additional checks

* Clean-up checks a bit.

* fill unused allocated chunks

* clean up checks

* fix EMITTER_STATS

* optimize padding filling

call to emitCurCodeOffs(cp) is not free.

6 years agoFix Complus_JitMinOpts for the first method (#18555)
Sergey Andreenko [Wed, 20 Jun 2018 01:01:36 +0000 (18:01 -0700)]
Fix Complus_JitMinOpts for the first method (#18555)

6 years agoRemove StringBuilderCache usage from System.Text.RegularExpressions (#30474)
Viktor Hofer [Tue, 19 Jun 2018 21:34:37 +0000 (23:34 +0200)]
Remove StringBuilderCache usage from System.Text.RegularExpressions (#30474)

* Remove StringBuilderCache usage

* fixed buffer size, manual reverse copying & local textinfo

* Fast path for not to encode string

* avoid one span slice

* code formatting & bounds check opt

* Avoid string allocation in char class

Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
6 years agoMerge pull request #18357 from acmyu/sections
Amy [Tue, 19 Jun 2018 23:34:29 +0000 (16:34 -0700)]
Merge pull request #18357 from acmyu/sections

R2RDump - Dump CompilerIdentifier and ImportSection contents

6 years agoParse entries of import section
Amy Yu [Tue, 19 Jun 2018 21:42:05 +0000 (14:42 -0700)]
Parse entries of import section

6 years agoAvoid two unnecessary string.Substring calls in PunycodeDecode (#18546)
Stephen Toub [Tue, 19 Jun 2018 21:28:32 +0000 (17:28 -0400)]
Avoid two unnecessary string.Substring calls in PunycodeDecode (#18546)

6 years agofixes for sos on FreeBSD (#18479)
Tomas Weinfurt [Tue, 19 Jun 2018 20:54:41 +0000 (13:54 -0700)]
fixes for  sos on FreeBSD (#18479)

* fixes for  sos on FreeBSD

* refactore unwind detection to common block for BSD and Linux

* missing newline

* do not do libunwind detection for OSX

6 years agoFix struct promotion check for SIMD field (#18548)
Carol Eidt [Tue, 19 Jun 2018 20:35:02 +0000 (13:35 -0700)]
Fix struct promotion check for SIMD field (#18548)

A struct can have `lvIsRegArg` true but have multiple SIMD fields if it is passed by reference.

6 years agoTypo (#18550)
John Doe [Tue, 19 Jun 2018 20:26:30 +0000 (13:26 -0700)]
Typo (#18550)

* accesible -> accessible

* acheive -> achieve

* addtional -> additional

* affars -> affairs

* approch -> approach

* archtecture -> architecture

* aritmetic -> arithmetic

* arquired -> acquired

* assigments -> assignments

* assmblies -> assemblies

6 years agoDump bytes with offset instead of rva
Amy Yu [Fri, 8 Jun 2018 23:16:23 +0000 (16:16 -0700)]
Dump bytes with offset instead of rva

6 years agoParse and dump compiler identifier and import sections, move dump section contents...
Amy Yu [Thu, 7 Jun 2018 22:01:23 +0000 (15:01 -0700)]
Parse and dump compiler identifier and import sections, move dump section contents to own function

6 years agoDump contents of NativeArray and NativeHashtable
Amy Yu [Thu, 7 Jun 2018 20:40:37 +0000 (13:40 -0700)]
Dump contents of NativeArray and NativeHashtable

6 years agoUse GetEntryPointIdFromOffset to get EntryPointId of generic methods
Amy Yu [Thu, 7 Jun 2018 18:53:18 +0000 (11:53 -0700)]
Use GetEntryPointIdFromOffset to get EntryPointId of generic methods

6 years agoOutput formatting changes for unwindInfo and section contents
Amy Yu [Thu, 7 Jun 2018 01:00:58 +0000 (18:00 -0700)]
Output formatting changes for unwindInfo and section contents

6 years agoMerge pull request #18500 from acmyu/liveness
Amy [Tue, 19 Jun 2018 20:23:18 +0000 (13:23 -0700)]
Merge pull request #18500 from acmyu/liveness

R2RDump - Output GcSlot liveness interweaved with disasm instructions

6 years agoSave name of dll in constant, use tab instead of spaces
Amy Yu [Tue, 19 Jun 2018 18:22:03 +0000 (11:22 -0700)]
Save name of dll in constant, use tab instead of spaces

6 years agoUpdate CoreClr to preview1-26619-04 (#18540)
dotnet-maestro-bot [Tue, 19 Jun 2018 15:39:01 +0000 (08:39 -0700)]
Update CoreClr to preview1-26619-04 (#18540)

6 years agoPInvoke calli support for CoreRT (#18534)
Jan Kotas [Tue, 19 Jun 2018 12:58:44 +0000 (05:58 -0700)]
PInvoke calli support for CoreRT (#18534)

* Ifdef out NGen-specific PInvoke calli inlining limitation for CoreCLR

This limitation seems to be a left-over from effort to eliminate JITing with fragile NGen.

* Delete dead partial-trust related code

* Allow PInvoke stub inlining

* Add convertCalliToCall JIT/EE interface method

* Update superpmi

6 years agoUpdate BuildTools, CoreClr, CoreFx, PgoData to preview1-02918-02, preview1-26619...
dotnet-maestro-bot [Tue, 19 Jun 2018 11:31:55 +0000 (04:31 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02918-02, preview1-26619-01, preview1-26617-01, master-20180619-0054, respectively (#18518)

6 years agoRemoved dead strings from corerror.xml
Henry Sharber [Tue, 19 Jun 2018 01:41:02 +0000 (21:41 -0400)]
Removed dead strings from corerror.xml

6 years agoRemove dead strings mscorrc.rc
Henry Sharber [Mon, 18 Jun 2018 02:31:46 +0000 (22:31 -0400)]
Remove dead strings mscorrc.rc

6 years agogenPutArgStk needs to check for FIELD_LIST first (#18499)
Carol Eidt [Tue, 19 Jun 2018 00:11:56 +0000 (17:11 -0700)]
genPutArgStk needs to check for FIELD_LIST first (#18499)

When a struct is passed on the stack using `FIELD_LIST`, the type of the `FIELD_LIST` is the type of its first field. If that type was a struct type (i.e. a SIMD type), `genPutArgStk` would assume that it was the non-`FIELD_LIST` case.

Fix #18497

6 years agoDelete PinnableBufferCache (dotnet/corert#5950)
Jan Kotas [Mon, 18 Jun 2018 19:00:33 +0000 (12:00 -0700)]
Delete PinnableBufferCache (dotnet/corert#5950)

Port https://github.com/dotnet/coreclr/pull/18360 to CoreRT

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoCorrectly return early if the test fails (#18529)
Jarret Shook [Mon, 18 Jun 2018 21:07:39 +0000 (14:07 -0700)]
Correctly return early if the test fails (#18529)

6 years agoAdd public implementation WindowsRuntime ExceptionSupport (#18494)
Luqun Lou [Mon, 18 Jun 2018 20:24:48 +0000 (13:24 -0700)]
Add public implementation WindowsRuntime ExceptionSupport (#18494)

6 years agoImprove Intel hardware intrinsic APIs (#17637)
Fei Peng [Mon, 18 Jun 2018 20:17:41 +0000 (13:17 -0700)]
Improve Intel hardware intrinsic APIs (#17637)

* Improve Intel hardware intrinsic APIs

* Simplify Avx.Extract non-const fallback

6 years agotemporarily disable pthread based named mutexes on FreeBSD (#18480)
Tomas Weinfurt [Mon, 18 Jun 2018 19:54:23 +0000 (12:54 -0700)]
temporarily disable pthread based named mutexes on FreeBSD (#18480)

6 years agoDocument span lifetime issue in CreateSpan (dotnet/corefx#30490) (#18528)
dotnet bot [Mon, 18 Jun 2018 17:45:42 +0000 (10:45 -0700)]
Document span lifetime issue in CreateSpan (dotnet/corefx#30490) (#18528)

The language rules around span safety that C# and F# adhere to assume
there is no way to create a `Span<T>` wrapper over a `ref` local /
parameter. This means `ref` inputs into a method are not considered when
calculating the allowed lifetime of a returned `Span<T>`. Hence both
CreateSpan and CreateReadOnlySpan will be assumed to have heap lifetime
even when provided stack based inputs. Example:

``` c#
Span<int> Example() {
  int i = 42;
  Span<int> span = MemoryMarshal.CreateSpan(ref i, length: 1);
  return span; // C# and F# will allow this
}
```

In this case the actual lifetime of `span` is that of `i`. Yet the
compiler doesn't consider the `ref i` input and hence believes this must
be heap based and hence safe to return out of the method.

This is okay as these methods are unsafe. But want to explicitly
document that fact.

More information on the safety rules can be found in the [span safety
proposal](https://github.com/dotnet/csharplang/blob/master/proposals/csharp-7.2/span-safety.md)

Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
6 years agoTypo (#18520)
John Doe [Mon, 18 Jun 2018 17:45:13 +0000 (10:45 -0700)]
Typo (#18520)

* Acutal -> Actual

* addtional -> additional

* agressive -> aggressive

* agument -> argument

* Alignement -> Alignment

* alredy -> already

* MAnaged -> Managed

* analagous -> analogous

* aquire -> acquire

* arbitary -> arbitrary

6 years agoRe-Enable StructABI test for xplat (#18496)
Jarret Shook [Mon, 18 Jun 2018 17:32:53 +0000 (10:32 -0700)]
Re-Enable StructABI test for xplat (#18496)

6 years agomach_absolute_time as the primary clock source on macOS (corefx#30391) (#18505)
Andrey Akinshin [Mon, 18 Jun 2018 17:11:32 +0000 (13:11 -0400)]
mach_absolute_time as the primary clock source on macOS (corefx#30391) (#18505)

macOS 10.12+ supports clock_gettime (HAVE_CLOCK_MONOTONIC is defined)
However, mach_absolute_time has better resolution and should be used
as the primary clock source.

6 years agoUpdate CoreClr, CoreFx to preview1-26616-03, preview1-26616-02, respectively (#18503)
dotnet-maestro-bot [Sat, 16 Jun 2018 18:54:59 +0000 (11:54 -0700)]
Update CoreClr, CoreFx to preview1-26616-03, preview1-26616-02, respectively (#18503)

6 years agoUpdate BuildTools, CoreClr to preview1-02915-01, preview1-26616-01, respectively...
dotnet-maestro-bot [Sat, 16 Jun 2018 05:36:31 +0000 (22:36 -0700)]
Update BuildTools, CoreClr to preview1-02915-01, preview1-26616-01, respectively (#18495)

6 years agoAdd missing registers enum
Amy Yu [Sat, 16 Jun 2018 00:37:10 +0000 (17:37 -0700)]
Add missing registers enum

6 years agoInterweave gcslot liveness with disasm
Amy Yu [Sat, 16 Jun 2018 00:07:41 +0000 (17:07 -0700)]
Interweave gcslot liveness with disasm

6 years agoUse DumpInstruction instead of code block
Amy Yu [Fri, 15 Jun 2018 18:46:49 +0000 (11:46 -0700)]
Use DumpInstruction instead of code block

6 years agoMerge pull request #18474 from acmyu/gc
Amy [Fri, 15 Jun 2018 23:36:40 +0000 (16:36 -0700)]
Merge pull request #18474 from acmyu/gc

R2RDump - Get GC slot liveness code offset

6 years agoMerge pull request #18379 from acmyu/disasm
Amy [Fri, 15 Jun 2018 23:36:18 +0000 (16:36 -0700)]
Merge pull request #18379 from acmyu/disasm

R2RDump - Print disassembly to text buffer

6 years agoDelete bitrotten appdomain agility checks (#18489)
Jan Kotas [Fri, 15 Jun 2018 22:44:36 +0000 (15:44 -0700)]
Delete bitrotten appdomain agility checks (#18489)

Fixes #18484

6 years agoUse correct field offset in genPutArgStkFieldList (#18483)
Carol Eidt [Fri, 15 Jun 2018 21:46:19 +0000 (14:46 -0700)]
Use correct field offset in genPutArgStkFieldList (#18483)

* Use correct field offset in genPutArgStkFieldList

Fix #18482

* formatting

* Add the new test to the arm and arm64 test lists

6 years agoAvoid some virtual dispatch in Encodings (#18487)
Stephen Toub [Fri, 15 Jun 2018 21:45:44 +0000 (17:45 -0400)]
Avoid some virtual dispatch in Encodings (#18487)

- Seal some internal overrides
- In the more common encodings, add overrides of GetBytes/GetByteCount/GetChars/GetCharCount to avoid another layer of virtuals from the base class (they can call to an internal non-virtual).

6 years agoUse IntPtr instead of long for pointers
Amy Yu [Fri, 15 Jun 2018 21:17:06 +0000 (14:17 -0700)]
Use IntPtr instead of long for pointers

6 years agoFix bugs from trying to get transitions for untracked slots when it's not supposed to
Amy Yu [Fri, 15 Jun 2018 20:00:15 +0000 (13:00 -0700)]
Fix bugs from trying to get transitions for untracked slots when it's not supposed to

6 years agoAdjust method comment
Amy Yu [Fri, 15 Jun 2018 18:40:54 +0000 (11:40 -0700)]
Adjust method comment

6 years agoEnsure AdjustmentRule.DaylightDelta is within [-12,12] (#18477)
Krzysztof Wicher [Fri, 15 Jun 2018 18:08:29 +0000 (11:08 -0700)]
Ensure AdjustmentRule.DaylightDelta is within [-12,12] (#18477)

* Modulo AdjustmentRule.DaylightDelta

* fix typo

6 years agoUpdate BuildTools, CoreClr, CoreFx, PgoData to preview1-02914-01, preview1-26615...
dotnet-maestro-bot [Fri, 15 Jun 2018 16:19:33 +0000 (09:19 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02914-01, preview1-26615-04, preview1-26615-01, master-20180615-0040, respectively (#18472)

6 years agoFix handling of generating relative path to parent (#18460)
Jeremy Kuhne [Fri, 15 Jun 2018 03:12:28 +0000 (20:12 -0700)]
Fix handling of generating relative path to parent (#18460)

Fixes #30263

6 years agoclean up list of disabled warnings. (#18318)
Sergey Andreenko [Fri, 15 Jun 2018 01:32:41 +0000 (18:32 -0700)]
clean up list of disabled warnings. (#18318)

* delete warnings that do not longer exist

For example C4171 was deleted after VS 6.0 (https://docs.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-6.0/aa233011(v=vs.60))

* delete C4206 fromm the list

because its default value is 4, so this line is useless.

* reenable warning as error.

* enable warning C4430

and fix places that trigger it.

* fix C4334

* format the list

* fix ssize_t

6 years agoMake gcInfoTypes global instead of passed as param
Amy Yu [Fri, 15 Jun 2018 01:20:57 +0000 (18:20 -0700)]
Make gcInfoTypes global instead of passed as param

6 years agofix the desktop build break (#18475)
Sergey Andreenko [Fri, 15 Jun 2018 00:44:55 +0000 (17:44 -0700)]
fix the desktop build break (#18475)

* fix desktop build break

after #18346

* add dstCount

6 years agoFixed some bugs with gc transitions
Amy Yu [Fri, 15 Jun 2018 00:34:47 +0000 (17:34 -0700)]
Fixed some bugs with gc transitions

6 years agoGet gc slot liveness code offset
Amy Yu [Thu, 14 Jun 2018 22:37:35 +0000 (15:37 -0700)]
Get gc slot liveness code offset

6 years ago[Windows|Arm64|Vararg] Add FEATURE_ARG_SPLIT (#18346)
Jarret Shook [Thu, 14 Jun 2018 20:16:45 +0000 (13:16 -0700)]
[Windows|Arm64|Vararg] Add FEATURE_ARG_SPLIT (#18346)

* [ARM64|Windows|Vararg] Add FEATURE_ARG_SPLIT

Enable splitting >8 byte <= 16 byte structs for arm64 varargs
between x7 and virtual stack slot 0.

* Force notHfa for vararg methods

* Correctly pass isVararg

* Correct var name

6 years agoARM: increase small reg set for jitStressRegs=3 (#18462)
Carol Eidt [Thu, 14 Jun 2018 19:24:16 +0000 (12:24 -0700)]
ARM: increase small reg set for jitStressRegs=3 (#18462)

We may need two registers (base + offset) to set up the target register for a virtual call.

Fix #18228

6 years agoadd overloads (#18458)
Marco Rossignoli [Thu, 14 Jun 2018 17:30:56 +0000 (19:30 +0200)]
add overloads (#18458)

6 years agoWrite and WriteAsync overloads for StringBuilder. (#18281)
Vance Morrison [Thu, 14 Jun 2018 16:06:08 +0000 (09:06 -0700)]
Write and WriteAsync overloads for StringBuilder. (#18281)

* Write and WriteAsync overloads for StringBuilder.

Addresses issue https://github.com/dotnet/corefx/issues/30048

Note that tests will come as a separate checking as part of the coreFX repo.

* Review feedback

* Review feedback

* Added WriteLine(StringBuilder overloads (review feedback)

* review feedback

* Fix configureAwait

* bug fix

* Bug fix

* review feedback

6 years agoUpdate CoreClr, CoreFx, PgoData to preview1-26614-04, preview1-26614-04, master-20180...
dotnet-maestro-bot [Thu, 14 Jun 2018 15:57:44 +0000 (08:57 -0700)]
Update CoreClr, CoreFx, PgoData to preview1-26614-04, preview1-26614-04, master-20180614-0041, respectively (#18461)

6 years agoAdds original error info to NotSupportedException during FileStream initialization...
Alfred Myers [Thu, 14 Jun 2018 15:09:20 +0000 (12:09 -0300)]
Adds original error info to NotSupportedException during FileStream initialization (#18455)

6 years agoSkip version (dotnet/corefx#28835)
Anirudh Agnihotry [Wed, 13 Jun 2018 00:16:31 +0000 (17:16 -0700)]
Skip version (dotnet/corefx#28835)

Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
6 years agoAdded ISOWeek to System.Globalization (#18456)
Kristian Hellang [Wed, 13 Jun 2018 23:28:02 +0000 (01:28 +0200)]
Added ISOWeek to System.Globalization (#18456)

* Added ISOWeek to System.Globalization

* Revert DateTime changes. Use constants from GregorianCalendar instead.

* Add more comments

* Also allow 7 as value for day of week

* Add note about ISO week-numbering year parameters

* Add note about allowing 7 for day of week

6 years ago[Windows|Arm64|VarArgs] Correctly pass HFA arguments (#18364)
Jarret Shook [Wed, 13 Jun 2018 22:44:37 +0000 (15:44 -0700)]
[Windows|Arm64|VarArgs] Correctly pass HFA arguments (#18364)

* Fix passing HFA of two floats to vararg methods

Previously, the type would be reported as HFA and enregistered; however,
this is not correct, as arm64 varargs abi requires passing using
int registers.

* Address linux build issue

* Apply final format patch

* Add _TARGET_WINDOWS_

6 years agoMerge pull request #18438 from BruceForstall/FixKeepAlive
Bruce Forstall [Wed, 13 Jun 2018 22:04:23 +0000 (15:04 -0700)]
Merge pull request #18438 from BruceForstall/FixKeepAlive

Fix GC KeepAlive test

6 years agoFix enregistered lclFld bug (#18418)
Carol Eidt [Wed, 13 Jun 2018 21:43:07 +0000 (14:43 -0700)]
Fix enregistered lclFld bug (#18418)

* Fix enregistered lclFld bug

In `impFixupStructReturnType()`, don't transform to `GT_LCL_FLD` if we have a scalar lclVar.
Also, to avoid future bad codegen, add verification and recovery code to Lowering.

Fix #18408

* Extract the full conditions for whether a lclVar is a reg candidate, so it can be called from the assert in Lowering.

* Review feedback

6 years agoMerge pull request #18442 from BruceForstall/DisableB65423
Bruce Forstall [Wed, 13 Jun 2018 21:14:06 +0000 (14:14 -0700)]
Merge pull request #18442 from BruceForstall/DisableB65423

Disable test b65423, tracked by #18441

6 years agomoving ARM HW Intrinsics files to shared partition (#18451)
Maryam Ariyan [Wed, 13 Jun 2018 20:10:06 +0000 (13:10 -0700)]
moving ARM HW Intrinsics files to shared partition (#18451)

6 years agoFix allocation methods at few places in PAL (#18457)
Jan Vorlicek [Wed, 13 Jun 2018 17:48:24 +0000 (19:48 +0200)]
Fix allocation methods at few places in PAL (#18457)

In the utf8.cpp and process.cpp, PAL was incorectly using the
global new operator. This results in calling this operator's
definition in coreclr runtime, which is wrong. In the case
of the utf8 stuff, a customer has reported a crash happening
due to that when the path from which the PAL was initialized
contained chinese characters.

THe fix is to use InternalNew / InternalDelete functions instead.

6 years agoAdded CallerArgumentExpressionAttribute (corefx issue 21809) (#18404)
jswolf19 [Wed, 13 Jun 2018 16:33:44 +0000 (01:33 +0900)]
Added CallerArgumentExpressionAttribute (corefx issue 21809) (#18404)

* Added CallerArgumentExpressionAttribute

* Modified CallerAtgumentExpressionAttribute

Removed ArgumentNull check from constructor and reordered members to
be more consistent with other attribute classes.

6 years agoUpdate BuildTools, CoreClr, CoreFx, PgoData to preview1-02912-01, preview1-26613...
dotnet-maestro-bot [Wed, 13 Jun 2018 16:32:53 +0000 (09:32 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02912-01, preview1-26613-04, preview1-26613-07, master-20180613-0058, respectively (#18189)

6 years agoUpdate unshared Reflection.Emit files
Michal Strehovský [Tue, 12 Jun 2018 15:52:16 +0000 (17:52 +0200)]
Update unshared Reflection.Emit files

6 years agoMerge pull request dotnet/corert#5933 from dotnet/nmirror
Michal Strehovský [Tue, 12 Jun 2018 14:01:50 +0000 (16:01 +0200)]
Merge pull request dotnet/corert#5933 from dotnet/nmirror

Merge nmirror to master

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years ago Move x86 HW intrinsics files to shared (#18427)
Maryam Ariyan [Wed, 13 Jun 2018 05:50:19 +0000 (22:50 -0700)]
 Move x86 HW intrinsics files to shared (#18427)

* Switch platfom amd64 to x64

* Move x86 intrinsics file to shared

* Adding condition so corert always picks up X.PlatformNotSupported.cs

Related to: #15922

6 years agoMerge pull request #18433 from BruceForstall/DisableLongRunningGCStressTests
Bruce Forstall [Wed, 13 Jun 2018 00:20:36 +0000 (17:20 -0700)]
Merge pull request #18433 from BruceForstall/DisableLongRunningGCStressTests

Disable HugeArray test in GCStress modes

6 years agoDisable test b65423, tracked by #18441
Bruce Forstall [Tue, 12 Jun 2018 22:27:16 +0000 (15:27 -0700)]
Disable test b65423, tracked by #18441

6 years agoFix GC KeepAlive test
Bruce Forstall [Tue, 12 Jun 2018 21:12:34 +0000 (14:12 -0700)]
Fix GC KeepAlive test

We need to determine that an object finalizer has not been run
*before* the KeepAlive call. After the call, it is perfectly
valid for the finalizer to be called, which can happen under
GCStress.

6 years agoAdd public implementation WindowsRuntimeResourceManagerBase (#18417)
Luqun Lou [Tue, 12 Jun 2018 20:54:00 +0000 (13:54 -0700)]
Add public implementation WindowsRuntimeResourceManagerBase (#18417)

6 years agoDisable HugeArray test in GCStress modes
Bruce Forstall [Tue, 12 Jun 2018 17:38:56 +0000 (10:38 -0700)]
Disable HugeArray test in GCStress modes

This test takes too long under GCStress, and causes timeout failures.
It was already disabled for x86. Disable it for all platforms, to
avoid unexpected failures in the CI. E.g., especially for ARM, which
is slow.

6 years agoJIT: finally cloning -- handle fall through out of try (#18416)
Andy Ayers [Tue, 12 Jun 2018 16:49:36 +0000 (09:49 -0700)]
JIT: finally cloning -- handle fall through out of try (#18416)

When searching for a handler to clone, handle the case where
control can fall out of the try into a callfinally pair.

Closes #18353.

6 years agoUnify struct arg handling (#18358)
Carol Eidt [Tue, 12 Jun 2018 15:38:56 +0000 (08:38 -0700)]
Unify struct arg handling (#18358)

* Unify struct arg handling

Eliminate unnecessary struct copies, especially on Linux, and reduce code duplication.
Across all targets, use GT_FIELD_LIST to pass promoted structs on stack, and avoid
requiring a copy and/or marking `lvDoNotEnregister` for those cases.

Unify the specification of multi-reg args:
- numRegs now indicates the actual number of reg args (not the size in pointer-size units)
- regNums contains all the arg register numbers

6 years agoFix unwinding of funclet with no epilog on x86/Linux (#17458)
Igor Kulaychuk [Tue, 12 Jun 2018 09:10:25 +0000 (12:10 +0300)]
Fix unwinding of funclet with no epilog on x86/Linux (#17458)

6 years agoAdding containment support to more x86 HWIntrinsics (#18349)
Tanner Gooding [Tue, 12 Jun 2018 02:58:34 +0000 (19:58 -0700)]
Adding containment support to more x86 HWIntrinsics (#18349)

* Adding containment support for the Sse42.Crc32 intrinsic

* Adding containment support for the x86 Compare*OrderedScalar and Compare*UnorderedScalar HWIntrinsics

* Adding containment support to several intrinsics that were marked NoContainment

6 years agoFix Decimal.NearNegativeZero/NearPositiveZero (#18424)
Pent Ploompuu [Tue, 12 Jun 2018 01:01:14 +0000 (04:01 +0300)]
Fix Decimal.NearNegativeZero/NearPositiveZero (#18424)

6 years agoReword invalid program exception message (#18409)
Dan Moseley [Mon, 11 Jun 2018 21:42:35 +0000 (14:42 -0700)]
Reword invalid program exception message (#18409)

* Reword invalid program exception message

* Reword

* Update msg

6 years agoskip empty regMask in verifyRegistersUsed (#18415)
Sergey Andreenko [Mon, 11 Jun 2018 21:29:17 +0000 (14:29 -0700)]
skip empty regMask in verifyRegistersUsed (#18415)

6 years agoStandardize on PLATFORM_WINDOWS instead of PLATFORM_UNIX (#18411)
Stephen Toub [Mon, 11 Jun 2018 19:41:49 +0000 (15:41 -0400)]
Standardize on PLATFORM_WINDOWS instead of PLATFORM_UNIX (#18411)

There are a bunch of uses of PLATFORM_WINDOWS in System.Private.CoreLib, and just a few uses of PLATFORM_UNIX.  Standardize on the former, removing all occurrences of the latter.

6 years agoFix UTF8 encoding fallback index (#18387)
Tarek Mahmoud Sayed [Mon, 11 Jun 2018 19:23:26 +0000 (12:23 -0700)]
Fix UTF8 encoding fallback index (#18387)

* Fix UTF8 encoding fallback index

When falling back in UTF8 decoding, we’ll call the DecoderFallbackBuffer.InternalFallback method which takes a pointer to the source bytes pointer which point to where we have progressed inside the source bytes. The problem is before calling DecoderFallbackBuffer.InternalFallback we call GetBytesUnknown which can adjust the source byte pointer and DecoderFallbackBuffer.InternalFallback need to be called with the pointer before the adjustment. The fix is simply storing the original pointer value of the source byte pointer before calling GetBytesUnknown and then pass the stored original pointer to DecoderFallbackBuffer.InternalFallback instead of the adjusted source byte pointer

* Fix the comment

6 years agoWinRT attribute Cleanup (#18412)
Luqun Lou [Mon, 11 Jun 2018 19:22:50 +0000 (12:22 -0700)]
WinRT attribute Cleanup (#18412)

6 years agoRemove WinRTSynchronizationContextFactoryBase (#18385)
Luqun Lou [Mon, 11 Jun 2018 18:29:46 +0000 (11:29 -0700)]
Remove WinRTSynchronizationContextFactoryBase (#18385)

6 years ago(Re)Enable NativeVarargs for CoreCLR (#18373)
Jarret Shook [Mon, 11 Jun 2018 18:28:26 +0000 (11:28 -0700)]
(Re)Enable NativeVarargs for CoreCLR (#18373)

* Enable NativeVarargs for CoreCLR

This will allow coreclr run programs which have native varargs.
It also re-enables the ArgIterator type for managed to managed native
vararg calls. This will allow the use of the __arglist keyword.

Limitations:

NYI statements have been added for all Unix Targets.

With this change __arglist (native varargs) will be supported, but not
yet tested on:

Amd64 Windows
x86 Windows
Arm32 Windows
Arm64 Windows

This change does not re-enable native vararg tests. This will be done
in a separate change.

6 years agoAdds the CoreLib IL to packages (#18372)
Paulo Janotti [Mon, 11 Jun 2018 18:22:12 +0000 (11:22 -0700)]
Adds the CoreLib IL to packages (#18372)

* Adds the CoreLib IL to packages

The purpose of this is to enable code coverage runs to include CoreLib in CI - for that it is necessary to make the IL version available.

6 years agoFix PCODE not having thumb bit set when comparing two addresses (#18247)
Chris Sienkiewicz [Mon, 11 Jun 2018 18:12:44 +0000 (11:12 -0700)]
Fix PCODE not having thumb bit set when comparing two addresses (#18247)

6 years agoRemoved length restrictions on named synchronization primitives lengths on Windows...
Anirudh Agnihotry [Mon, 11 Jun 2018 14:29:58 +0000 (07:29 -0700)]
Removed length restrictions on named synchronization primitives lengths on Windows (#18402)

* Removed Path Length check

* waitHandleNameMax removed

6 years agoUpdate Buildtools (#18380)
William Godbe [Sun, 10 Jun 2018 01:11:09 +0000 (18:11 -0700)]
Update Buildtools (#18380)

6 years agoAvoid NativeOverlapped pinning by allocating unmanaged memory for it (#18360)
Jan Kotas [Sat, 9 Jun 2018 20:39:58 +0000 (13:39 -0700)]
Avoid NativeOverlapped pinning by allocating unmanaged memory for it (#18360)

It makes PinnableBufferCache unnecessary