blob: e793ae52b7ee0cc100f02d910491f16e81d0bb2e [file] [log] [blame]
Jens Axboe697a6062008-05-31 00:04:45 +02001#ifndef ARCH_SPARC64_H
2#define ARCH_SPARC64_H
3
Jens Axboecca84642011-10-07 12:47:57 +02004#define FIO_ARCH (arch_sparc64)
Jens Axboe697a6062008-05-31 00:04:45 +02005
6#ifndef __NR_ioprio_set
7#define __NR_ioprio_set 196
8#define __NR_ioprio_get 218
9#endif
10
11#ifndef __NR_fadvise64
12#define __NR_fadvise64 209
13#endif
14
15#ifndef __NR_sys_splice
16#define __NR_sys_splice 232
17#define __NR_sys_tee 280
18#define __NR_sys_vmsplice 25
19#endif
20
21#define nop do { } while (0)
22
23#define membar_safe(type) \
24 do { __asm__ __volatile__("ba,pt %%xcc, 1f\n\t" \
25 " membar " type "\n" \
26 "1:\n" \
27 : : : "memory"); \
28 } while (0)
29
Jens Axboe44c47fe2008-06-04 14:31:25 +020030#define read_barrier() membar_safe("#LoadLoad")
31#define write_barrier() membar_safe("#StoreStore")
Jens Axboe697a6062008-05-31 00:04:45 +020032
Jens Axboe697a6062008-05-31 00:04:45 +020033#endif