summaryrefslogtreecommitdiffstats
path: root/bsps/powerpc/include/libcpu/powerpc-utility.h
diff options
context:
space:
mode:
Diffstat (limited to 'bsps/powerpc/include/libcpu/powerpc-utility.h')
-rw-r--r--bsps/powerpc/include/libcpu/powerpc-utility.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/bsps/powerpc/include/libcpu/powerpc-utility.h b/bsps/powerpc/include/libcpu/powerpc-utility.h
index 2827430e13..d1cfe23d89 100644
--- a/bsps/powerpc/include/libcpu/powerpc-utility.h
+++ b/bsps/powerpc/include/libcpu/powerpc-utility.h
@@ -229,7 +229,12 @@ static inline void ppc_enforce_in_order_execution_of_io(void)
{
RTEMS_COMPILER_MEMORY_BARRIER();
- __asm__ volatile ("eieio");
+ __asm__ volatile (
+ ".machine \"push\"\n"
+ ".machine \"any\"\n"
+ "eieio\n"
+ ".machine \"pop\""
+ );
}
static inline void ppc_data_cache_block_flush(void *addr)