summaryrefslogtreecommitdiff
path: root/ldso/ldso/m68k/resolve.S
blob: d9a2929d63cac0f67b14dd846ee88a50eec56069 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*
 * These are various helper routines that are needed to run an ELF image.
 */

.text
.even

.globl _dl_linux_resolve
	.type	_dl_linux_resolve,@function
_dl_linux_resolve:
	# Save %a0 (struct return address) and %a1.
	move.l %a0, -(%sp)
	move.l %a1, -(%sp)
	# Call the real address resolver.
	jbsr _dl_linux_resolver
	# Restore register %a0 and %a1.
	move.l (%sp)+, %a1
	move.l (%sp)+, %a0
	# Pop parameters
	addq.l #8, %sp
	# Call real function.
	jmp (%d0)
.size _dl_linux_resolve,.-_dl_linux_resolve