Home | History | Annotate | Line # | Download | only in ia32
setjmp.S revision 1.1.1.1.2.2
      1  1.1.1.1.2.2  pgoyette /*	$NetBSD: setjmp.S,v 1.1.1.1.2.2 2018/09/06 06:56:39 pgoyette Exp $	*/
      2  1.1.1.1.2.2  pgoyette 
      3  1.1.1.1.2.2  pgoyette /*
      4  1.1.1.1.2.2  pgoyette  * Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.
      5  1.1.1.1.2.2  pgoyette  * This program and the accompanying materials are licensed and made
      6  1.1.1.1.2.2  pgoyette available
      7  1.1.1.1.2.2  pgoyette  * under the terms and conditions of the BSD License which accompanies
      8  1.1.1.1.2.2  pgoyette this
      9  1.1.1.1.2.2  pgoyette  * distribution.  The full text of the license may be found at
     10  1.1.1.1.2.2  pgoyette  * http://opensource.org/licenses/bsd-license.php.
     11  1.1.1.1.2.2  pgoyette  *
     12  1.1.1.1.2.2  pgoyette  * THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
     13  1.1.1.1.2.2  pgoyette BASIS,
     14  1.1.1.1.2.2  pgoyette  * WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR
     15  1.1.1.1.2.2  pgoyette  * IMPLIED.
     16  1.1.1.1.2.2  pgoyette  */
     17  1.1.1.1.2.2  pgoyette 	.text
     18  1.1.1.1.2.2  pgoyette 	.globl	setjmp
     19  1.1.1.1.2.2  pgoyette #ifndef __MINGW32__
     20  1.1.1.1.2.2  pgoyette 	.type setjmp, @function
     21  1.1.1.1.2.2  pgoyette #else
     22  1.1.1.1.2.2  pgoyette 	.def setjmp; .scl 2; .type 32; .endef
     23  1.1.1.1.2.2  pgoyette #endif
     24  1.1.1.1.2.2  pgoyette setjmp:
     25  1.1.1.1.2.2  pgoyette 	pop	%ecx
     26  1.1.1.1.2.2  pgoyette 	movl	(%esp), %edx
     27  1.1.1.1.2.2  pgoyette 	movl	%ebx, (%edx)
     28  1.1.1.1.2.2  pgoyette 	movl	%esi, 4(%edx)
     29  1.1.1.1.2.2  pgoyette 	movl	%edi, 8(%edx)
     30  1.1.1.1.2.2  pgoyette 	movl	%ebp, 12(%edx)
     31  1.1.1.1.2.2  pgoyette 	movl	%esp, 16(%edx)
     32  1.1.1.1.2.2  pgoyette 	xorl	%eax, %eax
     33  1.1.1.1.2.2  pgoyette 	jmp	*%ecx
     34  1.1.1.1.2.2  pgoyette 
     35  1.1.1.1.2.2  pgoyette 	.globl	longjmp
     36  1.1.1.1.2.2  pgoyette #ifndef __MINGW32__
     37  1.1.1.1.2.2  pgoyette 	.type	longjmp, @function
     38  1.1.1.1.2.2  pgoyette #else
     39  1.1.1.1.2.2  pgoyette 	.def longjmp; .scl 2; .type 32; .endef
     40  1.1.1.1.2.2  pgoyette #endif
     41  1.1.1.1.2.2  pgoyette longjmp:
     42  1.1.1.1.2.2  pgoyette 	pop	%eax
     43  1.1.1.1.2.2  pgoyette 	pop	%edx
     44  1.1.1.1.2.2  pgoyette 	pop	%eax
     45  1.1.1.1.2.2  pgoyette 	movl	(%edx), %ebx
     46  1.1.1.1.2.2  pgoyette 	movl	4(%edx), %esi
     47  1.1.1.1.2.2  pgoyette 	movl	8(%edx), %edi
     48