提交 dba4f1bc 编写于 作者: S Stefan Weil 提交者: Blue Swirl

w64: Change data type of parameters for flush_icache_range

The TCG targets i386 and tci needed a change of the function
prototype for w64.

This change is currently not needed for the other TCG targets,
but it can be applied to avoid code differences.

Cc: Blue Swirl <blauwirbel@gmail.com>
Cc: Andrzej Zaborowski <balrogg@gmail.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Aurelien Jarno <aurelien@aurel32.net>
Cc: Alexander Graf <agraf@suse.de>
Signed-off-by: NStefan Weil <sw@weilnetz.de>
Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
上级 f57a5160
......@@ -81,7 +81,8 @@ enum {
TCG_AREG0 = TCG_REG_R6,
};
static inline void flush_icache_range(unsigned long start, unsigned long stop)
static inline void flush_icache_range(tcg_target_ulong start,
tcg_target_ulong stop)
{
#if QEMU_GNUC_PREREQ(4, 1)
__builtin___clear_cache((char *) start, (char *) stop);
......
......@@ -107,7 +107,9 @@ typedef enum {
/* Note: must be synced with dyngen-exec.h */
#define TCG_AREG0 TCG_REG_R17
static inline void flush_icache_range(unsigned long start, unsigned long stop)
static inline void flush_icache_range(tcg_target_ulong start,
tcg_target_ulong stop)
{
start &= ~31;
while (start <= stop) {
......
......@@ -146,7 +146,8 @@ typedef enum {
/* Guest base is supported */
#define TCG_TARGET_HAS_GUEST_BASE
static inline void flush_icache_range(unsigned long start, unsigned long stop)
static inline void flush_icache_range(tcg_target_ulong start,
tcg_target_ulong stop)
{
start = start & ~(32UL - 1UL);
stop = (stop + (32UL - 1UL)) & ~(32UL - 1UL);
......
......@@ -108,7 +108,8 @@ typedef enum {
#include <sys/cachectl.h>
#endif
static inline void flush_icache_range(unsigned long start, unsigned long stop)
static inline void flush_icache_range(tcg_target_ulong start,
tcg_target_ulong stop)
{
cacheflush ((void *)start, stop-start, ICACHE);
}
......@@ -100,6 +100,7 @@ enum {
TCG_AREG0 = TCG_REG_R10,
};
static inline void flush_icache_range(unsigned long start, unsigned long stop)
static inline void flush_icache_range(tcg_target_ulong start,
tcg_target_ulong stop)
{
}
......@@ -134,7 +134,8 @@ typedef enum {
#define TCG_AREG0 TCG_REG_G6
#endif
static inline void flush_icache_range(unsigned long start, unsigned long stop)
static inline void flush_icache_range(tcg_target_ulong start,
tcg_target_ulong stop)
{
unsigned long p;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册