llvm-project/llvm/lib/ExecutionEngine
Lang Hames 7a598477aa [RuntimeDyld][PowerPC] Use global entry points for calls between sections.
Functions in different objects may use different TOCs, so calls between such
functions should use the global entry point of the callee which updates the
TOC pointer.

This should fix a bug that the Numba developers encountered (see
https://github.com/numba/numba/issues/2451).

Patch by Olexa Bilaniuk. Thanks Olexa!

No RuntimeDyld checker test case yet as I am not familiar enough with how
RuntimeDyldELF fixes up call-sites, but I do not want to hold up landing
this. I will continue to work on it and see if I can rope some powerpc
experts in.

llvm-svn: 329335
2018-04-05 19:37:05 +00:00
..
IntelJITEvents Remove some leftover DWARFContextInMemory. 2017-07-19 23:34:59 +00:00
Interpreter Report fatal error in the case of out of memory 2018-02-20 05:41:26 +00:00
MCJIT Remove unused file, ExecutionEngine/MCJIT/ObjectBuffer.h 2018-03-26 18:10:31 +00:00
OProfileJIT Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
Orc [ORC] Create a new SymbolStringPool by default in ExecutionSession constructor. 2018-04-02 20:57:56 +00:00
RuntimeDyld [RuntimeDyld][PowerPC] Use global entry points for calls between sections. 2018-04-05 19:37:05 +00:00
CMakeLists.txt [cmake] Expose the dependencies of ExecutionEngine as PUBLIC 2017-08-11 13:25:20 +00:00
ExecutionEngine.cpp [ORC] Re-apply r322913 with a fix for a read-after-free error. 2018-01-19 22:24:13 +00:00
ExecutionEngineBindings.cpp Fix layering by moving Support/CodeGenCWrappers.h to Target 2018-03-23 23:58:21 +00:00
GDBRegistrationListener.cpp Do a sweep over move ctors and remove those that are identical to the default. 2016-10-20 12:20:28 +00:00
LLVMBuild.txt
SectionMemoryManager.cpp Fix 'not all control paths return a value' warning on MSVC builds 2017-11-09 14:56:17 +00:00
TargetSelect.cpp [TLS] use emulated TLS if the target supports only this mode 2018-02-28 17:48:55 +00:00