diff options
author | Kyungwoo Lee <kyulee@microsoft.com> | 2016-04-30 07:02:54 -0700 |
---|---|---|
committer | Kyungwoo Lee <kyulee@microsoft.com> | 2016-04-30 07:02:54 -0700 |
commit | 960ab5c916e371bf6d05fe4407c874cce3066063 (patch) | |
tree | 25bb1eb05d679b8d487ae08bd7426b06e9a0224e /src/vm/arm64 | |
parent | 5224df88a12d00f51fa04ee0e6a25e14eaeaebda (diff) | |
parent | 45798f661f8c8c042f3582cde8b611d1c9c7343f (diff) | |
download | coreclr-960ab5c916e371bf6d05fe4407c874cce3066063.tar.gz coreclr-960ab5c916e371bf6d05fe4407c874cce3066063.tar.bz2 coreclr-960ab5c916e371bf6d05fe4407c874cce3066063.zip |
Merge pull request #4687 from kyulee1/zap
ARM64: Enabling Crossgen End-to-End Mscorlib
Diffstat (limited to 'src/vm/arm64')
-rw-r--r-- | src/vm/arm64/asmhelpers.asm | 25 | ||||
-rw-r--r-- | src/vm/arm64/stubs.cpp | 7 |
2 files changed, 24 insertions, 8 deletions
diff --git a/src/vm/arm64/asmhelpers.asm b/src/vm/arm64/asmhelpers.asm index 7c89f0f897..8bf4da6710 100644 --- a/src/vm/arm64/asmhelpers.asm +++ b/src/vm/arm64/asmhelpers.asm @@ -16,6 +16,7 @@ IMPORT PreStubWorker IMPORT NDirectImportWorker IMPORT VSD_ResolveWorker + IMPORT StubDispatchFixupWorker IMPORT JIT_InternalThrow IMPORT ComPreStubWorker IMPORT COMToCLRWorker @@ -1175,7 +1176,6 @@ Fail NESTED_END - #ifdef FEATURE_READYTORUN NESTED_ENTRY DelayLoad_MethodCall @@ -1221,5 +1221,28 @@ Fail DynamicHelper DynamicHelperFrameFlags_ObjectArg | DynamicHelperFrameFlags_ObjectArg2, _ObjObj #endif // FEATURE_READYTORUN +#ifdef FEATURE_PREJIT +;; ------------------------------------------------------------------ +;; void StubDispatchFixupStub(args in regs x0-x7 & stack, x11:IndirectionCellAndFlags, x12:DispatchToken) +;; +;; The stub dispatch thunk which transfers control to StubDispatchFixupWorker. + NESTED_ENTRY StubDispatchFixupStub + + PROLOG_WITH_TRANSITION_BLOCK + + add x0, sp, #__PWTB_TransitionBlock ; pTransitionBlock + and x1, x11, #-4 ; Indirection cell + mov x2, #0 ; sectionIndex + mov x3, #0 ; pModule + bl StubDispatchFixupWorker + mov x9, x0 + + EPILOG_WITH_TRANSITION_BLOCK_TAILCALL + + EPILOG_BRANCH_REG x9 + + NESTED_END +#endif + ; Must be at very end of file END
\ No newline at end of file diff --git a/src/vm/arm64/stubs.cpp b/src/vm/arm64/stubs.cpp index eef079158f..38ce1d9791 100644 --- a/src/vm/arm64/stubs.cpp +++ b/src/vm/arm64/stubs.cpp @@ -1044,13 +1044,6 @@ extern "C" void GenericComPlusCallStub(void) } #endif // FEATURE_COMINTEROP -#ifdef FEATURE_PREJIT -extern "C" void StubDispatchFixupStub() -{ - _ASSERTE(!"ARM64:NYI"); -} -#endif - //ARM64TODO: check if this should be amd64 and win64 #ifdef _WIN64 extern "C" void PInvokeStubForHostInner(DWORD dwStackSize, LPVOID pStackFrame, LPVOID pTarget) |