mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-10-14 15:02:54 +00:00
cpu: Provide a proper prototype for target_words_bigendian() in a header
We've got three places already that provide a prototype for this function in a .c file - that's ugly. Let's provide a proper prototype in a header instead, with a proper description why this function should not be used in most cases. Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
8c827c53c5
commit
c95ac10340
5
exec.c
5
exec.c
|
@ -3906,11 +3906,6 @@ int qemu_target_page_bits_min(void)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* A helper function for the _utterly broken_ virtio device model to find out if
|
|
||||||
* it's running on a big endian machine. Don't do this at home kids!
|
|
||||||
*/
|
|
||||||
bool target_words_bigendian(void);
|
|
||||||
bool target_words_bigendian(void)
|
bool target_words_bigendian(void)
|
||||||
{
|
{
|
||||||
#if defined(TARGET_WORDS_BIGENDIAN)
|
#if defined(TARGET_WORDS_BIGENDIAN)
|
||||||
|
|
|
@ -1169,7 +1169,6 @@ int virtio_set_status(VirtIODevice *vdev, uint8_t val)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool target_words_bigendian(void);
|
|
||||||
static enum virtio_device_endian virtio_default_endian(void)
|
static enum virtio_device_endian virtio_default_endian(void)
|
||||||
{
|
{
|
||||||
if (target_words_bigendian()) {
|
if (target_words_bigendian()) {
|
||||||
|
|
|
@ -1085,6 +1085,17 @@ void cpu_exec_initfn(CPUState *cpu);
|
||||||
void cpu_exec_realizefn(CPUState *cpu, Error **errp);
|
void cpu_exec_realizefn(CPUState *cpu, Error **errp);
|
||||||
void cpu_exec_unrealizefn(CPUState *cpu);
|
void cpu_exec_unrealizefn(CPUState *cpu);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* target_words_bigendian:
|
||||||
|
* Returns true if the (default) endianness of the target is big endian,
|
||||||
|
* false otherwise. Note that in target-specific code, you can use
|
||||||
|
* TARGET_WORDS_BIGENDIAN directly instead. On the other hand, common
|
||||||
|
* code should normally never need to know about the endianness of the
|
||||||
|
* target, so please do *not* use this function unless you know very well
|
||||||
|
* what you are doing!
|
||||||
|
*/
|
||||||
|
bool target_words_bigendian(void);
|
||||||
|
|
||||||
#ifdef NEED_CPU_H
|
#ifdef NEED_CPU_H
|
||||||
|
|
||||||
#ifdef CONFIG_SOFTMMU
|
#ifdef CONFIG_SOFTMMU
|
||||||
|
|
|
@ -194,7 +194,6 @@ static bool cpu_common_debug_check_watchpoint(CPUState *cpu, CPUWatchpoint *wp)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool target_words_bigendian(void);
|
|
||||||
static bool cpu_common_virtio_is_big_endian(CPUState *cpu)
|
static bool cpu_common_virtio_is_big_endian(CPUState *cpu)
|
||||||
{
|
{
|
||||||
return target_words_bigendian();
|
return target_words_bigendian();
|
||||||
|
|
Loading…
Reference in a new issue