Aaron Robinson [Fri, 1 Jun 2018 19:16:03 +0000 (12:16 -0700)]
Native lib relative path (dotnet/coreclr#18239)
* Typo in #define
* Don't add prefix for relative path to native images if the path contains a platform path delimiter
* Use already defined delimiter macro
Create max variation count variable
Commit migrated from https://github.com/dotnet/coreclr/commit/
93955d4b58380068df9d99c58a699de6ad03f532
Sergey Andreenko [Fri, 1 Jun 2018 18:08:33 +0000 (11:08 -0700)]
Fix GitHub_16041 test. (dotnet/coreclr#18210)
* fix StructY size
This was doing a cpblk of 28 bytes (size of StructY) from StructX, but StructX was only 12 bytes big. Change StructY to 12.
* fix size
Commit migrated from https://github.com/dotnet/coreclr/commit/
525ee1bcb065d34a22aae84b8b7dfb414d497f5b
Egor Chesakov [Fri, 1 Jun 2018 17:59:22 +0000 (10:59 -0700)]
Mark JIT/Regression/JitBlue/GitHub_18056 as JitOptimizationSensitive (dotnet/coreclr#18184)
Commit migrated from https://github.com/dotnet/coreclr/commit/
28dd67bcaa1a8451177aed9e44a33402b6283e47
Amy [Fri, 1 Jun 2018 15:05:44 +0000 (08:05 -0700)]
R2RDump - Commandline interface (dotnet/coreclr#18136)
* Use ReadCompressedData for NativeHashTable, fix ref signature types, save array dimension, use AppendLine to avoid line-ending problems
* Include System.CommandLine, arg parsing, read/write file
* Add commandline options to search sections/methods/runtimeFunctions, option to dump raw data
* Added comments, save cli options in global variables, renamed some functions
* Add DumpByte function to R2RSection and R2RHeader, indent raw bytes
* Change some cli option names, use DumpRuntimeFunction, return list of query matches, changes to ArgStringToInt
* Move DumpBytes to R2RDump, print method of runtime function
* Use writer object instead of Console
* Use TextWriter instead of own writer class
* Handle jagged arrays and other cases using MethodDefinition.DecodeSignature with a slightly modified DisassemblingTypeProvider
* Close the _writer in finally block
Commit migrated from https://github.com/dotnet/coreclr/commit/
88c10681e2b9a8584f574df234ee2a2ff74a8ea3
Vance Morrison [Fri, 1 Jun 2018 14:53:12 +0000 (07:53 -0700)]
Merge pull request dotnet/coreclr#18216 from vancem/FixThreadNameSet
Fix Managed Thread Name Setting
Commit migrated from https://github.com/dotnet/coreclr/commit/
c17ca743320b8c0c54ca1b8248b4e8cbc771c241
Marek Safar [Fri, 1 Jun 2018 03:57:00 +0000 (05:57 +0200)]
Moves Stream to shared location (dotnet/coreclr#18142)
* Moves Stream to shared location
* Review tweaks
* Add NotImplementedException for SyncStream due to https://github.com/dotnet/corert/issues/3251
Commit migrated from https://github.com/dotnet/coreclr/commit/
95ae6621b1c7f176b518ad819f6eccd469e91ea1
Pent Ploompuu [Fri, 1 Jun 2018 03:02:45 +0000 (06:02 +0300)]
Fix SpanHelpers.ClearWithoutReferences alignment detection (dotnet/coreclr#18222)
Commit migrated from https://github.com/dotnet/coreclr/commit/
48cb3fa29a63219a9669ae012eefca0bf5ce0091
Vance Morrison [Fri, 1 Jun 2018 00:39:58 +0000 (17:39 -0700)]
Review feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
4280cda0dade54e3b07c348e8b1b3e9ca65fc1fe
Bruce Forstall [Fri, 1 Jun 2018 00:07:34 +0000 (17:07 -0700)]
Merge pull request dotnet/coreclr#18220 from sdmaclea/PR-HasPendingGCStressInstructionUpdate
Fix HasPendingGCStressInstructionUpdate CONSISTENCY_CHECK
Commit migrated from https://github.com/dotnet/coreclr/commit/
9c9cff0541e649cfa720c84d21aa9ec7a6508633
Chris Sienkiewicz [Fri, 1 Jun 2018 00:04:59 +0000 (17:04 -0700)]
Arm stepping fixes (dotnet/coreclr#18129)
* Ensure thumb bit is set when initializing a code region.
* Use macro rather than manually setting thumb bit in debugger.cpp
* Ensure thumb bit is set when calling FindOrCreateInitAndAddJitInfo.
* Add an assert to FindOrCreateInitAndAddJitInfo when on arm to ensure the thumb bit is set
Commit migrated from https://github.com/dotnet/coreclr/commit/
b1fe0eff86c82def0785689dc1a9002a8d899bea
Stephen Toub [Thu, 31 May 2018 21:09:41 +0000 (17:09 -0400)]
Add additional features to SOS DumpAsync command (dotnet/coreclr#18213)
1. Computing GC roots is a relatively slow operation, and doing it for every state machine object found in a large heap can be time consuming. Making it opt-in with -roots command-line flag.
2. Added -waiting command-line flag. DumpAsync will now retrieve the <>1__state field from the StateMachine, and if -waiting is specified, it'll filter down to state machines that have a state value >= 0, meaning the state machines are waiting at an await point. For example, given this program:
```C#
using System.Threading.Tasks;
class Program
{
static async Task Main() { await MethodA(0); await MethodA(int.MaxValue); }
static async Task MethodA(int delay) => await MethodB(delay);
static async Task MethodB(int delay) { await Task.Yield(); await Task.Delay(delay); }
}
```
using `!DumpAsync` outputs:
```
Address MT Size Name
dotnet/coreclr#0
0000026848693438 00007ff88ea35e58 120 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodB>d__2, test]]
StateMachine: Program+<MethodB>d__2 (struct)
MT Field Offset Type VT Attr Value Name
00007ff8e9bc4bc0 4000008 0 System.Int32 1 instance -2 <>1__state
00007ff8e9bd82f8 4000009 8 ...TaskMethodBuilder 1 instance
0000026848693490 <>t__builder
00007ff8e9bc4bc0 400000a 4 System.Int32 1 instance 0 delay
00007ff8e9bee4d0 400000b 10 ...able+YieldAwaiter 1 instance
0000026848693498 <>u__1
00007ff8e9bcead0 400000c 18 ...vices.TaskAwaiter 1 instance
00000268486934a0 <>u__2
Continuation:
00000268486934b0 (System.Object)
dotnet/coreclr#1
0000026848693e68 00007ff88ea36cc8 112 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodA>d__1, test]]
StateMachine: Program+<MethodA>d__1 (struct)
MT Field Offset Type VT Attr Value Name
00007ff8e9bc4bc0 4000004 0 System.Int32 1 instance -2 <>1__state
00007ff8e9bd82f8 4000005 8 ...TaskMethodBuilder 1 instance
0000026848693ec0 <>t__builder
00007ff8e9bc4bc0 4000006 4 System.Int32 1 instance 0 delay
00007ff8e9bcead0 4000007 10 ...vices.TaskAwaiter 1 instance
0000026848693ec8 <>u__1
Continuation:
00000268486934b0 (System.Object)
dotnet/coreclr#2
0000026848693ed8 00007ff88ea37188 112 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<Main>d__0, test]]
StateMachine: Program+<Main>d__0 (struct)
MT Field Offset Type VT Attr Value Name
00007ff8e9bc4bc0 4000001 0 System.Int32 1 instance 1 <>1__state
00007ff8e9bd82f8 4000002 8 ...TaskMethodBuilder 1 instance
0000026848693f30 <>t__builder
00007ff8e9bcead0 4000003 10 ...vices.TaskAwaiter 1 instance
0000026848693f38 <>u__1
Continuation:
0000026848693f48 (System.Threading.Tasks.Task+SetOnInvokeMres)
dotnet/coreclr#3
0000026848695d30 00007ff88ea35e58 120 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodB>d__2, test]]
StateMachine: Program+<MethodB>d__2 (struct)
MT Field Offset Type VT Attr Value Name
00007ff8e9bc4bc0 4000008 0 System.Int32 1 instance 1 <>1__state
00007ff8e9bd82f8 4000009 8 ...TaskMethodBuilder 1 instance
0000026848695d88 <>t__builder
00007ff8e9bc4bc0 400000a 4 System.Int32 1 instance
2147483647 delay
00007ff8e9bee4d0 400000b 10 ...able+YieldAwaiter 1 instance
0000026848695d90 <>u__1
00007ff8e9bcead0 400000c 18 ...vices.TaskAwaiter 1 instance
0000026848695d98 <>u__2
Continuation:
0000026848695dd0 (System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodA>d__1, test]])
dotnet/coreclr#4
0000026848695dd0 00007ff88ea36cc8 112 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodA>d__1, test]]
StateMachine: Program+<MethodA>d__1 (struct)
MT Field Offset Type VT Attr Value Name
00007ff8e9bc4bc0 4000004 0 System.Int32 1 instance 0 <>1__state
00007ff8e9bd82f8 4000005 8 ...TaskMethodBuilder 1 instance
0000026848695e28 <>t__builder
00007ff8e9bc4bc0 4000006 4 System.Int32 1 instance
2147483647 delay
00007ff8e9bcead0 4000007 10 ...vices.TaskAwaiter 1 instance
0000026848695e30 <>u__1
Continuation:
0000026848693ed8 (System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<Main>d__0, test]])
Found 5 state machines.
```
while using `!DumpAsync -waiting` outputs only:
```
Address MT Size Name
dotnet/coreclr#0
0000026848693ed8 00007ff88ea37188 112 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<Main>d__0, test]]
StateMachine: Program+<Main>d__0 (struct)
MT Field Offset Type VT Attr Value Name
00007ff8e9bc4bc0 4000001 0 System.Int32 1 instance 1 <>1__state
00007ff8e9bd82f8 4000002 8 ...TaskMethodBuilder 1 instance
0000026848693f30 <>t__builder
00007ff8e9bcead0 4000003 10 ...vices.TaskAwaiter 1 instance
0000026848693f38 <>u__1
Continuation:
0000026848693f48 (System.Threading.Tasks.Task+SetOnInvokeMres)
dotnet/coreclr#1
0000026848695d30 00007ff88ea35e58 120 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodB>d__2, test]]
StateMachine: Program+<MethodB>d__2 (struct)
MT Field Offset Type VT Attr Value Name
00007ff8e9bc4bc0 4000008 0 System.Int32 1 instance 1 <>1__state
00007ff8e9bd82f8 4000009 8 ...TaskMethodBuilder 1 instance
0000026848695d88 <>t__builder
00007ff8e9bc4bc0 400000a 4 System.Int32 1 instance
2147483647 delay
00007ff8e9bee4d0 400000b 10 ...able+YieldAwaiter 1 instance
0000026848695d90 <>u__1
00007ff8e9bcead0 400000c 18 ...vices.TaskAwaiter 1 instance
0000026848695d98 <>u__2
Continuation:
0000026848695dd0 (System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodA>d__1, test]])
dotnet/coreclr#2
0000026848695dd0 00007ff88ea36cc8 112 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodA>d__1, test]]
StateMachine: Program+<MethodA>d__1 (struct)
MT Field Offset Type VT Attr Value Name
00007ff8e9bc4bc0 4000004 0 System.Int32 1 instance 0 <>1__state
00007ff8e9bd82f8 4000005 8 ...TaskMethodBuilder 1 instance
0000026848695e28 <>t__builder
00007ff8e9bc4bc0 4000006 4 System.Int32 1 instance
2147483647 delay
00007ff8e9bcead0 4000007 10 ...vices.TaskAwaiter 1 instance
0000026848695e30 <>u__1
Continuation:
0000026848693ed8 (System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<Main>d__0, test]])
Found 3 state machines.
```
skipping the two state machines that have a `<>1__state` field value of -2 (meaning it's completed). Note that this change has the somewhat unfortunate impact of taking a dependency on what's effectively an implementation detail of Roslyn, but the value the filtering provides is deemed to be worth it. This design is unlikely to change in the future, and as with other diagnostic/debugging features that rely on such details, it can be updated if Roslyn ever changes its scheme. In the meantime, the code will output a warning message if it can't find the state field.
3. If a state machine is found to have 0 roots but also to have a <>1__state value >= 0, that suggests it was dropped without having been completed, which is likely a sign of an application bug. The command now prints out an information message to highlight that state. For example, this program:
```C#
using System;
using System.Threading.Tasks;
class Program
{
static void Main()
{
Task.Run(async () => await new TaskCompletionSource<bool>().Task);
Console.ReadLine();
}
}
```
when processed with `!DumpAsync -roots` results in:
```
Address MT Size Name
dotnet/coreclr#0
0000020787fb5b30 00007ff88ea1afe8 112 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Boolean, System.Private.CoreLib],[Program+<>c+<<Main>b__0_0>d, test]]
StateMachine: Program+<>c+<<Main>b__0_0>d (struct)
MT Field Offset Type VT Attr Value Name
00007ff8e9bc4bc0 4000003 0 System.Int32 1 instance 0 <>1__state
00007ff8e9bd0b88 4000004 8 ...Private.CoreLib]] 1 instance
0000020787fb5b88 <>t__builder
00007ff8e9bffd58 4000005 10 ...Private.CoreLib]] 1 instance
0000020787fb5b90 <>u__1
Continuation:
0000020787fb3fc8 (System.Threading.Tasks.UnwrapPromise`1[[System.Boolean, System.Private.CoreLib]])
GC roots:
Incomplete state machine (<>1__state == 0) with 0 roots.
Found 1 state machines.
```
Commit migrated from https://github.com/dotnet/coreclr/commit/
5a55932985506f0fb88e6329621aa6c01ec4dc38
Vance Morrison [Thu, 31 May 2018 21:09:06 +0000 (14:09 -0700)]
Review feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
855f38ce32b9cc7466b99c565da1c9d8326e557e
Stephen Toub [Thu, 31 May 2018 21:08:55 +0000 (17:08 -0400)]
Fix number formatting exception with empty NumberGroupSizes array (dotnet/coreclr#18221)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2a2f7af391f67c9b289456e4b5763308ed2a1b74
Steve MacLean [Thu, 31 May 2018 20:58:03 +0000 (16:58 -0400)]
[Arm64] Implement genZeroInitFltRegs for float (dotnet/coreclr#18200)
Commit migrated from https://github.com/dotnet/coreclr/commit/
421acb509443477564f3b3e80a3a6cb91aa532f9
Vance Morrison [Thu, 31 May 2018 20:55:27 +0000 (13:55 -0700)]
Review feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d1e5c4bfedc91a88c8f3ee4869c824ab7632d53
Vance Morrison [Thu, 31 May 2018 20:54:26 +0000 (13:54 -0700)]
Review feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
04a3ad0b575afdcff7ef49b1250e060844ee829e
Vance Morrison [Thu, 31 May 2018 20:25:21 +0000 (13:25 -0700)]
Fixed misspelling
Commit migrated from https://github.com/dotnet/coreclr/commit/
505ac9b3930b4591e2c4e884da76147699ea511d
Vance Morrison [Thu, 31 May 2018 19:51:31 +0000 (12:51 -0700)]
Review feedback (avoid passing out unpinned managed pointers).
Commit migrated from https://github.com/dotnet/coreclr/commit/
72bf02555c894efb0fb0c1d97ca3fd86055af1c3
Andy Ayers [Thu, 31 May 2018 19:25:22 +0000 (12:25 -0700)]
Add test case for optimized box vector assert (dotnet/coreclr#18163)
Test case for issue dotnet/coreclr#18043 was left out of dotnet/coreclr#18046. Adding it now.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2ff2c6e4337eb2dfcb149b6649befa9f82ccf372
Bruce Forstall [Thu, 31 May 2018 19:21:36 +0000 (12:21 -0700)]
Merge pull request dotnet/coreclr#18191 from BruceForstall/RemoveUnusedDefines
Remove unused defines
Commit migrated from https://github.com/dotnet/coreclr/commit/
4892ee7f1b6b97feb1c368b2371d2e790a499b83
Tarek Mahmoud Sayed [Thu, 31 May 2018 17:31:11 +0000 (10:31 -0700)]
Support new Japanese calendar eras (dotnet/coreclr#18209)
Japan is going to introduce the new era next year 2019, this new era will be added to the Japanese calendar. This new era would affect anyone converting, formatting or parsing dates using the Japanese calendar.
Users who formatted future dates before introducing the new era and then try to parse these dates after introducing the new era will fail and get parsing exception. The reason is the year number will not be valid in the old era anymore because the new era set a year limit to the old era.
Here is an example:
Format a date like "平成 32年2月1日" which saying year 32 in the era "平成". after we introduce the new era, the old era "平成" will be limited up to and including year 31 so year 32 is exceeding the era end.
The fix is to allow the parser succeeds with such dates and have a config switch which can be used to for anyone want the old behavior.
Commit migrated from https://github.com/dotnet/coreclr/commit/
378b666a30c07937ef19ecead82e353359090245
Steve MacLean [Thu, 31 May 2018 16:50:12 +0000 (12:50 -0400)]
Fix HasPendingGCStressInstructionUpdate CONSISTENCY_CHECK
Commit migrated from https://github.com/dotnet/coreclr/commit/
6b012555a809af12a7944fe013e82dedb3f1a609
Maryam Ariyan [Thu, 31 May 2018 02:55:47 +0000 (19:55 -0700)]
Moving MissingFieldException (fully) and MissingMethodException (partially) to shared (dotnet/coreclr#18207)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5d8cdfe45b8f3c68f6a9f1c0679f941b506f6757
Luqun Lou [Thu, 31 May 2018 02:37:50 +0000 (19:37 -0700)]
Expose Exception.set_HResult as Public (dotnet/coreclr#18203)
* Expose Exception.set_HResult as Public
* Remove internal Exception.SetErrorCode
Commit migrated from https://github.com/dotnet/coreclr/commit/
b1e39a871872acfcd883d510b8660ddeb8773548
Vance Morrison [Wed, 30 May 2018 22:39:21 +0000 (15:39 -0700)]
Fix Managed Thread Name Setting
System.Thread has a 'Name' Property that will call the Windows OS SetThreadDescription that will give the thread that friendly name for debuggers and profilers. However this code was broken in a couple ways.
First, it actually calls the SetThreadDescription with a null name when a thread is created (even if later the name is set. Secondly, if the Thread.Name is set before the thread is actually started, then SetThreadDescription is not called at all.
This change fixes both of these issues. First, when a thread is created it uses the Name property if it is set. Second if the name property is set, it does not call SetThreadDescription if the Thread has not been created. Third, it skips calls to SetThreadDescription if the name is null.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e80cbe3e0503cb313415f4e5d2f72f6de8a4acc6
Bruce Forstall [Wed, 30 May 2018 22:21:27 +0000 (15:21 -0700)]
Merge pull request dotnet/coreclr#18173 from sdmaclea/PR-FIX-GCSTRESS-ASSERTION
Fix GCStress assertion
Commit migrated from https://github.com/dotnet/coreclr/commit/
aa100c5945134260010be0d41e95ad5b05eabebf
Bruce Forstall [Wed, 30 May 2018 00:31:03 +0000 (17:31 -0700)]
Remove unused defines
More fallout from removing `LEGACY_BACKEND`.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f3035058b2bff1db9b3a968959842e6febcd6740
Ben Adams [Wed, 30 May 2018 18:03:04 +0000 (19:03 +0100)]
Inline Span.CopyTo (dotnet/coreclr#18006)
Commit migrated from https://github.com/dotnet/coreclr/commit/
86c438de4043359942f3e0f46c55fdaa98dc5b2f
Vance Morrison [Wed, 30 May 2018 12:38:21 +0000 (05:38 -0700)]
Improve the labeling of .NET Threads. (dotnet/coreclr#18193)
There was already some support for labeling threads using the Window SetThreadDescription API, however it was missing some important cases (like labeling the ThreadPool and GC server and Background threads). Fix this. Also make the naming consistant (they all start with .NET).
These names show up in PerfView traces and can be used by debuggers or other profilers as well.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3148a6dd0a1999cbb987b12de2368a7c0b09077e
Marek Safar [Wed, 30 May 2018 12:37:36 +0000 (14:37 +0200)]
Moves ArraySortHelper common code to shared location (dotnet/coreclr#18125)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4445c056a4a1fa23dc18674b3719d78c38435f06
Stephen Toub [Wed, 30 May 2018 02:53:56 +0000 (22:53 -0400)]
Add sos DumpAsync command (dotnet/coreclr#18160)
Debugging async methods with sos can be time consuming and relies on knowing how to use dumpheap, dumpvc, gcroot, and other commands to get the desired information, while often digging through a myriad of objects on the heap to find the desired info.
This commit adds a new DumpAsync command, which finds the async state machine objects on the GC heap and outputs relevant information about each, including the fields of its state machine, any registered continuation, and GC roots for the state machine object (as they often serve as a valid substitute for call stacks).
Example program used as a test:
```C#
using System.Threading.Tasks;
class Program
{
static async Task Main() => await MethodA();
static async Task MethodA() => await MethodB();
static async Task MethodB() => await MethodC();
static async Task MethodC() => await MethodD();
static async Task MethodD() => await Task.Delay(int.MaxValue);
}
```
and example command output:
```
0:011> !DumpAsync -type MethodD
Address MT Size Name
000001989f413de0 00007ff88c506ba8 112 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodD>d__4, test]]
StateMachine: Program+<MethodD>d__4
MT Field Offset Type VT Attr Value Name
00007ff8d3df4b80 400000d 0 System.Int32 1 instance 0 <>1__state
00007ff8d3e082c0 400000e 8 ...TaskMethodBuilder 1 instance
000001989f413e38 <>t__builder
00007ff8d3dfea90 400000f 10 ...vices.TaskAwaiter 1 instance
000001989f413e40 <>u__1
Continuation:
000001989f413e50 (System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodC>d__3, test]])
GC roots:
Thread 2936c:
000000071a37e050 00007ff8d3ac1657 System.Threading.Tasks.Task.SpinThenBlockingWait(Int32, System.Threading.CancellationToken) [d:\repos\coreclr\src\System.Private.CoreLib\src\System\Threading\Tasks\Task.cs @ 2977]
rbp+10:
000000071a37e0c0
->
000001989f413fa0 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<Main>d__0, test]]
->
000001989f413f30 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodA>d__1, test]]
->
000001989f413ec0 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodB>d__2, test]]
->
000001989f413e50 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodC>d__3, test]]
->
000001989f413de0 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodD>d__4, test]]
HandleTable:
000001989d8415f8 (pinned handle)
->
00000198af3e1038 System.Object[]
->
000001989f413410 System.Threading.TimerQueue[]
->
000001989f413468 System.Threading.TimerQueue
->
000001989f413330 System.Threading.TimerQueueTimer
->
000001989f412e40 System.Threading.Tasks.Task+DelayPromise
->
000001989f413de0 System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[Program+<MethodD>d__4, test]]
Found 1 state machines.
```
Commit migrated from https://github.com/dotnet/coreclr/commit/
a9c56e2800da681a84cb68f9836ba7e9a7ea76c5
Carol Eidt [Wed, 30 May 2018 00:11:17 +0000 (17:11 -0700)]
Merge pull request dotnet/coreclr#18118 from sdmaclea/PR-ARM64-compFloatingPointUsed
[Arm64] Set compFloatingPointUsed for SIMD HWIntrincsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
7fb85cf3c1afe9be82fa8bfbac2305dfb2d5bd16
dotnet-maestro-bot [Tue, 29 May 2018 23:13:48 +0000 (16:13 -0700)]
Update BuildTools to preview1-02829-01 (dotnet/coreclr#18171)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e1bbc700cbd8dd2b66a52cb685e2b83609b7eddf
Maryam Ariyan [Tue, 29 May 2018 23:13:13 +0000 (16:13 -0700)]
Moving common logic of StackFrame into shared (dotnet/coreclr#18134)
Related to: dotnet/coreclr#9474
Commit migrated from https://github.com/dotnet/coreclr/commit/
98c22a44ceab4f54607df65ef200e7bf7acb6145
Steve MacLean [Tue, 29 May 2018 17:35:03 +0000 (13:35 -0400)]
Fix GCStress assertion
Commit migrated from https://github.com/dotnet/coreclr/commit/
26f72749eda9bc7f800f09218cc04fe991d65dd9
Carol Eidt [Tue, 29 May 2018 19:01:36 +0000 (12:01 -0700)]
Merge pull request dotnet/coreclr#18127 from CarolEidt/StructAbiDoc
Design doc for struct passing
Commit migrated from https://github.com/dotnet/coreclr/commit/
fc8b1560a4d2bfaaa981764d72cf67371fa82341
Carol Eidt [Fri, 25 May 2018 17:53:18 +0000 (10:53 -0700)]
Design doc for struct passing
Commit migrated from https://github.com/dotnet/coreclr/commit/
2950f8fcc711abe5be8e5bef20c8de19ef50143f
Marco Rossignoli [Tue, 29 May 2018 18:11:25 +0000 (20:11 +0200)]
amend call (dotnet/coreclr#18159)
Commit migrated from https://github.com/dotnet/coreclr/commit/
208ea16c870cc2b60682d721bd4ce78db14a2805
dotnet-maestro-bot [Tue, 29 May 2018 16:00:34 +0000 (09:00 -0700)]
Update CoreClr, CoreFx, PgoData to preview1-26529-04, preview1-26529-04, master-
20180529-0053, respectively (dotnet/coreclr#18139)
Commit migrated from https://github.com/dotnet/coreclr/commit/
afbd6ec73b59447b53796ab30f2c74fcd69eb066
stakx [Mon, 28 May 2018 15:25:14 +0000 (17:25 +0200)]
BOTR: Ensure generic params/args are rendered properly (dotnet/coreclr#18140)
* BOTR: Ensure generic params/args are rendered properly
* Use inline code formatting for managed code
* Use inline code formatting for unmanaged code
Commit migrated from https://github.com/dotnet/coreclr/commit/
3c4aa12471b0b94634678fa51e97bd7f43396e80
John Doe [Sun, 27 May 2018 14:34:51 +0000 (07:34 -0700)]
Typo (dotnet/coreclr#18141)
* Ajusted -> Adjusted
* alot -> a lot
* Ambigous -> Ambiguous
* amoun -> amount
* amoung -> among
* Amperstand -> Ampersand
* Anbody -> Anybody
* anddoens't -> and doesn't
* anme -> name
* annoations -> annotations
* annother -> another
* anothr -> another
* ansynchronous -> asynchronous
* anticpation -> anticipation
* anway -> anyway
* aother -> another
* Apparant -> Apparent
* appartment -> apartment
* appdmomain -> appdomain
* Appdomian -> Appdomain
* appdomin -> appdomain
* approproiate -> appropriate
* approprate -> appropriate
* approp -> appropriate
* appened -> appended
* appropiately -> appropriately
* appropraitely -> appropriately
* Apperantly -> Apparently
* approp. -> appropriate
* Approriate -> Appropriate
Commit migrated from https://github.com/dotnet/coreclr/commit/
6bf04a47badd74646e21e70f4e9267c71b7bfd08
dotnet-maestro-bot [Sat, 26 May 2018 06:35:32 +0000 (23:35 -0700)]
Update CoreClr, CoreFx to preview1-26526-01, preview1-26526-01, respectively (dotnet/coreclr#18135)
Commit migrated from https://github.com/dotnet/coreclr/commit/
59f07a0c2d30bb7da1308a061d197afb8691e229
Tanner Gooding [Thu, 24 May 2018 17:10:28 +0000 (10:10 -0700)]
Updating the compiler to not enable FMA if the global AVX flag is disabled.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8db778b54af3abd1b8b08b02515227a51b11e348
Tanner Gooding [Sun, 20 May 2018 20:10:38 +0000 (13:10 -0700)]
Adding tests for the FMA hardware intrinsics.
Commit migrated from https://github.com/dotnet/coreclr/commit/
65f17b21c7dd299fd44fb3756438b5550d9db748
Tanner Gooding [Wed, 23 May 2018 18:20:29 +0000 (11:20 -0700)]
Updating the JIT to handle the FMA hardware intrinsics.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5fc7dd5917d9e0d2345023a87f73a32c2ebfdbe8
Morgan Brown [Fri, 25 May 2018 23:00:44 +0000 (16:00 -0700)]
Add mixed-mode Book of the Runtime entry (dotnet/coreclr#18014)
* Add mixed-mode Book of the Runtime entry
Documents how mixed-mode assemblies are specified and work in general.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6977efd6b2a7b2d79479ac461da33b6512a72f90
Sergey Andreenko [Fri, 25 May 2018 22:02:20 +0000 (15:02 -0700)]
delete unused variables from jit (dotnet/coreclr#18121)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b4a869246b892ec8f513a6a0c9a5ea3d6755383c
Carol Eidt [Fri, 25 May 2018 21:59:05 +0000 (14:59 -0700)]
Merge pull request dotnet/coreclr#18126 from CarolEidt/FixSuperPmi
Check SuperPmi map for null
Commit migrated from https://github.com/dotnet/coreclr/commit/
eefd8d7805eb7f984449b88f48e27b11a06fcaba
Carol Eidt [Fri, 25 May 2018 17:30:46 +0000 (10:30 -0700)]
Check SuperPmi map for null
On Linux, calling an instance method with a null `this` pointer causes a seg fault.
This fixes the case of querying the `CanInlineTypeCheckWithObjectVTable` map in SuperPmi when no query has been recorded by `recCanInlineTypeCheckWithObjectVTable`. There appear to be other cases of this, but this is the one that I'm running into currently.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f05efe953681375384577dcc77e488c4800715f1
dotnet-maestro-bot [Fri, 25 May 2018 15:17:50 +0000 (08:17 -0700)]
Update CoreClr, PgoData to preview1-26525-04, master-
20180525-0042, respectively (dotnet/coreclr#18124)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f5bf3056389b7b6a7269921873bcbbd9b6f8c441
John Doe [Fri, 25 May 2018 06:22:42 +0000 (23:22 -0700)]
Typo (dotnet/coreclr#18122)
* acquringing -> acquiring
* Activ -> Active
* activley -> actively
* acutal -> actual
* bIncomingIPAdddefed -> bIncomingIPAddRefed
* adddr -> addr
* readding -> reading
* Addfunction -> AddFunction
* additionnal -> additional
* Additonal -> Additional
* Additonally -> Additionally
* Addresss -> Address
* addtion -> addition
* aded -> added
* aditional -> additional
* adjustements -> adjustments
* Adress -> Address
* afer -> after
* aformentioned -> aforementioned
* afte -> after
* agains -> against
* agaisnt -> against
* aggresively -> aggressively
* aggreates -> aggregates
* aggregious -> egregious
* aginst -> against
* agregates -> aggregates
* Agressive -> Aggressive
* ahve -> have
* ajdust -> adjust
* ajust -> adjust
* alement -> element
* algoritm -> algorithm
* alighnment -> alignment
* alignmant -> alignment
* constraits -> constraints
* Allcator -> Allocator
* alllocate -> allocate
* alloacted -> allocated
* allocatate -> allocate
* allocatoror -> allocator
* alloctaed -> allocated
* alloction -> allocation
* alloted -> allotted
* allt he -> all the
* alltogether -> altogether
* alocate -> allocate
* alocated -> allocated
* Alocates -> Allocates
* alogrithm -> algorithm
* aloocate -> allocate
* alot -> a lot
* alwasy -> always
* alwyas -> always
* alwys -> always
Commit migrated from https://github.com/dotnet/coreclr/commit/
8e48db2c113052ef18cdafb43e114a8633864ec0
dotnet-maestro-bot [Fri, 25 May 2018 06:13:38 +0000 (23:13 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02824-02, preview1-26525-01, preview1-26525-01, master-
20180524-0023, respectively (dotnet/coreclr#18109)
Commit migrated from https://github.com/dotnet/coreclr/commit/
6468753a39d2419083cd842497ae2fc0f35c143a
Jan Kotas [Fri, 25 May 2018 01:18:56 +0000 (18:18 -0700)]
Fix misplaced volatile (dotnet/coreclr#18115)
Fixes dotnet/coreclr#13015
Commit migrated from https://github.com/dotnet/coreclr/commit/
5fe6e952f7a9f60ae190a746f2446d255d0e5bea
Tanner Gooding [Thu, 24 May 2018 21:21:12 +0000 (14:21 -0700)]
Updating BuildDelayFreeUses to also consider contained HWIntrinsic nodes.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3b32ecf311b4c4d16d770501d5257a2e2f74e656
Steve MacLean [Thu, 24 May 2018 18:47:12 +0000 (14:47 -0400)]
[Arm64] Set compFloatingPointUsed for SIMD HWIntrincsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
e206476871df6997df26c040811df0a56bb87c57
Vance Morrison [Thu, 24 May 2018 21:52:35 +0000 (14:52 -0700)]
Merge pull request dotnet/coreclr#18103 from vancem/StringBuilderEnumeratorUpdate
Add more comments and rename to StringBuilder.GetChunks()
Commit migrated from https://github.com/dotnet/coreclr/commit/
a9a7e78d290809692f23f129cd373e5f9a71a294
David Wrighton [Thu, 24 May 2018 21:35:47 +0000 (14:35 -0700)]
[Arm64] debugging work (dotnet/coreclr#17993)
* Fix missing implementation of FuncEvalFrame::UpdateRegDisplay for ARM64
- Implementation is missing. Build new one based ARM implementation
* Enable just my code on arm64
* Fix logging of addresses for DispatchPatchOrSingleStep
* arm64 does not leave the PC at the start of the breakpoint
* Enable interop debugging
* Tweaks for windows arm64 mixed mode debugging support
Commit migrated from https://github.com/dotnet/coreclr/commit/
afe9b1dcea839ae93dd148e176e3b702b6b15ec1
Egor Chesakov [Thu, 24 May 2018 20:57:47 +0000 (13:57 -0700)]
Use sysconf(_SC_NPROCESSORS_CONF) instead of sysconf(_SC_NPROCESSORS_ONLN) (dotnet/coreclr#18053)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2bedc5757cfad4a222a02e74ee11a5debd70a810
mikedn [Thu, 24 May 2018 19:01:41 +0000 (22:01 +0300)]
Improve SSA topological sort (dotnet/coreclr#15200)
* Simplify block successor iterators
Construction of an end AllSuccessorIter requires the number of block successors. This can be avoided by keeping track of the number of remaining successors so that the end iterator is simply "0 remaining successors".
Remove StartAllSuccs & co. These functions don't do anything useful.
Since AllSuccessorIter and EHSuccessorIter now have similar constructors the "collection" classes AllSuccs and EHSuccs can be replaced by a single template class.
* Split out block successor iterator logic
The AllSuccessorIterator iterator is pretty large - 64 bytes on 64 bit hosts. When used as local variables that's not much of a problem but if they end up stored in containers then a lot of space is wasted.
AllSuccessorIter contains a pointer to the compiler object and a pointer to the block whose successors it iterates over. And then it also contains an EHSuccessorIter that contains the same 2 pointers.
In scenarios such as the one in SsaBuilder::TopologicalSort the compiler pointer need not be stored and the block needs to be stored only once and be made accessible so a separate block stack isn't needed.
This change splits out the successor iterating logic into separate "position" classes that receieve the compiler and block via function parameters.
* Improve TopologicalSort memory usage
Commit migrated from https://github.com/dotnet/coreclr/commit/
c0150d4d0131ab16a50378711d8adb19c5c868ab
Vance Morrison [Thu, 24 May 2018 18:01:46 +0000 (11:01 -0700)]
Rename EnumerateCHunks -> GetChunks per API review feedback.
Commit migrated from https://github.com/dotnet/coreclr/commit/
23f0078eccaff9c6795d0f05cf031f5f2386be18
Tanner Gooding [Thu, 24 May 2018 14:47:06 +0000 (07:47 -0700)]
Realigning the hwintrinsiclistxarch table columns
Commit migrated from https://github.com/dotnet/coreclr/commit/
78e7dbf21fe0b5fbe72332b7d8d1dcbd44d3186c
John Doe [Thu, 24 May 2018 14:43:42 +0000 (07:43 -0700)]
Fix a variety of typos (dotnet/coreclr#18096)
* absense -> absence
* aboring -> aborting
* absense -> absence
* absoute -> absolute
* absoute -> absolute
* abstration -> abstraction
* dwDesiredAcces -> dwDesiredAccess
* accees -> access
* accesed -> accessed
* accessability -> accessibility
* accessable -> accessible
* accidentaly -> accidentally
* accesible -> accessible
* accommondate -> accommodate
* accurancy -> accuracy
* accuratley -> accurately
* Achitecture -> Architecture
* acompannying -> accompanying
* acordingly -> accordingly
Commit migrated from https://github.com/dotnet/coreclr/commit/
58254b513146b138e80b3abea62c56322abf1807
Jan Kotas [Thu, 24 May 2018 14:07:20 +0000 (07:07 -0700)]
Optimize Array.Clear using SpanHelpers (dotnet/coreclr#18101)
Reimplement most of Array.Clear in managed code using Span Clear helpers.
Fixes dotnet/corefxdotnet/coreclr#29848
Commit migrated from https://github.com/dotnet/coreclr/commit/
f001fd476893730d98d7e3e9f2d17175e8d9b478
Egor Chesakov [Thu, 24 May 2018 13:08:26 +0000 (06:08 -0700)]
Update g_highest_address and g_lowest_address in StompWriteBarrier(WriteBarrierOp::StompResize) on ARM (dotnet/coreclr#18107)
Commit migrated from https://github.com/dotnet/coreclr/commit/
08beb290dce1e7d5f29897538d201b7ebd345a3a
Maryam Ariyan [Thu, 24 May 2018 06:04:14 +0000 (23:04 -0700)]
sharing SerializationInfo for corert and coreclr (dotnet/coreclr#18102)
* String to string in SerializationInfo
* Object to object in SerializationInfo
* Reducing diff between coreclr and corefx by renaming some variables.
* Reducing diff for SerializationInfo by simplifying code
* More cleanup
- Removing unused fields and making internals private.
- Removing unused namespaces
- Merge some comments
* Fixing up commets and removing object from object.ReferenceEquals(..)
* Minor fixups
* Moving to shared
* Applying PR feedbacks
* using IsRuntimeImplemented helper method for type
* using the CoreRT version and keeping ctor with extra argument
Commit migrated from https://github.com/dotnet/coreclr/commit/
b23f8213a527d831577ce8bb7de47d54d153c509
Carol Eidt [Thu, 24 May 2018 03:45:29 +0000 (20:45 -0700)]
Merge pull request dotnet/coreclr#18011 from CarolEidt/JitOptDoc
Update struct handling section of Jit Opt Doc
Commit migrated from https://github.com/dotnet/coreclr/commit/
f7c77150c64cd57354d6485e654f4b0806b4a145
Carol Eidt [Tue, 15 May 2018 22:02:03 +0000 (15:02 -0700)]
Update struct handling section of Jit Opt Doc
Commit migrated from https://github.com/dotnet/coreclr/commit/
f0dd059f50d3c682445d8b66d5594695be7a278d
acmyu [Thu, 24 May 2018 00:24:03 +0000 (17:24 -0700)]
R2RDump - Dump generic method instances (dotnet/coreclr#18080)
* R2RDump - dump generic method instances
* Added comments
* Move read functions to own class, changes to NativeHashtable to make it similar to NativeFormatReader
* Get type name for struct generic instances
* Emit # of runtimeFunctions and size:unavailable, add [Flags] to enum and NONE flag
* Throw exception when method entrypoint id is out of bounds
* Type name instead of var
* Get full classname including namespace
* Get parent types of nested types
* Save DeclaringType as string, rename variables, use 1 constructor
* Check generic param indices not out of bounds
Commit migrated from https://github.com/dotnet/coreclr/commit/
6c934c21df759d4319e2006ef4add9e01068f648
Tanner Gooding [Wed, 23 May 2018 17:47:44 +0000 (10:47 -0700)]
Cleaning up LinearScan::BuildHWIntrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
f4c6bebb1601596ea54baff489e50b64ad4a6a2e
Vance Morrison [Wed, 23 May 2018 21:03:16 +0000 (14:03 -0700)]
Add more comments to StringBuilder.EnumerateChunks()
This does not change execution of the code (only comments, placement)
Added a warning about modifying the stringbuilder while enumerating.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c6409334f6fc56884bb7df91489293d52efaabd1
Sergey Andreenko [Wed, 23 May 2018 20:52:15 +0000 (13:52 -0700)]
Refactor fgDebugCheckBBlist (dotnet/coreclr#18082)
create BBPredsChecker
Commit migrated from https://github.com/dotnet/coreclr/commit/
bc931bfa7dcfb3151c962916584b9531dc3d71f0
Chris Sienkiewicz [Wed, 23 May 2018 17:39:56 +0000 (10:39 -0700)]
SOS Fixes for windows arm32 (dotnet/coreclr#18090)
Commit migrated from https://github.com/dotnet/coreclr/commit/
6185b9af8591283c5dbf1711d6064a23602f9760
Wes Haggard [Wed, 23 May 2018 17:29:28 +0000 (10:29 -0700)]
Merge pull request dotnet/coreclr#18079 from dotnet-maestro-bot/master-UpdateDependencies
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02823-01, preview1-26523-04, preview1-26523-05, master-
20180523-0040, respectively (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
0c24aa0d3d81da5067f3f1d155174e46472985df
Sergey Andreenko [Wed, 23 May 2018 17:23:18 +0000 (10:23 -0700)]
Fix parallel spmi return code. (dotnet/coreclr#18093)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d7be1d0f72a1b5367a4cb504ea7234f7b49e08c9
Carol Eidt [Wed, 23 May 2018 16:58:49 +0000 (09:58 -0700)]
Merge pull request dotnet/coreclr#18099 from CarolEidt/FixEliminNodeInfo
Fix desktop build break
Commit migrated from https://github.com/dotnet/coreclr/commit/
7e517ed6b6a210c820a7336f199008f31c19d52f
Carol Eidt [Wed, 23 May 2018 15:02:59 +0000 (08:02 -0700)]
Fix desktop build break
Commit migrated from https://github.com/dotnet/coreclr/commit/
3fa689df0e56da296c2819c991c4bcfd7195f846
Bruce Forstall [Wed, 23 May 2018 14:53:12 +0000 (07:53 -0700)]
Merge pull request dotnet/coreclr#18086 from sdmaclea/PR-delete_next_card_table
Mark delete_next_card_table
Commit migrated from https://github.com/dotnet/coreclr/commit/
f233b2a4d444aea570f409a413d3922d4c9a0cb7
Carol Eidt [Wed, 23 May 2018 14:39:43 +0000 (07:39 -0700)]
Create RefPositions without TreeNodeInfo (dotnet/coreclr#16517)
* Create RefPositions without TreeNodeInfo
* Remove all references to TreeNodeInfo
* Fix function header comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
b39a5b2cfad4620ae23cda84186a36ffb463cd5a
Bruce Forstall [Wed, 23 May 2018 14:33:57 +0000 (07:33 -0700)]
Merge pull request dotnet/coreclr#18087 from BruceForstall/RemoveMoreLEGACY_BACKEND
Remove more JIT LEGACY_BACKEND tendrils
Commit migrated from https://github.com/dotnet/coreclr/commit/
74d0196fe5b36bf04848f2cf84d20c8b6e999b62
dotnet-maestro-bot [Wed, 23 May 2018 14:14:08 +0000 (07:14 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02823-01, preview1-26523-04, preview1-26523-05, master-
20180523-0040, respectively
Commit migrated from https://github.com/dotnet/coreclr/commit/
5138819d85d7e900c33faba39081d3e897e4f824
Steve MacLean [Wed, 23 May 2018 08:57:42 +0000 (04:57 -0400)]
Fix race in test waitone1 (dotnet/coreclr#18085)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fa3e66ea4225de823e7996e4d1a54d3f8cc68603
Bruce Forstall [Tue, 22 May 2018 21:25:34 +0000 (14:25 -0700)]
Remove more JIT LEGACY_BACKEND tendrils
1. Remove armlb testing from netci.groovy
2. Remove legacy jit exclusions from tests.lst
3. Remove some unused `LEGACY_BACKEND` build definitions
4. Remove regpair.h
Commit migrated from https://github.com/dotnet/coreclr/commit/
6716e0ce0794f0139c8c15e3ca52d4bb5ebbce0b
Sergey Andreenko [Wed, 23 May 2018 02:38:44 +0000 (19:38 -0700)]
fix desktop (dotnet/coreclr#18092)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9c5e3d5d86901bd6bc0bd2d56e81cc0edec7eb13
Brian Robbins [Wed, 23 May 2018 02:13:20 +0000 (19:13 -0700)]
Remove -Rebuild option from build scripts (dotnet/coreclr#18089)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7d930115ebd1a170af6b41caab3bb3906c476685
dotnet bot [Wed, 23 May 2018 00:47:42 +0000 (17:47 -0700)]
add treeLifeUpdater (dotnet/coreclr#18021)
[tfs-changeset:
1700288]
Commit migrated from https://github.com/dotnet/coreclr/commit/
d629c9967bd401c21123873c7d5175e721d40feb
Vance Morrison [Tue, 22 May 2018 23:07:45 +0000 (16:07 -0700)]
Merge pull request dotnet/coreclr#17530 from vancem/StringBuilderEnumerator
Adding EnumerateChunks which allow efficient scanning of a StringBuilder
Commit migrated from https://github.com/dotnet/coreclr/commit/
f9bb9e1d95bffecf42965ab6b13496fa51c5b412
Bruce Forstall [Tue, 22 May 2018 20:50:38 +0000 (13:50 -0700)]
Remove JIT LEGACY_BACKEND code (dotnet/coreclr#18064)
Remove JIT LEGACY_BACKEND code
All code related to the LEGACY_BACKEND JIT is removed. This includes all code related to x87 floating-point code generation. Almost 50,000 lines of code have been removed.
Remove legacyjit/legacynonjit directories
Remove reg pairs
Remove tiny instruction descriptors
Remove compCanUseSSE2 (it's always true)
Remove unused FEATURE_FP_REGALLOC
Commit migrated from https://github.com/dotnet/coreclr/commit/
7153e441ef21e9bb5e022229c0808b964b9199e0
Steve MacLean [Tue, 22 May 2018 19:29:51 +0000 (15:29 -0400)]
Mark delete_next_card_table
GCStressIncompatible=true
IsLongRunningGCTest=true
Commit migrated from https://github.com/dotnet/coreclr/commit/
85e4d78e33294dd1b25171f9e961d89ec7339513
Maryam Ariyan [Tue, 22 May 2018 18:26:07 +0000 (11:26 -0700)]
Move InsufficientMemory, OutOfMemory and ThreadInterrupted exceptions (dotnet/coreclr#18049)
* Move following exceptions to shared:
- InsufficientMemory,
- OutOfMemory
- ThreadInterrupted
Related to: dotnet/coreclrdotnet/coreclr#17904
Reduced diff in RegistryKey visible between coreclr and corert
Commit migrated from https://github.com/dotnet/coreclr/commit/
32ab54d345a4ab2eb572fe3ba061b6e0d1b31088
Vance Morrison [Tue, 22 May 2018 18:25:01 +0000 (11:25 -0700)]
Fixe whitespace
Commit migrated from https://github.com/dotnet/coreclr/commit/
0ba7f8d3a974382a214820330408f20389317306
Vance Morrison [Tue, 22 May 2018 18:18:36 +0000 (11:18 -0700)]
Fix whitespace
Commit migrated from https://github.com/dotnet/coreclr/commit/
79cbf2e17f6cdd1095671c6ab9fa8b9c48bba0f5
Vance Morrison [Tue, 22 May 2018 18:16:05 +0000 (11:16 -0700)]
Fix attribute placement
Commit migrated from https://github.com/dotnet/coreclr/commit/
57055f17d50e275e9c904b3f8975065e3d7af526
Vance Morrison [Tue, 22 May 2018 17:55:16 +0000 (10:55 -0700)]
Collapse ChunkEnumerable and ChunkEnumerator.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1028e3801f8eb72680d4d35b68dc734be5f84785
Steve MacLean [Tue, 22 May 2018 14:05:57 +0000 (10:05 -0400)]
Fix compareexchangetstring thread safety (dotnet/coreclr#18075)
Commit migrated from https://github.com/dotnet/coreclr/commit/
0e70f69206b9797523855308e1b4c1edfb83ebdf
Sergey Andreenko [Tue, 22 May 2018 04:09:28 +0000 (21:09 -0700)]
add stackLevelSetter to the VS header list. (dotnet/coreclr#18077)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9b29e823c0aa503fc077e6a6ca885c1160f35a2e
Sergey Andreenko [Tue, 22 May 2018 04:08:58 +0000 (21:08 -0700)]
add repro for dotnet/coreclr#18056 (dotnet/coreclr#18057)
* add repro
* add the exclusion
* fix comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
a525181a7c485b49fa7f18b469ecc1271e7f21a3
Ahson Khan [Tue, 22 May 2018 01:03:55 +0000 (18:03 -0700)]
Code cleanup and formatting for System.Memory files. (dotnet/coreclr#17451)
* Fix IDE0034 C# expression can be simplified (use of default)
* Remove unnecessary using statements
* IDE0012 C# Name can be simplified. String -> string
* IDE0041 C# Null check can be simplified
* Fix code formatting (limited to Span/System.Memory files).
* Address PR feedback - IDE0012 Name can be simplified (String -> string)
* Add back the necessary using statements and fix typo
* Fix comment typo and add necessary using statements
Commit migrated from https://github.com/dotnet/coreclr/commit/
f31097f14560b193e76a7b2e1e61af9870b5356b
Tomas Weinfurt [Tue, 22 May 2018 00:38:50 +0000 (17:38 -0700)]
small fixes to build CoreCLR on FreeBSD again (dotnet/coreclr#18072)
* small fixes to build CoreCLR on FreeBSD again
* feedback from review
* update genLttngProvider.py as jan suggested
* remove extra comment
* add missing extra space
Commit migrated from https://github.com/dotnet/coreclr/commit/
49f6249abc44269b437064e850ad22eb9f74a446
dotnet-maestro-bot [Mon, 21 May 2018 23:31:29 +0000 (16:31 -0700)]
Update BuildTools, PgoData to preview1-02821-03, master-
20180521-0051, respectively (dotnet/coreclr#18066)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3910feed29faffb67a0cacf9470461219539e632
Brian Robbins [Mon, 21 May 2018 21:51:43 +0000 (14:51 -0700)]
Only include DotNETRuntimeEventSource.cs if it exists. (dotnet/coreclr#18074)
Commit migrated from https://github.com/dotnet/coreclr/commit/
821317f109635cc591c976e6921429fc7f673b68