From ae018301ec2ca44c384a6ed46f4408e5448dde71 Mon Sep 17 00:00:00 2001
From: Avi Kivity <avi.kivity@gmail.com>
Date: Thu, 27 Dec 2012 13:57:32 +0200
Subject: [PATCH] Add missing file elf-dl.s

---
 arch/x64/elf-dl.s | 52 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)
 create mode 100644 arch/x64/elf-dl.s

diff --git a/arch/x64/elf-dl.s b/arch/x64/elf-dl.s
new file mode 100644
index 000000000..acb5228d7
--- /dev/null
+++ b/arch/x64/elf-dl.s
@@ -0,0 +1,52 @@
+
+.include "arch/x64/cfi.s"
+
+.text
+
+.global __elf_resolve_pltgot
+
+// calling convension:
+// %rsp + 8: index
+// %rsp + 0:  object
+__elf_resolve_pltgot:
+	.cfi_startproc simple
+	.cfi_def_cfa %rsp, 0
+	.cfi_rel_offset %rip, 16
+	sub $8, %rsp  # make room for resolved address
+	.cfi_adjust_cfa_offset 8
+	pushq_cfi %rax
+	pushq_cfi %rbx
+	pushq_cfi %rcx
+	pushq_cfi %rdx
+	pushq_cfi %rsi
+	pushq_cfi %rdi
+	pushq_cfi %rbp
+	pushq_cfi %r8
+	pushq_cfi %r9
+	pushq_cfi %r10
+	pushq_cfi %r11
+	pushq_cfi %r12
+	pushq_cfi %r13
+	pushq_cfi %r14
+	pushq_cfi %r15
+	mov 16*8+8(%rsp), %edi
+	mov 16*8+0(%rsp), %rsi
+	call elf_resolve_pltgot
+	mov %rax, 15*8(%rsp)
+	popq_cfi %r15
+	popq_cfi %r14
+	popq_cfi %r13
+	popq_cfi %r12
+	popq_cfi %r11
+	popq_cfi %r10
+	popq_cfi %r9
+	popq_cfi %r8
+	popq_cfi %rbp
+	popq_cfi %rdi
+	popq_cfi %rsi
+	popq_cfi %rdx
+	popq_cfi %rcx
+	popq_cfi %rbx
+	popq_cfi %rax
+	ret $16
+	.cfi_endproc
-- 
GitLab