Drop main() prototype. Syncs with NetBSD-8
[minix.git] / sys / lib / libunwind / unwind_registers.S
blob6d328f1d370059e7bd0c84f60f4dff154316e294
1 //===------------------------- unwind_registers.S -------------------------===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is dual licensed under the MIT and the University of Illinois Open
6 // Source Licenses. See LICENSE.TXT for details.
7 //
8 //
9 // Abstracts accessing local vs remote address spaces.
11 //===----------------------------------------------------------------------===//
12 #include <machine/asm.h>
14 #ifdef __i386__
15         .hidden _ZN7_Unwind13Registers_x86C1Ev
16 ENTRY(_ZN7_Unwind13Registers_x86C1Ev)
17         pushl   %eax
18         movl    8(%esp), %eax   /* Load this */
19         /* Save all registers except EAX, EIP and ESP */
20         /* Skip ECX */
21         /* Skip EDX */
22         movl    %ebx, 12(%eax)
23         movl    %ebp, 20(%eax)
24         movl    %esi, 24(%eax)
25         movl    %edi, 28(%eax)
27         leal    8(%esp), %edx   /* Compute ESP from the call site */
28         movl    %edx, 16(%eax)  /* ...and store it as ESP */
29         movl    4(%esp), %edx   /* Load return address */
30         movl    %edx, 32(%eax)  /* ...and store it as EIP */
31         popl    %edx            /* Take old EAX from stack */
32         movl    %edx, 0(%eax)   /* ...and store it */   // XXX skip
33         ret
35         .hidden _ZNK7_Unwind13Registers_x866jumptoEv
36 ENTRY(_ZNK7_Unwind13Registers_x866jumptoEv)
37         movl    4(%esp), %eax   /* Load this */
38         movl    16(%eax), %edx  /* Load new stack pointer */
39         subl    $4, %edx        /* Reserve space on new stack for EIP */
40         movl    32(%eax), %ebx  /* Load new EIP */
41         movl    %ebx, 0(%edx)   /* ...and save it on the new stack */
42         pushl   %edx            /* Save new stack pointer on old stack */
43         /* New stack is prepared, now restore all registers except ESP */
44         /* EAX is the index register and must be restored last */
45         movl    4(%eax), %ecx
46         movl    8(%eax), %edx
47         movl    12(%eax), %ebx
48         movl    20(%eax), %ebp
49         /* 16 is ESP */
50         movl    24(%eax), %esi
51         movl    28(%eax), %edi
52         movl    0(%eax), %eax
53         /* Now load new stack pointer pushed on the old stack earlier */
54         popl    %esp
55         /* Return address is already on the new stack. */
56         ret
57 #endif
59 #ifdef __x86_64
60         .hidden _ZN7_Unwind16Registers_x86_64C1Ev
61 ENTRY(_ZN7_Unwind16Registers_x86_64C1Ev)
62         /* RDI == this */
63         /* Skip RAX */
64         /* Skip RDX */
65         /* Skip RCX */
66         movq    %rbx, 24(%rdi)
67         /* Skip RSI */
68         /* Skip RDI */
69         movq    %rbp, 48(%rdi)
70         leaq    8(%rsp), %rax
71         movq    %rax, 56(%rdi)
72         /* Skip R8 */
73         /* Skip R9 */
74         /* Skip R10 */
75         /* Skip R11 */
76         movq    %r12, 96(%rdi)
77         movq    %r13, 104(%rdi)
78         movq    %r14, 112(%rdi)
79         movq    %r15, 120(%rdi)
80         movq    (%rsp), %rax
81         movq    %rax, 128(%rdi)
82         ret
84         .hidden _ZNK7_Unwind16Registers_x86_646jumptoEv
85 ENTRY(_ZNK7_Unwind16Registers_x86_646jumptoEv)
86         /* RDI == this */
87         movq    56(%rdi), %rax
88         subq    $8, %rax        /* Reserve space on new stack for RIP */
89         movq    128(%rdi), %rbx /* Load new RIP */
90         movq    %rbx, 0(%rax)   /* ...and save it on the new stack */
91         pushq   %rax            /* Save new stack pointer on old stack */
92         /* New stack is prepared, now restore all registers */
93         movq    0(%rdi), %rax
94         movq    8(%rdi), %rdx
95         movq    16(%rdi), %rcx
96         movq    24(%rdi), %rbx
97         movq    32(%rdi), %rsi
98         /* RDI restored later as it is still used as index register */
99         movq    48(%rdi), %rbp
100         /* RSP is restored later */
101         movq    64(%rdi), %r8
102         movq    72(%rdi), %r9
103         movq    80(%rdi), %r10
104         movq    88(%rdi), %r11
105         movq    96(%rdi), %r12
106         movq    104(%rdi), %r13
107         movq    112(%rdi), %r14
108         movq    120(%rdi), %r15
109         movq    40(%rdi), %rdi
110         /* Now load new stack pointer pushed on the old stack earlier */
111         popq    %rsp
112         /* Return address is already on the new stack. */
113         ret
114 #endif
116 #ifdef __powerpc__
117         .hidden _ZN7_Unwind15Registers_ppc32C1Ev
118 ENTRY(_ZN7_Unwind15Registers_ppc32C1Ev)
119         /* TODO: skip non-callee-safe registers */
120         stw              %r0,  0(%r3)
121         stw              %r1,  4(%r3)
122         stw              %r2,  8(%r3)
123         stw              %r3, 12(%r3)
124         stw              %r4, 16(%r3)
125         stw              %r5, 20(%r3)
126         stw              %r6, 24(%r3)
127         stw              %r7, 28(%r3)
128         stw              %r8, 32(%r3)
129         stw              %r9, 36(%r3)
130         stw             %r10, 40(%r3)
131         stw             %r11, 44(%r3)
132         stw             %r12, 48(%r3)
133         stw             %r13, 52(%r3)
134         stw             %r14, 56(%r3)
135         stw             %r15, 60(%r3)
136         stw             %r16, 64(%r3)
137         stw             %r17, 68(%r3)
138         stw             %r18, 72(%r3)
139         stw             %r19, 76(%r3)
140         stw             %r20, 80(%r3)
141         stw             %r21, 84(%r3)
142         stw             %r22, 88(%r3)
143         stw             %r23, 92(%r3)
144         stw             %r24, 96(%r3)
145         stw             %r25,100(%r3)
146         stw             %r26,104(%r3)
147         stw             %r27,108(%r3)
148         stw             %r28,112(%r3)
149         stw             %r29,116(%r3)
150         stw             %r30,120(%r3)
151         stw             %r31,124(%r3)
152         mflr            %r0
153         stw             %r0, 136(%r3) /* SRR0 */
154         mfcr            %r0
155         stw             %r0, 132(%r3) /* CR */
157         stfd             %f0, 144(%r3)
158         stfd             %f1, 152(%r3)
159         stfd             %f2, 160(%r3)
160         stfd             %f3, 168(%r3)
161         stfd             %f4, 176(%r3)
162         stfd             %f5, 184(%r3)
163         stfd             %f6, 192(%r3)
164         stfd             %f7, 200(%r3)
165         stfd             %f8, 208(%r3)
166         stfd             %f9, 216(%r3)
167         stfd            %f10, 224(%r3)
168         stfd            %f11, 232(%r3)
169         stfd            %f12, 240(%r3)
170         stfd            %f13, 248(%r3)
171         stfd            %f14, 256(%r3)
172         stfd            %f15, 264(%r3)
173         stfd            %f16, 272(%r3)
174         stfd            %f17, 280(%r3)
175         stfd            %f18, 288(%r3)
176         stfd            %f19, 296(%r3)
177         stfd            %f20, 304(%r3)
178         stfd            %f21, 312(%r3)
179         stfd            %f22, 320(%r3)
180         stfd            %f23, 328(%r3)
181         stfd            %f24, 336(%r3)
182         stfd            %f25, 344(%r3)
183         stfd            %f26, 352(%r3)
184         stfd            %f27, 360(%r3)
185         stfd            %f28, 368(%r3)
186         stfd            %f29, 376(%r3)
187         stfd            %f30, 384(%r3)
188         stfd            %f31, 392(%r3)
190         /* LR is undefined */
191         blr
193         .hidden _ZNK7_Unwind15Registers_ppc326jumptoEv
194 ENTRY(_ZNK7_Unwind15Registers_ppc326jumptoEv)
195         lfd              %f0, 144(%r3)
196         lfd              %f1, 152(%r3)
197         lfd              %f2, 160(%r3)
198         lfd              %f3, 168(%r3)
199         lfd              %f4, 176(%r3)
200         lfd              %f5, 184(%r3)
201         lfd              %f6, 192(%r3)
202         lfd              %f7, 200(%r3)
203         lfd              %f8, 208(%r3)
204         lfd              %f9, 216(%r3)
205         lfd             %f10, 224(%r3)
206         lfd             %f11, 232(%r3)
207         lfd             %f12, 240(%r3)
208         lfd             %f13, 248(%r3)
209         lfd             %f14, 256(%r3)
210         lfd             %f15, 264(%r3)
211         lfd             %f16, 272(%r3)
212         lfd             %f17, 280(%r3)
213         lfd             %f18, 288(%r3)
214         lfd             %f19, 296(%r3)
215         lfd             %f20, 304(%r3)
216         lfd             %f21, 312(%r3)
217         lfd             %f22, 320(%r3)
218         lfd             %f23, 328(%r3)
219         lfd             %f24, 336(%r3)
220         lfd             %f25, 344(%r3)
221         lfd             %f26, 352(%r3)
222         lfd             %f27, 360(%r3)
223         lfd             %f28, 368(%r3)
224         lfd             %f29, 376(%r3)
225         lfd             %f30, 384(%r3)
226         lfd             %f31, 392(%r3)
228         lwz              %r2, 8(%r3)
229         /* skip r3 for now */
230         lwz              %r4, 16(%r3)
231         lwz              %r5, 20(%r3)
232         lwz              %r6, 24(%r3)
233         lwz              %r7, 28(%r3)
234         lwz              %r8, 32(%r3)
235         lwz              %r9, 36(%r3)
236         lwz             %r10, 40(%r3)
237         lwz             %r11, 44(%r3)
238         lwz             %r12, 48(%r3)
239         lwz             %r13, 52(%r3)
240         lwz             %r14, 56(%r3)
241         lwz             %r15, 60(%r3)
242         lwz             %r16, 64(%r3)
243         lwz             %r17, 68(%r3)
244         lwz             %r18, 72(%r3)
245         lwz             %r19, 76(%r3)
246         lwz             %r20, 80(%r3)
247         lwz             %r21, 84(%r3)
248         lwz             %r22, 88(%r3)
249         lwz             %r23, 92(%r3)
250         lwz             %r24, 96(%r3)
251         lwz             %r25,100(%r3)
252         lwz             %r26,104(%r3)
253         lwz             %r27,108(%r3)
254         lwz             %r28,112(%r3)
255         lwz             %r29,116(%r3)
256         lwz             %r30,120(%r3)
257         lwz             %r31,124(%r3)
259         lwz             %r0, 128(%r3) /* LR */
260         mtlr            %r0
261         lwz             %r0, 132(%r3) /* CR */
262         mtcr            %r0
263         lwz             %r0, 136(%r3) /* SRR0 */
264         mtctr           %r0
266         lwz             %r0,  0(%r3)   /* do r0 now */
267         lwz             %r1,  4(%r3)   /* do sp now */
268         lwz             %r3, 12(%r3)   /* do r3 last */
269         bctr
270 #endif
272 #ifdef __aarch64__
273         .hidden _ZN7_Unwind17Registers_aarch64C1Ev
274 ENTRY(_ZN7_Unwind17Registers_aarch64C1Ev)
275         stp     x0, x1, [x0]
276         add     x0, x0, #16
277         stp     x2, x3, [x0], #16
278         stp     x4, x5, [x0], #16
279         stp     x6, x7, [x0], #16
280         stp     x8, x9, [x0], #16
281         stp     x10, x11, [x0], #16
282         stp     x12, x13, [x0], #16
283         stp     x14, x15, [x0], #16
284         stp     x16, x17, [x0], #16
285         stp     x18, x19, [x0], #16
286         stp     x20, x22, [x0], #16
287         stp     x22, x24, [x0], #16
288         stp     x24, x26, [x0], #16
289         stp     x26, x27, [x0], #16
290         stp     x28, x29, [x0], #16
291         mov     x1, sp
292         stp     x30, x1,  [x0], #16
294         add     x0, x0, #8
295         str     xzr, [x0], #8
297         stp     q0, q1, [x0], #64
298         stp     q2, q3, [x0], #64
299         stp     q4, q5, [x0], #64
300         stp     q6, q7, [x0], #64
301         stp     q8, q9, [x0], #64
302         stp     q10, q11, [x0], #64
303         stp     q12, q13, [x0], #64
304         stp     q14, q15, [x0], #64
305         stp     q16, q17, [x0], #64
306         stp     q18, q19, [x0], #64
307         stp     q20, q21, [x0], #64
308         stp     q22, q23, [x0], #64
309         stp     q24, q25, [x0], #64
310         stp     q26, q27, [x0], #64
311         stp     q28, q29, [x0], #64
312         stp     q30, q31, [x0], #64
314         ret
315 END(_ZN7_Unwind17Registers_aarch64C1Ev)
317         .hidden _ZNK7_Unwind17Registers_aarch646jumptoEv
318 ENTRY(_ZNK7_Unwind17Registers_aarch646jumptoEv)
319         ldp     x2, x3, [x0, #16]
320         ldp     x4, x6, [x0, #32]
321         ldp     x6, x7, [x0, #48]
322         ldp     x8, x9, [x0, #64]
323         ldp     x10, x11, [x0, #80]
324         ldp     x12, x13, [x0, #96]
325         ldp     x14, x16, [x0, #112]
326         ldp     x16, x17, [x0, #128]
327         ldp     x18, x19, [x0, #144]
328         ldp     x20, x21, [x0, #160]
329         ldp     x22, x23, [x0, #176]
330         ldp     x24, x26, [x0, #192]
331         ldp     x26, x27, [x0, #208]
332         ldp     x28, x29, [x0, #224]
333         ldp     x30, x1, [x0, #240]
334         mov     sp, x1
336         ldp     x0, x1, [x0, #0]
337         ret
338 END(_ZNK7_Unwind17Registers_aarch646jumptoEv)
339 #endif /* __aarch64__ */
341 #if defined(__arm__)
342         .fpu vfpv3
343         .hidden _ZN7_Unwind15Registers_arm32C1Ev
344 ARM_ENTRY(_ZN7_Unwind15Registers_arm32C1Ev)
345         stmia   r0, {r0-r14}
346         str     lr, [r0, #60]   /* PC */
347         mrs     r1, cpsr
348         str     r1, [r0, #64]   /* CPSR */
349         mov     r1, #0
350         str     r1, [r0, #68]
351         RET
352 END(_ZN7_Unwind15Registers_arm32C1Ev)
354         .hidden _ZN7_Unwind15Registers_arm328lazyVFP1Ev
355 ARM_ENTRY(_ZN7_Unwind15Registers_arm328lazyVFP1Ev)
356         add     r0, #72
357         vstmia  r0, {d0-d15}
358         RET
359 END(_ZN7_Unwind15Registers_arm328lazyVFP1Ev)
361         .hidden _ZN7_Unwind15Registers_arm328lazyVFP3Ev
362 ARM_ENTRY(_ZN7_Unwind15Registers_arm328lazyVFP3Ev)
363         add     r0, #200
364         vstmia  r0, {d16-d31}
365         RET
366 END(_ZN7_Unwind15Registers_arm328lazyVFP3Ev)
368         .hidden _ZNK7_Unwind15Registers_arm326jumptoEv
369 ARM_ENTRY(_ZNK7_Unwind15Registers_arm326jumptoEv)
370         ldrb    r1, [r0, #68]
371         tst     r1, #1
372         beq     .Lnovfp1
373         add     r2, r0, #72
374         vldmia  r2, {d0-d15}
375 .Lnovfp1:
376         tst     r1, #2
377         beq     .Lnovfp3
378         add     r2, r0, #200
379         vldmia  r2, {d16-d31}
380 .Lnovfp3:
381         ldr     r1, [r0, #64]
382         msr     cpsr_sxc, r1
383         ldmia   r0, {r0-r15}
384 END(_ZNK7_Unwind15Registers_arm326jumptoEv)
385 #endif
387 #if defined(__vax__)
388         .hidden _ZN7_Unwind13Registers_vaxC1Ev
389 ENTRY(_ZN7_Unwind13Registers_vaxC1Ev, R0)
390         subl2   $4, %sp
391         movl    4(%ap), %r0
392         movl     %r1,  4(%r0)
393         movl     %r2,  8(%r0)
394         movl     %r3, 12(%r0)
395         movl     %r4, 16(%r0)
396         movl     %r5, 20(%r0)
397         movl     %r6, 24(%r0)
398         movl     %r7, 28(%r0)
399         movl     %r8, 32(%r0)
400         movl     %r9, 36(%r0)
401         movl    %r10, 40(%r0)
402         movl    %r11, 44(%r0)
403         movl    8(%fp), 48(%r0)
404         movl    12(%fp), 52(%r0)
405         addl3   $36, %sp, 56(%r0)
406         /* Return PC */
407         movl    16(%fp), 60(%r0)
408         /* Load saved value of r0 as r1 */
409         movl    20(%fp), 0(%r0)
410         /* Saved PSW */
411         movl    4(%fp), 64(%r0)
412         ret
413 END(_ZN7_Unwind13Registers_vaxC1Ev)
415         .hidden _ZNK7_Unwind13Registers_vax6jumptoEv
416 ENTRY(_ZNK7_Unwind13Registers_vax6jumptoEv, 0)
417         subl2   $4, %sp
418         movl     4(%ap),  %r0
419         movl     4(%r0),  %r1
420         movl     8(%r0),  %r2
421         movl    12(%r0),  %r3
422         movl    16(%r0),  %r4
423         movl    20(%r0),  %r5
424         movl    24(%r0),  %r6
425         movl    28(%r0),  %r7
426         movl    32(%r0),  %r8
427         movl    36(%r0),  %r9
428         movl    40(%r0), %r10
429         movl    44(%r0), %r11
430         movl    48(%r0), %r12
431         movl    52(%r0), %r13
432         movl    56(%r0), %r14
433         movl    60(%r0), -(%sp)
434         movl    0(%r0), %r0
435         /* XXX restore PSW */
436         rsb
437 END(_ZNK7_Unwind13Registers_vax6jumptoEv)
438 #endif
440 #if defined(__m68k__)
441 ENTRY(_ZN7_Unwind14Registers_M68KC1Ev)
442         move.l  4(%sp), %a0
443         movem.l %d0-%d7/%a0-%a7, (%a0)
444         fmovem  %fp0-%fp7, 72(%a0)
445         move.l  0(%sp), %a1
446         move.l  %a1, 64(%a0)
447         addq.l  #4, 60(%a0)
448         rts
449 END(_ZN7_Unwind14Registers_M68KC1Ev)
451 ENTRY(_ZNK7_Unwind14Registers_M68K6jumptoEv)
452         move.l  4(%sp), %a0
453         subq.l  #4, 60(%a0)
454         move.l  64(%a0), %a1
455         move.l  60(%a0), %a2
456         move.l  %a1, (%a2)
457         fmovem  72(%a0), %fp0-%fp7
458         movem.l (%a0), %d0-%d7/%a0-%a7
459         rts
460 END(_ZNK7_Unwind14Registers_M68K6jumptoEv)
461 #endif
463 #if defined(__sh3__)
464         .hidden _ZN7_Unwind13Registers_SH3C1Ev
465 ENTRY(_ZN7_Unwind13Registers_SH3C1Ev)
466         add     #64, r4
467         mov.l   r8, @-r15
468         sts.l   pr, @-r15
469         mov.l   @r15+, r8
470         mov.l   r8, @r4
471         mov.l   @r15+, r8
473         mov.l   r15, @-r4
474         mov.l   r14, @-r4
475         mov.l   r13, @-r4
476         mov.l   r12, @-r4
477         mov.l   r11, @-r4
478         mov.l   r10, @-r4
479         mov.l   r9, @-r4
480         mov.l   r8, @-r4
481         mov.l   r7, @-r4
482         mov.l   r6, @-r4
483         mov.l   r5, @-r4
484         add     #-4, r4
485         mov.l   r3, @-r4
486         mov.l   r2, @-r4
487         mov.l   r1, @-r4
488         mov.l   r0, @-r4
489         rts
490           mov.l r4, @(16,r4)
491 SET_ENTRY_SIZE(_ZN7_Unwind13Registers_SH3C1Ev)
493         .hidden _ZNK7_Unwind13Registers_SH36jumptoEv
494 ENTRY(_ZNK7_Unwind13Registers_SH36jumptoEv)
495         mov     r4, r0
496         add     #4, r0
497         mov.l   @r0+, r1
498         mov.l   @r0+, r2
499         mov.l   @r0+, r3
500         mov.l   @r0+, r4
501         mov.l   @r0+, r5
502         mov.l   @r0+, r6
503         mov.l   @r0+, r7
504         mov.l   @r0+, r8
505         mov.l   @r0+, r9
506         mov.l   @r0+, r10
507         mov.l   @r0+, r11
508         mov.l   @r0+, r12
509         mov.l   @r0+, r13
510         mov.l   @(12, r0), r14
511         lds     r14, pr
512         mov.l   @r0+, r14
513         mov.l   @r0+, r15
514         mov.l   @r0, r0
515         jmp     @r0
516           nop
517 SET_ENTRY_SIZE(_ZNK7_Unwind13Registers_SH36jumptoEv)
518 #endif
520 #if defined(__sparc64__)
521 #include <machine/trap.h>
522         .register %g2, #ignore
523         .register %g3, #ignore
524         .register %g6, #ignore
525         .register %g7, #ignore
526         .hidden _ZN7_Unwind17Registers_SPARC64C1Ev
527 ENTRY(_ZN7_Unwind17Registers_SPARC64C1Ev)
528         t       ST_FLUSHWIN
529         stx     %g0, [%o0 + 0]
530         stx     %g1, [%o0 + 8]
531         stx     %g2, [%o0 + 16]
532         stx     %g3, [%o0 + 24]
533         stx     %g4, [%o0 + 32]
534         stx     %g5, [%o0 + 40]
535         stx     %g6, [%o0 + 48]
536         stx     %g7, [%o0 + 56]
537         stx     %o0, [%o0 + 64]
538         stx     %o1, [%o0 + 72]
539         stx     %o2, [%o0 + 80]
540         stx     %o3, [%o0 + 88]
541         stx     %o4, [%o0 + 96]
542         stx     %o5, [%o0 + 104]
543         stx     %o6, [%o0 + 112]
544         stx     %o7, [%o0 + 120]
545         stx     %l0, [%o0 + 128]
546         stx     %l1, [%o0 + 136]
547         stx     %l2, [%o0 + 144]
548         stx     %l3, [%o0 + 152]
549         stx     %l4, [%o0 + 160]
550         stx     %l5, [%o0 + 168]
551         stx     %l6, [%o0 + 176]
552         stx     %l7, [%o0 + 184]
553         stx     %i0, [%o0 + 192]
554         stx     %i1, [%o0 + 200]
555         stx     %i2, [%o0 + 208]
556         stx     %i3, [%o0 + 216]
557         stx     %i4, [%o0 + 224]
558         stx     %i5, [%o0 + 232]
559         stx     %i6, [%o0 + 240]
560         stx     %i7, [%o0 + 248]
561         add     %o7, 8, %g1
562         retl
563          stx    %g1, [%o0 + 256]
564 END(_ZN7_Unwind17Registers_SPARC64C1Ev)
566         .hidden _ZNK7_Unwind17Registers_SPARC646jumptoEv
567 ENTRY(_ZNK7_Unwind17Registers_SPARC646jumptoEv)
568         t       ST_FLUSHWIN
569         ldx     [%o0 + 0], %g0
570         ldx     [%o0 + 8], %g1
571         ldx     [%o0 + 16], %g2
572         ldx     [%o0 + 24], %g3
573         ldx     [%o0 + 32], %g4
574         ldx     [%o0 + 40], %g5
575         ldx     [%o0 + 48], %g6
576         ldx     [%o0 + 56], %g7
577         ldx     [%o0 + 72], %o1
578         ldx     [%o0 + 80], %o2
579         ldx     [%o0 + 88], %o3
580         ldx     [%o0 + 96], %o4
581         ldx     [%o0 + 104], %o5
582         ldx     [%o0 + 112], %g1
583         sub     %g1, 2047, %o6
584         ldx     [%o0 + 120], %o7
585         ldx     [%o0 + 128], %l0
586         ldx     [%o0 + 136], %l1
587         ldx     [%o0 + 144], %l2
588         ldx     [%o0 + 152], %l3
589         ldx     [%o0 + 160], %l4
590         ldx     [%o0 + 168], %l5
591         ldx     [%o0 + 176], %l6
592         ldx     [%o0 + 184], %l7
593         ldx     [%o0 + 192], %i0
594         ldx     [%o0 + 200], %i1
595         ldx     [%o0 + 208], %i2
596         ldx     [%o0 + 216], %i3
597         ldx     [%o0 + 224], %i4
598         ldx     [%o0 + 232], %i5
599         ldx     [%o0 + 240], %i6
600         ldx     [%o0 + 248], %i7
601         ldx     [%o0 + 256], %g1
602         jmpl    %g1, %g0
603           ldx   [%o0 + 64], %o0
604 END(_ZNK7_Unwind17Registers_SPARC646jumptoEv)
605 #elif defined(__sparc__)
606 #include <machine/trap.h>
608         .hidden _ZN7_Unwind15Registers_SPARCC1Ev
609 ENTRY(_ZN7_Unwind15Registers_SPARCC1Ev)
610         t       ST_FLUSHWIN
611         st      %g0, [%o0 + 0]
612         st      %g1, [%o0 + 4]
613         st      %g2, [%o0 + 8]
614         st      %g3, [%o0 + 12]
615         st      %g4, [%o0 + 16]
616         st      %g5, [%o0 + 20]
617         st      %g6, [%o0 + 24]
618         st      %g7, [%o0 + 28]
619         st      %o0, [%o0 + 32]
620         st      %o1, [%o0 + 36]
621         st      %o2, [%o0 + 40]
622         st      %o3, [%o0 + 44]
623         st      %o4, [%o0 + 48]
624         st      %o5, [%o0 + 52]
625         st      %o6, [%o0 + 56]
626         st      %o7, [%o0 + 60]
627         st      %l0, [%o0 + 64]
628         st      %l1, [%o0 + 68]
629         st      %l2, [%o0 + 72]
630         st      %l3, [%o0 + 76]
631         st      %l4, [%o0 + 80]
632         st      %l5, [%o0 + 84]
633         st      %l6, [%o0 + 88]
634         st      %l7, [%o0 + 92]
635         st      %i0, [%o0 + 96]
636         st      %i1, [%o0 + 100]
637         st      %i2, [%o0 + 104]
638         st      %i3, [%o0 + 108]
639         st      %i4, [%o0 + 112]
640         st      %i5, [%o0 + 116]
641         st      %i6, [%o0 + 120]
642         st      %i7, [%o0 + 124 ]
643         add     %o7, 8, %g1
644         retl
645          st     %g1, [%o0 + 128]
646 END(_ZN7_Unwind15Registers_SPARCC1Ev)
648         .hidden _ZNK7_Unwind15Registers_SPARC6jumptoEv
649 ENTRY(_ZNK7_Unwind15Registers_SPARC6jumptoEv)
650         t       ST_FLUSHWIN
651         ld      [%o0 + 0], %g0
652         ld      [%o0 + 4], %g1
653         ld      [%o0 + 8], %g2
654         ld      [%o0 + 12], %g3
655         ld      [%o0 + 16], %g4
656         ld      [%o0 + 20], %g5
657         ld      [%o0 + 24], %g6
658         ld      [%o0 + 28], %g7
659         ld      [%o0 + 36], %o1
660         ld      [%o0 + 40], %o2
661         ld      [%o0 + 44], %o3
662         ld      [%o0 + 48], %o4
663         ld      [%o0 + 52], %o5
664         ld      [%o0 + 56], %o6
665         ld      [%o0 + 60], %o7
666         ld      [%o0 + 64], %l0
667         ld      [%o0 + 68], %l1
668         ld      [%o0 + 72], %l2
669         ld      [%o0 + 76], %l3
670         ld      [%o0 + 80], %l4
671         ld      [%o0 + 84], %l5
672         ld      [%o0 + 88], %l6
673         ld      [%o0 + 92], %l7
674         ld      [%o0 + 96], %i0
675         ld      [%o0 + 100], %i1
676         ld      [%o0 + 104], %i2
677         ld      [%o0 + 108], %i3
678         ld      [%o0 + 112], %i4
679         ld      [%o0 + 116], %i5
680         ld      [%o0 + 120], %i6
681         ld      [%o0 + 124], %i7
682         ld      [%o0 + 128], %g1
683         jmpl    %g1, %g0
684           ld    [%o0 + 32], %o0
685 END(_ZNK7_Unwind15Registers_SPARC6jumptoEv)
686 #endif
688 #if defined(__alpha__)
689         .set nomacro
690         .set noat
691         .hidden _ZN7_Unwind15Registers_AlphaC1Ev
692 LEAF_NOPROFILE(_ZN7_Unwind15Registers_AlphaC1Ev, 1)
693         stq $0, 0($16)
694         stq $1, 8($16)
695         stq $2, 16($16)
696         stq $3, 24($16)
697         stq $4, 32($16)
698         stq $5, 40($16)
699         stq $6, 48($16)
700         stq $7, 56($16)
701         stq $8, 64($16)
702         stq $9, 72($16)
703         stq $10, 80($16)
704         stq $11, 88($16)
705         stq $12, 96($16)
706         stq $13, 104($16)
707         stq $14, 112($16)
708         stq $15, 120($16)
709         stq $16, 128($16)
710         stq $17, 136($16)
711         stq $18, 144($16)
712         stq $19, 152($16)
713         stq $20, 160($16)
714         stq $21, 168($16)
715         stq $22, 176($16)
716         stq $23, 184($16)
717         stq $24, 192($16)
718         stq $25, 200($16)
719         stq $26, 208($16)
720         stq $27, 216($16)
721         stq $28, 224($16)
722         stq $29, 232($16)
723         stq $30, 240($16)
724         stq $26, 248($16)
726         stt $f0, 256($16)
727         stt $f1, 264($16)
728         stt $f2, 272($16)
729         stt $f3, 280($16)
730         stt $f4, 288($16)
731         stt $f5, 296($16)
732         stt $f6, 304($16)
733         stt $f7, 312($16)
734         stt $f8, 320($16)
735         stt $f9, 328($16)
736         stt $f10, 336($16)
737         stt $f11, 344($16)
738         stt $f12, 352($16)
739         stt $f13, 360($16)
740         stt $f14, 368($16)
741         stt $f15, 376($16)
742         stt $f16, 384($16)
743         stt $f17, 392($16)
744         stt $f18, 400($16)
745         stt $f19, 408($16)
746         stt $f20, 416($16)
747         stt $f21, 424($16)
748         stt $f22, 432($16)
749         stt $f23, 440($16)
750         stt $f24, 448($16)
751         stt $f25, 456($16)
752         stt $f26, 464($16)
753         stt $f27, 472($16)
754         stt $f28, 480($16)
755         stt $f29, 488($16)
756         stt $f30, 496($16)
757         ret $31, ($26), 1
758 END(_ZN7_Unwind15Registers_AlphaC1Ev)
760         .set nomacro
761         .set noat
762         .hidden _ZNK7_Unwind15Registers_Alpha6jumptoEv
763 LEAF_NOPROFILE(_ZNK7_Unwind15Registers_Alpha6jumptoEv, 1)
764         ldq $0, 0($16)
765         ldq $1, 8($16)
766         ldq $2, 16($16)
767         ldq $3, 24($16)
768         ldq $4, 32($16)
769         ldq $5, 40($16)
770         ldq $6, 48($16)
771         ldq $7, 56($16)
772         ldq $8, 64($16)
773         ldq $9, 72($16)
774         ldq $10, 80($16)
775         ldq $11, 88($16)
776         ldq $12, 96($16)
777         ldq $13, 104($16)
778         ldq $14, 112($16)
779         ldq $15, 120($16)
780         ldq $17, 136($16)
781         ldq $18, 144($16)
782         ldq $19, 152($16)
783         ldq $20, 160($16)
784         ldq $21, 168($16)
785         ldq $22, 176($16)
786         ldq $23, 184($16)
787         ldq $24, 192($16)
788         ldq $25, 200($16)
789         ldq $27, 216($16)
790         ldq $28, 224($16)
791         ldq $29, 232($16)
792         ldq $30, 240($16)
793         ldq $26, 248($16)
795         ldt $f0, 256($16)
796         ldt $f1, 264($16)
797         ldt $f2, 272($16)
798         ldt $f3, 280($16)
799         ldt $f4, 288($16)
800         ldt $f5, 296($16)
801         ldt $f6, 304($16)
802         ldt $f7, 312($16)
803         ldt $f8, 320($16)
804         ldt $f9, 328($16)
805         ldt $f10, 336($16)
806         ldt $f11, 344($16)
807         ldt $f12, 352($16)
808         ldt $f13, 360($16)
809         ldt $f14, 368($16)
810         ldt $f15, 376($16)
811         ldt $f16, 384($16)
812         ldt $f17, 392($16)
813         ldt $f18, 400($16)
814         ldt $f19, 408($16)
815         ldt $f20, 416($16)
816         ldt $f21, 424($16)
817         ldt $f22, 432($16)
818         ldt $f23, 440($16)
819         ldt $f24, 448($16)
820         ldt $f25, 456($16)
821         ldt $f26, 464($16)
822         ldt $f27, 472($16)
823         ldt $f28, 480($16)
824         ldt $f29, 488($16)
825         ldt $f30, 496($16)
826         ldq $16, 128($16)
827         ret $31, ($26), 1
828 END(_ZNK7_Unwind15Registers_Alpha6jumptoEv)
829 #endif
831 #if defined(__mips_n64) || defined(__mips_n32)
832         .set noat
833 LEAF(_ZN7_Unwind16Registers_MIPS64C1Ev)
834 #if 0
835         FP_S    $f0, 256($4)
836         FP_S    $f1, 264($4)
837         FP_S    $f2, 272($4)
838         FP_S    $f3, 280($4)
839         FP_S    $f4, 288($4)
840         FP_S    $f5, 296($4)
841         FP_S    $f6, 304($4)
842         FP_S    $f7, 312($4)
843         FP_S    $f8, 320($4)
844         FP_S    $f9, 328($4)
845         FP_S    $f10, 336($4)
846         FP_S    $f11, 344($4)
847         FP_S    $f12, 352($4)
848         FP_S    $f13, 360($4)
849         FP_S    $f14, 368($4)
850         FP_S    $f15, 376($4)
851         FP_S    $f16, 384($4)
852         FP_S    $f17, 392($4)
853         FP_S    $f18, 400($4)
854         FP_S    $f19, 408($4)
855         FP_S    $f20, 416($4)
856         FP_S    $f21, 424($4)
857         FP_S    $f22, 432($4)
858         FP_S    $f23, 440($4)
859         FP_S    $f24, 448($4)
860         FP_S    $f25, 456($4)
861         FP_S    $f26, 464($4)
862         FP_S    $f27, 472($4)
863         FP_S    $f28, 480($4)
864         FP_S    $f29, 488($4)
865         FP_S    $f30, 496($4)
866         FP_S    $f31, 504($4)
867 #endif
868         sd      $31, 0($4)
869         sd      $1, 4($4)
870         sd      $2, 8($4)
871         sd      $3, 12($4)
872         sd      $4, 16($4)
873         sd      $5, 20($4)
874         sd      $6, 24($4)
875         sd      $7, 28($4)
876         sd      $8, 32($4)
877         sd      $9, 36($4)
878         sd      $10, 40($4)
879         sd      $11, 44($4)
880         sd      $12, 48($4)
881         sd      $13, 52($4)
882         sd      $14, 56($4)
883         sd      $15, 60($4)
884         sd      $16, 64($4)
885         sd      $17, 68($4)
886         sd      $18, 72($4)
887         sd      $19, 76($4)
888         sd      $20, 80($4)
889         sd      $21, 84($4)
890         sd      $22, 88($4)
891         sd      $23, 92($4)
892         sd      $24, 96($4)
893         sd      $25, 100($4)
894         sd      $26, 104($4)
895         sd      $27, 108($4)
896         sd      $28, 112($4)
897         sd      $29, 116($4)
898         sd      $30, 120($4)
899         sd      $31, 124($4)
900         jr      $31
901           nop
902 END(_ZN7_Unwind16Registers_MIPS64C1Ev)
904 LEAF(_ZNK7_Unwind16Registers_MIPS646jumptoEv)
905 #if 0
906         FP_L    $f0, 256($4)
907         FP_L    $f1, 264($4)
908         FP_L    $f2, 272($4)
909         FP_L    $f3, 280($4)
910         FP_L    $f4, 288($4)
911         FP_L    $f5, 296($4)
912         FP_L    $f6, 304($4)
913         FP_L    $f7, 312($4)
914         FP_L    $f8, 320($4)
915         FP_L    $f9, 328($4)
916         FP_L    $f10, 336($4)
917         FP_L    $f11, 344($4)
918         FP_L    $f12, 352($4)
919         FP_L    $f13, 360($4)
920         FP_L    $f14, 368($4)
921         FP_L    $f15, 376($4)
922         FP_L    $f16, 384($4)
923         FP_L    $f17, 392($4)
924         FP_L    $f18, 400($4)
925         FP_L    $f19, 408($4)
926         FP_L    $f20, 416($4)
927         FP_L    $f21, 424($4)
928         FP_L    $f22, 432($4)
929         FP_L    $f23, 440($4)
930         FP_L    $f24, 448($4)
931         FP_L    $f25, 456($4)
932         FP_L    $f26, 464($4)
933         FP_L    $f27, 472($4)
934         FP_L    $f28, 480($4)
935         FP_L    $f29, 488($4)
936         FP_L    $f30, 496($4)
937         FP_L    $f31, 504($4)
938 #endif
940         ld      $31, 0($4)
941         ld      $1, 8($4)
942         ld      $2, 16($4)
943         ld      $3, 24($4)
944         ld      $5, 40($4)
945         ld      $6, 48($4)
946         ld      $7, 56($4)
947         ld      $8, 64($4)
948         ld      $9, 72($4)
949         ld      $10, 80($4)
950         ld      $11, 88($4)
951         ld      $12, 96($4)
952         ld      $13, 104($4)
953         ld      $14, 112($4)
954         ld      $15, 120($4)
955         ld      $16, 128($4)
956         ld      $17, 136($4)
957         ld      $18, 144($4)
958         ld      $19, 152($4)
959         ld      $20, 160($4)
960         ld      $21, 168($4)
961         ld      $22, 176($4)
962         ld      $23, 184($4)
963         ld      $24, 192($4)
964         ld      $25, 200($4)
965         ld      $26, 208($4)
966         ld      $27, 216($4)
967         ld      $28, 224($4)
968         ld      $29, 232($4)
969         ld      $30, 240($4)
970          ld     $4, 32($4)
971         jr      $31
972           nop
973 END(_ZNK7_Unwind16Registers_MIPS646jumptoEv)
974 #elif defined(__mips__)
975         .set noat
976 LEAF(_ZN7_Unwind14Registers_MIPSC1Ev)
977 #if 0
978 #if __mips > 1
979         FP_S    $f0, 128($4)
980         FP_S    $f1, 136($4)
981         FP_S    $f2, 144($4)
982         FP_S    $f3, 152($4)
983         FP_S    $f4, 160($4)
984         FP_S    $f5, 168($4)
985         FP_S    $f6, 176($4)
986         FP_S    $f7, 184($4)
987         FP_S    $f8, 192($4)
988         FP_S    $f9, 200($4)
989         FP_S    $f10, 208($4)
990         FP_S    $f11, 216($4)
991         FP_S    $f12, 224($4)
992         FP_S    $f13, 232($4)
993         FP_S    $f14, 240($4)
994         FP_S    $f15, 248($4)
995         FP_S    $f16, 256($4)
996         FP_S    $f17, 264($4)
997         FP_S    $f18, 272($4)
998         FP_S    $f19, 280($4)
999         FP_S    $f20, 288($4)
1000         FP_S    $f21, 296($4)
1001         FP_S    $f22, 304($4)
1002         FP_S    $f23, 312($4)
1003         FP_S    $f24, 320($4)
1004         FP_S    $f25, 328($4)
1005         FP_S    $f26, 336($4)
1006         FP_S    $f27, 344($4)
1007         FP_S    $f28, 352($4)
1008         FP_S    $f29, 360($4)
1009         FP_S    $f30, 368($4)
1010         FP_S    $f31, 376($4)
1011 #endif
1012 #endif
1013         sw      $31, 0($4)
1014         sw      $1, 4($4)
1015         sw      $2, 8($4)
1016         sw      $3, 12($4)
1017         sw      $4, 16($4)
1018         sw      $5, 20($4)
1019         sw      $6, 24($4)
1020         sw      $7, 28($4)
1021         sw      $8, 32($4)
1022         sw      $9, 36($4)
1023         sw      $10, 40($4)
1024         sw      $11, 44($4)
1025         sw      $12, 48($4)
1026         sw      $13, 52($4)
1027         sw      $14, 56($4)
1028         sw      $15, 60($4)
1029         sw      $16, 64($4)
1030         sw      $17, 68($4)
1031         sw      $18, 72($4)
1032         sw      $19, 76($4)
1033         sw      $20, 80($4)
1034         sw      $21, 84($4)
1035         sw      $22, 88($4)
1036         sw      $23, 92($4)
1037         sw      $24, 96($4)
1038         sw      $25, 100($4)
1039         sw      $26, 104($4)
1040         sw      $27, 108($4)
1041         sw      $28, 112($4)
1042         sw      $29, 116($4)
1043         sw      $30, 120($4)
1044         sw      $31, 124($4)
1045         jr      $31
1046           nop
1047 END(_ZN7_Unwind14Registers_MIPSC1Ev)
1049 LEAF(_ZNK7_Unwind14Registers_MIPS6jumptoEv)
1050 #if 0
1051 #if __mips > 1
1052         FP_L    $f0, 128($4)
1053         FP_L    $f1, 136($4)
1054         FP_L    $f2, 144($4)
1055         FP_L    $f3, 152($4)
1056         FP_L    $f4, 160($4)
1057         FP_L    $f5, 168($4)
1058         FP_L    $f6, 176($4)
1059         FP_L    $f7, 184($4)
1060         FP_L    $f8, 192($4)
1061         FP_L    $f9, 200($4)
1062         FP_L    $f10, 208($4)
1063         FP_L    $f11, 216($4)
1064         FP_L    $f12, 224($4)
1065         FP_L    $f13, 232($4)
1066         FP_L    $f14, 240($4)
1067         FP_L    $f15, 248($4)
1068         FP_L    $f16, 256($4)
1069         FP_L    $f17, 264($4)
1070         FP_L    $f18, 272($4)
1071         FP_L    $f19, 280($4)
1072         FP_L    $f20, 288($4)
1073         FP_L    $f21, 296($4)
1074         FP_L    $f22, 304($4)
1075         FP_L    $f23, 312($4)
1076         FP_L    $f24, 320($4)
1077         FP_L    $f25, 328($4)
1078         FP_L    $f26, 336($4)
1079         FP_L    $f27, 344($4)
1080         FP_L    $f28, 352($4)
1081         FP_L    $f29, 360($4)
1082         FP_L    $f30, 368($4)
1083         FP_L    $f31, 376($4)
1084 #endif
1085 #endif
1087         lw      $31, 0($4)
1088         lw      $1, 4($4)
1089         lw      $2, 8($4)
1090         lw      $3, 12($4)
1091         lw      $5, 20($4)
1092         lw      $6, 24($4)
1093         lw      $7, 28($4)
1094         lw      $8, 32($4)
1095         lw      $9, 36($4)
1096         lw      $10, 40($4)
1097         lw      $11, 44($4)
1098         lw      $12, 48($4)
1099         lw      $13, 52($4)
1100         lw      $14, 56($4)
1101         lw      $15, 60($4)
1102         lw      $16, 64($4)
1103         lw      $17, 68($4)
1104         lw      $18, 72($4)
1105         lw      $19, 76($4)
1106         lw      $20, 80($4)
1107         lw      $21, 84($4)
1108         lw      $22, 88($4)
1109         lw      $23, 92($4)
1110         lw      $24, 96($4)
1111         lw      $25, 100($4)
1112         lw      $26, 104($4)
1113         lw      $27, 108($4)
1114         lw      $28, 112($4)
1115         lw      $29, 116($4)
1116         lw      $30, 120($4)
1117          lw     $4, 16($4)
1118         jr      $31
1119           nop
1120 END(_ZNK7_Unwind14Registers_MIPS6jumptoEv)
1121 #endif
1123 #if defined(__hppa__)
1124 LEAF_ENTRY_NOPROFILE(_ZN7_Unwind14Registers_HPPAC1Ev)
1125         stw %r2, 0(%r26)
1126         stw %r1, 4(%r26)
1127         stw %r2, 8(%r26)
1128         stw %r3, 12(%r26)
1129         stw %r4, 16(%r26)
1130         stw %r5, 20(%r26)
1131         stw %r6, 24(%r26)
1132         stw %r7, 28(%r26)
1133         stw %r8, 32(%r26)
1134         stw %r9, 36(%r26)
1135         stw %r10, 40(%r26)
1136         stw %r11, 44(%r26)
1137         stw %r12, 48(%r26)
1138         stw %r13, 52(%r26)
1139         stw %r14, 56(%r26)
1140         stw %r15, 60(%r26)
1141         stw %r16, 64(%r26)
1142         stw %r17, 68(%r26)
1143         stw %r18, 72(%r26)
1144         stw %r19, 76(%r26)
1145         stw %r20, 80(%r26)
1146         stw %r21, 84(%r26)
1147         stw %r22, 88(%r26)
1148         stw %r23, 92(%r26)
1149         stw %r24, 96(%r26)
1150         stw %r25, 100(%r26)
1151         stw %r26, 104(%r26)
1152         stw %r27, 108(%r26)
1153         stw %r28, 112(%r26)
1154         stw %r29, 116(%r26)
1155         stw %r30, 120(%r26)
1156         stw %r31, 124(%r26)
1157         ldi 128, %r19
1158         addl %r19, %r26, %r19
1159         fstds,ma %fr4, 8(%r19)
1160         fstds,ma %fr5, 8(%r19)
1161         fstds,ma %fr6, 8(%r19)
1162         fstds,ma %fr7, 8(%r19)
1163         fstds,ma %fr8, 8(%r19)
1164         fstds,ma %fr9, 8(%r19)
1165         fstds,ma %fr10, 8(%r19)
1166         fstds,ma %fr11, 8(%r19)
1167         fstds,ma %fr12, 8(%r19)
1168         fstds,ma %fr13, 8(%r19)
1169         fstds,ma %fr14, 8(%r19)
1170         fstds,ma %fr15, 8(%r19)
1171         fstds,ma %fr16, 8(%r19)
1172         fstds,ma %fr17, 8(%r19)
1173         fstds,ma %fr18, 8(%r19)
1174         fstds,ma %fr19, 8(%r19)
1175         fstds,ma %fr20, 8(%r19)
1176         fstds,ma %fr21, 8(%r19)
1177         fstds,ma %fr22, 8(%r19)
1178         fstds,ma %fr23, 8(%r19)
1179         fstds,ma %fr24, 8(%r19)
1180         fstds,ma %fr25, 8(%r19)
1181         fstds,ma %fr19, 8(%r19)
1182         fstds,ma %fr27, 8(%r19)
1183         fstds,ma %fr28, 8(%r19)
1184         fstds,ma %fr29, 8(%r19)
1185         fstds,ma %fr30, 8(%r19)
1186         fstds,ma %fr31, 8(%r19)
1187         ldw 76(%r26), %r19
1188         bv,n %r0(%r2)
1189 EXIT(_ZN7_Unwind14Registers_HPPAC1Ev)
1191 LEAF_ENTRY_NOPROFILE(_ZNK7_Unwind14Registers_HPPA6jumptoEv)
1192         ldi 128, %r19
1193         addl %r19, %r26, %r19
1194         fldds,ma 8(%r19), %fr4
1195         fldds,ma 8(%r19), %fr5
1196         fldds,ma 8(%r19), %fr6
1197         fldds,ma 8(%r19), %fr7
1198         fldds,ma 8(%r19), %fr8
1199         fldds,ma 8(%r19), %fr9
1200         fldds,ma 8(%r19), %fr10
1201         fldds,ma 8(%r19), %fr11
1202         fldds,ma 8(%r19), %fr12
1203         fldds,ma 8(%r19), %fr13
1204         fldds,ma 8(%r19), %fr14
1205         fldds,ma 8(%r19), %fr15
1206         fldds,ma 8(%r19), %fr16
1207         fldds,ma 8(%r19), %fr17
1208         fldds,ma 8(%r19), %fr18
1209         fldds,ma 8(%r19), %fr19
1210         fldds,ma 8(%r19), %fr20
1211         fldds,ma 8(%r19), %fr21
1212         fldds,ma 8(%r19), %fr22
1213         fldds,ma 8(%r19), %fr23
1214         fldds,ma 8(%r19), %fr24
1215         fldds,ma 8(%r19), %fr25
1216         fldds,ma 8(%r19), %fr26
1217         fldds,ma 8(%r19), %fr27
1218         fldds,ma 8(%r19), %fr28
1219         fldds,ma 8(%r19), %fr29
1220         fldds,ma 8(%r19), %fr30
1221         fldds,ma 8(%r19), %fr31
1222         ldw 0(%r26), %r2
1223         ldw 4(%r26), %r1
1224         ldw 12(%r26), %r3
1225         ldw 16(%r26), %r4
1226         ldw 20(%r26), %r5
1227         ldw 24(%r26), %r6
1228         ldw 28(%r26), %r7
1229         ldw 32(%r26), %r8
1230         ldw 36(%r26), %r9
1231         ldw 40(%r26), %r10
1232         ldw 44(%r26), %r11
1233         ldw 48(%r26), %r12
1234         ldw 52(%r26), %r13
1235         ldw 56(%r26), %r14
1236         ldw 60(%r26), %r15
1237         ldw 64(%r26), %r16
1238         ldw 68(%r26), %r17
1239         ldw 72(%r26), %r18
1240         ldw 76(%r26), %r19
1241         ldw 80(%r26), %r20
1242         ldw 84(%r26), %r21
1243         ldw 88(%r26), %r22
1244         ldw 92(%r26), %r23
1245         ldw 96(%r26), %r24
1246         ldw 100(%r26), %r25
1247         ldw 108(%r26), %r27
1248         ldw 112(%r26), %r28
1249         ldw 116(%r26), %r29
1250         ldw 120(%r26), %r30
1251         ldw 124(%r26), %r31
1252         ldw 104(%r26), %r26
1253         bv,n %r0(%r2)
1254 EXIT(_ZNK7_Unwind14Registers_HPPA6jumptoEv)
1255 #endif
1257 #ifdef __or1k__
1258 ENTRY_NP(_ZN7_Unwind14Registers_or1kC1Ev)
1259         l.sw    (0*3)(r3), r0
1260         l.sw    (1*3)(r3), r1
1261         l.sw    (2*3)(r3), r2
1262         l.sw    (3*3)(r3), r3
1263         l.sw    (4*3)(r3), r4
1264         l.sw    (5*3)(r3), r5
1265         l.sw    (6*3)(r3), r6
1266         l.sw    (7*3)(r3), r7
1267         l.sw    (8*3)(r3), r8
1268         l.sw    (9*3)(r3), r9
1269         l.sw    (10*3)(r3), r10
1270         l.sw    (11*3)(r3), r11
1271         l.sw    (12*3)(r3), r12
1272         l.sw    (13*3)(r3), r13
1273         l.sw    (14*3)(r3), r14
1274         l.sw    (15*3)(r3), r15
1275         l.sw    (16*3)(r3), r16
1276         l.sw    (17*3)(r3), r17
1277         l.sw    (18*3)(r3), r18
1278         l.sw    (19*3)(r3), r19
1279         l.sw    (20*3)(r3), r20
1280         l.sw    (21*3)(r3), r21
1281         l.sw    (22*3)(r3), r22
1282         l.sw    (23*3)(r3), r23
1283         l.sw    (24*3)(r3), r24
1284         l.sw    (25*3)(r3), r25
1285         l.sw    (26*3)(r3), r26
1286         l.sw    (27*3)(r3), r27
1287         l.sw    (28*3)(r3), r28
1288         l.sw    (29*3)(r3), r29
1289         l.sw    (30*3)(r3), r30
1290         l.sw    (31*3)(r3), r31
1291         l.mfspr r4, r0, 20
1292         l.sw    (32*4)(r3), r4
1293         l.jr    lr
1294         l.nop
1295 END(_ZN7_Unwind14Registers_or1kC1Ev)
1297 ENTRY_NP(_ZNK7_Unwind14Registers_or1k6jumptoEv)
1298         l.lwz   r6, (32*4)(r3)
1299         l.mtspr r0, r6, 20
1300         l.lwz   r0, (0*4)(r3)
1301         l.lwz   r1, (1*4)(r3)
1302         l.lwz   r2, (2*4)(r3)
1303         l.lwz   r4, (4*4)(r3)
1304         l.lwz   r5, (5*4)(r3)
1305         l.lwz   r6, (6*4)(r3)
1306         l.lwz   r7, (7*4)(r3)
1307         l.lwz   r8, (8*4)(r3)
1308         l.lwz   r9, (9*4)(r3)
1309         l.lwz   r10, (10*4)(r3)
1310         l.lwz   r11, (11*4)(r3)
1311         l.lwz   r12, (12*4)(r3)
1312         l.lwz   r13, (13*4)(r3)
1313         l.lwz   r14, (14*4)(r3)
1314         l.lwz   r15, (15*4)(r3)
1315         l.lwz   r16, (16*4)(r3)
1316         l.lwz   r17, (17*4)(r3)
1317         l.lwz   r18, (18*4)(r3)
1318         l.lwz   r19, (19*4)(r3)
1319         l.lwz   r20, (20*4)(r3)
1320         l.lwz   r21, (21*4)(r3)
1321         l.lwz   r22, (22*4)(r3)
1322         l.lwz   r23, (23*4)(r3)
1323         l.lwz   r24, (24*4)(r3)
1324         l.lwz   r25, (25*4)(r3)
1325         l.lwz   r26, (26*4)(r3)
1326         l.lwz   r27, (27*4)(r3)
1327         l.lwz   r28, (28*4)(r3)
1328         l.lwz   r29, (29*4)(r3)
1329         l.lwz   r30, (30*4)(r3)
1330         l.lwz   r31, (31*4)(r3)
1332         l.lwz   r3, (3*4)(r3)           /* return r3 */
1333         l.jr    lr
1334 END(_ZNK7_Unwind14Registers_or1k6jumptoEv)
1336 #endif