Lines 84-89
Link Here
|
84 |
#define udma_to_device_barrier() asm volatile("" ::: "memory") |
84 |
#define udma_to_device_barrier() asm volatile("" ::: "memory") |
85 |
#elif defined(__x86_64__) |
85 |
#elif defined(__x86_64__) |
86 |
#define udma_to_device_barrier() asm volatile("" ::: "memory") |
86 |
#define udma_to_device_barrier() asm volatile("" ::: "memory") |
|
|
87 |
#elif defined(__e2k__) |
88 |
#include <x86intrin.h> |
89 |
#define udma_to_device_barrier() __builtin_ia32_mfence() |
87 |
#elif defined(__PPC64__) |
90 |
#elif defined(__PPC64__) |
88 |
#define udma_to_device_barrier() asm volatile("sync" ::: "memory") |
91 |
#define udma_to_device_barrier() asm volatile("sync" ::: "memory") |
89 |
#elif defined(__PPC__) |
92 |
#elif defined(__PPC__) |
Lines 118-123
Link Here
|
118 |
#define udma_from_device_barrier() asm volatile("lock; addl $0,0(%%esp) " ::: "memory") |
121 |
#define udma_from_device_barrier() asm volatile("lock; addl $0,0(%%esp) " ::: "memory") |
119 |
#elif defined(__x86_64__) |
122 |
#elif defined(__x86_64__) |
120 |
#define udma_from_device_barrier() asm volatile("lfence" ::: "memory") |
123 |
#define udma_from_device_barrier() asm volatile("lfence" ::: "memory") |
|
|
124 |
#elif defined(__e2k__) |
125 |
#define udma_from_device_barrier() __builtin_ia32_lfence() |
121 |
#elif defined(__PPC64__) |
126 |
#elif defined(__PPC64__) |
122 |
#define udma_from_device_barrier() asm volatile("lwsync" ::: "memory") |
127 |
#define udma_from_device_barrier() asm volatile("lwsync" ::: "memory") |
123 |
#elif defined(__PPC__) |
128 |
#elif defined(__PPC__) |
Lines 184-189
Link Here
|
184 |
#define mmio_flush_writes() asm volatile("lock; addl $0,0(%%esp) " ::: "memory") |
189 |
#define mmio_flush_writes() asm volatile("lock; addl $0,0(%%esp) " ::: "memory") |
185 |
#elif defined(__x86_64__) |
190 |
#elif defined(__x86_64__) |
186 |
#define mmio_flush_writes() asm volatile("sfence" ::: "memory") |
191 |
#define mmio_flush_writes() asm volatile("sfence" ::: "memory") |
|
|
192 |
#elif defined(__e2k__) |
193 |
#define mmio_flush_writes() __builtin_ia32_sfence() |
187 |
#elif defined(__PPC64__) |
194 |
#elif defined(__PPC64__) |
188 |
#define mmio_flush_writes() asm volatile("sync" ::: "memory") |
195 |
#define mmio_flush_writes() asm volatile("sync" ::: "memory") |
189 |
#elif defined(__PPC__) |
196 |
#elif defined(__PPC__) |