FreeBSD compat layer: fixed bus_space_barrier for x86_64

This commit is contained in:
Jérôme Duval 2013-11-06 13:31:02 +01:00
parent 24394a9d11
commit 4089e1c1ca
1 changed files with 6 additions and 2 deletions

View File

@ -231,7 +231,11 @@ bus_space_barrier(bus_space_tag_t tag, bus_space_handle_t handle,
bus_size_t offset, bus_size_t len, int flags)
{
if (flags & BUS_SPACE_BARRIER_READ)
#ifdef __x86_64__
__asm__ __volatile__ ("lock; addl $0,0(%%rsp)" : : : "memory");
#else
__asm__ __volatile__ ("lock; addl $0,0(%%esp)" : : : "memory");
#endif
else
__asm__ __volatile__ ("" : : : "memory");
}