1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
llvm-mirror/lib/ExecutionEngine/RuntimeDyld
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
..
Targets [RuntimeDyld] Support non-zero addends for the MachO X86_64 SUBTRACTOR reloc. 2015-09-10 21:05:58 +00:00
CMakeLists.txt modules: Add explicit dependency on intrinsics_gen 2015-06-16 00:44:12 +00:00
LLVMBuild.txt Fix build following r211956 2014-06-28 06:31:47 +00:00
Makefile
RTDyldMemoryManager.cpp Rename all references to old mailing lists to new lists.llvm.org address. 2015-08-05 03:51:17 +00:00
RuntimeDyld.cpp [RuntimeDyld] Fix performance problem in resolveRelocations with many sections 2015-10-10 05:37:02 +00:00
RuntimeDyldChecker.cpp [RuntimeDyld] Skip relocations for external symbols with 64-bit address ~0ULL. 2015-07-04 01:35:26 +00:00
RuntimeDyldCheckerImpl.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
RuntimeDyldCOFF.cpp -Wdeprecated-clean: Fix cases of violating the rule of 5 in ways that are deprecated in C++11 2015-08-05 20:20:29 +00:00
RuntimeDyldCOFF.h [MCJIT][Orc] Refactor RTDyldMemoryManager, weave RuntimeDyld::SymbolInfo through 2015-03-30 03:37:06 +00:00
RuntimeDyldELF.cpp Fix Clang-tidy modernize-use-nullptr warnings in source directories and generated files; other minor cleanups. 2015-10-06 23:24:35 +00:00
RuntimeDyldELF.h [mips][mcjit] Calculate correct addend for HI16 and PCHI16 reloc 2015-08-13 15:12:49 +00:00
RuntimeDyldImpl.h [RuntimeDyld] Make LoadedObjectInfo::getLoadedSectionAddress take a SectionRef 2015-07-28 17:52:11 +00:00
RuntimeDyldMachO.cpp -Wdeprecated-clean: Fix cases of violating the rule of 5 in ways that are deprecated in C++11 2015-08-05 20:20:29 +00:00
RuntimeDyldMachO.h [RuntimeDyld] MachO: Add support for ARM scattered vanilla relocations. 2015-07-24 17:40:04 +00:00