File: ia64-fix-weaks.diff

package info (click to toggle)
dietlibc 0.34~cvs20160606-19
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 11,768 kB
  • sloc: ansic: 71,692; asm: 13,008; cpp: 1,860; makefile: 817; sh: 300; perl: 62
file content (44 lines) | stat: -rw-r--r-- 799 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Description: fix weak symbols on IA64
Author: mirabilos <tg@debian.org>

--- a/ia64/fork.S
+++ b/ia64/fork.S
@@ -3,11 +3,10 @@
 #define SIGCLD 17
 
 	.text
-	.globl fork
-	.proc  fork
-	.weak  __libc_fork
 	.type fork,@function
 	.type __libc_fork,@function
+	.weak fork
+	.globl __libc_fork
 fork:
 __libc_fork:
 	alloc r2=ar.pfs,0,0,2,0
--- a/ia64/syscalls.h
+++ b/ia64/syscalls.h
@@ -323,18 +323,20 @@
 
 #define syscall(name, sym) \
 .text; \
+.type sym,@function; \
 .globl sym; \
 sym: \
 	mov r15 = __NR_##name; \
 	br __unified_syscall;
 
-#define syscall_weak(name, sym, wsym) \
+#define syscall_weak(name, wsym, sym) \
 .text; \
+.type wsym,@function; \
 .weak wsym; \
 wsym: \
+.type sym,@function; \
 .globl sym; \
 sym: \
-wsym: ; \
 	mov r15 = __NR_##name; \
 	br __unified_syscall;