issue#11: cds: changed __CDS_ guard prefix to CDSLIB_ for all .h files
[libcds.git] / cds / compiler / gcc / ia64 / backoff.h
1 //$$CDS-header$$
2
3 #ifndef CDSLIB_COMPILER_GCC_IA64_BACKOFF_H
4 #define CDSLIB_COMPILER_GCC_IA64_BACKOFF_H
5
6 //@cond none
7
8 namespace cds { namespace backoff {
9     namespace gcc { namespace ia64 {
10
11 #       define CDS_backoff_pause_defined
12         static inline void backoff_pause( unsigned int nLoop = 0x000003FF )
13         {
14             asm volatile ( "hint @pause" );
15         }
16
17 #       define CDS_backoff_hint_defined
18         static inline void backoff_hint()
19         {
20             asm volatile ( "hint @pause;;" );
21         }
22
23 #       define CDS_backoff_nop_defined
24         static inline void backoff_nop()
25         {
26             asm volatile ( "nop;;" );
27         }
28
29     }} // namespace gcc::ia64
30
31     namespace platform {
32         using namespace gcc::ia64;
33     }
34 }}  // namespace cds::backoff
35
36 //@endcond
37 #endif  // #ifndef CDSLIB_COMPILER_GCC_IA64_BACKOFF_H