Ping.

r~

On 9/16/23 15:01, Richard Henderson wrote:
For tcg generated code, use new registers with load so that we never
overlap the input address, so that we can simplify address build for
64-bit user-only.

For tcg out-of-line code, implement the host/ headers to for atomic 128-bit
load and store, reducing the cases for which we must raise EXCP_ATOMIC.


r~

Based-on: 20230916171223.521545-1-richard.hender...@linaro.org
("[PULL v2 00/39] tcg patch queue")

Richard Henderson (7):
   tcg: Add C_N2_I1
   tcg/loongarch64: Use C_N2_I1 for INDEX_op_qemu_ld_a*_i128
   util: Add cpuinfo for loongarch64
   tcg/loongarch64: Use cpuinfo.h
   host/include/loongarch64: Add atomic16 load and store
   accel/tcg: Remove redundant case in store_atom_16
   accel/tcg: Fix condition for store_atom_insert_al16

  .../include/loongarch64/host/atomic128-ldst.h | 52 +++++++++++++++++++
  host/include/loongarch64/host/cpuinfo.h       | 21 ++++++++
  .../loongarch64/host/load-extract-al16-al8.h  | 39 ++++++++++++++
  .../loongarch64/host/store-insert-al16.h      | 12 +++++
  tcg/loongarch64/tcg-target-con-set.h          |  2 +-
  tcg/loongarch64/tcg-target.h                  |  8 +--
  accel/tcg/cputlb.c                            |  2 +-
  tcg/tcg.c                                     |  5 ++
  util/cpuinfo-loongarch.c                      | 35 +++++++++++++
  accel/tcg/ldst_atomicity.c.inc                | 14 ++---
  tcg/loongarch64/tcg-target.c.inc              | 25 +++++----
  util/meson.build                              |  2 +
  12 files changed, 189 insertions(+), 28 deletions(-)
  create mode 100644 host/include/loongarch64/host/atomic128-ldst.h
  create mode 100644 host/include/loongarch64/host/cpuinfo.h
  create mode 100644 host/include/loongarch64/host/load-extract-al16-al8.h
  create mode 100644 host/include/loongarch64/host/store-insert-al16.h
  create mode 100644 util/cpuinfo-loongarch.c



Reply via email to