cpufunc.h (204635) | cpufunc.h (205675) |
---|---|
1/* $OpenBSD: pio.h,v 1.2 1998/09/15 10:50:12 pefo Exp $ */ 2 3/* 4 * Copyright (c) 1995-1999 Per Fogelstrom. All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 15 unchanged lines hidden (view full) --- 24 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 25 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 29 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 * 31 * JNPR: cpufunc.h,v 1.5 2007/08/09 11:23:32 katta | 1/* $OpenBSD: pio.h,v 1.2 1998/09/15 10:50:12 pefo Exp $ */ 2 3/* 4 * Copyright (c) 1995-1999 Per Fogelstrom. All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 15 unchanged lines hidden (view full) --- 24 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 25 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 29 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 * 31 * JNPR: cpufunc.h,v 1.5 2007/08/09 11:23:32 katta |
32 * $FreeBSD: head/sys/mips/include/cpufunc.h 204635 2010-03-03 15:05:58Z gnn $ | 32 * $FreeBSD: head/sys/mips/include/cpufunc.h 205675 2010-03-26 07:15:27Z neel $ |
33 */ 34 35#ifndef _MACHINE_CPUFUNC_H_ 36#define _MACHINE_CPUFUNC_H_ 37 38#include <sys/types.h> 39#include <machine/cpuregs.h> 40 --- 237 unchanged lines hidden (view full) --- 278#define intr_restore(s) mips_wr_status((s)) 279 280static __inline void 281breakpoint(void) 282{ 283 __asm __volatile ("break"); 284} 285 | 33 */ 34 35#ifndef _MACHINE_CPUFUNC_H_ 36#define _MACHINE_CPUFUNC_H_ 37 38#include <sys/types.h> 39#include <machine/cpuregs.h> 40 --- 237 unchanged lines hidden (view full) --- 278#define intr_restore(s) mips_wr_status((s)) 279 280static __inline void 281breakpoint(void) 282{ 283 __asm __volatile ("break"); 284} 285 |
286#if defined(__GNUC__) && !defined(__mips_o32) 287static inline uint64_t 288mips3_ld(const volatile uint64_t *va) 289{ 290 uint64_t rv; 291 292#if defined(_LP64) 293 rv = *va; 294#else 295 __asm volatile("ld %0,0(%1)" : "=d"(rv) : "r"(va)); 296#endif 297 298 return (rv); 299} 300 301static inline void 302mips3_sd(volatile uint64_t *va, uint64_t v) 303{ 304#if defined(_LP64) 305 *va = v; 306#else 307 __asm volatile("sd %0,0(%1)" :: "r"(v), "r"(va)); 308#endif 309} 310#else 311uint64_t mips3_ld(volatile uint64_t *va); 312void mips3_sd(volatile uint64_t *, uint64_t); 313#endif /* __GNUC__ */ 314 |
|
286#endif /* _KERNEL */ 287 288#define readb(va) (*(volatile uint8_t *) (va)) 289#define readw(va) (*(volatile uint16_t *) (va)) 290#define readl(va) (*(volatile uint32_t *) (va)) 291 292#define writeb(va, d) (*(volatile uint8_t *) (va) = (d)) 293#define writew(va, d) (*(volatile uint16_t *) (va) = (d)) --- 81 unchanged lines hidden --- | 315#endif /* _KERNEL */ 316 317#define readb(va) (*(volatile uint8_t *) (va)) 318#define readw(va) (*(volatile uint16_t *) (va)) 319#define readl(va) (*(volatile uint32_t *) (va)) 320 321#define writeb(va, d) (*(volatile uint8_t *) (va) = (d)) 322#define writew(va, d) (*(volatile uint16_t *) (va) = (d)) --- 81 unchanged lines hidden --- |