Do nothing on R_AARCH64_NONE relocation. The relocation is used by BOLT when re-linking the final binary. It is used as a dummy relocation hack in order to stop the RuntimeDyld to skip the allocation of the section.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
How does BOLT use the relocation type?
(BOLT is in the monorepo now) If you give instructions, reviewers may have a better idea.
While I do not know how ExecutionEngine handles the situation, in other ELF components I review/contribute we really need a test for every relocation type.
This is important to not regress while refactoring code.
Hello @MaskRay . It is used in DwarfLineTable::emitCU as a dummy relocation hack in order to stop the RuntimeDyld to skip the allocation of the section. Also I would like to point that all the other targets have the proper R_*_NONE handling :)
llvm/test/ExecutionEngine/RuntimeDyld/AArch64/ELF_ARM64_none.yaml | ||
---|---|---|
4 ↗ | (On Diff #399286) | . after a complete sentence. In other ELF components we prefer ## for non-RUN non-CHECK comments. I haven't checked whether test/ExecutionEngine wants to follow this convention. |
24 ↗ | (On Diff #399286) | remove R_AARCH64_NONE doesn't need a symbol |
@MaskRay I don't mind to rename it, I've named it with ARM64 because most of the tests in this directory are named with arm64.
OK. I don't mind that much. Just noticed that the directory name is AArch64/. In ELF, various AArch64/ARM64 related constants are called AARCH64 instead of ARM64.