[all-commits] [llvm/llvm-project] 5771c9: [XRay] Change xray_instr_map sled addresses from a...
Fangrui Song via All-commits
all-commits at lists.llvm.org
Tue Apr 21 09:36:39 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 5771c9856249345f09b860fa2b20b762113d521b
https://github.com/llvm/llvm-project/commit/5771c9856249345f09b860fa2b20b762113d521b
Author: Fangrui Song <maskray at google.com>
Date: 2020-04-21 (Tue, 21 Apr 2020)
Changed paths:
M compiler-rt/lib/xray/xray_interface.cpp
M compiler-rt/lib/xray/xray_interface_internal.h
M compiler-rt/lib/xray/xray_x86_64.cpp
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/test/CodeGen/X86/xray-attribute-instrumentation.ll
M llvm/test/CodeGen/X86/xray-log-args.ll
M llvm/test/CodeGen/X86/xray-section-group.ll
M llvm/test/DebugInfo/X86/xray-split-dwarf-interaction.ll
Log Message:
-----------
[XRay] Change xray_instr_map sled addresses from absolute to PC relative for x86-64
xray_instr_map contains absolute addresses of sleds, which are relocated
by `R_*_RELATIVE` when linked in -pie or -shared mode.
By making these addresses relative to PC, we can avoid the dynamic
relocations and remove the SHF_WRITE flag from xray_instr_map. We can
thus save VM pages containg xray_instr_map (because they are not
modified).
This patch changes x86-64 and bumps the sled version to 2. Subsequent
changes will change powerpc64le and AArch64.
Reviewed By: dberris, ianlevesque
Differential Revision: https://reviews.llvm.org/D78082
More information about the All-commits
mailing list