Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 1536 → Rev 534

/kernel/trunk/arch/ia32/include/barrier.h
29,6 → 29,8
#ifndef __ia32_BARRIER_H__
#define __ia32_BARRIER_H__
 
#include <arch/types.h>
 
/*
* NOTE:
* No barriers for critical section (i.e. spinlock) on IA-32 are needed:
58,7 → 60,7
# ifdef CONFIG_WEAK_MEMORY
# define write_barrier() __asm__ volatile ("sfence\n" ::: "memory")
# else
# define write_barrier() __asm__ volatile( "" ::: "memory");
# define write_barrier()
# endif
#elif CONFIG_FENCES_P3
# define memory_barrier() cpuid_serialization()
66,7 → 68,7
# ifdef CONFIG_WEAK_MEMORY
# define write_barrier() __asm__ volatile ("sfence\n" ::: "memory")
# else
# define write_barrier() __asm__ volatile( "" ::: "memory");
# define write_barrier()
# endif
#else
# define memory_barrier() cpuid_serialization()
74,7 → 76,7
# ifdef CONFIG_WEAK_MEMORY
# define write_barrier() cpuid_serialization()
# else
# define write_barrier() __asm__ volatile( "" ::: "memory");
# define write_barrier()
# endif
#endif