Blame src/setjmp/nt32/longjmp.s

296178
.text
296178
.globl	___longjmp
296178
.globl	__longjmp
296178
.globl	_longjmp
296178
ed42e6
.def ___longjmp; .scl 2; .type 32; .endef
ed42e6
.def __longjmp; .scl 2; .type 32; .endef
ed42e6
.def _longjmp; .scl 2; .type 32; .endef
ed42e6
296178
___longjmp:
296178
__longjmp:
296178
_longjmp:
e3a960
	movl 4(%esp), %ecx	# jump buffer
e3a960
	movl 8(%esp), %eax	# val
e3a960
e3a960
	test %eax, %eax		# is val zero?
e3a960
	jne  1f			# no:  return val
e3a960
	xor  $1,   %eax		# yes: return one
e3a960
e3a960
1:
e3a960
	movl 20(%ecx), %esi	# restore regs
e3a960
	movl 16(%ecx), %edi
e3a960
	movl 12(%ecx), %ebp
e3a960
	movl 8(%ecx),  %ebx
e3a960
e3a960
	movl 4(%ecx),  %esp	# original stack pointer
e3a960
e3a960
	movl (%ecx),   %edx	# original return address
e3a960
	jmp  *%edx
fa55cc
fa55cc
	.section .got$longjmp
fa55cc
	.global __imp__longjmp
fa55cc
__imp__longjmp:
fa55cc
	.long	_longjmp
fa55cc
	.linkonce discard