[XRay] Add initial support for loongarch64
authorWeining Lu <luweining@loongson.cn>
Fri, 14 Jul 2023 01:23:53 +0000 (09:23 +0800)
committerzhanglimin <zhanglimin@loongson.cn>
Fri, 14 Jul 2023 01:27:13 +0000 (09:27 +0800)
commitef33d6cbfc2dada0709783563fee57e6afd9a2d9
treef4552251116fe20de44fb06d5dd06c39e68eec14
parent97678cec1b9de5023e1eb5c9804cb137351eb21e
[XRay] Add initial support for loongarch64

Only support patching FunctionEntry/FunctionExit/FunctionTailExit for now.

Reviewed By: MaskRay, xen0n
Co-Authored-By: zhanglimin <zhanglimin@loongson.cn>
Differential Revision: https://reviews.llvm.org/D140727
15 files changed:
clang/lib/Driver/XRayArgs.cpp
compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
compiler-rt/lib/xray/CMakeLists.txt
compiler-rt/lib/xray/xray_interface.cpp
compiler-rt/lib/xray/xray_loongarch64.cpp [new file with mode: 0644]
compiler-rt/lib/xray/xray_trampoline_loongarch64.S [new file with mode: 0644]
compiler-rt/lib/xray/xray_tsc.h
compiler-rt/test/xray/TestCases/Posix/c-test.cpp
compiler-rt/test/xray/TestCases/Posix/fdr-thread-order.cpp
llvm/lib/CodeGen/XRayInstrumentation.cpp
llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
llvm/lib/Target/LoongArch/LoongArchSubtarget.h
llvm/lib/XRay/InstrumentationMap.cpp
llvm/test/CodeGen/LoongArch/xray-attribute-instrumentation.ll [new file with mode: 0644]