asm.h (227658) | asm.h (232615) |
---|---|
1/* $NetBSD: asm.h,v 1.29 2000/12/14 21:29:51 jeffs Exp $ */ 2 3/* 4 * Copyright (c) 1992, 1993 5 * The Regents of the University of California. All rights reserved. 6 * 7 * This code is derived from software contributed to Berkeley by 8 * Ralph Campbell. --- 19 unchanged lines hidden (view full) --- 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 * 34 * @(#)machAsmDefs.h 8.1 (Berkeley) 6/10/93 35 * JNPR: asm.h,v 1.10 2007/08/09 11:23:32 katta | 1/* $NetBSD: asm.h,v 1.29 2000/12/14 21:29:51 jeffs Exp $ */ 2 3/* 4 * Copyright (c) 1992, 1993 5 * The Regents of the University of California. All rights reserved. 6 * 7 * This code is derived from software contributed to Berkeley by 8 * Ralph Campbell. --- 19 unchanged lines hidden (view full) --- 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 * 34 * @(#)machAsmDefs.h 8.1 (Berkeley) 6/10/93 35 * JNPR: asm.h,v 1.10 2007/08/09 11:23:32 katta |
36 * $FreeBSD: head/sys/mips/include/asm.h 227658 2011-11-18 09:30:24Z jchandra $ | 36 * $FreeBSD: head/sys/mips/include/asm.h 232615 2012-03-06 19:01:32Z jmallett $ |
37 */ 38 39/* 40 * machAsmDefs.h -- 41 * 42 * Macros used when writing assembler programs. 43 * 44 * Copyright (C) 1989 Digital Equipment Corporation. --- 715 unchanged lines hidden (view full) --- 760 : "=r" (data) /* outputs */ \ 761 : "i" (spr)); /* inputs */ 762 763#define dmtc0_macro(data, spr, sel) \ 764 __asm __volatile ("dmtc0 %0, $%1, %2" \ 765 : /* no outputs */ \ 766 : "r" (data), "i" (spr), "i" (sel)); /* inputs */ 767 | 37 */ 38 39/* 40 * machAsmDefs.h -- 41 * 42 * Macros used when writing assembler programs. 43 * 44 * Copyright (C) 1989 Digital Equipment Corporation. --- 715 unchanged lines hidden (view full) --- 760 : "=r" (data) /* outputs */ \ 761 : "i" (spr)); /* inputs */ 762 763#define dmtc0_macro(data, spr, sel) \ 764 __asm __volatile ("dmtc0 %0, $%1, %2" \ 765 : /* no outputs */ \ 766 : "r" (data), "i" (spr), "i" (sel)); /* inputs */ 767 |
768/* 769 * The DYNAMIC_STATUS_MASK option adds an additional masking operation 770 * when updating the hardware interrupt mask in the status register. 771 * 772 * This is useful for platforms that need to at run-time mask 773 * interrupts based on motherboard configuration or to handle 774 * slowly clearing interrupts. 775 * 776 * XXX this is only currently implemented for mips3. 777 */ 778#ifdef MIPS_DYNAMIC_STATUS_MASK 779#define DYNAMIC_STATUS_MASK(sr,scratch) \ 780 lw scratch, mips_dynamic_status_mask; \ 781 and sr, sr, scratch 782 783#define DYNAMIC_STATUS_MASK_TOUSER(sr,scratch1) \ 784 ori sr, (MIPS_INT_MASK | MIPS_SR_INT_IE); \ 785 DYNAMIC_STATUS_MASK(sr,scratch1) 786#else 787#define DYNAMIC_STATUS_MASK(sr,scratch) 788#define DYNAMIC_STATUS_MASK_TOUSER(sr,scratch1) 789#endif 790 | |
791#define GET_CPU_PCPU(reg) \ 792 PTR_L reg, _C_LABEL(pcpup); 793 794/* 795 * Description of the setjmp buffer 796 * 797 * word 0 magic number (dependant on creator) 798 * 1 RA --- 71 unchanged lines hidden --- | 768#define GET_CPU_PCPU(reg) \ 769 PTR_L reg, _C_LABEL(pcpup); 770 771/* 772 * Description of the setjmp buffer 773 * 774 * word 0 magic number (dependant on creator) 775 * 1 RA --- 71 unchanged lines hidden --- |