Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2018-04-09Add gssapi_krb5 to linker args on Linux (#5663)Michal Strehovský
Selectively porting a line from #5651 to unblock an issue reported on Gitter.
2018-04-07Add YieldAwaiter support to the async method builder delegate optimization ↵Stephen Toub
(#17441) We added an optimization to async methods that lets the builder avoid allocating the Action delegate when it recognizes the awaiter being used. Previously this was enabled for all of the publicly exposed awaiters in corelib, with the exception of YieldAwaiter (what's used with Task.YIeld). It was enabled by having the awaiter implement an internal interface. This commit just generalizes that interface name and then implements it on YIeldAwaiter to complete the picture. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-04-07Initialize modules and run StartupCodeMain in wasm (#5621)Morgan Brown
Code to call InitializeModules on startup and associated bug fixes and workarounds. Handles mismatched struct calling conventions between LLVM and Clang and works around the dup opcode incorrectly reloading values. Enables StartupCodeMain and fix associated bugs in pinvokes. Implements main return codes
2018-04-06Add some comments to SpanHelpers.Char IndexOf and LastIndexOf (#17447)Ahson Khan
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-04-06revert "Work around MCG bug around `ref char` marshalling #5481" (#5656)Luqun Lou
2018-04-06Vectorize and use ROSpan.LastIndexOf as the workhorse for string.LastIndexOf ↵Ahson Khan
(#17370) * Vectorize and use ROSpan.LastIndexOf as the workhorse for string.LastIndexOf * Address PR feedback, remove Length == 0 checks where unnecessary. * Use aligned vector read just like IndexOf Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-04-05Merge pull request dotnet/coreclr#17432 from stephentoub/portnumericperfStephen Toub
Improve {u}int/long.ToString/TryFormat throughput by pre-computing the length Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-04-05Consolidate and optimize TextInfo.ChangeCase (dotnet/coreclr#17391)Stephen Toub
- Move most of the implementation to the platform-agnostic file, rather than having completely different implementations for Windows and Unix. Now the only logic in each platform-specific file is the logic around invoking the associated P/Invoke. - Optimize that implementation to take a fast path that doesn't allocate when no case change is needed, and to avoid the native call when the whole string is ASCII. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-04-05Avoid unnecessary string allocations in IdnMapping (dotnet/coreclr#17399)Stephen Toub
If the output matches the input string, we can just use the input string as the result. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-04-04Add gss as NativeFramework on OSX to support NetSecurityNative linking (#5644)Christian Scheuer
2018-03-31Make AsSpan(this string) ForceInline to be on par with AsSpan(this T[]) (#17368)Jan Kotas
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-31Change OwnedMemory to MemoryManager and add an IMemoryOwner. (#17340)Ahson Khan
* Change OwnedMemory to MemoryManager and add an IMemoryOwner. * Fix comments. * Reset start and length if TryGetMemoryManager returns false. * Reset start and length if TryGetMemoryManager returns false [actually]. * Re-order MemoryHandle ctor parameters and rename TOwner to TManager. * Fix formatting, remove unused code, and fix impl of Pin() Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-29Dict cache default comparer for object types (dotnet/coreclr#17285)Ben Adams
* Dict cache default comparer for object types * Improves * Fix EventRegistrationToken Equals Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-29StringBuilder.Equals: value to span (dotnet/coreclr#17311)Maryam Ariyan
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-29Implement P/Invoke 'A' and 'W' Probing (#5618)Jeremy Koritzinsky
Implement probing for native function names following the A/W suffix notation used on Windows. Fixes #730.
2018-03-29Use ROSpan.IndexOf as the workhorse for string.IndexOf (#17284)Ahson Khan
* Use ROSpan.IndexOf as the workhorse for string.IndexOf * Make changes to Span.IndexOf to follow what string.IndexOf did. * Address PR feedback. * Use Unsafe.Read instead of Unsafe.ReadUnaligned. * Remove special casing for count == 0 * Fix up debug assert to use vector count instead of intptr.size * Use size of Vector<ushort> instead of Vector<byte>.Count Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-29Fix Dictionary CopyTo regression (dotnet/coreclr#17300)Ben Adams
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-29Nit changes in API diff between .NET Core 2.0 and .NET Core 2.1 (#17288)Maryam Ariyan
* 'value' to 'other': bool System.IEquatable<System.UIntPtr>.Equals(UIntPtr value); * 'value' to 'other': bool System.IEquatable<System.IntPtr>.Equals(IntPtr value); Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-28[Linux/ARM] Fix mapping symbols for compiled managed code (#5634)Konstantin Baladurin
ObjWriter emits compiled managed code as data (using MCStreamer::EmitBytes method). In this case on arm code is marked as data using special mapping symbol '$d' that leads to problems during debugging. For example gdb uses incorrect opcode for breakpoints that brokes program execution. In this patch new method MCStreamer::EmitInstructionBytes is added. It uses '$a'/'$t' mapping symbols to mark data as arm/thumb code. This method is used to emit compiled managed code in ObjWriter.
2018-03-28Report IsIntrinsic on InstantiatedType (#5633)Michal Strehovský
Commit 5d96263c66e50ab88f51ec5aae01bd1d57d4ef37 made me aware that `IsIntrinsic` doesn't work on instantiated types. This fixes the problem in a bit of a roundabout way - we only want certain type system implementations to have the IsIntrinsic bit but the flags computation is in the core ECMA type system; a partial method to the rescue...
2018-03-28Use a shared DynamicInvoke for delegates and reflection (#5615)Michal Strehovský
When I did the `System.Reflection.Pointer` support for reflection invoke and delegate `DynamicInvoke`, I found these two thunks do pretty much the same thing. They got implemented separately because I was just porting Project N IL2IL code, but there's no reason why we need two. With this change, Delegate.DynamicInvoke will just call into the shared helper that is also used for reflection invoke. This is a bigger diff due to bunch of mechanical changes: * The set of generated helpers had to be moved to a place from where both delegate and reflection infrastructure can see it. A type system context dot file did the trick. (Contributes to #3873.) * The generated assembly got moved to the type system context so that the thunks can stay homed in it. * Fix to CppCodegen name mangling so that these can be still referenced in CppCodegen.
2018-03-28Adding Memory.Pin() to eventually replace Memory.Retain(bool) (#17269)Ahson Khan
* Adding Memory.Pin() to eventually replace Memory.Retain(bool) * Fix copy/paste error and return default for when object is null. * Fix XML comments. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-28Fix regression in StreamWriter.Write perf for small inputs (#17251)Stephen Toub
* Streamline StreamWriter/Reader.CheckAsyncTaskInProgress and make it inlineable * Re-inline StreamWriter.WriteSpan Prior to my span changes, the code in WriteCore was manually inlined into each of its call sites. I'd refactored it out into a shared helper to reduce code duplication, but that introduced a regression for small inputs. I'm keeping the factoring but making it AggressiveInlining to avoid that regression while still keeping the C# code reuse. * Use NoInlining on WriteSpan call sites In case methods get devirtualized and JIT attempts to inline them and WriteSpan. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-28Fix SIMD intrinsic detectionJan Kotas
2018-03-28Move String.Comparison.cs to shared CoreLib partition (#17247)Jan Kotas
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-27Cleanup InternalsVisibleTo (dotnet/coreclr#17185)Jan Kotas
Remove InternalsVisibleTo for mscorlib and make sure that corefx still builds with it. Delete global constants that were left-overs from .NET Framework build system. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-27Delete MemoryExtensions.AsBytes (dotnet/coreclr#17245)Jan Kotas
Moved to MemoryMarshal Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-27Vectorized SequenceCompareTo for Span<char> (dotnet/coreclr#17237)Jan Kotas
- This change makes the compare for very short Span strings a bit slower and for longer Span strings many times faster. - Switch several places where it was a clear benefit to use it. `String.CompareOrdinal(string,string)` is notable exception that I have left intact for now. It is fine tuned for current string layout, and replacing with a call of vectorized SequenceCompareTo gives mixed results. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-27New chunk should be equal/larger than the one it replaces (#17219)Maryam Ariyan
* The new chunk should be equal or larger than the one it is replacing. Fixes #17205 * Adding .exe.stackdump to .gitignore Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-26Update uses of AsBytes to use MemoryMarshal.AsBytes (dotnet/corefx#28460)Ahson Khan
* Update uses of AsBytes to use MemoryMarshal.AsBytes * Cleanup commented out code * Remove AsBytes from MemoryExtensions Portable Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com> Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-26Vectorize Span.IndexOf for T = char, similar to T = byte. (#28464) (#17218)dotnet bot
Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com> Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-26Dictionary/List code clean up/formatting (C#7) (dotnet/coreclr#17196)Ben Adams
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-26Fix CompareTo/Equals when dealing with Empty Span or Span wrapping a null ↵Ahson Khan
string (#17115) * Fix CompareTo/Equals when dealing with Span wrapping a null string * Removing unnecessary virtual keyword and address other feedback. * Remove unnecessary/incorrect Debug.Asserts. * Remove more unnecessary/incorrect Debug.Asserts. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-24Merge pull request #5613 from dotnet/nmirrorJan Kotas
Merge nmirror to master
2018-03-24Fix "dotnet publish" on Unix (#5610)Jan Kotas
2018-03-24Rename CancellationTokenRegistration.TryDeregister method to Unregister and ↵Anton Lapounov
make it public. We need to call this method from CoreFX's AsyncInfoToTaskBridge to avoid leaking memory when a CancellationTokenSource is reused. Bug: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/403992 Also see the proposal at https://github.com/dotnet/corefx/issues/14903. CR: JKotas, SToub [tfs-changeset: 1693280]
2018-03-23Fix Path.GetTempFileName on Windows (dotnet/coreclr#17148)Stephen Toub
GetTempFileNameW doesn't return the required length of the buffer; it returns the unique number used in the temporary file name. But the calling code is using that result as a length, resulting in sometimes truncated paths, and sometimes paths that aren't at all related to the original due to state left over in a pooled buffer. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-23Fixes StringBuilder unbounded size growth in Clear() when we use a mix of ↵Maryam Ariyan
Append and Insert (#16926) * Fixing Clear infinitely growing when we combine usage of Insert and Append. Fixes #27625 * Move debug code to StringBuilder.Debug.cs and Applied code review feedback * Adding missing debug condition check * Adding comments and moving Condition on projitems after filename * Moving the infinite capacity growth fix to Length setter * Removing originalCapacity and Debug.Assert * Applying PR feedbacks * Minor cleanup * simplifying to single loop * keeping just one method for ShowChunks function Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-23Rename new Stream.Read/Write{Async} Span/Memory source/Destination arguments ↵Anirudh Agnihotry
to buffer (#17141) * changed to buffer * More Common changes * fixed * another fix Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-23Handle null execution context in threadpool callback (#5605)Jan Kotas
Fixes #5603
2018-03-22DwarfSimpleArrayTypeInfo: change type of Size to uint64_t (#5600)Konstantin Baladurin
It fixes lldb error in case of zero-length arrays: DW_TAG_member 'm_Data' refers to type 0x00000c70 which extends beyond the bounds of 0x00000c7c
2018-03-22Fix incorrect array dereference. (dotnet/coreclr#17113)Brian Robbins
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-22Merge pull request #5597 from dotnet/nmirrorJan Kotas
Merge nmirror to master
2018-03-22Rename {Try}Read/WriteMachineEndian to just {Try}Read/Write (#17106)Ahson Khan
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-22Improve DateTime{Offset} "r" and "o" formatting performance (#17092)Stephen Toub
Two main changes: 1. Rewrote the formatting to use span, only to then discover that we already had almost exactly the same implementation in Utf8Formatter. As that one had some extra optimizations around JIT behaviors, I ported that over instead. 2. Avoided [ThreadStatic] lookups unless necessary. ToString/TryFormat for "o"/"O" improve by ~2.5x. ToString/TryFormat for "r"/"R" improve by ~3x. Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-21Moving Span APIs that allow skipping visibility checks to MemoryMarshal (#17087)Ahson Khan
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-21Small tweaks to Dict asm size (dotnet/coreclr#17096)Ben Adams
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-21ProjectX: Bug fix for sealed vtable entries for dynamic SzArray typesdotnet-bot
Interface method implemented by USG code should have the calling convention converter wrapper in the vtable instead of the real target. The change fixes a bug in the sealed vtable generation for dynamic SzArray type where underlying System.Array type should be used instead of the SzArray type. The bug causes an AppCompat execution failure where the real interface method implementation is called directly without being gone through the calling convention converter wrapper. [tfs-changeset: 1692786]
2018-03-21Avoid allocating when SuppressFlow'ing in default ExecutionContext (#17081)Stephen Toub
* Avoid allocating when SuppressFlow'ing in default ExecutionContext * Address PR feedback Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
2018-03-21API consistency for System.Memory APIs (argument names) (#28160)Ahson Khan
* AsBytes and Cast: Change arg name source -> span * CopyTo: Change arg name array/sequence -> source * Several APIs: Change arg name arraySegment -> segment * Several APIs: Change arg name readOnlyMemory -> memory * BinaryPrimitives and Utf8Formatter: Change arg name buffer -> source or destination * Base64: Change arg name consumed/written -> bytesConsumed/bytesWritten * Utf8Parser: Change arg name text -> source * TryGetOwnedMemory: Change arg name ownedMemory -> owner, index -> start * BuffersExtensions.Write: Change arg name bufferWriter -> writer * Span Compare APIs: Change arg name first -> span, second/value -> other * ROSequence.TryGet & BuffersExtensions: Change arg name data -> memory, sequence -> source * Fix mistake in BinaryPrimitives Writer APIs, source -> destination. * BufferExtensions.Write: Change arg name source -> span * SequencePosition.Equals: Change arg name position -> other * BufferExtensions ToArray: Change arg name source -> sequence * Rename leftover arraySegment to segment in MemoryMarshal.TryGetArray * BufferExtensions.Write: Change arg name span -> value * Contains, StartsWith, EndsWith: Change arg name other -> value Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com> Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>