1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 04:22:57 +02:00
llvm-mirror/lib/LTO
Peter Collingbourne 8af0f7d98d LTO: Export functions referenced by the CFI jump table.
If the LowerTypeTests pass decides to add a function to a jump
table for CFI, it will add its name to the set cfiFunctionDefs,
which among other things will cause the function to be renamed in
the ThinLTO backend.

One other thing that we must do with such functions is to not
internalize them, because the jump table in the full LTO object will
contain a reference to the actual function body in the ThinLTO object.

This patch handles that by ensuring that we export any functions
whose names appear in the cfiFunctionDefs set.

Fixes PR33831.

Differential Revision: https://reviews.llvm.org/D35605

llvm-svn: 308504
2017-07-19 18:18:19 +00:00
..
Caching.cpp Try using llvm::errc, should hopefully fix version mismatch problem on clang-s390x-linux bot. 2017-03-20 18:19:41 +00:00
CMakeLists.txt Support: Add a VCSRevision.h header file. 2017-04-13 01:26:12 +00:00
LLVMBuild.txt
LTO.cpp LTO: Export functions referenced by the CFI jump table. 2017-07-19 18:18:19 +00:00
LTOBackend.cpp [ThinLTO] Move -lto-use-new-pm to llvm-lto2, and change it to -use-new-pm. 2017-06-01 23:13:44 +00:00
LTOCodeGenerator.cpp [LTO] Print time-passes information at conclusion of LTO codegen 2017-05-16 09:43:21 +00:00
LTOModule.cpp Apply summary-based dead stripping to regular LTO modules with summaries. 2017-06-15 17:26:13 +00:00
ThinLTOCodeGenerator.cpp [ThinLTO] Remove unnecessary include of Linker.h (NFC) 2017-06-22 16:18:48 +00:00
UpdateCompilerUsed.cpp