projects
/
urcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
define sync_core for x86 PIC
[urcu.git]
/
urcu
/
arch_s390.h
diff --git
a/urcu/arch_s390.h
b/urcu/arch_s390.h
index fc7b3bc2d6b27a979485f1d84a366acc53311820..4ad3ee8edd39e8c9f7752ebc0d82db4e90722280 100644
(file)
--- a/
urcu/arch_s390.h
+++ b/
urcu/arch_s390.h
@@
-1,5
+1,5
@@
-#ifndef _ARCH_S390_H
-#define _ARCH_S390_H
+#ifndef _
URCU_
ARCH_S390_H
+#define _
URCU_
ARCH_S390_H
/*
* Trivial definitions for the S390 architecture based on information from the
/*
* Trivial definitions for the S390 architecture based on information from the
@@
-28,50
+28,28
@@
* IN THE SOFTWARE.
*/
* IN THE SOFTWARE.
*/
-#include <compiler.h>
+#include <
urcu/
compiler.h>
#include <urcu/config.h>
#include <urcu/config.h>
-#define CONFIG_HAVE_MEM_COHERENCY
+#ifdef __cplusplus
+extern "C" {
+#endif
-#ifndef BITS_PER_LONG
-#define BITS_PER_LONG (__SIZEOF_LONG__ * 8)
-#endif
-
-#define mb() __asm__ __volatile__("bcr 15,0" : : : "memory")
-#define rmb() __asm__ __volatile__("bcr 15,0" : : : "memory");
-#define wmb() __asm__ __volatile__("bcr 15,0" : : : "memory");
-#define mc() barrier()
-#define rmc() barrier()
-#define wmc() barrier()
+#define CACHE_LINE_SIZE 128
-#ifdef CONFIG_URCU_SMP
-#define smp_mb() mb()
-#define smp_rmb() rmb()
-#define smp_wmb() wmb()
-#define smp_mc() mc()
-#define smp_rmc() rmc()
-#define smp_wmc() wmc()
+#ifndef __SIZEOF_LONG__
+#ifdef __s390x__
+#define __SIZEOF_LONG__ 8
#else
#else
-#define smp_mb() barrier()
-#define smp_rmb() barrier()
-#define smp_wmb() barrier()
-#define smp_mc() barrier()
-#define smp_rmc() barrier()
-#define smp_wmc() barrier()
+#define __SIZEOF_LONG__ 4
+#endif
#endif
#endif
-/* Nop everywhere except on alpha. */
-#define smp_read_barrier_depends()
-
-static inline void cpu_relax(void)
-{
- barrier();
-}
+#ifndef BITS_PER_LONG
+#define BITS_PER_LONG (__SIZEOF_LONG__ * 8)
+#endif
-static inline void sync_core()
-{
- __asm__ __volatile__("bcr 15,0" : : : "memory");
-}
+#define mb() __asm__ __volatile__("bcr 15,0" : : : "memory")
typedef unsigned long long cycles_t;
typedef unsigned long long cycles_t;
@@
-84,4
+62,10
@@
static inline cycles_t get_cycles (void)
return cycles;
}
return cycles;
}
-#endif /* _ARCH_S390_H */
+#ifdef __cplusplus
+}
+#endif
+
+#include <urcu/arch_generic.h>
+
+#endif /* _URCU_ARCH_S390_H */
This page took
0.054042 seconds
and
4
git commands to generate.