diff options
author | Rama Krishnan Raghupathy <ramarag@microsoft.com> | 2016-05-03 18:16:47 -0700 |
---|---|---|
committer | Rama Krishnan Raghupathy <ramarag@microsoft.com> | 2016-05-04 19:27:08 -0700 |
commit | 08b010a6cbd7803d178dd42da72d0aab072da9dc (patch) | |
tree | 27f6251ba494eeca4a3869b1c26cdb8d90d5d8c2 /src/vm/arm64/stubs.cpp | |
parent | d474c289096d7a2af96ab5690be37c9fa8aec10e (diff) | |
download | coreclr-08b010a6cbd7803d178dd42da72d0aab072da9dc.tar.gz coreclr-08b010a6cbd7803d178dd42da72d0aab072da9dc.tar.bz2 coreclr-08b010a6cbd7803d178dd42da72d0aab072da9dc.zip |
[Arm64] Initialize indirection cell for delegates
Diffstat (limited to 'src/vm/arm64/stubs.cpp')
-rw-r--r-- | src/vm/arm64/stubs.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/vm/arm64/stubs.cpp b/src/vm/arm64/stubs.cpp index 2a3cddb0dd..e7700f5389 100644 --- a/src/vm/arm64/stubs.cpp +++ b/src/vm/arm64/stubs.cpp @@ -1606,6 +1606,8 @@ VOID StubLinkerCPU::EmitShuffleThunk(ShuffleEntry *pShuffleEntryArray) // field and save it in x9. Tailcall to the target method after re-arranging the arguments // ldr x9, [x0, #offsetof(DelegateObject, _methodPtrAux)] EmitLoadStoreRegImm(eLOAD, IntReg(9), IntReg(0), DelegateObject::GetOffsetOfMethodPtrAux()); + //add x11, x0, DelegateObject::GetOffsetOfMethodPtrAux() - load the indirection cell into x11 used by ResolveWorkerAsmStub + EmitAddImm(IntReg(11), IntReg(0), DelegateObject::GetOffsetOfMethodPtrAux()); for (ShuffleEntry* pEntry = pShuffleEntryArray; pEntry->srcofs != ShuffleEntry::SENTINEL; pEntry++) { |