[all-commits] [llvm/llvm-project] 82f8ae: [JITLink][MachO] Handle muliple symbols at same of...
lhames via All-commits
all-commits at lists.llvm.org
Wed Jun 9 02:35:33 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 82f8aef3deb196ad323a3ef57c03276c6e93a246
https://github.com/llvm/llvm-project/commit/82f8aef3deb196ad323a3ef57c03276c6e93a246
Author: Lang Hames <lhames at gmail.com>
Date: 2021-06-09 (Wed, 09 Jun 2021)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
Log Message:
-----------
[JITLink][MachO] Handle muliple symbols at same offset when splitting C-strings.
The C-string section splitting support added in f9649d123db triggered an assert
("Duplicate canonical symbol at address") when multiple symbols were defined at
the the same offset within a C-string block (this triggered on arm64, where we
always add a block start symbol). The bug was caused by a failure to update the
record of the last canonical symbol address. The fix was to maintain this record
correctly, and move the auto-generation of the block-start symbol above the
handling for symbols defined in the object itself so that all symbols
(auto-generated and defined) are processed in address order.
More information about the All-commits
mailing list