Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libc/sys/linux/machine/i386/setjmp.S')
-rw-r--r--newlib/libc/sys/linux/machine/i386/setjmp.S91
1 files changed, 0 insertions, 91 deletions
diff --git a/newlib/libc/sys/linux/machine/i386/setjmp.S b/newlib/libc/sys/linux/machine/i386/setjmp.S
deleted file mode 100644
index d276f55fb..000000000
--- a/newlib/libc/sys/linux/machine/i386/setjmp.S
+++ /dev/null
@@ -1,91 +0,0 @@
-/* This is file is a merger of SETJMP.S and LONGJMP.S */
-/*
- * This file was modified to use the __USER_LABEL_PREFIX__ and
- * __REGISTER_PREFIX__ macros defined by later versions of GNU cpp by
- * Joel Sherrill (joel@OARcorp.com)
- * Slight change: now includes i386mach.h for this (Werner Almesberger)
- *
- * Copyright (C) 1991 DJ Delorie
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms is permitted
- * provided that the above copyright notice and following paragraph are
- * duplicated in all such forms.
- *
- * This file is distributed WITHOUT ANY WARRANTY; without even the implied
- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- */
-
- /*
- ** jmp_buf:
- ** eax ebx ecx edx esi edi ebp esp eip
- ** 0 4 8 12 16 20 24 28 32
- */
-
- #include "i386mach.h"
-
- .global SYM (setjmp)
- .global SYM (__libc_longjmp)
- .weak SYM (longjmp)
- SOTYPE_FUNCTION(setjmp)
- SOTYPE_FUNCTION(longjmp)
- SOTYPE_FUNCTION(__libc_longjmp)
-
-SYM (setjmp):
-
- pushl ebp
- movl esp,ebp
-
- pushl edi
- movl 8 (ebp),edi
-
- movl eax,0 (edi)
- movl ebx,4 (edi)
- movl ecx,8 (edi)
- movl edx,12 (edi)
- movl esi,16 (edi)
-
- movl -4 (ebp),eax
- movl eax,20 (edi)
-
- movl 0 (ebp),eax
- movl eax,24 (edi)
-
- movl esp,eax
- addl $12,eax
- movl eax,28 (edi)
-
- movl 4 (ebp),eax
- movl eax,32 (edi)
-
- popl edi
- movl $0,eax
- leave
- ret
-
-SYM (__libc_longjmp):
-SYM (longjmp):
- .weak longjmp
- pushl ebp
- movl esp,ebp
-
- movl 8(ebp),edi /* get jmp_buf */
- movl 12(ebp),eax /* store retval in j->eax */
- movl eax,0(edi)
-
- movl 24(edi),ebp
-
- __CLI
- movl 28(edi),esp
-
- pushl 32(edi)
-
- movl 0(edi),eax
- movl 4(edi),ebx
- movl 8(edi),ecx
- movl 12(edi),edx
- movl 16(edi),esi
- movl 20(edi),edi
- __STI
-
- ret