Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: a1852002c7509569eaaedb783925f34350fe0a84
      
https://github.com/qemu/qemu/commit/a1852002c7509569eaaedb783925f34350fe0a84
  Author: Matheus Tavares Bernardino <[email protected]>
  Date:   2024-06-08 (Sat, 08 Jun 2024)

  Changed paths:
    M target/hexagon/gen_trans_funcs.py
    M tests/tcg/hexagon/hvx_misc.c

  Log Message:
  -----------
  Hexagon: fix HVX store new

At 09a7e7db0f (Hexagon (target/hexagon) Remove uses of
op_regs_generated.h.inc, 2024-03-06), we've changed the logic of
check_new_value() to use the new pre-calculated
packet->insn[...].dest_idx instead of calculating the index on the fly
using opcode_reginfo[...]. The dest_idx index is calculated roughly like
the following:

    for reg in iset[tag]["syntax"]:
        if reg.is_written():
            dest_idx = regno
            break

Thus, we take the first register that is writtable. Before that,
however, we also used to follow an alphabetical order on the register
type: 'd', 'e', 'x', and 'y'. No longer following that makes us select
the wrong register index and the HVX store new instruction does not
update the memory like expected.

Signed-off-by: Matheus Tavares Bernardino <[email protected]>
Reviewed-by: Brian Cain <[email protected]>
Reviewed-by: Taylor Simpson <[email protected]>
Message-Id: 
<f548dc1c240819c724245e887f29f918441e9125.1716220379.git.quic_mathb...@quicinc.com>
Signed-off-by: Brian Cain <[email protected]>


  Commit: e1b526f1d86b7c51b97227989b9ba2925cc53069
      
https://github.com/qemu/qemu/commit/e1b526f1d86b7c51b97227989b9ba2925cc53069
  Author: Matheus Tavares Bernardino <[email protected]>
  Date:   2024-06-08 (Sat, 08 Jun 2024)

  Changed paths:
    M linux-user/hexagon/cpu_loop.c
    M target/hexagon/cpu.h
    M target/hexagon/cpu_bits.h
    M target/hexagon/macros.h
    M target/hexagon/op_helper.c
    M tests/tcg/hexagon/Makefile.target
    A tests/tcg/hexagon/unaligned_pc.c

  Log Message:
  -----------
  Hexagon: add PC alignment check and exception

The Hexagon Programmer's Reference Manual says that the exception 0x1e
should be raised upon an unaligned program counter. Let's implement that
and also add some tests.

Signed-off-by: Matheus Tavares Bernardino <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Taylor Simpson <[email protected]>
Reviewed-by: Brian Cain <[email protected]>
Message-Id: 
<277b7aeda2c717a96d4dde936b3ac77707cb6517.1714755107.git.quic_mathb...@quicinc.com>
Signed-off-by: Brian Cain <[email protected]>


  Commit: 49c1f7a472ebff23b4f374a1d5201250f3fdbd76
      
https://github.com/qemu/qemu/commit/49c1f7a472ebff23b4f374a1d5201250f3fdbd76
  Author: Anton Johansson <[email protected]>
  Date:   2024-06-08 (Sat, 08 Jun 2024)

  Changed paths:
    M target/hexagon/idef-parser/idef-parser.h

  Log Message:
  -----------
  target/hexagon: idef-parser remove unused defines

Before switching to GArray/g_string_printf we used fixed size arrays for
output buffers and instructions arguments among other things.

Macros defining the sizes of these buffers were left behind, remove
them.

Signed-off-by: Anton Johansson <[email protected]>
Reviewed-by: Taylor Simpson <[email protected]>
Reviewed-by: Brian Cain <[email protected]>
Message-Id: <[email protected]>
Signed-off-by: Brian Cain <[email protected]>


  Commit: 348fec2afe9f03b1761caff44ea6290357d87c01
      
https://github.com/qemu/qemu/commit/348fec2afe9f03b1761caff44ea6290357d87c01
  Author: Anton Johansson <[email protected]>
  Date:   2024-06-08 (Sat, 08 Jun 2024)

  Changed paths:
    M target/hexagon/idef-parser/parser-helpers.h

  Log Message:
  -----------
  target/hexagon: idef-parser remove undefined functions

Signed-off-by: Anton Johansson <[email protected]>
Reviewed-by: Taylor Simpson <[email protected]>
Reviewed-by: Brian Cain <[email protected]>
Message-Id: <[email protected]>
Signed-off-by: Brian Cain <[email protected]>


  Commit: 95408ad8e24c4364086f185285039e89927dad6c
      
https://github.com/qemu/qemu/commit/95408ad8e24c4364086f185285039e89927dad6c
  Author: Anton Johansson <[email protected]>
  Date:   2024-06-08 (Sat, 08 Jun 2024)

  Changed paths:
    M target/hexagon/idef-parser/parser-helpers.c

  Log Message:
  -----------
  target/hexagon: idef-parser fix leak of init_list

gen_inst_init_args() is called for instructions using a predicate as an
rvalue. Upon first call, the list of arguments which might need
initialization init_list is freed to indicate that they have been
processed. For instructions without an rvalue predicate,
gen_inst_init_args() isn't called and init_list will never be freed.

Free init_list from free_instruction() if it hasn't already been freed.
A comment in free_instruction is also updated.

Signed-off-by: Anton Johansson <[email protected]>
Reviewed-by: Taylor Simpson <[email protected]>
Reviewed-by: Brian Cain <[email protected]>
Message-Id: <[email protected]>
Signed-off-by: Brian Cain <[email protected]>


  Commit: 1967a1ea985299c090dfd3efc1e5323ce60d75df
      
