platform/upstream/dotnet/runtime.git
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

Commit migrated from https://github.com/dotnet/coreclr/commit/1c98c6e234989f20f21782670d53046ff4550b7c

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

Commit migrated from https://github.com/dotnet/coreclr/commit/b85874d6ac7c82e03434aee01ef9b32da64a3096

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

Commit migrated from https://github.com/dotnet/coreclr/commit/dc8c0b9c388225e19e95aaa74fcef1026331d586

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

Commit migrated from https://github.com/dotnet/coreclr/commit/10cfcbabc62b95a67d3ace771600ee20889333bd

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

Commit migrated from https://github.com/dotnet/coreclr/commit/2cf151572ab9df6b40faad4fdcecd30d7b8d6f7c

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

Commit migrated from https://github.com/dotnet/coreclr/commit/957c4db6eb24cdbe87fcd02a658ab99b50f8d304

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

R2RDump - Output GcSlot liveness interweaved with disasm instructions

Commit migrated from https://github.com/dotnet/coreclr/commit/3643c064f7b41558e08ef16337d8c0379d238138

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

Commit migrated from https://github.com/dotnet/coreclr/commit/a5c843564c4dd8301b0c424f6041fada2921b1ab

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

Commit migrated from https://github.com/dotnet/coreclr/commit/473d9b09c7e000480f41021c94fbffeae27cb179

