mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
4f45d04c6f
When resolving a function call to an external routine, the dynamic loader must patch the "nop" after the branch instruction to a load that restores the TOC register. Current code does that, but only with the *first* instance of a call to any particular external routine, i.e. at the point where it also allocates the call stub. With subsequent calls to the same routine, current code neglects to patch in the TOC restore code. This is a bug, and leads to corrupt TOC pointers in those cases. Fixed by patching in restore code every time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203580 91177308-0d34-0410-b5e6-96231b3b80d8 |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
GDBRegistrar.cpp | ||
JITRegistrar.h | ||
LLVMBuild.txt | ||
Makefile | ||
ObjectImageCommon.h | ||
RuntimeDyld.cpp | ||
RuntimeDyldELF.cpp | ||
RuntimeDyldELF.h | ||
RuntimeDyldImpl.h | ||
RuntimeDyldMachO.cpp | ||
RuntimeDyldMachO.h |