| @@ -1,14 +1,14 @@ | | | @@ -1,14 +1,14 @@ |
1 | /* $NetBSD: trap.S,v 1.28 2009/04/30 20:10:31 skrll Exp $ */ | | 1 | /* $NetBSD: trap.S,v 1.29 2009/05/24 09:13:37 skrll Exp $ */ |
2 | | | 2 | |
3 | /*- | | 3 | /*- |
4 | * Copyright (c) 2002 The NetBSD Foundation, Inc. | | 4 | * Copyright (c) 2002 The NetBSD Foundation, Inc. |
5 | * All rights reserved. | | 5 | * All rights reserved. |
6 | * | | 6 | * |
7 | * This code is derived from software contributed to The NetBSD Foundation | | 7 | * This code is derived from software contributed to The NetBSD Foundation |
8 | * by Matthew Fredette. | | 8 | * by Matthew Fredette. |
9 | * | | 9 | * |
10 | * Redistribution and use in source and binary forms, with or without | | 10 | * Redistribution and use in source and binary forms, with or without |
11 | * modification, are permitted provided that the following conditions | | 11 | * modification, are permitted provided that the following conditions |
12 | * are met: | | 12 | * are met: |
13 | * 1. Redistributions of source code must retain the above copyright | | 13 | * 1. Redistributions of source code must retain the above copyright |
14 | * notice, this list of conditions and the following disclaimer. | | 14 | * notice, this list of conditions and the following disclaimer. |
| @@ -560,33 +560,26 @@ $syscall_return: | | | @@ -560,33 +560,26 @@ $syscall_return: |
560 | | | 560 | |
561 | ldw TF_R22(%t3), %t1 | | 561 | ldw TF_R22(%t3), %t1 |
562 | ldw TF_R21(%t3), %t2 | | 562 | ldw TF_R21(%t3), %t2 |
563 | ldw TF_R30(%t3), %sp | | 563 | ldw TF_R30(%t3), %sp |
564 | ldw TF_R20(%t3), %t3 | | 564 | ldw TF_R20(%t3), %t3 |
565 | | | 565 | |
566 | rfi | | 566 | rfi |
567 | nop | | 567 | nop |
568 | .exit | | 568 | .exit |
569 | .procend | | 569 | .procend |
570 | .size $syscall, .-$syscall | | 570 | .size $syscall, .-$syscall |
571 | $syscall_end: | | 571 | $syscall_end: |
572 | | | 572 | |
573 | | | | |
574 | #define DTRAP(name,num) \ | | | |
575 | .export TLABEL(name)$num, entry ! \ | | | |
576 | .label TLABEL(name)$num ! \ | | | |
577 | b cpu_die ! \ | | | |
578 | .align 32 | | | |
579 | | | | |
580 | /* | | 573 | /* |
581 | * interrupt vector table | | 574 | * interrupt vector table |
582 | */ | | 575 | */ |
583 | #define TLABEL(name) $trap$name | | 576 | #define TLABEL(name) $trap$name |
584 | #define TELABEL(num) __CONCAT(trap_ep_,num) | | 577 | #define TELABEL(num) __CONCAT(trap_ep_,num) |
585 | | | 578 | |
586 | #define TRAP(name,num) \ | | 579 | #define TRAP(name,num) \ |
587 | mtctl %r1, %tr7 ! \ | | 580 | mtctl %r1, %tr7 ! \ |
588 | .call ! \ | | 581 | .call ! \ |
589 | .import TLABEL(name), code ! \ | | 582 | .import TLABEL(name), code ! \ |
590 | b TLABEL(name) ! \ | | 583 | b TLABEL(name) ! \ |
591 | ldi num, %r1 ! \ | | 584 | ldi num, %r1 ! \ |
592 | .align 32 | | 585 | .align 32 |