Changeset 1af372a in rtems-libbsd
- Timestamp:
- 09/14/18 12:04:09 (6 years ago)
- Branches:
- 5, 5-freebsd-12, 6-freebsd-12, master
- Children:
- be6515d
- Parents:
- 3489e3b
- git-author:
- Sebastian Huber <sebastian.huber@…> (09/14/18 12:04:09)
- git-committer:
- Sebastian Huber <sebastian.huber@…> (09/21/18 08:29:42)
- Location:
- freebsd/sys/contrib/ck/include
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
freebsd/sys/contrib/ck/include/ck_cc.h
r3489e3b r1af372a 29 29 #define CK_CC_H 30 30 31 #ifdef __rtems__ 32 #include <rtems/score/cpuopts.h> 33 #endif /* __rtems__ */ 31 34 #if defined(__GNUC__) || defined(__SUNPRO_C) 32 35 #include "gcc/ck_cc.h" -
freebsd/sys/contrib/ck/include/gcc/arm/ck_pr.h
r3489e3b r1af372a 55 55 } 56 56 57 #if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) 57 #if __ARM_ARCH >= 7 || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) 58 #ifdef RTEMS_SMP 58 59 #define CK_ISB __asm __volatile("isb" : : "r" (0) : "memory") 59 60 #define CK_DMB __asm __volatile("dmb" : : "r" (0) : "memory") … … 65 66 #define CK_DMB_ST __asm __volatile("dmb st" : : "r" (0) : "memory") 66 67 #endif /* __FreeBSD__ */ 68 #else /* !RTEMS_SMP */ 69 #define CK_ISB __asm __volatile("" : : "r" (0) : "memory") 70 #define CK_DMB __asm __volatile("" : : "r" (0) : "memory") 71 #define CK_DSB __asm __volatile("" : : "r" (0) : "memory") 72 #define CK_DMB_ST __asm __volatile("" : : "r" (0) : "memory") 73 #endif /* RTEMS_SMP */ 67 74 #else 68 75 /* armv6 doesn't have dsb/dmb/isb, and no way to wait only for stores */ -
freebsd/sys/contrib/ck/include/gcc/ppc/ck_pr.h
r3489e3b r1af372a 68 68 } 69 69 70 #ifdef RTEMS_SMP 70 71 #ifdef CK_MD_PPC32_LWSYNC 71 72 #define CK_PR_LWSYNCOP "lwsync" … … 73 74 #define CK_PR_LWSYNCOP "sync" 74 75 #endif 76 #define CK_PR_SYNCOP "sync" 77 #else /* !RTEMS_SMP */ 78 #define CK_PR_LWSYNCOP "" 79 #define CK_PR_SYNCOP "" 80 #endif /* RTEMS_SMP */ 75 81 76 82 CK_PR_FENCE(atomic, CK_PR_LWSYNCOP) 77 83 CK_PR_FENCE(atomic_store, CK_PR_LWSYNCOP) 78 CK_PR_FENCE(atomic_load, "sync")84 CK_PR_FENCE(atomic_load, CK_PR_SYNCOP) 79 85 CK_PR_FENCE(store_atomic, CK_PR_LWSYNCOP) 80 86 CK_PR_FENCE(load_atomic, CK_PR_LWSYNCOP) 81 87 CK_PR_FENCE(store, CK_PR_LWSYNCOP) 82 CK_PR_FENCE(store_load, "sync")88 CK_PR_FENCE(store_load, CK_PR_SYNCOP) 83 89 CK_PR_FENCE(load, CK_PR_LWSYNCOP) 84 90 CK_PR_FENCE(load_store, CK_PR_LWSYNCOP) 85 CK_PR_FENCE(memory, "sync")91 CK_PR_FENCE(memory, CK_PR_SYNCOP) 86 92 CK_PR_FENCE(acquire, CK_PR_LWSYNCOP) 87 93 CK_PR_FENCE(release, CK_PR_LWSYNCOP) … … 91 97 92 98 #undef CK_PR_LWSYNCOP 99 #undef CK_PR_SYNCOP 93 100 94 101 #undef CK_PR_FENCE
Note: See TracChangeset
for help on using the changeset viewer.