[BOLT][AArch64] Handle gold linker veneers
authorVladislav Khmelevsky <och95@yandex.ru>
Wed, 15 Jun 2022 22:53:20 +0000 (01:53 +0300)
committerVladislav Khmelevsky <och95@yandex.ru>
Tue, 28 Jun 2022 13:14:05 +0000 (16:14 +0300)
commit425dda76e9fac93117289fd68a2abdfb1e4a0ba5
tree3a9e932d14c67c45d610b50296aaa2bebc65e347
parent278a47cc9280371044a5bba295a3859ddc8b4964
[BOLT][AArch64] Handle gold linker veneers

The gold linker veneers are written between functions without symbols,
so we to handle it specially in BOLT.

Vladislav Khmelevsky,
Advanced Software Technology Lab, Huawei

Differential Revision: https://reviews.llvm.org/D128082
12 files changed:
bolt/include/bolt/Core/BinaryContext.h
bolt/include/bolt/Core/BinaryFunction.h
bolt/include/bolt/Core/MCPlusBuilder.h
bolt/lib/Core/BinaryContext.cpp
bolt/lib/Core/BinaryFunction.cpp
bolt/lib/Passes/BinaryPasses.cpp
bolt/lib/Passes/VeneerElimination.cpp
bolt/lib/Rewrite/BinaryPassManager.cpp
bolt/lib/Rewrite/RewriteInstance.cpp
bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
bolt/test/AArch64/veneer-gold.s [new file with mode: 0644]
bolt/test/AArch64/veneer.s [new file with mode: 0644]