mirror of
https://github.com/wiiu-env/wut.git
synced 2024-12-13 15:02:35 +01:00
89 lines
1.2 KiB
C
89 lines
1.2 KiB
C
#pragma once
|
|
#include <wut.h>
|
|
|
|
/**
|
|
* \defgroup coreinit_cache Cache
|
|
* \ingroup coreinit
|
|
*
|
|
* Cache synchronisation functions.
|
|
* @{
|
|
*/
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
|
|
/**
|
|
* Equivalent to dcbi instruction.
|
|
*/
|
|
void
|
|
DCInvalidateRange(void *addr,
|
|
uint32_t size);
|
|
|
|
|
|
/**
|
|
* Equivalent to dcbf, sync, eieio.
|
|
*/
|
|
void
|
|
DCFlushRange(void *addr,
|
|
uint32_t size);
|
|
|
|
|
|
/**
|
|
* Equivalent to dcbst, sync, eieio.
|
|
*/
|
|
void
|
|
DCStoreRange(void *addr,
|
|
uint32_t size);
|
|
|
|
|
|
/**
|
|
* Equivalent to dcbf.
|
|
*
|
|
* Does not perform sync, eieio like DCFlushRange.
|
|
*/
|
|
void
|
|
DCFlushRangeNoSync(void *addr,
|
|
uint32_t size);
|
|
|
|
|
|
/**
|
|
* Equivalent to dcbst.
|
|
*
|
|
* Does not perform sync, eieio like DCStoreRange.
|
|
*/
|
|
void
|
|
DCStoreRangeNoSync(void *addr,
|
|
uint32_t size);
|
|
|
|
|
|
/**
|
|
* Equivalent to dcbz instruction.
|
|
*/
|
|
void
|
|
DCZeroRange(void *addr,
|
|
uint32_t size);
|
|
|
|
|
|
/**
|
|
* Equivalent to dcbt instruction.
|
|
*/
|
|
void
|
|
DCTouchRange(void *addr,
|
|
uint32_t size);
|
|
|
|
|
|
/**
|
|
* Equivalent to icbi instruction.
|
|
*/
|
|
void
|
|
ICInvalidateRange(void *addr,
|
|
uint32_t size);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
/** @} */
|