qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/8] Optimize emulation of ten Altivec instructi


From: Howard Spoelstra
Subject: Re: [Qemu-devel] [PATCH 0/8] Optimize emulation of ten Altivec instructions: lvsl,
Date: Fri, 7 Jun 2019 05:51:39 +0200

Hi,

This series gives me several compilation errors.
When compiled with --disable-werror, OSX 10.3 guest on qemu-system-ppc
shows corrupted desktop graphics.

Compiled with:
./configure --target-list="ppc-softmmu" --enable-sdl --enable-gtk  && make
-j8

gcc is:
[hsp@fedora30 qemu-master]$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/9/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap
--enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,lto --prefix=/usr
--mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=
http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix
--enable-checking=release --enable-multilib --with-system-zlib
--enable-__cxa_atexit --disable-libunwind-exceptions
--enable-gnu-unique-object --enable-linker-build-id
--with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin
--enable-initfini-array --with-isl --enable-offload-targets=nvptx-none
--without-cuda-driver --enable-gnu-indirect-function --enable-cet
--with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 9.1.1 20190503 (Red Hat 9.1.1-1) (GCC)

Errors are:

/home/hsp/src/qemu-master/tcg/tcg-op.h:837:24: error: initialization of
‘TCGv_i64’ {aka ‘struct TCGv_i64_d *’} from incompatible pointer type
‘TCGv_i32’ {aka ‘struct TCGv_i32_d *’} [-Werror=incompatible-pointer-types]
  837 | #define tcg_temp_new() tcg_temp_new_i32()
      |                        ^~~~~~~~~~~~~~~~
/home/hsp/src/qemu-master/target/ppc/translate/vmx-impl.inc.c:513:19: note:
in expansion of macro ‘tcg_temp_new’
  513 |     TCGv_i64 EA = tcg_temp_new();
      |                   ^~~~~~~~~~~~
In file included from /home/hsp/src/qemu-master/target/ppc/translate.c:6826:
/home/hsp/src/qemu-master/target/ppc/translate/vmx-impl.inc.c:517:29:
error: passing argument 2 of ‘gen_addr_reg_index’ from incompatible pointer
type [-Werror=incompatible-pointer-types]
  517 |     gen_addr_reg_index(ctx, EA);
      |                             ^~
      |                             |
      |                             TCGv_i64 {aka struct TCGv_i64_d *}
/home/hsp/src/qemu-master/target/ppc/translate.c:2398:63: note: expected
‘TCGv_i32’ {aka ‘struct TCGv_i32_d *’} but argument is of type ‘TCGv_i64’
{aka ‘struct TCGv_i64_d *’}
 2398 | static inline void gen_addr_reg_index(DisasContext *ctx, TCGv EA)
In file included from /home/hsp/src/qemu-master/target/ppc/translate.c:6826:
/home/hsp/src/qemu-master/target/ppc/translate/vmx-impl.inc.c:545:19:
error: passing argument 1 of ‘tcg_temp_free_i32’ from incompatible pointer
type [-Werror=incompatible-pointer-types]
  545 |     tcg_temp_free(EA);
      |                   ^~
      |                   |
      |                   TCGv_i64 {aka struct TCGv_i64_d *}
In file included from /home/hsp/src/qemu-master/tcg/tcg-op.h:28,
                 from /home/hsp/src/qemu-master/target/ppc/translate.c:26:
/home/hsp/src/qemu-master/tcg/tcg.h:933:47: note: expected ‘TCGv_i32’ {aka
‘struct TCGv_i32_d *’} but argument is of type ‘TCGv_i64’ {aka ‘struct
TCGv_i64_d *’}
  933 | static inline void tcg_temp_free_i32(TCGv_i32 arg)
      |                                      ~~~~~~~~~^~~
In file included from /home/hsp/src/qemu-master/target/ppc/translate.c:26:
/home/hsp/src/qemu-master/target/ppc/translate/vmx-impl.inc.c: In function
‘trans_lvsr’:
/home/hsp/src/qemu-master/tcg/tcg-op.h:837:24: error: initialization of
‘TCGv_i64’ {aka ‘struct TCGv_i64_d *’} from incompatible pointer type
‘TCGv_i32’ {aka ‘struct TCGv_i32_d *’} [-Werror=incompatible-pointer-types]
  837 | #define tcg_temp_new() tcg_temp_new_i32()
      |                        ^~~~~~~~~~~~~~~~
/home/hsp/src/qemu-master/target/ppc/translate/vmx-impl.inc.c:561:19: note:
in expansion of macro ‘tcg_temp_new’
  561 |     TCGv_i64 EA = tcg_temp_new();
      |                   ^~~~~~~~~~~~
In file included from /home/hsp/src/qemu-master/target/ppc/translate.c:6826:
/home/hsp/src/qemu-master/target/ppc/translate/vmx-impl.inc.c:565:29:
error: passing argument 2 of ‘gen_addr_reg_index’ from incompatible pointer
type [-Werror=incompatible-pointer-types]
  565 |     gen_addr_reg_index(ctx, EA);
      |                             ^~
      |                             |
      |                             TCGv_i64 {aka struct TCGv_i64_d *}
/home/hsp/src/qemu-master/target/ppc/translate.c:2398:63: note: expected
‘TCGv_i32’ {aka ‘struct TCGv_i32_d *’} but argument is of type ‘TCGv_i64’
{aka ‘struct TCGv_i64_d *’}
 2398 | static inline void gen_addr_reg_index(DisasContext *ctx, TCGv EA)
In file included from /home/hsp/src/qemu-master/target/ppc/translate.c:6826:
/home/hsp/src/qemu-master/target/ppc/translate/vmx-impl.inc.c:596:19:
error: passing argument 1 of ‘tcg_temp_free_i32’ from incompatible pointer
type [-Werror=incompatible-pointer-types]
  596 |     tcg_temp_free(EA);
      |                   ^~
      |                   |
      |                   TCGv_i64 {aka struct TCGv_i64_d *}
In file included from /home/hsp/src/qemu-master/tcg/tcg-op.h:28,
                 from /home/hsp/src/qemu-master/target/ppc/translate.c:26:
/home/hsp/src/qemu-master/tcg/tcg.h:933:47: note: expected ‘TCGv_i32’ {aka
‘struct TCGv_i32_d *’} but argument is of type ‘TCGv_i64’ {aka ‘struct
TCGv_i64_d *’}
  933 | static inline void tcg_temp_free_i32(TCGv_i32 arg)
      |                                      ~~~~~~~~~^~~


Best,
Howard


reply via email to

[Prev in Thread] Current Thread [Next in Thread]