From d0f13c24a3201a59d0a72ef0fcca6f2288e20293 Mon Sep 17 00:00:00 2001 From: Tim Shen Date: Wed, 22 Feb 2017 00:19:43 +0000 Subject: [XRay] Change the ppc trampoline asm file into a different name, to not collide with the cc file. NFC. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@295795 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/xray/CMakeLists.txt | 2 +- lib/xray/xray_trampoline_powerpc64.S | 171 ------------------------------- lib/xray/xray_trampoline_powerpc64_asm.S | 171 +++++++++++++++++++++++++++++++ 3 files changed, 172 insertions(+), 172 deletions(-) delete mode 100644 lib/xray/xray_trampoline_powerpc64.S create mode 100644 lib/xray/xray_trampoline_powerpc64_asm.S (limited to 'lib/xray') diff --git a/lib/xray/CMakeLists.txt b/lib/xray/CMakeLists.txt index 5495104ad..72caa9fac 100644 --- a/lib/xray/CMakeLists.txt +++ b/lib/xray/CMakeLists.txt @@ -52,7 +52,7 @@ set(mips64el_SOURCES set(powerpc64le_SOURCES xray_powerpc64.cc xray_trampoline_powerpc64.cc - xray_trampoline_powerpc64.S + xray_trampoline_powerpc64_asm.S ${XRAY_SOURCES}) include_directories(..) diff --git a/lib/xray/xray_trampoline_powerpc64.S b/lib/xray/xray_trampoline_powerpc64.S deleted file mode 100644 index d43231ead..000000000 --- a/lib/xray/xray_trampoline_powerpc64.S +++ /dev/null @@ -1,171 +0,0 @@ - .text - .abiversion 2 - .globl __xray_FunctionEntry - .p2align 4 -__xray_FunctionEntry: - std 0, 16(1) - stdu 1, -408(1) -# Spill r3-r10, f1-f13, and vsr34-vsr45, which are parameter registers. -# If this appears to be slow, the caller needs to pass in number of generic, -# floating point, and vector parameters, so that we only spill those live ones. - std 3, 32(1) - ld 3, 400(1) # FuncId - std 4, 40(1) - std 5, 48(1) - std 6, 56(1) - std 7, 64(1) - std 8, 72(1) - std 9, 80(1) - std 10, 88(1) - addi 4, 1, 96 - stxsdx 1, 0, 4 - addi 4, 1, 104 - stxsdx 2, 0, 4 - addi 4, 1, 112 - stxsdx 3, 0, 4 - addi 4, 1, 120 - stxsdx 4, 0, 4 - addi 4, 1, 128 - stxsdx 5, 0, 4 - addi 4, 1, 136 - stxsdx 6, 0, 4 - addi 4, 1, 144 - stxsdx 7, 0, 4 - addi 4, 1, 152 - stxsdx 8, 0, 4 - addi 4, 1, 160 - stxsdx 9, 0, 4 - addi 4, 1, 168 - stxsdx 10, 0, 4 - addi 4, 1, 176 - stxsdx 11, 0, 4 - addi 4, 1, 184 - stxsdx 12, 0, 4 - addi 4, 1, 192 - stxsdx 13, 0, 4 - addi 4, 1, 200 - stxvd2x 34, 0, 4 - addi 4, 1, 216 - stxvd2x 35, 0, 4 - addi 4, 1, 232 - stxvd2x 36, 0, 4 - addi 4, 1, 248 - stxvd2x 37, 0, 4 - addi 4, 1, 264 - stxvd2x 38, 0, 4 - addi 4, 1, 280 - stxvd2x 39, 0, 4 - addi 4, 1, 296 - stxvd2x 40, 0, 4 - addi 4, 1, 312 - stxvd2x 41, 0, 4 - addi 4, 1, 328 - stxvd2x 42, 0, 4 - addi 4, 1, 344 - stxvd2x 43, 0, 4 - addi 4, 1, 360 - stxvd2x 44, 0, 4 - addi 4, 1, 376 - stxvd2x 45, 0, 4 - std 2, 392(1) - mflr 0 - std 0, 400(1) - - li 4, 0 - bl _ZN6__xray23CallXRayPatchedFunctionEi13XRayEntryType - nop - - addi 4, 1, 96 - lxsdx 1, 0, 4 - addi 4, 1, 104 - lxsdx 2, 0, 4 - addi 4, 1, 112 - lxsdx 3, 0, 4 - addi 4, 1, 120 - lxsdx 4, 0, 4 - addi 4, 1, 128 - lxsdx 5, 0, 4 - addi 4, 1, 136 - lxsdx 6, 0, 4 - addi 4, 1, 144 - lxsdx 7, 0, 4 - addi 4, 1, 152 - lxsdx 8, 0, 4 - addi 4, 1, 160 - lxsdx 9, 0, 4 - addi 4, 1, 168 - lxsdx 10, 0, 4 - addi 4, 1, 176 - lxsdx 11, 0, 4 - addi 4, 1, 184 - lxsdx 12, 0, 4 - addi 4, 1, 192 - lxsdx 13, 0, 4 - addi 4, 1, 200 - lxvd2x 34, 0, 4 - addi 4, 1, 216 - lxvd2x 35, 0, 4 - addi 4, 1, 232 - lxvd2x 36, 0, 4 - addi 4, 1, 248 - lxvd2x 37, 0, 4 - addi 4, 1, 264 - lxvd2x 38, 0, 4 - addi 4, 1, 280 - lxvd2x 39, 0, 4 - addi 4, 1, 296 - lxvd2x 40, 0, 4 - addi 4, 1, 312 - lxvd2x 41, 0, 4 - addi 4, 1, 328 - lxvd2x 42, 0, 4 - addi 4, 1, 344 - lxvd2x 43, 0, 4 - addi 4, 1, 360 - lxvd2x 44, 0, 4 - addi 4, 1, 376 - lxvd2x 45, 0, 4 - ld 0, 400(1) - mtlr 0 - ld 2, 392(1) - ld 3, 32(1) - ld 4, 40(1) - ld 5, 48(1) - ld 6, 56(1) - ld 7, 64(1) - ld 8, 72(1) - ld 9, 80(1) - ld 10, 88(1) - - addi 1, 1, 408 - ld 0, 16(1) - blr - - .globl __xray_FunctionExit - .p2align 4 -__xray_FunctionExit: - std 0, 16(1) - ld 0, -8(1) # FuncId - stdu 1, -72(1) -# Spill r3, f1, and vsr34, the return value registers. - std 3, 32(1) - mr 3, 0 - addi 4, 1, 40 - stxsdx 1, 0, 4 - addi 4, 1, 48 - stxvd2x 34, 0, 4 - mflr 0 - std 0, 64(1) - li 4, 1 - bl _ZN6__xray23CallXRayPatchedFunctionEi13XRayEntryType - nop - ld 0, 64(1) - mtlr 0 - ld 3, 32(1) - addi 4, 1, 40 - lxsdx 1, 0, 4 - addi 4, 1, 48 - lxvd2x 34, 0, 4 - addi 1, 1, 72 - ld 0, 16(1) - blr diff --git a/lib/xray/xray_trampoline_powerpc64_asm.S b/lib/xray/xray_trampoline_powerpc64_asm.S new file mode 100644 index 000000000..d43231ead --- /dev/null +++ b/lib/xray/xray_trampoline_powerpc64_asm.S @@ -0,0 +1,171 @@ + .text + .abiversion 2 + .globl __xray_FunctionEntry + .p2align 4 +__xray_FunctionEntry: + std 0, 16(1) + stdu 1, -408(1) +# Spill r3-r10, f1-f13, and vsr34-vsr45, which are parameter registers. +# If this appears to be slow, the caller needs to pass in number of generic, +# floating point, and vector parameters, so that we only spill those live ones. + std 3, 32(1) + ld 3, 400(1) # FuncId + std 4, 40(1) + std 5, 48(1) + std 6, 56(1) + std 7, 64(1) + std 8, 72(1) + std 9, 80(1) + std 10, 88(1) + addi 4, 1, 96 + stxsdx 1, 0, 4 + addi 4, 1, 104 + stxsdx 2, 0, 4 + addi 4, 1, 112 + stxsdx 3, 0, 4 + addi 4, 1, 120 + stxsdx 4, 0, 4 + addi 4, 1, 128 + stxsdx 5, 0, 4 + addi 4, 1, 136 + stxsdx 6, 0, 4 + addi 4, 1, 144 + stxsdx 7, 0, 4 + addi 4, 1, 152 + stxsdx 8, 0, 4 + addi 4, 1, 160 + stxsdx 9, 0, 4 + addi 4, 1, 168 + stxsdx 10, 0, 4 + addi 4, 1, 176 + stxsdx 11, 0, 4 + addi 4, 1, 184 + stxsdx 12, 0, 4 + addi 4, 1, 192 + stxsdx 13, 0, 4 + addi 4, 1, 200 + stxvd2x 34, 0, 4 + addi 4, 1, 216 + stxvd2x 35, 0, 4 + addi 4, 1, 232 + stxvd2x 36, 0, 4 + addi 4, 1, 248 + stxvd2x 37, 0, 4 + addi 4, 1, 264 + stxvd2x 38, 0, 4 + addi 4, 1, 280 + stxvd2x 39, 0, 4 + addi 4, 1, 296 + stxvd2x 40, 0, 4 + addi 4, 1, 312 + stxvd2x 41, 0, 4 + addi 4, 1, 328 + stxvd2x 42, 0, 4 + addi 4, 1, 344 + stxvd2x 43, 0, 4 + addi 4, 1, 360 + stxvd2x 44, 0, 4 + addi 4, 1, 376 + stxvd2x 45, 0, 4 + std 2, 392(1) + mflr 0 + std 0, 400(1) + + li 4, 0 + bl _ZN6__xray23CallXRayPatchedFunctionEi13XRayEntryType + nop + + addi 4, 1, 96 + lxsdx 1, 0, 4 + addi 4, 1, 104 + lxsdx 2, 0, 4 + addi 4, 1, 112 + lxsdx 3, 0, 4 + addi 4, 1, 120 + lxsdx 4, 0, 4 + addi 4, 1, 128 + lxsdx 5, 0, 4 + addi 4, 1, 136 + lxsdx 6, 0, 4 + addi 4, 1, 144 + lxsdx 7, 0, 4 + addi 4, 1, 152 + lxsdx 8, 0, 4 + addi 4, 1, 160 + lxsdx 9, 0, 4 + addi 4, 1, 168 + lxsdx 10, 0, 4 + addi 4, 1, 176 + lxsdx 11, 0, 4 + addi 4, 1, 184 + lxsdx 12, 0, 4 + addi 4, 1, 192 + lxsdx 13, 0, 4 + addi 4, 1, 200 + lxvd2x 34, 0, 4 + addi 4, 1, 216 + lxvd2x 35, 0, 4 + addi 4, 1, 232 + lxvd2x 36, 0, 4 + addi 4, 1, 248 + lxvd2x 37, 0, 4 + addi 4, 1, 264 + lxvd2x 38, 0, 4 + addi 4, 1, 280 + lxvd2x 39, 0, 4 + addi 4, 1, 296 + lxvd2x 40, 0, 4 + addi 4, 1, 312 + lxvd2x 41, 0, 4 + addi 4, 1, 328 + lxvd2x 42, 0, 4 + addi 4, 1, 344 + lxvd2x 43, 0, 4 + addi 4, 1, 360 + lxvd2x 44, 0, 4 + addi 4, 1, 376 + lxvd2x 45, 0, 4 + ld 0, 400(1) + mtlr 0 + ld 2, 392(1) + ld 3, 32(1) + ld 4, 40(1) + ld 5, 48(1) + ld 6, 56(1) + ld 7, 64(1) + ld 8, 72(1) + ld 9, 80(1) + ld 10, 88(1) + + addi 1, 1, 408 + ld 0, 16(1) + blr + + .globl __xray_FunctionExit + .p2align 4 +__xray_FunctionExit: + std 0, 16(1) + ld 0, -8(1) # FuncId + stdu 1, -72(1) +# Spill r3, f1, and vsr34, the return value registers. + std 3, 32(1) + mr 3, 0 + addi 4, 1, 40 + stxsdx 1, 0, 4 + addi 4, 1, 48 + stxvd2x 34, 0, 4 + mflr 0 + std 0, 64(1) + li 4, 1 + bl _ZN6__xray23CallXRayPatchedFunctionEi13XRayEntryType + nop + ld 0, 64(1) + mtlr 0 + ld 3, 32(1) + addi 4, 1, 40 + lxsdx 1, 0, 4 + addi 4, 1, 48 + lxvd2x 34, 0, 4 + addi 1, 1, 72 + ld 0, 16(1) + blr -- cgit v1.2.3