diff options
author | Denis Revunov <revunov.denis@huawei-partners.com> | 2022-05-31 11:50:59 -0700 |
---|---|---|
committer | Rafael Auler <rafaelauler@fb.com> | 2022-05-31 13:51:35 -0700 |
commit | 8579db96e8c319acb02064542632f42dd63039ba (patch) | |
tree | f1ab7b27f92f27edf7768874b6cef95c74080716 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 218393f44ec903341125b70ce3fbb6dc731a9399 (diff) | |
download | llvm-8579db96e8c319acb02064542632f42dd63039ba.zip llvm-8579db96e8c319acb02064542632f42dd63039ba.tar.gz llvm-8579db96e8c319acb02064542632f42dd63039ba.tar.bz2 |
[BOLT] [AArch64] Handle constant islands spanning multiple functions
Fix BOLT's constant island mapping when a constant island marked by $d
spans multiple functions. Currently, because BOLT only marks the
constant island in the first function where $d is located, if the next
function contains data at its start, BOLT will miss the data and try
to disassemble it. This patch adds code to explicitly go through all
symbols between $d and $x markers and mark their respective offsets as
data, which stops BOLT from trying to disassemble data. It also adds
MarkerType enum and refactors related functions.
Reviewed By: yota9, rafauler
Differential Revision: https://reviews.llvm.org/D126177
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions