Stephen Toub [Thu, 9 May 2019 21:21:48 +0000 (17:21 -0400)]
Fix netstandard build for nullable annotations
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Stephen Toub [Thu, 9 May 2019 19:25:49 +0000 (15:25 -0400)]
Fix netfx build with nullable annotations
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Dan Moseley [Fri, 10 May 2019 03:43:00 +0000 (20:43 -0700)]
Dead string (#24516)
dotnet-maestro[bot] [Fri, 10 May 2019 03:42:35 +0000 (20:42 -0700)]
[master] Update dependencies from dnceng/internal/dotnet-optimization (#24473)
* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20190509.1
- optimization.IBC.CoreCLR - 99.99.99-master-
20190509.1
- optimization.PGO.CoreCLR - 99.99.99-master-
20190509.1
Sung Yoon Whang [Fri, 10 May 2019 03:30:39 +0000 (20:30 -0700)]
Fix an overflow issue with eventpipe buffer size (#24512)
Leslie Zhai [Fri, 10 May 2019 03:24:25 +0000 (22:24 -0500)]
[X86/Linux] Fix error: no member named 'GetId' in 'AppDomain' when enabled Interpreter issue (#24513)
https://github.com/dotnet/coreclr/issues/24492
Eugene Rozenfeld [Fri, 10 May 2019 00:16:10 +0000 (17:16 -0700)]
Merge pull request #24482 from erozenfeld/Fix24159
Mark local struct as having overlapping fields after struct reinterpretation
Mike McLaughlin [Thu, 9 May 2019 21:01:10 +0000 (14:01 -0700)]
Fix memory leak in PAL_GenerateCoreDump (#24503)
Tanner Gooding [Thu, 9 May 2019 20:46:38 +0000 (13:46 -0700)]
More cleanup of the HWIntrinsic test templates (#24455)
* Adding some templates from which other HWIntrinsic test templates can be generated
* Regenerating the HWIntrinsic tests
Eugene Rozenfeld [Tue, 7 May 2019 22:35:42 +0000 (15:35 -0700)]
Mark local struct as having overlapping fields after struct reinterpretation
Methods like System.Runtime.CompilerServices.Unsafe.As<TFrom, TTo> may
have struct reinterpretation when function signature specifies Struct1&
and the method returns Struct2& where Struct1 and Struct2 are different
structs. This may confuse jit optimizations (in particular, value
numbering) because fields of a struct of type Struct1 may be accessed
using handles of Struct2. This fix marks the source local involved in
such struct reinterpretation as having overlapping fields. That prevents
SSA builder from inserting the local into SSA.
Fixes #24159.
No diffs in framework assemblies and coreclr benchmarks.
Gregory LEOCADIE [Thu, 9 May 2019 17:05:44 +0000 (19:05 +0200)]
Add a new version of ContentionEnd event (#22487)
Add new contention event
- This new event contains the duration of the contention.
- Compute duration and emit contention events only when Contention keyword is activated
Brian Sullivan [Thu, 9 May 2019 17:02:42 +0000 (10:02 -0700)]
Merge pull request #24456 from briansull/ibc-work
IBC refactor - Zero Diff, rename types and methods
Stephen Toub [Thu, 9 May 2019 16:40:16 +0000 (12:40 -0400)]
Turn on nullability for all of Corelib (#24497)
* Enable nullable at the project level
* Remove `#nullable enable` from individual files
Removes `#nullable enable` from almost all .cs files in System.Private.CoreLib. I left it only in the ~30 files (out of ~1480 that had it) that are mirrored to corefx, that are built into projects by corefx that don't yet set NullableContextOptions at the project level, and that use nullable annotations; otherwise, they'd break the corefx build.
Michal Strehovský [Thu, 9 May 2019 15:50:31 +0000 (17:50 +0200)]
Delete suspicious code in delegate construction (#24493)
This reverts commit
0786da806b9727c466f3f9393cb3d55cf9df7536.
dotnet-maestro[bot] [Thu, 9 May 2019 11:51:41 +0000 (04:51 -0700)]
[master] Update dependencies from dotnet/corefx (#24314)
* Update dependencies from https://github.com/dotnet/corefx build
20190506.1
- Microsoft.NETCore.Platforms - 3.0.0-preview6.19256.1
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview6.19256.1
* Use last stable version of System.Numerics.Vectors package
* Add Microsoft.Bcl.AsyncInterfaces package
* Disable Microsoft.Bcl.AsyncInterfaces
Jeremy Koritzinsky [Thu, 9 May 2019 07:39:27 +0000 (00:39 -0700)]
Fix ComActivator typo. (#24485)
Andrew Au [Wed, 8 May 2019 17:35:43 +0000 (10:35 -0700)]
Return the required padding size instead of the current position to avoid integer overflow.
Steve MacLean [Thu, 9 May 2019 02:33:10 +0000 (22:33 -0400)]
Remove premature throw (#24450)
* Remove premature throw
ResolveUsingEvent is no longer the last resort for Assembly resolution
and should not be throwing simply because the Assembly.Resolve event did
not find the Assembly
* Delay throw FileNotFound until after AppDomain.AssemblyResolve
Koundinya Veluri [Thu, 9 May 2019 02:16:16 +0000 (19:16 -0700)]
Fix ETL event rejit IDs and sending of the IL to native map event when code versioning is in use (#24422)
Fix ETL event rejit IDs and sending of the IL to native map event when code versioning is in use
Fixes https://github.com/dotnet/coreclr/issues/22904
Fixes https://github.com/dotnet/coreclr/issues/22908
- Method events now always send the native code ID for the rejit ID, and the IL to native map event continues to send the IL code ID
- Took code versioning into account when sending rundown events for a method including the IL to native map
Divino César [Wed, 8 May 2019 22:29:27 +0000 (15:29 -0700)]
Merge pull request #24479 from dotnet/UpdateHelixSDK
Update Helix SDK Version - Master branch
Aaron Robinson [Wed, 8 May 2019 22:12:11 +0000 (15:12 -0700)]
Fix scenarios where SPCL is not crossgen'd and the output is not in the bin directory (#24477)
Aaron Robinson [Wed, 8 May 2019 22:09:41 +0000 (15:09 -0700)]
Add support in SPCL to call into user supplied register and unregiste… (#24452)
* Add support in SPCL to call into user supplied register and unregister functions
Brian Sullivan [Wed, 8 May 2019 22:07:12 +0000 (15:07 -0700)]
Merge pull request #24462 from briansull/fix-24440
Fix 24440
Sergey Andreenko [Wed, 8 May 2019 21:46:40 +0000 (14:46 -0700)]
Merge pull request #24366 from sandreenko/fixLogPrinting
Fix some small issues with stress logging.
Mike McLaughlin [Wed, 8 May 2019 21:45:42 +0000 (14:45 -0700)]
Send UTF16 dump file name (#24475)
Elinor Fung [Wed, 8 May 2019 21:28:45 +0000 (14:28 -0700)]
Specify version.dll and add notification hook for delay load (#24449)
Mitigates an issue with hijacking of version.dll.
This is particularly an issue for self-contained and single-file-exe apps, as the hijacking in those cases does not require access to a machine-wide .NET Core install.
Fadi Hanna [Wed, 8 May 2019 20:39:15 +0000 (13:39 -0700)]
Fix 23317. (#24383)
The issue is that a LDVIRTFTN operation becomes a dictionary lookup to a direct call to an abstract function with no code. We AV later when executing the PreStub of that direct call. Fixed by making this a dictionary lookup to a MethodDescSlot lookup, followed by the call to the JIT_VirtualFunctionPointer helper to resolve the target code (Same logic executing in jitted IL mode)
Steve MacLean [Wed, 8 May 2019 20:08:29 +0000 (16:08 -0400)]
Remove more MDA support code (#24457)
* Remove more MDA support code
* PR Feedback
Brian Sullivan [Wed, 8 May 2019 00:46:29 +0000 (17:46 -0700)]
Fix Issue 24440
gtGetStructHandleIfPresent can return nullptr (NO_CLASS_HANDLE)
Divino César [Wed, 8 May 2019 19:44:04 +0000 (12:44 -0700)]
Update Version.Details.xml
Divino César [Wed, 8 May 2019 19:43:09 +0000 (12:43 -0700)]
Update global.json
Brian Sullivan [Wed, 8 May 2019 18:37:21 +0000 (11:37 -0700)]
Two additional minor changes
Brian Sullivan [Wed, 8 May 2019 18:08:09 +0000 (11:08 -0700)]
Prefer UINT32 over DWORD in the IBC BlockCount API's
Fadi Hanna [Wed, 8 May 2019 17:36:16 +0000 (10:36 -0700)]
Add a check to prevent mixed-mode assemblies from being compiled into R2R (#24451)
Sergey Andreenko [Wed, 8 May 2019 16:19:11 +0000 (09:19 -0700)]
Merge pull request #24447 from sandreenko/addGCStressExtraJobs
Add GCStress extra jobs.
Andrew Au [Wed, 8 May 2019 00:23:42 +0000 (17:23 -0700)]
Handle the case when the SamplingProfiler thread is terminated prematurely
Mike McLaughlin [Wed, 8 May 2019 07:46:51 +0000 (00:46 -0700)]
Add generate crash dump command to diagnostics server (#24460)
Add the DiagnosticProtocolHelper class to deserialize and dispatch
the new GenerateCoreDump command.
Refactor the PAL createdump launch on unhandled exception code to
used by a new PAL_GenerateCoreDump method that doesn't depend on
the complus dump environment variables.
Changed the "full" createdump not to include the uncommitted pages and
removed the "add module metadata" workaround for SOS clrstack !UNKNOWN
problem now that is fixed in SOS (crashinfo.cpp).
Sergey Andreenko [Wed, 8 May 2019 04:22:55 +0000 (21:22 -0700)]
Merge pull request #24463 from sandreenko/ExcludeMethodImpl
Exclude MethodImplOptionsTests.
Sergey Andreenko [Wed, 8 May 2019 01:09:27 +0000 (18:09 -0700)]
Exclude MethodImplOptionsTests.
Exclude the test because the fix is postponed.
Bruce Forstall [Tue, 7 May 2019 23:23:34 +0000 (16:23 -0700)]
Merge pull request #24444 from BruceForstall/FixGenerateLayoutArgPassing
Fix build.cmd passing of args to runtest.cmd
Tarek Mahmoud Sayed [Tue, 7 May 2019 22:35:46 +0000 (15:35 -0700)]
Make Idn.GetAscii compatible with Windows (#24443)
GetAscii on Windows ignore if the uri has hyphens in the third and fourth places. We relaxing this on Linux too for the sake of the consistent behavior. This issue was causing some problems with the http stack.
Sergey Andreenko [Tue, 7 May 2019 21:55:22 +0000 (14:55 -0700)]
Save OBJECTREF_TO_UNCHECKED_OBJECTREF and use auto.
On x86 OBJECTREF_TO_UNCHECKED_OBJECTREF expands to `((UINT_PTR)((*((_UNCHECKED_OBJECTREF*)&(fromAddress)))))`
where `*((_UNCHECKED_OBJECTREF*)` call contructor of `OBJECTREF` that call `Object->Validate`
that fails for `fromAddress` because it is not longer a valid address.
Tanner Gooding [Tue, 7 May 2019 20:18:16 +0000 (13:18 -0700)]
Fixing up time.cpp in the PAL (#24428)
* Fixing up time.cpp in the PAL
* Fixing GetTickCount64 in the PAL to continue using CLOCK_MONOTONIC_COARSE where available
* Reverting QueryPerformanceFrequency in the PAL to return tccSecondsToNanoSeconds for CLOCK_MONOTONIC
* Removing two unused variables from GetTickCount64 in the PAL
* Updating the PAL to error if neither mach_absolute_time nor clock_gettime(CLOCK_MONOTONIC) are supported.
* Fixing the PAL configure.cmake to link rt where applicable
Sergey Andreenko [Tue, 7 May 2019 19:11:23 +0000 (12:11 -0700)]
Fix typo.
Bruce Forstall [Tue, 7 May 2019 18:06:28 +0000 (11:06 -0700)]
Fix build.cmd passing of args to runtest.cmd
If you use the `generatelayout` argument to build.cmd, it passes
all "unprocessed" arguments directly on to msbuild. To accomplish
the same this with runtest.cmd, you must use the "msbuildargs"
argument, or else the arg will be treated as a `CORE_ROOT` argument.
(This seems like a bad design, but that's a separate issue.)
E.g., I always pass `/consoleloggerparameters:ForceNoAlign`, and want
that passed on to runtest.cmd. (This should also be the default, but
once again, that's a separate issue.)
Sergey Andreenko [Tue, 7 May 2019 17:55:51 +0000 (10:55 -0700)]
Add GCStress extra jobs.
Contributes to #24358.
Jeremy Koritzinsky [Tue, 7 May 2019 17:46:00 +0000 (10:46 -0700)]
Update Microsoft.Build.Traversal SDK to v2. (#24430)
Brian Sullivan [Tue, 7 May 2019 17:35:05 +0000 (10:35 -0700)]
Rename struct ICorJitInfo::ProfileBuffer to ICorJitInfo::BlockCounts
Rename method ICorJitInfo::allocBBProfileBuffer to ICorJitInfo::allocMethodBlockCounts
Rename method ICorJitInfo::getBBProfileData to ICorJitInfo:"getMethodBlockCounts
Rename args and use DWORD instead of ULONG for ICorJitInfo:allocMethodBlockCounts and ICorJitInfo:getMethodBlockCounts
Rename Compiler::fgProfileBuffer to Compiler::fgBlockCounts
Use an #ifdef FEATURE_CORECLR to fix the missing CORINFO_FLG_DISABLE_TIER0_FOR_LOOPS flag on the desktop.
Make fgBlockCountsCount and fgNumProfileRuns DWORDs instead of ULONGs
Rename local var bbCurrentBlockProfileBuffer to currentBlockCounts
Rename local var bbProfileBufferStart to profileBlockCountsStart
Use DWORD when iterating over BlockCounts instead of ULONG
Rename ZapImage::hashBBProfileData to ZapImage::hashMethodBlockCounts
SuperPMI - Fixed all references to allocBBProfileBuffer => allocMethodBlockCounts
SuperPMI - fixed all reference to getBBProfileBuffer => getMethodBlockCounts
Sergey Andreenko [Tue, 7 May 2019 17:35:29 +0000 (10:35 -0700)]
Merge pull request #23587 from BrianBohe/brbohe/moving_variableLiveRange
Moving VariableLiveRanges classes outside Compiler class
Sergey Andreenko [Tue, 7 May 2019 04:49:20 +0000 (21:49 -0700)]
Merge pull request #24421 from sandreenko/AddZapDisableTailCallStresss
Add ZapDisable and TailCallStress ADO testing.
Mukul Sabharwal [Tue, 7 May 2019 03:53:14 +0000 (20:53 -0700)]
Add option to only notify profiler of LOH allocations (#24291)
Anirudh Agnihotry [Tue, 7 May 2019 03:31:35 +0000 (20:31 -0700)]
making DiagnosticCounter internal (#24427)
Sergey Andreenko [Mon, 6 May 2019 23:39:22 +0000 (16:39 -0700)]
Merge pull request #24415 from sandreenko/corefxAddExclsusions
Add new CoreFX exclusions.
Jeremy Koritzinsky [Mon, 6 May 2019 23:09:28 +0000 (16:09 -0700)]
Move the Formatting jobs over to AzDO (#24367)
* First stab at running the format jobs in AzDO.
* Add display names for formatting jobs.
* Try to use a python version in the path
* Try to fix bootstrap download.
* Use imported paths. Output python major version.
* Clean up imports.
* Fix imports.
* Try just using urlretrieve again
* Cleanup
* Add back killing spurious dotnet processes.
* Try leaving all shutdown/kill work to AzDO.
* PR Feedback.
Brian Bohe [Mon, 6 May 2019 23:01:39 +0000 (20:01 -0300)]
Leaving Scope Info as variable location tracking default system again
Signed-off-by: Brian Bohe <brianbohe@gmail.com>
Fadi Hanna [Mon, 6 May 2019 23:00:05 +0000 (16:00 -0700)]
Replace E_FAIL with E_NOTIMPL for an unsupported R2R encoding (Future work) (#24386)
Andrew Au [Mon, 6 May 2019 19:04:13 +0000 (12:04 -0700)]
Launch DiagnosticServer after EEStartup
Tomáš Rylek [Mon, 6 May 2019 21:38:45 +0000 (23:38 +0200)]
Improve R2RDump resiliency towards invalid tokens (#24379)
This change adds a bunch of try blocks that make R2RDump survive
partially corrupted input.
Thanks
Tomas
Jeremy Koritzinsky [Mon, 6 May 2019 20:45:52 +0000 (13:45 -0700)]
Handle E_NOTIMPL return from CoInitializeEx. (#24387)
* Handle E_NOTIMPL return from CoInitializeEx.
* Remove unneeded STA attributes.
Sergey Andreenko [Mon, 6 May 2019 19:29:33 +0000 (12:29 -0700)]
Add zapdisable and tailcallstress testing.
Sergey Andreenko [Mon, 6 May 2019 19:29:18 +0000 (12:29 -0700)]
Rename ADO group outerloop-jitminopts-jitstress1-jitstress2 to outerloop-jitstress.
Allows us to add more scenarios there.
Aaron Robinson [Mon, 6 May 2019 17:19:49 +0000 (10:19 -0700)]
Port all managed product binaries to use SDK style projects (#24285)
Convert managed product binary to use SDK project system.
- Uses Arcade for versions strings
- Overrides Arcade defined output paths - should change in the future
Sergey Andreenko [Mon, 6 May 2019 16:12:07 +0000 (09:12 -0700)]
Add new CoreFX exclusions.
Mukul Sabharwal [Mon, 6 May 2019 15:21:19 +0000 (08:21 -0700)]
Fixes AV when accessing LoaderModule for some objects (#24406)
Krzysztof Wicher [Mon, 6 May 2019 13:50:18 +0000 (06:50 -0700)]
Nullable: System.Collections.Generic remainder (#24340)
* Nullable: System.Collections.Generic remainder
* apply review feedback
Ben Adams [Sun, 5 May 2019 20:01:07 +0000 (21:01 +0100)]
Move AsyncMethodBuilder.SetStateMachine to non-generic (#24403)
dotnet-maestro[bot] [Sun, 5 May 2019 14:55:14 +0000 (14:55 +0000)]
Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20190505.1 (#24401)
- optimization.IBC.CoreCLR - 99.99.99-master-
20190505.1
- optimization.PGO.CoreCLR - 99.99.99-master-
20190505.1
Steve MacLean [Sat, 4 May 2019 18:31:34 +0000 (14:31 -0400)]
Reenable corefx tests (#24157)
Adeel Mujahid [Sat, 4 May 2019 16:43:35 +0000 (19:43 +0300)]
Minor tweaks for gcc (#24391)
* Fix a consistency check condition
Following error is reported by gcc 8 with debug configuration:
> error: enum constant in boolean context [-Werror=int-in-bool-context]
* Apply -Wno-register only to CXX flags
gcc 8 errors out like this:
```
[ 96%] Building C object src/ilasm/CMakeFiles/ilasm.dir/__/__/version.c.o
cc1: error: command line option -Wno-register is valid for C++/ObjC++ but not for C [-Werror]
cc1: all warnings being treated as errors
src/ilasm/CMakeFiles/ilasm.dir/build.make:254: recipe for target 'src/ilasm/CMakeFiles/ilasm.dir/__/__/version.c.o' failed
make[2]: *** [src/ilasm/CMakeFiles/ilasm.dir/__/__/version.c.o] Error 1
CMakeFiles/Makefile2:5710: recipe for target 'src/ilasm/CMakeFiles/ilasm.dir/all' failed
make[1]: *** [src/ilasm/CMakeFiles/ilasm.dir/all] Error 2
```
* Remove extra parantheses from variable declaration
gcc 8 reports:
> error: unnecessary parentheses in declaration of m_HashedModules [-Werror=parentheses]
* Use macro instead of const in C
gcc throws:
> error: variably modified collatorsPerOption at file scope
UCollator* collatorsPerOption[CompareOptionsMask + 1];
* Cast to uintptr_t before (32-bit) DWORD
gcc error was:
> error: cast from LPCWSTR {aka const char16_t*} to DWORD {aka unsigned int} loses precision [-fpermissive]
dotnet-maestro[bot] [Sat, 4 May 2019 14:50:46 +0000 (14:50 +0000)]
Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20190504.1 (#24393)
- optimization.IBC.CoreCLR - 99.99.99-master-
20190504.1
- optimization.PGO.CoreCLR - 99.99.99-master-
20190504.1
Sergey Andreenko [Sat, 4 May 2019 09:08:38 +0000 (02:08 -0700)]
Merge pull request #24392 from dotnet/revert-24363-GitHub_23199
Revert "Fix GCStress for multireg returns. "
Sergey Andreenko [Sat, 4 May 2019 09:02:07 +0000 (02:02 -0700)]
Revert "Fix GCStress for multireg returns. "
Koundinya Veluri [Sat, 4 May 2019 05:35:03 +0000 (22:35 -0700)]
Fix incorrect tier reported by SOS (#24374)
Fix incorrect tier reported by SOS
- The tier of the initial code version was being assumed to be 0
- Whether call counting is enabled for a method needed to be available to the DAC
- Some small renames / cleanup to simplify code
Jan Kotas [Thu, 2 May 2019 20:07:24 +0000 (13:07 -0700)]
Fix CoreRT build breaks
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Sung Yoon Whang [Sat, 4 May 2019 01:05:57 +0000 (18:05 -0700)]
Re-enable EventSourceTrace test (#24365)
Jeremy Koritzinsky [Sat, 4 May 2019 00:56:20 +0000 (17:56 -0700)]
Use our local-built instances of tools from Microsoft.DotNet.BuildTools.CoreClr instead of using the package. (#24347)
* Use our local-built instances of tools from Microsoft.DotNet.BuildTools.CoreClr instead of using the package.
* Fix const-correctness in InjectResource.
* Build cross-arch native components before building native components for target arch.
* Build InjectResource and GenClrDebugResource for the host arch when cross-building and import the targets into the cross-build.
* install(EXPORT) in the directory where the target is created
Andrew Au [Fri, 3 May 2019 22:44:06 +0000 (15:44 -0700)]
Fix EventPipe initialization order
David Mason [Fri, 3 May 2019 23:52:46 +0000 (16:52 -0700)]
Enable CoreFX test filtering for CoreCLR PRs (#24259)
This change enables CoreFX tests for CoreCLR.
Russ Keldorph [Fri, 3 May 2019 16:46:28 +0000 (09:46 -0700)]
Disable remaining Jenkins default-PR-triggered jobs
Jeremy Koritzinsky [Fri, 3 May 2019 23:25:55 +0000 (16:25 -0700)]
Change our DateTime marshalling tests to be culture-independent. (#24362)
Fixes #24089
William Godbe [Fri, 3 May 2019 21:53:24 +0000 (14:53 -0700)]
Merge pull request #24315 from dotnet/darc-master-
c4cf8915-b4aa-4756-a614-
aa01a76fd5cb
[master] Update dependencies from dnceng/internal/dotnet-optimization
Tomáš Rylek [Fri, 3 May 2019 21:15:25 +0000 (23:15 +0200)]
New options --sb / --isb for binary signature dump (#24375)
Based on JanV's suggestion I have added two new options to R2RDump:
"--sb" (SignatureBinary) appends the binary signature representation
at the end of the parsed textual signature;
"--isb" (InlineSignatureBinary) inlines the signature bytes into
the parsed textual signature and makes it (somewhat) easy to correlate
the binary bytes with individual parts of the signature.
Thanks
Tomas
Sergey Andreenko [Fri, 3 May 2019 18:17:18 +0000 (11:17 -0700)]
fix nits
Brian Sullivan [Fri, 3 May 2019 13:56:16 +0000 (06:56 -0700)]
Merge pull request #24343 from briansull/add-hva-tests
Add two additional HVA tests:
Filip Navara [Fri, 3 May 2019 13:37:19 +0000 (15:37 +0200)]
Implement String.IsAscii in shared CoreLib and use it for [Is]Normalize[d] for all runtimes (#24373)
dotnet-maestro [Fri, 3 May 2019 13:01:55 +0000 (13:01 +0000)]
Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20190503.1
- optimization.IBC.CoreCLR - 99.99.99-master-
20190503.1
- optimization.PGO.CoreCLR - 99.99.99-master-
20190503.1
Sergey Andreenko [Fri, 3 May 2019 07:59:56 +0000 (00:59 -0700)]
Merge pull request #24363 from sandreenko/GitHub_23199
Fix GCStress for multireg returns.
Sergey Andreenko [Fri, 3 May 2019 07:58:16 +0000 (00:58 -0700)]
Update the comment.
Levi Broderick [Fri, 3 May 2019 06:09:56 +0000 (23:09 -0700)]
Vector.CopyTo / TryCopyTo should be readonly methods (#24359)
Vladimir Sadov [Fri, 3 May 2019 05:16:31 +0000 (22:16 -0700)]
System.GC.AllocateUninitializedArray (#24096)
* Do not expand to allocation_quantum in SOH when GC_ALLOC_ZEROING_OPTIONAL
* short-circuit short arrays to use `new T[size]`
* Clean syncblock of large-aligned objects on ARM32
* specialize single-dimensional path AllocateSzArray
* Unit tests
* Some PR feedback. Made AllocateUninitializedArray not be trimmed away.
* PR feedback on gchelpers
- replaced use of multiple bool parameters with flags enum
- merged some methods with nearly identical implementation
- switched callers to use AllocateSzArray vs. AllocateArrayEx where appropriate.
* PR feedback. Removed X86 specific array/string allocation helpers.
Brian Sullivan [Fri, 3 May 2019 01:07:46 +0000 (18:07 -0700)]
Merge pull request #24339 from briansull/linux-creation-time
Fix the PAL implemention of GetProcessTimes to write the creation time
Brian Sullivan [Fri, 3 May 2019 00:14:34 +0000 (17:14 -0700)]
Changes from code review
Sergey Andreenko [Thu, 2 May 2019 22:58:38 +0000 (15:58 -0700)]
Fix some small issues with stress logging.
Andrew Au [Thu, 2 May 2019 18:06:52 +0000 (11:06 -0700)]
Make sure we check the second buffer's creation date before we return
Andrew Au [Thu, 2 May 2019 20:32:48 +0000 (13:32 -0700)]
Make sure the thread running EventPipe::Disable is registered with the thread store so that rundown events can be collected
Sergey Andreenko [Thu, 2 May 2019 22:45:08 +0000 (15:45 -0700)]
Fix DoGcStress for multireg return with GC pointers.
Note: we are overprotecting registers here, for example, we always protect 2 registers even if only one is returned. GCStress infrastructure should be able to tolerate extra registers. We have had such examples before (for example when returned a struct without pointers we protected the first reg anyway).
Brian Sullivan [Wed, 1 May 2019 17:45:39 +0000 (10:45 -0700)]
In the PAL GetProcessTimes implement lpCreationTime using the current time returned by gettimeofday
This allows IBC profile data to record a meaningful time of when the training scenario was run.
Made EPOCH_DIFF a defined constant
Change calcTime to be an unsigned 64-bit integer
Change constants to units of 100NS instead of NS to avoid division and integer overflows.
Use the defined constants SECS_TO_100NS and USECS_TO_100NS when performing time calculations
Don't add a space after the Assembly arg when argc is zero
Sergey Andreenko [Thu, 2 May 2019 22:05:40 +0000 (15:05 -0700)]
Add a repro test.
Koundinya Veluri [Thu, 2 May 2019 20:48:13 +0000 (13:48 -0700)]
When QuickJit is enabled, disable it for methods that contain loops by default (#24252)
When QuickJit is enabled, disable it for methods that contain loops by default
Fixes https://github.com/dotnet/coreclr/issues/19751 by default when QuickJit is enabled
- Added config variable TC_QuickJitForLoops. When disabled (the default), the JIT identifies loops and explicit tail calls and switches to tier 1 JIT.
- This would prevent the possibility of spending too long in QuickJit code, but may decrease startup time a bit when QuickJit is enabled
- Removed TC_StartupTier_OptimizeCode, as now that there is TC_QuickJit, I didn't see a good use for it
- Removed references to "StartupTier" in config variables because we had previously decided not to call it that.
- When QuickJit is disabled, avoid creating native code slots for methods in non-R2R'ed modules, as tiering would be disabled for those anyway
- Marked TC_QuickJit config var as external
Sung Yoon Whang [Thu, 2 May 2019 19:34:39 +0000 (12:34 -0700)]
Add Series/CounterType to CounterPayload and IncrementingCounterPayload (#24349)