eieio
Enforce In-order Execution of I/O
Ensures that load/store instructions preceding the EIEIO complete before those following it. Used for Memory-Mapped I/O synchronization.
Details
The eieio instruction creates a memory barrier that provides an ordering function for storage accesses caused by load, store, and dcbz instructions executed by the processor. It ensures that certain types of storage accesses are ordered as specified.
Pseudocode Operation
Barrier(IO_Storage)
Programming Note
The eieio instruction is intended for use in doing memory-mapped I/O. Because loads, and separately stores, to storage that is both Caching Inhibited and Guarded are performed in program order (see Section 1.7.1, “Storage Access Ordering ” on page 973), eieio is needed for such storage only when loads must be ordered with respect to stores.