فهرست منبع

Richard Sandiford writes:
Until a few months ago, libc/sysdeps/linux/m68k/clone.S defined
__syscall_error itself. This local definition was removed in
revision 13305:

However, the clone code uses bcc.w to branch to __syscall_error.
This made sense when there was a local definition, because the
label was guaranteed to be in range. We can't guarantee that
the external definition will be in range though; it depends on
the order that the objects are linked.

This patch adjusts clone.S to use jbcc instead.

Mike Frysinger 19 سال پیش
والد
کامیت
ea6fbd3e76
1فایلهای تغییر یافته به همراه3 افزوده شده و 3 حذف شده
  1. 3 3
      libc/sysdeps/linux/m68k/clone.S

+ 3 - 3
libc/sysdeps/linux/m68k/clone.S

@@ -21,11 +21,11 @@ clone:
 	movel   4(%sp), %d1             /* no NULL function pointers */
 	movel	%d1, %a0
 	tstl    %d1
-	beq.w   __syscall_error
+	jbeq    __syscall_error
 	movel   8(%sp), %d1             /* no NULL stack pointers */
 	movel	%d1, %a1
 	tstl    %d1
-	beq.w   __syscall_error
+	jbeq    __syscall_error
 
 	/* Allocate space and copy the argument onto the new stack.  */
 	movel   16(%sp), -(%a1)
@@ -50,7 +50,7 @@ clone:
 #endif
 
 	tstl    %d0
-	bmi.w   __syscall_error
+	jbmi    __syscall_error
 	beq.w   thread_start
 
 	rts