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

setjmp.s « necv70 « machine « libc « newlib - cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: d8aca1dfbb2b81fb3425b11dfd623ec3b734cdac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
	.globl	_setjmp
_setjmp:
	mov.w	[ap],r0
	mov.d	r15,[r0+]
	mov.d	r17,[r0+]
	mov.d	r19,[r0+]
	mov.d	r21,[r0+]
	mov.d	r23,[r0+]
	mov.w	-0x4[ap],[r0+]
	mov.w	fp,[r0+]
	mov.w	ap,[r0+]
	mov.w	-0x8[ap],[r0]
	xor.w	r0,r0
	ret	#0x0

	.globl	_longjmp
_longjmp:
	 mov.w	  0x4[ap],r0
	 mov.w	  [ap],r1
	 mov.d	  [r1+],r15
	 mov.d	  [r1+],r17
	 mov.d	  [r1+],r19
	 mov.d	  [r1+],r21
	 mov.d	  [r1+],r23
	 mov.d	  [r1+],ap
	 mov.w	  [r1+],sp
	 test.w	  r0
	 jne	  noz
	 mov.w	  #0x1,r0
noz:	 jmp	  [0x0[r1]]