qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PULL v2 00/44] Hexagon update
@ 2023-05-18 20:03 Taylor Simpson
  2023-05-18 20:03 ` [PULL v2 01/44] Hexagon (target/hexagon) Add support for v68/v69/v71/v73 Taylor Simpson
                   ` (44 more replies)
  0 siblings, 45 replies; 48+ messages in thread
From: Taylor Simpson @ 2023-05-18 20:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: tsimpson, richard.henderson, philmd, peter.maydell, bcain,
	quic_mathbern, stefanha, ale, anjo, quic_mliebel

The following changes since commit 278238505d28d292927bff7683f39fb4fbca7fd1:

  Merge tag 'pull-tcg-20230511-2' of https://gitlab.com/rth7680/qemu into staging (2023-05-11 11:44:23 +0100)

are available in the Git repository at:

  https://github.com/quic/qemu tags/pull-hex-20230518-1

for you to fetch changes up to 9073bfd725440da0af44f1ee1e3bcf72e9de39b6:

  Hexagon (linux-user/hexagon): handle breakpoints (2023-05-18 12:40:52 -0700)

----------------------------------------------------------------
**** Changes in v2 ****
Fix break in 32-bit host build

This PR can be broken down into the following parts
- Add support for new architecture versions v68/v69/v71/v73
- Short-circuit writes to temporaries when packet semantics permit this
- Move bookkeeping items from CPUHexagonState to DisasContext
- Correct '-cpu help' output and handling of unknown Hexagon versions
- Enable LLDB debugging
- Miscellaneous fixes and improvements

----------------------------------------------------------------
Brian Cain (1):
      Hexagon (gdbstub): fix p3:0 read and write via stub

Marco Liebel (1):
      Remove test_vshuff from hvx_misc tests

