qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH for-8.0 17/29] tcg/aarch64: Add have_lse, have_lse2


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH for-8.0 17/29] tcg/aarch64: Add have_lse, have_lse2
Date: Tue, 22 Nov 2022 00:10:42 +0100
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.5.0

On 18/11/22 10:47, Richard Henderson wrote:
Notice when the host has additional atomic instructions.
The new variables will also be used in generated code.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
  tcg/aarch64/tcg-target.h     |  3 +++
  tcg/aarch64/tcg-target.c.inc | 10 ++++++++++
  2 files changed, 13 insertions(+)


diff --git a/tcg/aarch64/tcg-target.c.inc b/tcg/aarch64/tcg-target.c.inc
index 001a71bbc0..cf5ee6f742 100644
--- a/tcg/aarch64/tcg-target.c.inc
+++ b/tcg/aarch64/tcg-target.c.inc
@@ -13,6 +13,8 @@
  #include "../tcg-ldst.c.inc"
  #include "../tcg-pool.c.inc"
  #include "qemu/bitops.h"
+#include <asm/hwcap.h>

This doesn't build on Darwin:

In file included from ../../tcg/tcg.c:426:
tcg/aarch64/tcg-target.c.inc:16:10: fatal error: 'asm/hwcap.h' file not found
#include <asm/hwcap.h>
         ^~~~~~~~~~~~~

In file included from ../../accel/tcg/cputlb.c:1656:
../../accel/tcg/ldst_atomicity.c.inc:269:21: warning: value size does not match register size specified by the constraint and modifier [-Wasm-operand-widths]
            : "=&r"(r.u), "=&r"(fail) : "Q"(*p));
                    ^
../../accel/tcg/ldst_atomicity.c.inc:266:22: note: use constraint modifier "w"
        asm("0: ldxp %0, %R0, %2\n\t"
                     ^~
                     %w0

../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b'
    asm("0: ldxp %[t], %R[t], %[mem]\n\t"
        ^
../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b' ../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b' ../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b' ../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b' ../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b' ../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b' ../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b' ../../accel/tcg/ldst_atomicity.c.inc:902:9: error: unknown token in expression
<inline asm>:1:15: note: instantiated into assembly here
        0: ldxp x13, , [x9]
                     ^
In file included from ../../accel/tcg/cputlb.c:1656:
../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand
    asm("0: ldxp %[t], %R[t], %[mem]\n\t"
        ^
<inline asm>:1:15: note: instantiated into assembly here
        0: ldxp x13, , [x9]
                     ^
In file included from ../../accel/tcg/cputlb.c:1656:
../../accel/tcg/ldst_atomicity.c.inc:903:32: error: unknown token in expression
        "bic %[t], %[t], %[m]\n\t"
                               ^
<inline asm>:3:6: note: instantiated into assembly here
        bic , ,
            ^
In file included from ../../accel/tcg/cputlb.c:1656:
../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b'
    asm("0: ldxp %[t], %R[t], %[mem]\n\t"
        ^
../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b' ../../accel/tcg/ldst_atomicity.c.inc:902:9: error: invalid operand in inline asm: '0: ldxp $2, ${2:R}, $0 bic $2, $2, $4 bic ${2:R}, ${2:R}, ${4:R} orr $2, $2, $3 orr ${2:R}, ${2:R}, ${3:R} stxp ${1:w}, $2, ${2:R}, $0 cbnz ${1:w}, 0b'
fatal error: too many errors emitted, stopping now [-ferror-limit=]




reply via email to

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