https://github.com/qemu/qemu/commit/1967a1ea985299c090dfd3efc1e5323ce60d75df
  Author: Anton Johansson <[email protected]>
  Date:   2024-06-08 (Sat, 08 Jun 2024)

  Changed paths:
    M target/hexagon/idef-parser/idef-parser.y
    M target/hexagon/idef-parser/parser-helpers.c

  Log Message:
  -----------
  target/hexagon: idef-parser simplify predicate init

Only predicate instruction arguments need to be initialized by
idef-parser. This commit removes registers from the init_list and
simplifies gen_inst_init_args() slightly.

Signed-off-by: Anton Johansson <[email protected]>
Reviewed-by: Taylor Simpson <[email protected]>
Reviewed-by: Brian Cain <[email protected]>
Message-Id: <[email protected]>
Signed-off-by: Brian Cain <[email protected]>


  Commit: 593aab332f048347bd19893071caf44e1fb742ff
      
https://github.com/qemu/qemu/commit/593aab332f048347bd19893071caf44e1fb742ff
  Author: Richard Henderson <[email protected]>
  Date:   2024-06-09 (Sun, 09 Jun 2024)

  Changed paths:
    M linux-user/hexagon/cpu_loop.c
    M target/hexagon/cpu.h
    M target/hexagon/cpu_bits.h
    M target/hexagon/gen_trans_funcs.py
    M target/hexagon/idef-parser/idef-parser.h
    M target/hexagon/idef-parser/idef-parser.y
    M target/hexagon/idef-parser/parser-helpers.c
    M target/hexagon/idef-parser/parser-helpers.h
    M target/hexagon/macros.h
    M target/hexagon/op_helper.c
    M tests/tcg/hexagon/Makefile.target
    M tests/tcg/hexagon/hvx_misc.c
    A tests/tcg/hexagon/unaligned_pc.c

  Log Message:
  -----------
  Merge tag 'pull-hex-20240608' of https://github.com/quic/qemu into staging

idef-parser cleanup, HVX & PC-alignment fixes

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCgAdFiEEPWaq5HRZSCTIjOD4GlSvuOVkbDIFAmZk/L4ACgkQGlSvuOVk
# bDLKag//ZzAuoChJOkz7EPeRzFKWuz4QL9cXA6+FrWRoD43geXiJ/eDihlLIjFvr
# JN2deqaYZTyqlfbWR1BUIgkPxYnwBFlaqCnOO4xgbAaUJSxtdmkuWr8GBlftZt2s
# PV2Nm9pDjDOEJrnfbSA2f3nMkMa7e64N+tXZ5Svt8pJC8DOZg3oI3KXWX6uZZ5YA
# 9DAGgiHBlZONKQk/EebQ1DAcc+RDu68f+UtzsQ9Q4MiO/Mga/Z2u5wdOdrXmk5Lh
# ba6W4sLqBNU8oB6hkA5sy+5EhlzPIhX1+G1c21fRSlLR74BFK8ByZ802kWSVY1j/
# /MS01yH46Kb3aFVqpMvoYzBZ+kGlbMVKYY4c9AXtrH5tojHQ83ijnl2V/0y+s+i8
# f6bqErchbDZPM8H6vVDdbUewx3Sq/KA7WhiK9GCgnHWc0Z5kj15l121vJr6JVMwS
# fkccK1s8fOTUNCZNJiu4czakNQTGsf4jWGjcOo7EREstIXin0E/cUxZKrJWYshzc
# 88Ys1pxSk+1f7ajla4+uQ3oDw+RDqkA1unUA5cfJz/61ho5TWx6dcd5XKziNk7o4
# PyOhxfoLSV9j5+XczAO+nugpN0zQUHb7lz2k0sNiypScbXVSIw/ebKgYMVlLyMSf
# yEZTh8p+rbzmmJbkJBB5X/8kpU0qyp6fK5dRv1wvNPau0ExBwcs=
# =CwAl
# -----END PGP SIGNATURE-----
# gpg: Signature made Sat 08 Jun 2024 05:52:14 PM PDT
# gpg:                using RSA key 3D66AAE474594824C88CE0F81A54AFB8E5646C32
# gpg: Good signature from "Brian Cain (QUIC) <[email protected]>" 
[unknown]
# gpg:                 aka "Brian Cain <[email protected]>" [unknown]
# gpg:                 aka "Brian Cain (QuIC) <[email protected]>" [unknown]
# gpg:                 aka "Brian Cain (CAF) <[email protected]>" [unknown]
# gpg:                 aka "bcain" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 6350 20F9 67A7 7164 79EF  49E0 175C 464E 541B 6D47
#      Subkey fingerprint: 3D66 AAE4 7459 4824 C88C  E0F8 1A54 AFB8 E564 6C32

* tag 'pull-hex-20240608' of https://github.com/quic/qemu:
  target/hexagon: idef-parser simplify predicate init
  target/hexagon: idef-parser fix leak of init_list
  target/hexagon: idef-parser remove undefined functions
  target/hexagon: idef-parser remove unused defines
  Hexagon: add PC alignment check and exception
  Hexagon: fix HVX store new

Signed-off-by: Richard Henderson <[email protected]>


Compare: https://github.com/qemu/qemu/compare/3e246da2c3f8...593aab332f04

To unsubscribe from these emails, change your notification settings at 
https://github.com/qemu/qemu/settings/notifications

Reply via email to