Matheus Tavares Bernardino (9):
      Hexagon (target/hexagon/*.py): raise exception on reg parsing error
      Hexagon: list available CPUs with `-cpu help`
      Hexagon: append eflags to unknown cpu model string
      Hexagon (iclass): update J4_hintjumpr slot constraints
      Hexagon (decode): look for pkts with multiple insns at the same slot
      gdbstub: only send stop-reply packets when allowed to
      gdbstub: add test for untimely stop-reply packets
      Hexagon: add core gdbstub xml data for LLDB
      Hexagon (linux-user/hexagon): handle breakpoints

Paolo Bonzini (1):
      target/hexagon: fix = vs. == mishap

Taylor Simpson (32):
      Hexagon (target/hexagon) Add support for v68/v69/v71/v73
      Hexagon (target/hexagon) Add v68 scalar instructions
      Hexagon (tests/tcg/hexagon) Add v68 scalar tests
      Hexagon (target/hexagon) Add v68 HVX instructions
      Hexagon (tests/tcg/hexagon) Add v68 HVX tests
      Hexagon (target/hexagon) Add v69 HVX instructions
      Hexagon (tests/tcg/hexagon) Add v69 HVX tests
      Hexagon (target/hexagon) Add v73 scalar instructions
      Hexagon (tests/tcg/hexagon) Add v73 scalar tests
      meson.build Add CONFIG_HEXAGON_IDEF_PARSER
      Hexagon (target/hexagon) Add DisasContext arg to gen_log_reg_write
      Hexagon (target/hexagon) Add overrides for loop setup instructions
      Hexagon (target/hexagon) Add overrides for allocframe/deallocframe
      Hexagon (target/hexagon) Add overrides for clr[tf]new
      Hexagon (target/hexagon) Remove log_reg_write from op_helper.[ch]
      Hexagon (target/hexagon) Eliminate uses of log_pred_write function
      Hexagon (target/hexagon) Clean up pred_written usage
      Hexagon (target/hexagon) Don't overlap dest writes with source reads
      Hexagon (target/hexagon) Mark registers as read during packet analysis
      Hexagon (target/hexagon) Short-circuit packet register writes
      Hexagon (target/hexagon) Short-circuit packet predicate writes
      Hexagon (target/hexagon) Short-circuit packet HVX writes
      Hexagon (target/hexagon) Short-circuit more HVX single instruction packets
      Hexagon (target/hexagon) Add overrides for disabled idef-parser insns
      Hexagon (target/hexagon) Make special new_value for USR
      Hexagon (target/hexagon) Move new_value to DisasContext
      Hexagon (target/hexagon) Move new_pred_value to DisasContext
      Hexagon (target/hexagon) Move pred_written to DisasContext
      Hexagon (target/hexagon) Move pkt_has_store_s1 to DisasContext
      Hexagon (target/hexagon) Move items to DisasContext
      Hexagon (target/hexagon) Additional instructions handled by idef-parser
      Hexagon (gdbstub): add HVX support

 MAINTAINERS                                        |   1 +
 configure                                          |   2 +-
 configs/targets/hexagon-linux-user.mak             |   1 +
 meson.build                                        |   1 +
 gdbstub/internals.h                                |   5 +
 linux-user/hexagon/target_elf.h                    |  20 +-
 target/hexagon/cpu.h                               |  17 +-
 target/hexagon/gen_tcg.h                           | 138 +++++++-
 target/hexagon/gen_tcg_hvx.h                       |  35 +++
 target/hexagon/genptr.h                            |   6 +-
 target/hexagon/helper.h                            |   6 +-
 target/hexagon/idef-parser/parser-helpers.h        |   2 +-
 target/hexagon/internal.h                          |   2 +
 target/hexagon/macros.h                            |  57 ++--
 target/hexagon/mmvec/macros.h                      |   9 +-
 target/hexagon/op_helper.h                         |  16 +-
 target/hexagon/translate.h                         |  52 ++-
 target/hexagon/attribs_def.h.inc                   |  22 +-
 gdbstub/gdbstub.c                                  |  37 ++-
 gdbstub/softmmu.c                                  |  13 +-
 gdbstub/user.c                                     |  24 +-
 linux-user/hexagon/cpu_loop.c                      |   3 +
 target/hexagon/arch.c                              |   3 +-
 target/hexagon/cpu.c                               |  42 ++-
 target/hexagon/decode.c                            |  30 +-
 target/hexagon/gdbstub.c                           |  84 +++++
 target/hexagon/genptr.c                            | 347 +++++++++++++++++----
 target/hexagon/iclass.c                            |   6 +-
 target/hexagon/idef-parser/parser-helpers.c        |  67 ++--
 target/hexagon/op_helper.c                         | 154 ++++++---
 target/hexagon/translate.c                         | 275 +++++++++++-----
 tests/tcg/hexagon/fpstuff.c                        |  54 ++++
 tests/tcg/hexagon/hvx_misc.c                       |  66 ++--
 tests/tcg/hexagon/invalid-slots.c                  |  29 ++
 tests/tcg/hexagon/misc.c                           |  47 +++
 tests/tcg/hexagon/read_write_overlap.c             | 136 ++++++++
 tests/tcg/hexagon/v68_hvx.c                        |  90 ++++++
 tests/tcg/hexagon/v68_scalar.c                     | 186 +++++++++++
 tests/tcg/hexagon/v69_hvx.c                        | 318 +++++++++++++++++++
 tests/tcg/hexagon/v73_scalar.c                     |  96 ++++++
 tests/tcg/hexagon/v6mpy_ref.c.inc                  | 161 ++++++++++
 gdb-xml/hexagon-core.xml                           |  84 +++++
 gdb-xml/hexagon-hvx.xml                            |  96 ++++++
 target/hexagon/README                              |  14 +-
 target/hexagon/gen_analyze_funcs.py                |  81 +++--
 target/hexagon/gen_helper_funcs.py                 |  23 +-
 target/hexagon/gen_helper_protos.py                |  12 +-
 target/hexagon/gen_idef_parser_funcs.py            |  21 +-
 target/hexagon/gen_tcg_funcs.py                    |  99 +++---
 target/hexagon/hex_common.py                       |  19 +-
 target/hexagon/idef-parser/idef-parser.lex         |  37 ++-
 target/hexagon/idef-parser/idef-parser.y           |   6 +-
 target/hexagon/imported/branch.idef                |   7 +-
 target/hexagon/imported/encode_pp.def              |  21 +-
 target/hexagon/imported/ldst.idef                  |  20 +-
 target/hexagon/imported/mmvec/encode_ext.def       |  16 +-
 target/hexagon/imported/mmvec/ext.idef             | 321 ++++++++++++++++++-
 tests/guest-debug/run-test.py                      |  16 +-
 tests/tcg/hexagon/Makefile.target                  |  21 ++
 tests/tcg/multiarch/system/Makefile.softmmu-target |  16 +-
 60 files changed, 3094 insertions(+), 496 deletions(-)
 create mode 100644 tests/tcg/hexagon/invalid-slots.c
 create mode 100644 tests/tcg/hexagon/read_write_overlap.c
 create mode 100644 tests/tcg/hexagon/v68_hvx.c
 create mode 100644 tests/tcg/hexagon/v68_scalar.c
 create mode 100644 tests/tcg/hexagon/v69_hvx.c
 create mode 100644 tests/tcg/hexagon/v73_scalar.c
 create mode 100644 tests/tcg/hexagon/v6mpy_ref.c.inc
 create mode 100644 gdb-xml/hexagon-core.xml
 create mode 100644 gdb-xml/hexagon-hvx.xml

^ permalink raw reply	[flat|nested] 48+ messages in thread

end of thread, other threads:[~2023-08-07 13:03 UTC | newest]

Thread overview: 48+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-18 20:03 [PULL v2 00/44] Hexagon update Taylor Simpson
2023-05-18 20:03 ` [PULL v2 01/44] Hexagon (target/hexagon) Add support for v68/v69/v71/v73 Taylor Simpson
2023-05-18 20:03 ` [PULL v2 02/44] Hexagon (target/hexagon) Add v68 scalar instructions Taylor Simpson
2023-05-18 20:03 ` [PULL v2 03/44] Hexagon (tests/tcg/hexagon) Add v68 scalar tests Taylor Simpson
2023-05-18 20:03 ` [PULL v2 04/44] Hexagon (target/hexagon) Add v68 HVX instructions Taylor Simpson
2023-05-18 20:03 ` [PULL v2 05/44] Hexagon (tests/tcg/hexagon) Add v68 HVX tests Taylor Simpson
2023-05-18 20:03 ` [PULL v2 06/44] Hexagon (target/hexagon) Add v69 HVX instructions Taylor Simpson
2023-05-18 20:03 ` [PULL v2 07/44] Hexagon (tests/tcg/hexagon) Add v69 HVX tests Taylor Simpson
2023-05-18 20:03 ` [PULL v2 08/44] Hexagon (target/hexagon) Add v73 scalar instructions Taylor Simpson
2023-05-18 20:03 ` [PULL v2 09/44] Hexagon (tests/tcg/hexagon) Add v73 scalar tests Taylor Simpson
2023-05-18 20:03 ` [PULL v2 10/44] meson.build Add CONFIG_HEXAGON_IDEF_PARSER Taylor Simpson
2023-05-18 20:03 ` [PULL v2 11/44] Hexagon (target/hexagon) Add DisasContext arg to gen_log_reg_write Taylor Simpson
2023-05-18 20:03 ` [PULL v2 12/44] Hexagon (target/hexagon) Add overrides for loop setup instructions Taylor Simpson
2023-05-18 20:03 ` [PULL v2 13/44] Hexagon (target/hexagon) Add overrides for allocframe/deallocframe Taylor Simpson
2023-05-18 20:03 ` [PULL v2 14/44] Hexagon (target/hexagon) Add overrides for clr[tf]new Taylor Simpson
2023-05-18 20:03 ` [PULL v2 15/44] Hexagon (target/hexagon) Remove log_reg_write from op_helper.[ch] Taylor Simpson
2023-05-18 20:03 ` [PULL v2 16/44] Hexagon (target/hexagon) Eliminate uses of log_pred_write function Taylor Simpson
2023-05-18 20:03 ` [PULL v2 17/44] Hexagon (target/hexagon) Clean up pred_written usage Taylor Simpson
2023-05-18 20:03 ` [PULL v2 18/44] Hexagon (target/hexagon) Don't overlap dest writes with source reads Taylor Simpson
2023-05-18 20:03 ` [PULL v2 19/44] Hexagon (target/hexagon) Mark registers as read during packet analysis Taylor Simpson
2023-05-18 20:03 ` [PULL v2 20/44] Hexagon (target/hexagon) Short-circuit packet register writes Taylor Simpson
2023-05-18 20:03 ` [PULL v2 21/44] Hexagon (target/hexagon) Short-circuit packet predicate writes Taylor Simpson
2023-05-18 20:03 ` [PULL v2 22/44] Hexagon (target/hexagon) Short-circuit packet HVX writes Taylor Simpson
2023-05-18 20:03 ` [PULL v2 23/44] Hexagon (target/hexagon) Short-circuit more HVX single instruction packets Taylor Simpson
2023-05-18 20:03 ` [PULL v2 24/44] Hexagon (target/hexagon) Add overrides for disabled idef-parser insns Taylor Simpson
2023-05-18 20:03 ` [PULL v2 25/44] Hexagon (target/hexagon) Make special new_value for USR Taylor Simpson
2023-05-18 20:03 ` [PULL v2 26/44] Hexagon (target/hexagon) Move new_value to DisasContext Taylor Simpson
2023-05-18 20:03 ` [PULL v2 27/44] Hexagon (target/hexagon) Move new_pred_value " Taylor Simpson
2023-05-18 20:03 ` [PULL v2 28/44] Hexagon (target/hexagon) Move pred_written " Taylor Simpson
2023-05-18 20:03 ` [PULL v2 29/44] Hexagon (target/hexagon) Move pkt_has_store_s1 " Taylor Simpson
2023-05-18 20:03 ` [PULL v2 30/44] Hexagon (target/hexagon) Move items " Taylor Simpson
2023-05-18 20:03 ` [PULL v2 31/44] Hexagon (target/hexagon) Additional instructions handled by idef-parser Taylor Simpson
2023-05-18 20:03 ` [PULL v2 32/44] target/hexagon: fix = vs. == mishap Taylor Simpson
2023-05-18 20:04 ` [PULL v2 33/44] Hexagon (target/hexagon/*.py): raise exception on reg parsing error Taylor Simpson
2023-05-18 20:04 ` [PULL v2 34/44] Hexagon: list available CPUs with `-cpu help` Taylor Simpson
2023-05-18 20:04 ` [PULL v2 35/44] Hexagon: append eflags to unknown cpu model string Taylor Simpson
2023-05-18 20:04 ` [PULL v2 36/44] Hexagon (iclass): update J4_hintjumpr slot constraints Taylor Simpson
2023-05-18 20:04 ` [PULL v2 37/44] Hexagon (decode): look for pkts with multiple insns at the same slot Taylor Simpson
2023-05-18 20:04 ` [PULL v2 38/44] Remove test_vshuff from hvx_misc tests Taylor Simpson
2023-05-18 20:04 ` [PULL v2 39/44] gdbstub: only send stop-reply packets when allowed to Taylor Simpson
2023-05-18 20:04 ` [PULL v2 40/44] gdbstub: add test for untimely stop-reply packets Taylor Simpson
2023-08-04 14:57   ` Richard Henderson
2023-08-07 13:01     ` Matheus Tavares Bernardino
2023-05-18 20:04 ` [PULL v2 41/44] Hexagon: add core gdbstub xml data for LLDB Taylor Simpson
2023-05-18 20:04 ` [PULL v2 42/44] Hexagon (gdbstub): fix p3:0 read and write via stub Taylor Simpson
2023-05-18 20:04 ` [PULL v2 43/44] Hexagon (gdbstub): add HVX support Taylor Simpson
2023-05-18 20:04 ` [PULL v2 44/44] Hexagon (linux-user/hexagon): handle breakpoints Taylor Simpson
2023-05-19 14:55 ` [PULL v2 00/44] Hexagon update Richard Henderson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).