Age | Commit message (Collapse) | Author |
|
|
|
|
|
ldobj import casts the stack value to the token type but then wants to store the result as intptr_t again so another cast is needed.
|
|
endfinally, endfilter and rethrow were treated as fallthrough capable when they are not. endfinally was also failing to clear the stack.
|
|
Port the emitter code for X86 and Arm, allowing unbox stub generation
for those architectures.
|
|
|
|
Merge nmirror to master
|
|
Add Dictionary, BinaryReader and MemoryStream to CoreRT
|
|
|
|
|
|
Run CoreCLR tests on Unix
|
|
Fix PInvoke CPPCodegen
|
|
This tiny change enables successful build of the native
components on x64 Alpine Linux.
|
|
This change contains the following:
1. Fixed out SafeHandleMarshaller with CPP codegen as Sedar pointed out.
2. Also enable PInvoke test with CPP Codegen. The generic method
ThrowIfNotEquals doesn't work with CPPCodegen. So temporary created
overrides to address this.
|
|
Rename test results log to `testResults.xml` to be picked up by CI.
Place log file under bin/Logs so it’s in a standard place for this repo.
|
|
Add scripting for Linux / OSX to download the pre-compiled CoreCLR tests and run them.
Top200.unix.txt contains the set of top 200 tests run on Windows that also pass on Unix systems.
|
|
Make System.Tuple as serializable
|
|
Merge changes from TFS
|
|
[tfs-changeset: 1645243]
|
|
|
|
Unix CoreCLR tests CI authoring
|
|
* Update CoreRT doc to include how to debug ILC using VSCode in non-windows
* Automate some of the tasks and check in vscode .json files
* Simplify instructions
* Explains the magic and added a bit more coding annotations to make it looks better
* Change ILCompiler.csproj to output ILC.dll directly to be VS-code friendly
|
|
|
|
Merge nmirror to master
|
|
Merge changes from TFS
|
|
Move System.Private.Reflection.rdxml to CoreLib because of that’s where the types referenced by it are now
[tfs-changeset: 1645193]
|
|
|
|
|
|
Author the CI netci.groovy changes along with a stubbed out `runtest.sh
-coreclr top200` implementation so that the actual PR containing the
test changes will run. This is needed to ensure we don’t break the
build since netci.groovy changes aren’t picked up in a PR (CI takes
netci.groovy from HEAD).
|
|
Merge changes from TFS
|
|
compiler intrinsic on Windows.
CR: SergeyK, EJan
[tfs-changeset: 1645128]
|
|
There was a problem with the secondary thread shutdown on Unix. First,
when the TlsObjectDestructor is called, it is passed the key that
was set using the pthread_setspecific before. But I was missing the fact
that before the TlsObjectDestructor is called, the key is set to NULL.
So we cannot use pthread_getspecific to get the key anymore and we can
only use the value passed as the TlsObjectDestructor parameter.
The second part of the problem was that the at the time the TlsObjectDestructor
is called, the tls_CurrentThread to which the key points was already removed
from the TLS and so an attempt to access tls_CurrentThread results in creation
of a fresh new tls_CurrentThread. And our checks that we have at a few places
that verify that the argument passed to the TlsObjectDestructor was actually
the current thread pointer cannot be done.
The fix is to use __cxa_thread_atexit to register a destruction callback for the
ThreadStore object and use it instead of the pthread callback functionality.
* Enable workaround for build tools that don't support thread_local
Apple started to support thread_local in xcode starting from version 8.0,
this workaround enables the thread shutdown detection to compile even on
devices that don't have the latest xcode.
|
|
Don't track runtime determined dependencies if we're generating a call
to a constrained method.
The more complicated case is tracked in #2526.
|
|
Apple started to support thread_local in xcode starting from version 8.0,
this workaround enables the thread shutdown detection to compile even on
devices that don't have the latest xcode.
|
|
Make two System.Type methods virtual to conform with 4.2.0.0.
|
|
System.Runtime 4.2.0.0 finally brings IsEnum in line with
the other "Is" predicates....
|
|
Implement out SafeHandle marshaller
|
|
|
|
Merge nmirror to master
|
|
There was a problem with the secondary thread shutdown on Unix. First,
when the TlsObjectDestructor is called, it is passed the key that
was set using the pthread_setspecific before. But I was missing the fact
that before the TlsObjectDestructor is called, the key is set to NULL.
So we cannot use pthread_getspecific to get the key anymore and we can
only use the value passed as the TlsObjectDestructor parameter.
The second part of the problem was that the at the time the TlsObjectDestructor
is called, the tls_CurrentThread to which the key points was already removed
from the TLS and so an attempt to access tls_CurrentThread results in creation
of a fresh new tls_CurrentThread. And our checks that we have at a few places
that verify that the argument passed to the TlsObjectDestructor was actually
the current thread pointer cannot be done.
The fix is to use __cxa_thread_atexit to register a destruction callback for the
ThreadStore object and use it instead of the pthread callback functionality.
|
|
|
|
Update default clang version to 3.9 and require xcode 8
|
|
|
|
`dir.props` loads the parent folder `dirs.props`. This is used when
CoreRT is built as a part of another source tree. When building CoreRT
with its own build system, any MSBuild invocation needs to set
`RepoLocalBuild` to `true` to avoid dragging in an unexpected set of
MSBuild configuration. Update the the standard and CoreCLR test
harnesses to pass in `RepoLocalBuild=true` to MSBuild as a command-line
property.
|
|
Concrete generic constraints validation helpers
|
|
|
|
|
|
This change updates the default clang version used to build CoreRT to the
latest stable version 3.9. It also removes the version 3.5 from the supported
ones. The 3.5 has a bug preventing us from using thread_local C++ feature.
Due to the same reason, the minimum supported xcode version on OSX is 8, so
the prerequisities document is updated accordingly.
|
|
Merge changes from TFS
|
|
[tfs-changeset: 1644899]
|