6 years agoPInvoke calli support for CoreRT (dotnet/coreclr#18534)
Jan Kotas [Tue, 19 Jun 2018 12:58:44 +0000 (05:58 -0700)]
PInvoke calli support for CoreRT (dotnet/coreclr#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

Commit migrated from https://github.com/dotnet/coreclr/commit/10111af6ba5e18f4a9b9c6eb80d49ed545604cfa

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 (dotnet/coreclr#18518)

Commit migrated from https://github.com/dotnet/coreclr/commit/57375e5cd91b3554e0e9690bba56d7fc341f8ce7

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

Commit migrated from https://github.com/dotnet/coreclr/commit/cc5dcbe6d1f5a799deab8064081b4e760e0df38e

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

Commit migrated from https://github.com/dotnet/coreclr/commit/ccf2c3eba2d833743a127be7ad3d2143bfe04091

6 years agogenPutArgStk needs to check for FIELD_LIST first (dotnet/coreclr#18499)
Carol Eidt [Tue, 19 Jun 2018 00:11:56 +0000 (17:11 -0700)]
genPutArgStk needs to check for FIELD_LIST first (dotnet/coreclr#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 dotnet/coreclr#18497

Commit migrated from https://github.com/dotnet/coreclr/commit/e9946c0de3bcab0d09ce5f10a039b37d6497d4cb

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

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

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/108ead41ca9243d4c6e1c6f3866fe986c44e31a1

6 years agoCorrectly return early if the test fails (dotnet/coreclr#18529)
Jarret Shook [Mon, 18 Jun 2018 21:07:39 +0000 (14:07 -0700)]
Correctly return early if the test fails (dotnet/coreclr#18529)

Commit migrated from https://github.com/dotnet/coreclr/commit/a74bbaf2d0cc1f9a9bb9104d204c45dd0c0eb2dc

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

Commit migrated from https://github.com/dotnet/coreclr/commit/d4bbfb39572a2e1cb0708c7c94d0c05aee69d813

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

* Improve Intel hardware intrinsic APIs

* Simplify Avx.Extract non-const fallback

Commit migrated from https://github.com/dotnet/coreclr/commit/ea58e86b476c7a596b43b12f31b5bccfdbbeca67

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

Commit migrated from https://github.com/dotnet/coreclr/commit/ddca735a59327dedc681900e7d484491b769b7d6

6 years agoDocument span lifetime issue in CreateSpan (dotnet/corefxdotnet/coreclr#30490) (dotne...
dotnet bot [Mon, 18 Jun 2018 17:45:42 +0000 (10:45 -0700)]
Document span lifetime issue in CreateSpan (dotnet/corefxdotnet/coreclr#30490) (dotnet/coreclr#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>
Commit migrated from https://github.com/dotnet/coreclr/commit/ac637552982717e72e473df03d0994e65c2dccd8

6 years agoTypo (dotnet/coreclr#18520)
John Doe [Mon, 18 Jun 2018 17:45:13 +0000 (10:45 -0700)]
Typo (dotnet/coreclr#18520)

* Acutal -> Actual

* addtional -> additional

* agressive -> aggressive

* agument -> argument

* Alignement -> Alignment

* alredy -> already

* MAnaged -> Managed

* analagous -> analogous

* aquire -> acquire

* arbitary -> arbitrary

Commit migrated from https://github.com/dotnet/coreclr/commit/22bfefbc787629d9d5637cd37fc92701b95dcea0

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

Commit migrated from https://github.com/dotnet/coreclr/commit/6a35855005898b243191c17496fa137d09926201

6 years agomach_absolute_time as the primary clock source on macOS (corefxdotnet/coreclr#30391...
Andrey Akinshin [Mon, 18 Jun 2018 17:11:32 +0000 (13:11 -0400)]
mach_absolute_time as the primary clock source on macOS (corefxdotnet/coreclr#30391) (dotnet/coreclr#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.

Commit migrated from https://github.com/dotnet/coreclr/commit/a88923778b841a51d9656f714f171115baf7ca80

6 years agoUpdate CoreClr, CoreFx to preview1-26616-03, preview1-26616-02, respectively (dotnet...
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 (dotnet/coreclr#18503)

Commit migrated from https://github.com/dotnet/coreclr/commit/71f4199f7dd043c4901a187b9bd88ab40e2b87e2

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 (dotnet/coreclr#18495)

Commit migrated from https://github.com/dotnet/coreclr/commit/45da72ca0f1493f793e30f39a7da0e59acb8bdbc

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

Commit migrated from https://github.com/dotnet/coreclr/commit/377718dffb619796c4abb2751b934c03e4ab7db8

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

Commit migrated from https://github.com/dotnet/coreclr/commit/c77c97e4d08ad8cafdae00128496b214dc2a2098

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

Commit migrated from https://github.com/dotnet/coreclr/commit/1df3d7978e69166fa366c5788d114acf1c743d70

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

R2RDump - Get GC slot liveness code offset

Commit migrated from https://github.com/dotnet/coreclr/commit/30a7daa5d0fd4102ef053d1291775140be610495

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

R2RDump - Print disassembly to text buffer

Commit migrated from https://github.com/dotnet/coreclr/commit/d77fd94014bd4fc67df03a731498f9b8fd1e0e42

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

Fixes dotnet/coreclr#18484

Commit migrated from https://github.com/dotnet/coreclr/commit/6bb3f84d42b9756c5fa18158db8f724d57796296

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

* Use correct field offset in genPutArgStkFieldList

Fix dotnet/coreclr#18482

* formatting

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

Commit migrated from https://github.com/dotnet/coreclr/commit/13954f2b3072866be61c273d17f7b4fd2d1e6099

6 years agoAvoid some virtual dispatch in Encodings (dotnet/coreclr#18487)
Stephen Toub [Fri, 15 Jun 2018 21:45:44 +0000 (17:45 -0400)]
Avoid some virtual dispatch in Encodings (dotnet/coreclr#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).

Commit migrated from https://github.com/dotnet/coreclr/commit/acd35fd3ce18ebaf7b0edbd933ed2d4f17b8db78

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

Commit migrated from https://github.com/dotnet/coreclr/commit/5a0278defa155de8c0d1f2b6f1d51841006f97cd

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

Commit migrated from https://github.com/dotnet/coreclr/commit/40f0203513823cb52daa352ae0f444cbc2b6daea

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

Commit migrated from https://github.com/dotnet/coreclr/commit/31f6bf336774044f3e5891078f3777a3801cca87

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

* Modulo AdjustmentRule.DaylightDelta

* fix typo

Commit migrated from https://github.com/dotnet/coreclr/commit/66ff5d7ed68c050ba53968c2ecf88a6c9a2a3224

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 (dotnet/coreclr#18472)

Commit migrated from https://github.com/dotnet/coreclr/commit/28909eb39a7246625afe3a32fe0ab37b40d7b15a

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

Fixes dotnet/coreclr#30263

Commit migrated from https://github.com/dotnet/coreclr/commit/5bb221911996edeef0373ecf5c5fbfc235533ac8

6 years agoclean up list of disabled warnings. (dotnet/coreclr#18318)
Sergey Andreenko [Fri, 15 Jun 2018 01:32:41 +0000 (18:32 -0700)]
clean up list of disabled warnings. (dotnet/coreclr#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

Commit migrated from https://github.com/dotnet/coreclr/commit/1c8c96ec2bb52368124928648d7557ac85ff9c40

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

Commit migrated from https://github.com/dotnet/coreclr/commit/03bfe8501ffa45f713156dfe9b1e2c024d09803d

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

* fix desktop build break

after dotnet/coreclr#18346

* add dstCount

Commit migrated from https://github.com/dotnet/coreclr/commit/793daddd90caa014dc2dacebd6b73035ae57bae5

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

Commit migrated from https://github.com/dotnet/coreclr/commit/a1c04b25428b2c800f281ad2a4b7241199612bac

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

Commit migrated from https://github.com/dotnet/coreclr/commit/80809ca2890fb3d952521db69573da2b9a0d1231

6 years ago[Windows|Arm64|Vararg] Add FEATURE_ARG_SPLIT (dotnet/coreclr#18346)
Jarret Shook [Thu, 14 Jun 2018 20:16:45 +0000 (13:16 -0700)]
[Windows|Arm64|Vararg] Add FEATURE_ARG_SPLIT (dotnet/coreclr#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

Commit migrated from https://github.com/dotnet/coreclr/commit/35c84dfc414a8817ef74df2c2cd0486740fc11f4

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

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

Fix dotnet/coreclr#18228

Commit migrated from https://github.com/dotnet/coreclr/commit/38fc21129e23f6d5ff37755452f4b95f07de6c56

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

Commit migrated from https://github.com/dotnet/coreclr/commit/5b230860900aab1c4023e729c33006b1b09107f8

6 years agoWrite and WriteAsync overloads for StringBuilder. (dotnet/coreclr#18281)
Vance Morrison [Thu, 14 Jun 2018 16:06:08 +0000 (09:06 -0700)]
Write and WriteAsync overloads for StringBuilder. (dotnet/coreclr#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

Commit migrated from https://github.com/dotnet/coreclr/commit/fb8d7b863365457a11da270d6950c16c082635df

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 (dotnet/coreclr#18461)

Commit migrated from https://github.com/dotnet/coreclr/commit/8cc3d97077b1abcda0ea970466e55e01b8967d73

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 (dotnet/coreclr#18455)

Commit migrated from https://github.com/dotnet/coreclr/commit/74c5abd7409b207f95d7e726cf0b888412f25eac

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

Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/46c08c4c6e3af1562b6a4dff1c8d6ccda21aec38

6 years agoAdded ISOWeek to System.Globalization (dotnet/coreclr#18456)
Kristian Hellang [Wed, 13 Jun 2018 23:28:02 +0000 (01:28 +0200)]
Added ISOWeek to System.Globalization (dotnet/coreclr#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

Commit migrated from https://github.com/dotnet/coreclr/commit/79b8f94cc52b6b79945074b748508a0b3cbb8be6

6 years ago[Windows|Arm64|VarArgs] Correctly pass HFA arguments (dotnet/coreclr#18364)
Jarret Shook [Wed, 13 Jun 2018 22:44:37 +0000 (15:44 -0700)]
[Windows|Arm64|VarArgs] Correctly pass HFA arguments (dotnet/coreclr#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_

Commit migrated from https://github.com/dotnet/coreclr/commit/c485d3fc4f8645fbfc381396c436711cb2344473

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

Fix GC KeepAlive test

Commit migrated from https://github.com/dotnet/coreclr/commit/f762f8b0e4a2870162badb58e77b9edceef58d97

6 years agoFix enregistered lclFld bug (dotnet/coreclr#18418)
Carol Eidt [Wed, 13 Jun 2018 21:43:07 +0000 (14:43 -0700)]
Fix enregistered lclFld bug (dotnet/coreclr#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 dotnet/coreclr#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

Commit migrated from https://github.com/dotnet/coreclr/commit/82134a002fed96739694b6f085baaeea6c7c41f5

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

Disable test b65423, tracked by dotnet/coreclr#18441

Commit migrated from https://github.com/dotnet/coreclr/commit/1d83f170fdf7ed6ade3e49799724e0ac17769a09

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

Commit migrated from https://github.com/dotnet/coreclr/commit/07f77364f39cf64bfaf59592fc01de5ce7da9c15

6 years agoFix allocation methods at few places in PAL (dotnet/coreclr#18457)
Jan Vorlicek [Wed, 13 Jun 2018 17:48:24 +0000 (19:48 +0200)]
Fix allocation methods at few places in PAL (dotnet/coreclr#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.

Commit migrated from https://github.com/dotnet/coreclr/commit/e6ebea25bea93eb4ec07cbd5003545c4805886a8

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

* Added CallerArgumentExpressionAttribute

* Modified CallerAtgumentExpressionAttribute

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

Commit migrated from https://github.com/dotnet/coreclr/commit/b90d7e8e749c4c936712c0b8a8d915eb8732928f

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 (dotnet/coreclr#18189)

Commit migrated from https://github.com/dotnet/coreclr/commit/a5964d71c3c503fa007ce86fdacc643a7ed99c5d

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

Commit migrated from https://github.com/dotnet/coreclr/commit/f437343d0fc5965280b458d0fc88079499d20151

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

Merge nmirror to master

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/acbeea89f71332e4eca90a672326691774ff6c23

6 years ago Move x86 HW intrinsics files to shared (dotnet/coreclr#18427)
Maryam Ariyan [Wed, 13 Jun 2018 05:50:19 +0000 (22:50 -0700)]
 Move x86 HW intrinsics files to shared (dotnet/coreclr#18427)

* Switch platfom amd64 to x64

* Move x86 intrinsics file to shared

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

Related to: dotnet/coreclr#15922

Commit migrated from https://github.com/dotnet/coreclr/commit/308850ced07e56bd83a36df23455d023b5dba06e

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

Disable HugeArray test in GCStress modes

Commit migrated from https://github.com/dotnet/coreclr/commit/fb4794d6ef682328473ab462ef91ee2ed193e4d2

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

Commit migrated from https://github.com/dotnet/coreclr/commit/417da067e7634f23eaba183a3f551f15c43df746

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.

Commit migrated from https://github.com/dotnet/coreclr/commit/75623f73d1fd635ddace9d36ee28eeabe6030531

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

Commit migrated from https://github.com/dotnet/coreclr/commit/f547ca7cc060c5fc2a82bff7d059ffff1f9a56b8

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.

Commit migrated from https://github.com/dotnet/coreclr/commit/2c2440c7201ffbe5d3b4e8a59eff4c4c9c98cc5e

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

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

Closes dotnet/coreclr#18353.

Commit migrated from https://github.com/dotnet/coreclr/commit/065c9b33eba2894452624245689c194cd7879eb3

6 years agoUnify struct arg handling (dotnet/coreclr#18358)
Carol Eidt [Tue, 12 Jun 2018 15:38:56 +0000 (08:38 -0700)]
Unify struct arg handling (dotnet/coreclr#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

Commit migrated from https://github.com/dotnet/coreclr/commit/d28957d9978ab8d2828286eeb99a4a919c462b70

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

Commit migrated from https://github.com/dotnet/coreclr/commit/1b32b2b795d52bd4bc00fd37efd528ef56b9d7af

6 years agoAdding containment support to more x86 HWIntrinsics (dotnet/coreclr#18349)
Tanner Gooding [Tue, 12 Jun 2018 02:58:34 +0000 (19:58 -0700)]
Adding containment support to more x86 HWIntrinsics (dotnet/coreclr#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

Commit migrated from https://github.com/dotnet/coreclr/commit/7005f768866f3e0a2e7df3b67884bb5a98c92ef2

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

Commit migrated from https://github.com/dotnet/coreclr/commit/016a06d499ff6c009b53309c098f3e78344fca0c

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

* Reword invalid program exception message

* Reword

* Update msg

Commit migrated from https://github.com/dotnet/coreclr/commit/8b7d6a0e4f357e86e2092101acbe7b6458ee40af

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

Commit migrated from https://github.com/dotnet/coreclr/commit/5c556d13b09e8f7c702da04d8ab2ece8ef9b71a6

6 years agoStandardize on PLATFORM_WINDOWS instead of PLATFORM_UNIX (dotnet/coreclr#18411)
Stephen Toub [Mon, 11 Jun 2018 19:41:49 +0000 (15:41 -0400)]
Standardize on PLATFORM_WINDOWS instead of PLATFORM_UNIX (dotnet/coreclr#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.

Commit migrated from https://github.com/dotnet/coreclr/commit/a07861b639667ce65d196ae1287df6fdb2a82d8b

6 years agoFix UTF8 encoding fallback index (dotnet/coreclr#18387)
Tarek Mahmoud Sayed [Mon, 11 Jun 2018 19:23:26 +0000 (12:23 -0700)]
Fix UTF8 encoding fallback index (dotnet/coreclr#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

Commit migrated from https://github.com/dotnet/coreclr/commit/d093d9a9c83182f92a84c05af89e4859611d095a

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

Commit migrated from https://github.com/dotnet/coreclr/commit/2bfc551e240198d88d79f5425d783da31872e8f7

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

Commit migrated from https://github.com/dotnet/coreclr/commit/77a0f349aff937a8e16bc6fd1b52117d845e1fae

6 years ago(Re)Enable NativeVarargs for CoreCLR (dotnet/coreclr#18373)
Jarret Shook [Mon, 11 Jun 2018 18:28:26 +0000 (11:28 -0700)]
(Re)Enable NativeVarargs for CoreCLR (dotnet/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.

Commit migrated from https://github.com/dotnet/coreclr/commit/e6004705f3e14742e9dcdfce3d8d9caeada83451

6 years agoAdds the CoreLib IL to packages (dotnet/coreclr#18372)
Paulo Janotti [Mon, 11 Jun 2018 18:22:12 +0000 (11:22 -0700)]
Adds the CoreLib IL to packages (dotnet/coreclr#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.

Commit migrated from https://github.com/dotnet/coreclr/commit/8e47b640f17e1baae20d63e2ecc85b56415ec4e9

6 years agoFix PCODE not having thumb bit set when comparing two addresses (dotnet/coreclr#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 (dotnet/coreclr#18247)

Commit migrated from https://github.com/dotnet/coreclr/commit/ccf7bfc9a2e08178d30e9c1430755dc0ffd9b0a2

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 (dotnet/coreclr#18402)

* Removed Path Length check

* waitHandleNameMax removed

Commit migrated from https://github.com/dotnet/coreclr/commit/422b0e81797d5428812c6ef825e22565e2dc63f3

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

Commit migrated from https://github.com/dotnet/coreclr/commit/7e215941c8d6a68fa52f98bb8fd2a419d8a1ef5d

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

It makes PinnableBufferCache unnecessary

Commit migrated from https://github.com/dotnet/coreclr/commit/911d332c523848023e3c6564788b72b7f419fca1

6 years agoUse nameof of Encoding classes (dotnet/coreclr#18395)
Stephen Toub [Sat, 9 Jun 2018 20:34:46 +0000 (16:34 -0400)]
Use nameof of Encoding classes (dotnet/coreclr#18395)

Commit migrated from https://github.com/dotnet/coreclr/commit/618f9c2d18e88566ac61f93529bac58123c50cba

6 years agoMerge pull request dotnet/coreclr#18394 from BruceForstall/Fix10115
Bruce Forstall [Sat, 9 Jun 2018 19:12:37 +0000 (12:12 -0700)]
Merge pull request dotnet/coreclr#18394 from BruceForstall/Fix10115

Re-enable tests for Windows arm64

Commit migrated from https://github.com/dotnet/coreclr/commit/49fee7068c07c7eea2fa558a1fbcd7128a0e37fa

6 years agoMerge pull request dotnet/coreclr#18363 from sdmaclea/PR-waitany-debug
Bruce Forstall [Sat, 9 Jun 2018 06:08:54 +0000 (23:08 -0700)]
Merge pull request dotnet/coreclr#18363 from sdmaclea/PR-waitany-debug

Waitany test debug and cleanup

Commit migrated from https://github.com/dotnet/coreclr/commit/e3a43269167dd7c5ec5b4e74458d6d5f045d3ced

6 years agoSome extra changes needed in shared
Maryam Ariyan [Thu, 7 Jun 2018 21:24:29 +0000 (14:24 -0700)]
Some extra changes needed in shared

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/b5a5982eae7ea78b4bb5cc1c30637df412f82a0f

6 years agoRemove Substring in TimeZoneInfo parsing (dotnet/coreclr#18378)
Eric Erhardt [Sat, 9 Jun 2018 03:09:04 +0000 (22:09 -0500)]
Remove Substring in TimeZoneInfo parsing (dotnet/coreclr#18378)

* Remove Substring in TimeZoneInfo parsing

Convert Substring to Slice to eliminate string allocations while parsing Posix daylight savings rules.

Commit migrated from https://github.com/dotnet/coreclr/commit/91bd5a6a36be3949b879793cfca914e666d89845

6 years agoUse cached strings for values 0 to 9 (dotnet/coreclr#18383)
Stephen Toub [Sat, 9 Jun 2018 02:53:52 +0000 (22:53 -0400)]
Use cached strings for values 0 to 9 (dotnet/coreclr#18383)

When doing ToString on single-digit integers, just return a cached string.  This helps avoid string allocation/formatting costs for this very common case, while only costing one comparison for other cases.

Commit migrated from https://github.com/dotnet/coreclr/commit/12f8a27b139777e8cee7ae924c0b71f5844f96f8

6 years agoRemove ConcurrentDictionary from CoreLib (dotnet/coreclr#18308)
Stephen Toub [Sat, 9 Jun 2018 02:41:27 +0000 (22:41 -0400)]
Remove ConcurrentDictionary from CoreLib (dotnet/coreclr#18308)

Commit migrated from https://github.com/dotnet/coreclr/commit/b4617616dfc57d993f49e015cae45240f82f163b

6 years agoRe-enable tests for Windows arm64
Bruce Forstall [Sat, 9 Jun 2018 01:39:02 +0000 (18:39 -0700)]
Re-enable tests for Windows arm64

These tests don't fail anymore. Re-enable them.

Fixes dotnet/coreclr#10115

Commit migrated from https://github.com/dotnet/coreclr/commit/67f1beabbdefe31254da090c1fa7f029b01441a4

6 years agoMerge pull request dotnet/coreclr#18382 from BruceForstall/MakeArmGcStress3Clean
Bruce Forstall [Sat, 9 Jun 2018 01:23:57 +0000 (18:23 -0700)]
Merge pull request dotnet/coreclr#18382 from BruceForstall/MakeArmGcStress3Clean

Disable 3 tests incompatible with GCStress=3

Commit migrated from https://github.com/dotnet/coreclr/commit/850af7feda39f9653c0f2951d5027765d4a417f3

6 years agoFix EventPipe EventHandle Caching for TraceLogging (dotnet/coreclr#18355)
Brian Robbins [Sat, 9 Jun 2018 00:44:11 +0000 (17:44 -0700)]
Fix EventPipe EventHandle Caching for TraceLogging (dotnet/coreclr#18355)

Commit migrated from https://github.com/dotnet/coreclr/commit/80f546fbd6161163a3383eb9574d653a768c3278

6 years agoUse buffered disassembler to get disassembly as string
Amy Yu [Fri, 8 Jun 2018 22:41:01 +0000 (15:41 -0700)]
Use buffered disassembler to get disassembly as string

Commit migrated from https://github.com/dotnet/coreclr/commit/95dcaddc7e754106ab711c09b7c7589502b06a77

6 years agoFix coredistools download script now that Packages layout has changed
Russ Keldorph [Fri, 8 Jun 2018 17:58:18 +0000 (10:58 -0700)]
Fix coredistools download script now that Packages layout has changed

Fixes dotnet/coreclr#18321

Commit migrated from https://github.com/dotnet/coreclr/commit/d2e2299a9ea141eaffc0f2c1bee0479e052dd7c7

6 years agoMoved Mutex.cs From src to shared (dotnet/coreclr#18320)
Anirudh Agnihotry [Fri, 8 Jun 2018 21:51:10 +0000 (14:51 -0700)]
Moved Mutex.cs From src to shared (dotnet/coreclr#18320)

* Moved Mutex.cs to shared

* Reduced #ifdef in mutex.cs

* Moved windows specific Implementation and renamed mincore to kernal32

* safeWaitHandle changed to _waitHandle

* moved using statement out of buffer namespace

Commit migrated from https://github.com/dotnet/coreclr/commit/65fc6e978fc21a05878b59ffc016613d9e34bcf6

6 years agoExpose public implementation AsyncCausalitySupport to S.R.WindowsRuntime (dotnet...
Luqun Lou [Fri, 8 Jun 2018 21:41:24 +0000 (14:41 -0700)]
Expose public implementation AsyncCausalitySupport to S.R.WindowsRuntime (dotnet/coreclr#18376)

Commit migrated from https://github.com/dotnet/coreclr/commit/960360f0f5cb0476172d29dcd8074dcc2833e8fa

6 years agoMerge pull request dotnet/coreclr#18287 from sdmaclea/TryClearGCStressInstructionUpdate
Bruce Forstall [Fri, 8 Jun 2018 21:27:18 +0000 (14:27 -0700)]
Merge pull request dotnet/coreclr#18287 from sdmaclea/TryClearGCStressInstructionUpdate

Use atomic ops in CommitGCStressInstructionUpdate()

Commit migrated from https://github.com/dotnet/coreclr/commit/22b18c598e93d85d012ac2d39f248acd09fec941