Michal Strehovský [Mon, 1 Jul 2019 05:15:28 +0000 (07:15 +0200)]
Use AssemblyLoadContext from shared partition (dotnet/corert#7570)
We were missing methods that got added for 3.0. The only LoadContext that works is the default one though.
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Jan Kotas [Tue, 2 Jul 2019 02:46:37 +0000 (19:46 -0700)]
Delete dead code (#25513)
Michal Strehovský [Tue, 2 Jul 2019 02:46:24 +0000 (04:46 +0200)]
Get rid of warnings while building tests (#25514)
dotnet-maestro[bot] [Mon, 1 Jul 2019 18:17:21 +0000 (11:17 -0700)]
[master] Update dependencies from dotnet/arcade (#25503)
* Update dependencies from https://github.com/dotnet/arcade build
20190629.2
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19329.2
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19329.2
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19329.2
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19329.2
* Update dependencies from https://github.com/dotnet/arcade build
20190630.1
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19330.1
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19330.1
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19330.1
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19330.1
dotnet-maestro[bot] [Mon, 1 Jul 2019 16:05:41 +0000 (09:05 -0700)]
[master] Update dependencies from dnceng/internal/dotnet-optimization (#25504)
- optimization.IBC.CoreCLR - 99.99.99-master-
20190701.1
- optimization.PGO.CoreCLR - 99.99.99-master-
20190701.1
dotnet-maestro[bot] [Mon, 1 Jul 2019 16:04:15 +0000 (09:04 -0700)]
[master] Update dependencies from dotnet/corefx (#25497)
- Microsoft.NETCore.Platforms - 3.0.0-preview8.19330.3
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview8.19330.3
Russ Keldorph [Mon, 1 Jul 2019 04:06:55 +0000 (21:06 -0700)]
Disable windows formatting job in PRs (#25507)
Temporarily disable this job to stop redness in PRs until #25499 is addressed.
dotnet-maestro[bot] [Sun, 30 Jun 2019 00:20:02 +0000 (17:20 -0700)]
[master] Update dependencies from dotnet/arcade (#25476)
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19328.2
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19328.2
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19328.2
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19328.2
dotnet-maestro[bot] [Sun, 30 Jun 2019 00:16:55 +0000 (17:16 -0700)]
Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20190628.3 (#25498)
- optimization.IBC.CoreCLR - 99.99.99-master-
20190628.3
- optimization.PGO.CoreCLR - 99.99.99-master-
20190628.3
Bruce Forstall [Sat, 29 Jun 2019 21:57:58 +0000 (14:57 -0700)]
Remove an old CoreFX exclusion file (#25500)
Plus, add comments to the new exclusion file
Bruce Forstall [Sat, 29 Jun 2019 16:50:02 +0000 (09:50 -0700)]
Update documentation for corefx testing in coreclr repo (#25493)
* Update documentation for corefx testing in coreclr repo
* Apply suggestions from code review
Co-Authored-By: Jan Kotas <jkotas@microsoft.com>
* Update a command line; improve clarity
Bruce Forstall [Sat, 29 Jun 2019 15:57:05 +0000 (08:57 -0700)]
Re-enable corefx tests (#25490)
Re-enable corefx tests
Brian Sullivan [Sat, 29 Jun 2019 08:26:37 +0000 (01:26 -0700)]
Fix GCStress issue on x86 and Arm (#25445)
* Fix GCStress issue on x86 and Arm32
When we write one of the new gc stress instruction, such as INTERRUPT_INSTR_PROTECT_FIRST_RET
we might be writing it in the epilog region on x86 or ARM as a direct call can be the last
instruction before an epilog. (This isn't allowed on x64)
This fix expands the set of instructions we are allowed by IsMarkerInstr() toinclude these
newly added gc stress instructions.
added comment to GetGcMarkerExceptionCode
Fix DAC build
* Code review feedback
* Additional code review chnages
Koundinya Veluri [Sat, 29 Jun 2019 07:27:20 +0000 (00:27 -0700)]
Fix a mutex abandon case with WaitHandle.WaitAll in the PAL (#25452)
Fixes https://github.com/dotnet/coreclr/issues/25108
- Upon a `WaitAll` when all waits are already satisfied, the abandoned flag is overwritten with the abandoned state of the last wait object in the array
- So if the first wait object is an abandoned mutex and the second wait object is a signaled event, the `WaitAll` succeeds and does not report that anything was abandoned
- Fixed to accumulate into the flag instead of overwriting it
Sung Yoon Whang [Sat, 29 Jun 2019 00:06:19 +0000 (17:06 -0700)]
Stop using reflection on pollingcounter tests (#25489)
Sung Yoon Whang [Fri, 28 Jun 2019 20:57:19 +0000 (13:57 -0700)]
Don't return TRUE on tracepoint_enabled if LTTng library does not exist on build (#25459)
Jan Kotas [Fri, 28 Jun 2019 20:31:19 +0000 (13:31 -0700)]
Use regular static variable for EEConfig storage (#25479)
Fixes #25475
Koundinya Veluri [Fri, 28 Jun 2019 20:08:22 +0000 (13:08 -0700)]
Fix an assertion failure in the thread pool's QueueUserWorkItemCallbackBase (#25482)
Fixes https://github.com/dotnet/coreclr/issues/25242
- The issue could be that there is no memory barrier (or in the wrong place) on the thread reading the value, and an old value could be cached and read
Andrew Au [Fri, 28 Jun 2019 17:41:31 +0000 (10:41 -0700)]
Avoid the multiplication generated by mc.exe (#25454)
dotnet-maestro[bot] [Fri, 28 Jun 2019 17:02:02 +0000 (10:02 -0700)]
Update dependencies from https://github.com/dotnet/corefx build
20190627.9 (#25477)
- Microsoft.NETCore.Platforms - 3.0.0-preview8.19327.9
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview8.19327.9
Jarret Shook [Fri, 28 Jun 2019 15:41:05 +0000 (08:41 -0700)]
Add windows arm32 native vararg excludes (#25429)
* Add windows arm32 native vararg excludes
* Fix typo
Konstantin Baladurin [Fri, 28 Jun 2019 14:04:00 +0000 (17:04 +0300)]
arm32_ci_script.sh: Fix tizen armel build (#25087)
Sung Yoon Whang [Fri, 28 Jun 2019 06:04:58 +0000 (23:04 -0700)]
Enable parsing multiple providers for LTTngConfig variable (#25451)
* Enable parsing multiple providers for LTTngConfig variable
* Handle case where LTTngConfig==NULL
* renaming some methods
* Add comment about the format of environment variable being parsed
Sung Yoon Whang [Fri, 28 Jun 2019 05:47:25 +0000 (22:47 -0700)]
Add test for IncrementingEventCounter (#25462)
* Add test for IncrementingEventCounter
* Some cleanup
* Remove unused using
Bruce Forstall [Fri, 28 Jun 2019 04:29:47 +0000 (21:29 -0700)]
Move coreclr-corefx pipelines into their own files (#25465)
Vladimir Sadov [Thu, 27 Jun 2019 23:16:07 +0000 (16:16 -0700)]
removed unnecessary WriteLine form a test (#25460)
William Godbe [Thu, 27 Jun 2019 20:23:32 +0000 (13:23 -0700)]
Merge pull request #25424 from dotnet/darc-master-
e048b5ab-4671-4e74-8671-
932e8299b22b
[master] Update dependencies from dotnet/arcade
Jan Vorlicek [Thu, 27 Jun 2019 19:46:26 +0000 (21:46 +0200)]
Fix VersionBubbles test (#25392)
The test was not crossgening with large version bubble enabled since
the part of the .csproj that generates part of the .sh/.bat test
running scripts was commented out. There were also bugs in the
commented out code. Also, to ensure that it works, tiered compilation
and jit minopts need to be disables to ensure that the test method
won't be re-jitted.
Carol Eidt [Thu, 27 Jun 2019 18:35:14 +0000 (11:35 -0700)]
Don't reload or spill for keepAliveThis (#25441)
Fix #25433
Santiago Fernandez Madero [Thu, 27 Jun 2019 17:39:13 +0000 (10:39 -0700)]
React to new compiler nullability warnings
dotnet-maestro[bot] [Thu, 27 Jun 2019 17:50:52 +0000 (10:50 -0700)]
[master] Update dependencies from dotnet/core-setup (#25426)
- Microsoft.NETCore.App - 3.0.0-preview7-27826-04
dotnet-maestro[bot] [Thu, 27 Jun 2019 17:49:52 +0000 (10:49 -0700)]
Update dependencies from https://github.com/dotnet/corefx build
20190626.15 (#25453)
- Microsoft.NETCore.Platforms - 3.0.0-preview8.19326.15
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview8.19326.15
Vladimir Sadov [Thu, 27 Jun 2019 17:48:47 +0000 (10:48 -0700)]
Fix SIGSEGV in GC when dealing with large double[] on ARM32 (#25403)
* Fix for #25252
* revert to special casing 8-alignement for double[] in GC helpers for x86
Fadi Hanna [Thu, 27 Jun 2019 16:05:58 +0000 (09:05 -0700)]
Update linux-instructions.md
dotnet-maestro [Thu, 27 Jun 2019 12:23:38 +0000 (12:23 +0000)]
Update dependencies from https://github.com/dotnet/arcade build
20190626.44
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19326.44
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19326.44
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19326.44
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19326.44
dotnet-maestro [Wed, 26 Jun 2019 12:21:07 +0000 (12:21 +0000)]
Update dependencies from https://github.com/dotnet/arcade build
20190626.2
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19326.2
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19326.2
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19326.2
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19326.2
William Godbe [Thu, 27 Jun 2019 03:41:42 +0000 (20:41 -0700)]
Hardcode LKG version of ucrtbased.dll (#25444)
* Hardcode LKG version of ucrtbased.dll
* Only use hardcoded UCRT version when search path fails
* Add missing single-quotes
Jan Kotas [Thu, 27 Jun 2019 01:25:21 +0000 (18:25 -0700)]
Fix typo & make the code leaner (#25442)
Enum.HasFlag generates bigger IL and depends on complex JIT optimization for a good code.
The classic bit check is strongly preferred accross CoreCLR and CoreFX.
Stephen Toub [Tue, 25 Jun 2019 02:10:45 +0000 (22:10 -0400)]
Fix ActivityTracker ES_BUILD_STANDALONE build
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Stephen Toub [Thu, 27 Jun 2019 01:02:19 +0000 (21:02 -0400)]
Tweak nullable attribute per API review (#25443)
Jan Kotas [Wed, 26 Jun 2019 23:47:04 +0000 (16:47 -0700)]
Update docs (#25446)
- Delete references to Jenkins CI
- Add note on Squash&Merge
Andrew Au [Wed, 26 Jun 2019 22:21:39 +0000 (15:21 -0700)]
EventPipe events should only be sent to sessions that are listening to the event (#25401)
Levi Broderick [Wed, 26 Jun 2019 22:05:53 +0000 (15:05 -0700)]
Fix EncoderNLS / DecoderNLS regression in reporting error index (#25397)
Also fixes incorrect asserts in the Encoding type
Mikhail Aksenov [Wed, 26 Jun 2019 19:16:40 +0000 (22:16 +0300)]
[createdump] Write page offset in NT_FILE note (#25384)
William Godbe [Wed, 26 Jun 2019 19:14:21 +0000 (12:14 -0700)]
Update branding to preview8 in master (#25438)
dotnet-maestro[bot] [Wed, 26 Jun 2019 18:53:11 +0000 (11:53 -0700)]
[master] Update dependencies from dotnet/corefx (#25425)
* Update dependencies from https://github.com/dotnet/corefx build
20190626.2
- Microsoft.Bcl.AsyncInterfaces - 1.0.0-preview7.19326.2
- Microsoft.NETCore.Platforms - 3.0.0-preview7.19326.2
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview7.19326.2
* Reenable globalization tests
Santiago Fernandez Madero [Wed, 26 Jun 2019 17:54:35 +0000 (10:54 -0700)]
Tweak some annotations on EventRegistrationTokenTable<T> (#25386)
Juan Hoyos [Wed, 26 Jun 2019 17:11:56 +0000 (10:11 -0700)]
Delegate inspection API in the DBI (#25362)
* Add ICorDebugDelegateObjectValue interfaces
* Expose appropriate HR (CORDBG_E_UNSUPPORTED_DELEGATE)
* Partially DACize DelegateObject
* Add DacDbi method for delegate inspection
Bruce Forstall [Wed, 26 Jun 2019 16:49:21 +0000 (09:49 -0700)]
Merge pull request #25326 from BruceForstall/CrossPlatTestHost
Expand corefx testing in coreclr repo
Currently, corefx testing is done on Windows/x64.
Expand testing to include:
1. Linux/x64, Linux/arm, Linux/arm64, Windows/x86 platforms.
Windows/arm should be added after corefx official builds
publish tests and test manifest. Windows/arm64 should be
added after corefx tests are published, and we have
sufficient hardware.
2. All JIT stress modes that are used in normal coreclr testing.
Testing is split into 4 Azure DevOps Pipelines: coreclr-corefx,
coreclr-corefx-jitstress, coreclr-corefx-jitstressregs, and
coreclr-corefx-jitstress2-jitstressregs.
In addition, we now use the corefx meta-package Microsoft.Private.CoreFx.OOB
instead of a list of individual assemblies when constructing
the testhost.
José Rivero [Wed, 26 Jun 2019 16:45:47 +0000 (09:45 -0700)]
Fix disabling wrong session on EventPipe::Shutdown (#25409)
- It's safe to call EventPipe::Disable during shutdown (eventpipe being disabled)
Rafael Lillo [Wed, 26 Jun 2019 15:31:16 +0000 (16:31 +0100)]
Fixes link to install SOS on linux (#25420)
Ben Adams [Wed, 26 Jun 2019 12:55:14 +0000 (14:55 +0200)]
Don't show AggressiveInlining items in exception stacks (#25408)
Tanner Gooding [Wed, 26 Jun 2019 05:36:36 +0000 (22:36 -0700)]
Reverting the ShouldRoundUp logic to not change for custom numeric format strings. (#25400)
Mukul Sabharwal [Wed, 26 Jun 2019 05:00:28 +0000 (22:00 -0700)]
Fix incorrect signature of QCall (#25419)
Sung Yoon Whang [Wed, 26 Jun 2019 04:03:04 +0000 (21:03 -0700)]
Fix LTTng filtering for runtime providers (#25374)
* LTTng filtering
* Fix Windows build, make IsInitialized check faster
* Cleanup/change default to no keywords/level set
* Keep the default to be the current policy - enable everything
* more cleanup
* No need to check for initialization
* Fix Windows build
Santiago Fernandez Madero [Wed, 26 Jun 2019 03:19:28 +0000 (20:19 -0700)]
Tell the compiler to emit nullable attributes for public API only (#25398)
David Mason [Wed, 26 Jun 2019 03:15:02 +0000 (20:15 -0700)]
Fix ReJIT failures (#25377)
David Mason [Wed, 26 Jun 2019 03:13:31 +0000 (20:13 -0700)]
emit rundown event for generic methods in R2R images (#25371)
* emit rundown event for generic methods in R2R images
* fix mac build
* Code Review Feedback
Bruce Forstall [Thu, 20 Jun 2019 20:05:53 +0000 (13:05 -0700)]
Expand corefx testing in coreclr repo
Currently, corefx testing is done on Windows/x64.
Expand testing to include:
1. Linux/x64, Linux/arm, Linux/arm64, Windows/x86 platforms.
Windows/arm should be added after corefx official builds
publish tests and test manifest. Windows/arm64 should be
added after corefx tests are published, and we have
sufficient hardware.
2. All JIT stress modes that are used in normal coreclr testing.
Testing is split into 4 Azure DevOps Pipelines: coreclr-corefx,
coreclr-corefx-jitstress, coreclr-corefx-jitstressregs, and
coreclr-corefx-jitstress2-jitstressregs.
In addition, we now use the corefx meta-package Microsoft.Private.CoreFx.OOB
instead of a list of individual assemblies when constructing
the testhost.
Tomáš Rylek [Wed, 26 Jun 2019 00:27:50 +0000 (17:27 -0700)]
Remove the Crossgen-specific VSD flag from R2RDump (#25391)
Based on JanK's advice I have removed the VSD flag from R2RDump.
The flag should get never observed by the dump tool as it's just
an intermediate contract internal to the Crossgen ZAP logic.
Thanks
Tomas
Jan Kotas [Wed, 26 Jun 2019 00:24:40 +0000 (17:24 -0700)]
Delete DeserializationBlockedException (#25393)
Contributes to dotnet/corefx#36723
Noah Falk [Tue, 25 Jun 2019 23:33:08 +0000 (16:33 -0700)]
Policheck comment adjustment
dotnet-maestro[bot] [Tue, 25 Jun 2019 23:04:19 +0000 (16:04 -0700)]
Update dependencies from https://github.com/dotnet/corefx build
20190624.8 (#25379)
- Microsoft.Bcl.AsyncInterfaces - 1.0.0-preview7.19324.8
- Microsoft.NETCore.Platforms - 3.0.0-preview7.19324.8
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview7.19324.8
Stephen Toub [Tue, 25 Jun 2019 19:12:08 +0000 (15:12 -0400)]
React to compiler respecting nullable attributes on properties
dotnet-maestro [Tue, 25 Jun 2019 12:20:07 +0000 (12:20 +0000)]
Update dependencies from https://github.com/dotnet/arcade build
20190624.24
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19324.24
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19324.24
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19324.24
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19324.24
Andrew Au [Tue, 25 Jun 2019 20:36:18 +0000 (13:36 -0700)]
Make sure EventPipeProvider::m_keywords is accurate after EventPipeConfiguration::Disable (#25358)
Michal Strehovský [Tue, 25 Jun 2019 20:25:02 +0000 (22:25 +0200)]
JitBench: Run PowerShell with an execution policy (#25259)
PowerShell is useless without this argument in default Windows configurations.
Tarek Mahmoud Sayed [Tue, 25 Jun 2019 20:23:56 +0000 (13:23 -0700)]
Map C Locale to Invariant (#25373)
ICU map the C locale to en-US_POSIX which has a non desired collation behavior as it doesn't support case insensitive comparison.
This change is to force mapping C locale to Invariant instead.
Tanner Gooding [Tue, 25 Jun 2019 20:23:33 +0000 (13:23 -0700)]
Updating the zapper to filter out some named intrinsics which are dependent on the ISAs supported by the target CPU. (#25365)
Jan Kotas [Tue, 25 Jun 2019 20:22:23 +0000 (13:22 -0700)]
Fix StackChange value for OpCodes.Stelem (#25382)
Fixes dotnet/corefx#37955
dotnet-maestro[bot] [Tue, 25 Jun 2019 20:18:59 +0000 (13:18 -0700)]
Update dependencies from https://github.com/dotnet/core-setup build
20190624.03 (#25380)
- Microsoft.NETCore.App - 3.0.0-preview7-27824-03
Egor Chesakov [Tue, 25 Jun 2019 19:59:49 +0000 (12:59 -0700)]
Add pr.yml ci.yml internal.yml pipelines to /eng/pipelines (#25385)
John Salem [Tue, 25 Jun 2019 19:39:16 +0000 (12:39 -0700)]
Remove outputPath parameter for EventPipe IPC protocol (#25363)
Jan Vorlicek [Tue, 25 Jun 2019 19:32:47 +0000 (21:32 +0200)]
Fix StackFrameIterator::IsValid check race (#25359)
* Fix StackFrameIterator::IsValid check race
During GC stress >= 4, there could be a race when we would compute
bRedirectedPinvoke as false, but before the condition of the following
_ASSERTE is evaluated, the thread that is being walked pushes a
ResumableFrame to the explicit frames stack of that thread in the GC
marker handler.
The fix to prevent this race is to evaluate all the conditions that
formed the bRedirectedPinvoke after the conditions in the _ASSERTE.
Omair Majid [Tue, 25 Jun 2019 00:41:13 +0000 (20:41 -0400)]
Add a note about ReadyToRun to ManagedNativeHeader
dotnet-maestro[bot] [Tue, 25 Jun 2019 17:27:17 +0000 (10:27 -0700)]
Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20190624.3 (#25381)
- optimization.IBC.CoreCLR - 99.99.99-master-
20190624.3
- optimization.PGO.CoreCLR - 99.99.99-master-
20190624.3
José Rivero [Tue, 25 Jun 2019 14:24:43 +0000 (07:24 -0700)]
Stop deallocating provider/events on shutdown (#25369)
Peter Sollich [Tue, 25 Jun 2019 13:55:05 +0000 (15:55 +0200)]
Brick table (#25349)
Fix brick table logic to fix perf issue in several ASP.NET tests, remove #ifdef FFIND_OBJECT.
What I observed was that some GCs spent a lot of time in find_first_object called from find_object, which is called during stack scanning to find the containing object for interior pointers. A substantial fraction of generation 0 was being scanned, indicating that the brick table logic didn't work properly in these cases.
The root cause was the fact that the brick table entries were not being set in adjust_limit_clr if the allocation was satisfied from the free list in gen0 instead of newly allocated space. This is the case if there are pinned objects in gen0 as well.
The main fix is in adjust_limit_clr - if the allocation is satisfied from the freelist, seg is nullptr, the change is to set the bricks in this case as well if we are allocating in gen0 and the allocated piece is above a reasonable size threshold.
The bricks are not set always set during allocation - instead, when we detect an interior pointer during GC, we make the allocator set the bricks during the next GC cycles by setting gen0_must_clear_bricks. I changed the way this is handled for server GC (multiple heaps). We used to multiply the decay time by the number of heaps (gc_heap::n_heaps), but only applied it to the single heap where an interior pointer was found. Instead, I think it's better to instead set gen0_must_clear_bricks for all heaps, but leave the decay time unchanged compared to workstation GC.
Maoni suggested to remove the #ifdef FFIND_OBJECT - interior pointers are not going away, so the #ifdefs are unnecessary clutter.
Addressed code review feedback:
- add parentheses as per GC coding conventions
- use max instead of if-statement
- merge body of for-loop over all into existing for-loop
Sung Yoon Whang [Tue, 25 Jun 2019 09:47:48 +0000 (02:47 -0700)]
Fix broken ETW events (#25364)
José Rivero [Tue, 25 Jun 2019 03:31:14 +0000 (20:31 -0700)]
Make s_numberOfSessions Volatile as advertisement to other devs that the data is being used across multiple threads and a portion of that usage is lock-free (#25366)
Sung Yoon Whang [Tue, 25 Jun 2019 00:36:54 +0000 (17:36 -0700)]
Events with keyword 0 needs to be fired (#25361)
Santiago Fernandez Madero [Tue, 25 Jun 2019 00:11:32 +0000 (19:11 -0500)]
Address last round of nullable feedback - S.Resources.ResourceManager, System.Reflection.Emit and ILGeneration (#25318)
* Address nullable feedback for System.Resources.ResourceManager
* Address nullable feedback for System.Reflection.Emit.ILGeneration
* Address nullable feedback for System.Reflection.Emit
* PR Feedback and clean-up redundant casts
Egor Chesakov [Tue, 25 Jun 2019 00:09:14 +0000 (17:09 -0700)]
Add /eng/pipelines/*.yml (#25325)
Jarret Shook [Mon, 24 Jun 2019 23:18:14 +0000 (16:18 -0700)]
Throw platform unsupported error for windows arm32 varargs (#25320)
* Throw unsupported platform for native vcarargs on Arm32 Windows
* Re-enable baseservices vararg test
Tanner Gooding [Mon, 24 Jun 2019 22:39:50 +0000 (15:39 -0700)]
Updating Dragon4 to ensure the number buffer always provides a significant digit if one exists. (#25096)
* Updating Dragon4 to ensure the number buffer always provides a significant digit if one exists.
* Changing System.Number.RoundNumber to not round up floating-point numbers.
* Re-enabling the RealFormatterTestsBase CoreFX tests
* Updating Number.RoundNumber to take a isCorrectlyRounded parameter and to use IEEE compliant rounding for floating-point numbers.
* Change SinglePrecisionCustomFormat to 7, ensuring it matches the value used in netcoreapp2.1
Andrii Siriak [Fri, 21 Jun 2019 22:25:09 +0000 (01:25 +0300)]
Switch from IndexOf(string) to Contains(string) for better readability and performance (#38757)
* Fix performance IndexOf(string) -> Contains(string)
* Make comparison ordinal
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Ganbarukamo41 [Mon, 24 Jun 2019 19:44:50 +0000 (04:44 +0900)]
Make Vector*.ToString() Culture invariant (#25343)
* Remove IFormattable
* Hardcode characters
* Add tests
José Rivero [Mon, 24 Jun 2019 19:18:54 +0000 (12:18 -0700)]
Multiple bug fixes (#25308)
- Fixes EventPipe does not properly dispose of itself on an active session error #25228
- On EventPipeSession::ThreadProc, if an error occurs on the IPC streaming, then EventPipe::Disable will be invoked.
- Fixes Prevent EventPipe Sessions IDs from being reused on disconnect #25229
Michal Strehovský [Mon, 24 Jun 2019 19:17:01 +0000 (21:17 +0200)]
Remove AggressiveOptimization flag from System.Text (#25356)
Based on conversation with Levi, I don't think this flag is needed.
The flag currently controls two things:
* Disqualifies the method from precompilation
* Disables Tier-0 JIT for the method
Removing the attribute allows us to precompile some of the methods (not all, because of `Vector<T>`). It measurably helps improve startup time because many of the attributed methods are complex and take a while to compile.
Once tier-1 JIT kicks in, the generated code should be identical to what we were getting before.
Andy Ayers [Mon, 24 Jun 2019 18:19:58 +0000 (11:19 -0700)]
JIT: see if jmp offset will fit in 32 bit displacement (#25348)
On x86 we can always reach any IAT_PVALUE entry via a 32 bit indirect
jump, and proper handling of jmp epilogs depends on this. So check if the
target address is reachable in 32 bits, and if so, use the jmp [addr] form
on x86, and the jmp [rip + disp] form for x64.
Fixes #25345
Fixes #25346
Undoes the assertion change from #25302
Fixes #25286
Tomáš Rylek [Mon, 24 Jun 2019 18:06:42 +0000 (11:06 -0700)]
Update R2R format doc to 3.0 (#25297)
I have updated the various enumerations and tables. I didn't try
to go overboard w.r.t. understanding tables I'm not yet familiar
with, most notably the diagnostic, inlining and profiling tables.
dotnet-maestro[bot] [Mon, 24 Jun 2019 14:49:06 +0000 (07:49 -0700)]
Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20190624.1 (#25354)
- optimization.IBC.CoreCLR - 99.99.99-master-
20190624.1
- optimization.PGO.CoreCLR - 99.99.99-master-
20190624.1
dotnet-maestro[bot] [Mon, 24 Jun 2019 14:48:42 +0000 (07:48 -0700)]
Update dependencies from https://github.com/dotnet/arcade build
20190623.4 (#25351)
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19323.4
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19323.4
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19323.4
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19323.4
dotnet-maestro[bot] [Mon, 24 Jun 2019 14:45:06 +0000 (07:45 -0700)]
Update dependencies from https://github.com/dotnet/core-setup build
20190623.05 (#25353)
- Microsoft.NETCore.App - 3.0.0-preview7-27823-05
dotnet-maestro[bot] [Mon, 24 Jun 2019 14:38:15 +0000 (07:38 -0700)]
Update dependencies from https://github.com/dotnet/corefx build
20190623.4 (#25352)
- Microsoft.Bcl.AsyncInterfaces - 1.0.0-preview7.19323.4
- Microsoft.NETCore.Platforms - 3.0.0-preview7.19323.4
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview7.19323.4
Michal Strehovský [Mon, 24 Jun 2019 14:00:29 +0000 (16:00 +0200)]
Extend the assert for zero-offset fields (#25341)
CoreRT has an [actual field](https://github.com/dotnet/corert/blob/
ba3ba929c88bd80ec5d4dd9cf6917471ad8fa180/src/System.Private.CoreLib/src/System/Object.CoreRT.cs#L30) for the method table table pointer in `System.Object`. CoreCLR does shenanigans when laying out `System.Object` to leave a pointer-sized hole instead.
I think the zero-offset field is triggering these asserts.
Stephen Toub [Mon, 24 Jun 2019 13:27:47 +0000 (09:27 -0400)]
Force secondary await continuations to run asynchronously (#25280)
* Force secondary await continuations to run asynchronously
For performance reasons, await continuations have been invoked synchronously, meaning they're invoked as part of the antecedent task's completion (as long as that task allows it, as long as there's sufficient stack space, etc.) This generally works out well in the case where there's a single await continuation, which is far and away the common case. However, it can cause problems in situations where there are multiple await continuations, as those continuations will end up being serialized, which can lead to slowdowns and deadlocks in niche situations. To address that, this commit backs off a bit. The first await continuation is still invoked synchronously, but subsequent await continuations are invoked asynchronously, such that they are not blocked by a previously registered await continuation.
* Fix nits
dotnet-maestro[bot] [Sun, 23 Jun 2019 16:05:06 +0000 (09:05 -0700)]
Update dependencies from https://github.com/dotnet/core-setup build
20190622.05 (#25338)
- Microsoft.NETCore.App - 3.0.0-preview7-27822-05
Marco Rossignoli [Sun, 23 Jun 2019 15:30:58 +0000 (17:30 +0200)]
MemoryExtensions ToUpper / ToLower throws for overlapping buffer (#25327)
dotnet-maestro[bot] [Sun, 23 Jun 2019 15:30:10 +0000 (08:30 -0700)]
Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20190623.1 (#25339)
- optimization.IBC.CoreCLR - 99.99.99-master-
20190623.1
- optimization.PGO.CoreCLR - 99.99.99-master-
20190623.1