diff options
author | David Wrighton <davidwr@microsoft.com> | 2019-11-21 05:59:03 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-21 05:59:03 +0300 |
commit | be8e050a6d27040d6c249382d99d57d973e919b2 (patch) | |
tree | ec1b2fb00e5a77889d1551819dcbbe92740482a0 /src/coreclr/clrdefinitions.cmake | |
parent | 21030533c8032aa5ca9ccf9fb942307adb825020 (diff) |
Implement instantiating and unboxing through portable stublinker codeā¦ (#106)
* Implement instantiating and unboxing through portable stublinker code
- Handle only the cases with register to register moves
- Shares abi processing logic with delegate shuffle thunk creation
- Architecture specific logic is relatively simple
- Do not permit use of HELPERREG in computed instantiating stubs
- Fix GetArgLoc such that it works on all architectures and OS combinations
Add a JIT stress test case for testing all of the various combinations
- Use the same calling convention test architecture that was used as part of tail call work
Rename secure delegates to wrapper delegates
- Secure delegates are no longer a feature of the runtime
- But the wrapper delegate lives on as a workaround for a weird detail of the ARM32 abi
Diffstat (limited to 'src/coreclr/clrdefinitions.cmake')
-rw-r--r-- | src/coreclr/clrdefinitions.cmake | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/coreclr/clrdefinitions.cmake b/src/coreclr/clrdefinitions.cmake index 57cfa8f90ec..23328f0e126 100644 --- a/src/coreclr/clrdefinitions.cmake +++ b/src/coreclr/clrdefinitions.cmake @@ -107,6 +107,15 @@ else(WIN32) add_definitions(-DFEATURE_ARRAYSTUB_AS_IL) add_definitions(-DFEATURE_MULTICASTSTUB_AS_IL) endif(WIN32) + +if(NOT CLR_CMAKE_TARGET_ARCH_I386) + add_definitions(-DFEATURE_PORTABLE_SHUFFLE_THUNKS) +endif() + +if(CLR_CMAKE_PLATFORM_UNIX OR NOT CLR_CMAKE_TARGET_ARCH_I386) + add_definitions(-DFEATURE_INSTANTIATINGSTUB_AS_IL) +endif() + add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:CROSSGEN_COMPONENT>>>:FEATURE_CODE_VERSIONING>) add_definitions(-DFEATURE_COLLECTIBLE_TYPES) |