Age | Commit message (Collapse) | Author |
|
|
|
|
|
Cleanup C++ glue code related to JIT helpers
|
|
Use _firstChar instead of string object in fixed statement
|
|
|
|
Remove CORERT TODOs from System.Monitor.Lock
|
|
The existing ManagedThreadId recycling algorithm can accumulate a disproportionally large linked list of recycled threadids that won't ever go away. I was able to trigger cases where the linked list of recycled threadids grew to 10000+ elements for a program with just a dozen threads.
Replaced linked list with immutable binary tree that tracks active thread ids. The memory consumption of the immutable binary tree stays proportional to number of live threads over time.
|
|
|
|
The purpose of the reimplementation is to remove the dependency on the OS
so make it work on non-Windows platforms
|
|
Upgrade framework dependencies
|
|
[tfs-changeset: 1561346]
|
|
|
|
999.999.999.999 which breaks some things like compat when there are direct references to these.
[tfs-changeset: 1560977]
|
|
properties that weren't correct. Also fixed a number of build warnings.
[tfs-changeset: 1560909]
|
|
System.Private.CoreLib interop dependency on delegate marshalling is a hidden cyclic dependency between System.Private.CoreLib and System.Private.Interop. This change is breaking the cycle by using NativeCallable methods instead. It actually simplified the code as well.
[tfs-changeset: 1560833]
|
|
[tfs-changeset: 1560832]
|
|
- Add intrisic attributes to Object.GetType/Type.GetTypeFromHandle (Object.GetType is commented out under TODO)
- Implement temporary marshalling for bool since it is used by every other Win32 API
- Implement HandleException method on JIT-EE interface
|
|
in .NET Native for UWP
[tfs-changeset: 1560551]
|
|
- Add lookup of all RyuJIT intrinsics
- Update manage implementations of the intrinsics to fit with what RyuJIT is capable of
- Make intrinsic expansions by the codegen to be optional by providing fallback paths
- Fix USE_PORTABLE_HELPERS to be defined for portable runtime only
These changes are under CORERT ifdefs as necessary to be reconciled with .NET Native for UWP later.
|
|
Port dotnet/coreclr#1452 to CoreRT. Also deleted redundant resource files.
|
|
Cleanup and centralize workarounds
|
|
[tfs-changeset: 1560191]
|
|
[tfs-changeset: 1560190]
|
|
|
|
sure they continue to work.
There were a couple of changes to the build system that are included in this change:
- The location of the tool to restore the packages is set to use dnu for now.
- When restoring packages for the internal build we need to actually pass the right parameters to the build of the depproj
There were a couple of places where we had some issues that I fixed while I was doing the port:
- The compiler gave error messages about some method out parameters not being assigned.
- There was one missing 'unsafe' modifier on an interop file
- I had to pull in a 'debug' method temporarily in the ret build. This was needed because the debug build of CoreLib currently does not build with the 'DEBUG' define.
[tfs-changeset: 1559864]
|
|
|
|
|
|
|
|
- Respect explicit layout and emit proper EEType flags in CppCodeGen - required for "Hello world" with TODOs removed
- Reduce dependencies of autogenerated files for CppCodeGen
|
|
- NUTC respects NativeCallable exports in public types only for some reason
- Conditionally disable CoreRT specific workaround with CMake dependency
[tfs-changeset: 1558734]
|
|
- For now - until we have the proper multifile compilation in place, link the Runtime.Base .cs files into System.Private.CoreLib. The proper factoring of Runtime.Base is still guaranteed by building Runtime.Base as separate .dll.
- Remove many stubbed out helpers since the proper implementation is comming from Runtime.Base now.
- Fix CppCodeGen to deal with same RuntimeImport being used with different signatures (e.g. RpNewArray is imported under two different signatures in System.Private.CoreLib)
|
|
that import CoreRT projects.
We are going to use the 'ImportedProjectRelativePath' variable to detect if the project being built is importing another (CoreRT) project.
[tfs-changeset: 1558206]
|
|
desktop .NET as they appear in serialization payload.
|
|
Cause: Previous change to field name causes change to serialization payload and incompatibility with desktop.
Solution: Change the field name back.
[tfs-changeset: 1557840]
|
|
|
|
interop code to EagerStaticConstructorOrder enumeration
[tfs-changeset: 1554301]
|
|
Sync System.Private.Threading with CoreCLR
|
|
it turns out to have a dependency on it in debug mode
[tfs-changeset: 1553622]
|
|
|
|
Merge changes from TFS
|
|
[tfs-changeset: 1553090]
|
|
Merge changes from TFS
|
|
Threshold for PInvoke path in Buffer.Memmove was way too low. I suspect it was tuned based on the debug builds. I have updated it to be
at the lower end of the break-even point range, based on measurements on several different types of hardware. The best improvements are
on i7-3520M: 64-byte aligned memory blocks - 35% faster, 128 byte aligned memory blocks - 17% faster.
Also:
- Delete misleading comment about PInvoke overhead
- Add comment related to #430
|
|
[tfs-changeset: 1552759]
|
|
[tfs-changeset: 1552956]
|
|
|
|
|
|
reflection runtime
[tfs-changeset: 1552208]
|
|
[tfs-changeset: 1552187]
|
|
Change IEnumerator.Current to simply return Current, instead of
having duplicate code in both properties.
|