From: Taylor Simpson <tsimpson@quicinc.com>
To: qemu-devel@nongnu.org
Cc: tsimpson@quicinc.com, richard.henderson@linaro.org,
philmd@linaro.org, peter.maydell@linaro.org, bcain@quicinc.com,
quic_mathbern@quicinc.com, stefanha@redhat.com, ale@rev.ng,
anjo@rev.ng, quic_mliebel@quicinc.com
Subject: [PULL v2 00/44] Hexagon update
Date: Thu, 18 May 2023 13:03:27 -0700 [thread overview]
Message-ID: <20230518200411.271148-1-tsimpson@quicinc.com> (raw)
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
next reply other threads:[~2023-05-18 20:04 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-18 20:03 Taylor Simpson [this message]
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
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230518200411.271148-1-tsimpson@quicinc.com \
--to=tsimpson@quicinc.com \
--cc=ale@rev.ng \
--cc=anjo@rev.ng \
--cc=bcain@quicinc.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=quic_mathbern@quicinc.com \
--cc=quic_mliebel@quicinc.com \
--cc=richard.henderson@linaro.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).