commit - d67cd5c33c62679df29dce6b452d32882cd2eca5
commit + 42a57eff1ce95e0e33bd6d0ce1f06ced9f210151
blob - /dev/null
blob + f9a80255992c290f6ce270eb1278124b484646d0 (mode 644)
--- /dev/null
+++ src/libthread/FreeBSD-386-asm.s
+.globl _tas
+_tas:
+ movl $0xCAFEBABE, %eax
+ movl 4(%esp), %ecx
+ xchgl %eax, 0(%ecx)
+ ret
+
+.globl setmcontext
+setmcontext:
+ movl 4(%esp), %edx
+ movl 8(%edx), %fs
+ movl 12(%edx), %es
+ movl 16(%edx), %ds
+ movl 76(%edx), %ss
+ movl 20(%edx), %edi
+ movl 24(%edx), %esi
+ movl 28(%edx), %ebp
+ movl %esp, %ecx
+ movl 72(%edx), %esp
+ pushl 60(%edx) /* eip */
+ pushl 44(%edx) /* ecx */
+ pushl 48(%edx) /* eax */
+ movl 36(%edx), %ebx
+ movl 40(%edx), %edx
+ movl 12(%ecx), %eax
+ popl %eax
+ popl %ecx
+ ret
+
+.globl getmcontext
+getmcontext:
+ pushl %edx
+ movl 8(%esp), %edx
+ movl %fs, 8(%edx)
+ movl %es, 12(%edx)
+ movl %ds, 16(%edx)
+ movl %ss, 76(%edx)
+ movl %edi, 20(%edx)
+ movl %esi, 24(%edx)
+ movl %ebp, 28(%edx)
+ movl %ebx, 36(%edx)
+ movl $1, 48(%edx)
+ popl %eax
+ movl %eax, 40(%edx)
+ movl %ecx, 44(%edx)
+ movl (%esp), %eax /* eip */
+ movl %eax, 60(%edx)
+ movl %esp, %eax
+ addl $4, %eax /* setmcontext will re-push the eip */
+ movl %eax, 72(%edx)
+ movl 40(%edx), %edx
+ xorl %eax, %eax
+ ret
+
blob - f9a80255992c290f6ce270eb1278124b484646d0 (mode 644)
blob + /dev/null
--- src/libthread/FreeBSDasm.s
+++ /dev/null
-.globl _tas
-_tas:
- movl $0xCAFEBABE, %eax
- movl 4(%esp), %ecx
- xchgl %eax, 0(%ecx)
- ret
-
-.globl setmcontext
-setmcontext:
- movl 4(%esp), %edx
- movl 8(%edx), %fs
- movl 12(%edx), %es
- movl 16(%edx), %ds
- movl 76(%edx), %ss
- movl 20(%edx), %edi
- movl 24(%edx), %esi
- movl 28(%edx), %ebp
- movl %esp, %ecx
- movl 72(%edx), %esp
- pushl 60(%edx) /* eip */
- pushl 44(%edx) /* ecx */
- pushl 48(%edx) /* eax */
- movl 36(%edx), %ebx
- movl 40(%edx), %edx
- movl 12(%ecx), %eax
- popl %eax
- popl %ecx
- ret
-
-.globl getmcontext
-getmcontext:
- pushl %edx
- movl 8(%esp), %edx
- movl %fs, 8(%edx)
- movl %es, 12(%edx)
- movl %ds, 16(%edx)
- movl %ss, 76(%edx)
- movl %edi, 20(%edx)
- movl %esi, 24(%edx)
- movl %ebp, 28(%edx)
- movl %ebx, 36(%edx)
- movl $1, 48(%edx)
- popl %eax
- movl %eax, 40(%edx)
- movl %ecx, 44(%edx)
- movl (%esp), %eax /* eip */
- movl %eax, 60(%edx)
- movl %esp, %eax
- addl $4, %eax /* setmcontext will re-push the eip */
- movl %eax, 72(%edx)
- movl 40(%edx), %edx
- xorl %eax, %eax
- ret
-
blob - /dev/null
blob + 197f12b54d646eb2eaf297eaacfe923aec2b9a43 (mode 644)
--- /dev/null
+++ src/libthread/Linux-386-asm.s
+.globl _tas
+_tas:
+ movl $0xCAFEBABE, %eax
+ movl 4(%esp), %ecx
+ xchgl %eax, 0(%ecx)
+ ret
+
blob - 197f12b54d646eb2eaf297eaacfe923aec2b9a43 (mode 644)
blob + /dev/null
--- src/libthread/Linuxasm.s
+++ /dev/null
-.globl _tas
-_tas:
- movl $0xCAFEBABE, %eax
- movl 4(%esp), %ecx
- xchgl %eax, 0(%ecx)
- ret
-
blob - /dev/null
blob + 197f12b54d646eb2eaf297eaacfe923aec2b9a43 (mode 644)
--- /dev/null
+++ src/libthread/NetBSD-386-asm.s
+.globl _tas
+_tas:
+ movl $0xCAFEBABE, %eax
+ movl 4(%esp), %ecx
+ xchgl %eax, 0(%ecx)
+ ret
+
blob - 197f12b54d646eb2eaf297eaacfe923aec2b9a43 (mode 644)
blob + /dev/null
--- src/libthread/NetBSDasm.s
+++ /dev/null
-.globl _tas
-_tas:
- movl $0xCAFEBABE, %eax
- movl 4(%esp), %ecx
- xchgl %eax, 0(%ecx)
- ret
-
blob - 4832145b49530ceefb7ca759d528b7955f50141e
blob + 3c3ee9c0000bc5ad941cb5b83d05eb8c6f6851aa
--- src/libthread/sysofiles.sh
+++ src/libthread/sysofiles.sh
*-Linux-2.6.*)
echo pthread.o
;;
-*-FreeBSD-5.*)
+*-FreeBSD-[5-9].*)
echo pthread.o
;;
*-Linux-*)
# will have to fix this for linux power pc
- echo $SYSNAME.o ${SYSNAME}asm.o
+ echo ${SYSNAME}-${OBJTYPE}-asm.o $SYSNAME.o
;;
*-FreeBSD-*)
- echo $SYSNAME.o ${SYSNAME}asm.o
+ echo ${SYSNAME}-${OBJTYPE}-asm.o $SYSNAME.o
;;
*-NetBSD-*)
- echo $SYSNAME.o ${SYSNAME}asm.o
+ echo ${SYSNAME}-${OBJTYPE}-asm.o $SYSNAME.o
;;
*-Darwin-*)
echo ${SYSNAME}-${OBJTYPE}-asm.o ${SYSNAME}-${OBJTYPE}.o pthread.o