1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/lib/ExecutionEngine
Keno Fischer 013ae41096 [RuntimeDyld] Fix performance problem in resolveRelocations with many sections
Summary:
Rather than just iterating over all sections and checking whether we have relocations for them, iterate over the relocation map instead. This showed up heavily in an artificial julia benchmark that does lots of compilation. On that particular benchmark, this patch gives
~15% performance improvements. As far as I can tell the primary reason why the original
loop was so expensive is that Relocations[i] actually constructs a relocationList (allocating memory & doing lots of other unnecessary computing) if none is found.

Reviewers: lhames

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D13545

llvm-svn: 249942
2015-10-10 05:37:02 +00:00
..
IntelJITEvents Fix the -DBUILD_SHARED_LIBS=ON build. 2015-07-07 17:48:00 +00:00
Interpreter De-constify pointers to Type since they can't be modified. NFC 2015-08-01 22:20:21 +00:00
MCJIT Re-commit r247216: "Fix Clang-tidy misc-use-override warnings, other minor fixes" 2015-09-10 16:49:58 +00:00
OProfileJIT Fix the -DBUILD_SHARED_LIBS=ON build. 2015-07-07 17:48:00 +00:00
Orc [Orc] Teach the CompileOnDemand layer to clone aliases. 2015-10-06 22:55:05 +00:00
RuntimeDyld [RuntimeDyld] Fix performance problem in resolveRelocations with many sections 2015-10-10 05:37:02 +00:00
CMakeLists.txt modules: Add explicit dependency on intrinsics_gen 2015-06-16 00:44:12 +00:00
ExecutionEngine.cpp Remove roundingMode argument in APFloat::mod 2015-09-21 19:29:25 +00:00
ExecutionEngineBindings.cpp Fix ODR violation. NFC. 2015-07-27 18:27:23 +00:00
GDBRegistrationListener.cpp Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
LLVMBuild.txt add missing dependency for ExecutionEngine lib 2015-06-01 21:56:56 +00:00
Makefile
SectionMemoryManager.cpp Fix performance problem in long-running SectionMemoryManagers 2015-10-01 02:45:07 +00:00
TargetSelect.cpp Readdress r236990, use of static members on a non-static variable. 2015-05-11 22:20:48 +00:00