Marco Liebel (20):
  target/hexagon: manage HLX contexts through CCR
  target/hexagon: add HLX attributes and exception cause
  target/hexagon: add an HLX instruction trace event
  target/hexagon: generate the opcode translator table
  target/hexagon: add HLX register classes to generators
  target/hexagon: add HLX helper support
  target/hexagon: emit basic HLX vector operations inline
  target/hexagon: add HLX unsigned saturating gvec operations
  target/hexagon: add HLX compare and average gvec operations
  target/hexagon: add HLX absdiff and sign-fill gvec operations
  target/hexagon: translate packets with HLX instructions
  target/hexagon: add HLX packet slot and resource checks
  target/hexagon: decode HLX packets and add load and store
  target/hexagon: add HLX common ALU instructions
  target/hexagon: add HLX paired ALU instructions
  target/hexagon: add HLX shift, average and lookup instructions
  target/hexagon: add HLX multiply instructions
  target/hexagon: expose HLX registers through the gdbstub
  tests/tcg/hexagon: add HLX instruction tests
  tests/functional/hexagon: add HLX system-mode tests

 configs/targets/hexagon-linux-user.mak     |    2 +-
 configs/targets/hexagon-softmmu.mak        |    2 +-
 gdbstub/gdb-xml/hexagon-hlx.xml            |   51 +
 hw/hexagon/hex-subsys.c                    |   16 +
 hw/hexagon/hexagon_hlx.c                   |  113 +
 hw/hexagon/meson.build                     |    1 +
 include/hw/hexagon/hexagon.h               |    1 +
 include/hw/hexagon/hexagon_hlx.h           |   33 +
 meson.build                                |    1 +
 target/hexagon/attribs_def.h.inc           |   23 +
 target/hexagon/cpu.c                       |   34 +
 target/hexagon/cpu.h                       |   24 +
 target/hexagon/cpu_bits.h                  |    1 +
 target/hexagon/cpu_helper.c                |   36 +
 target/hexagon/cpu_helper.h                |    1 +
 target/hexagon/decode.c                    |  118 +-
 target/hexagon/gdbstub.c                   |   51 +
 target/hexagon/gen_decodetree.py           |    6 +-
 target/hexagon/gen_dectree_import.c        |    9 +-
 target/hexagon/gen_helper_funcs.py         |   86 +-
 target/hexagon/gen_helper_protos.py        |    7 +-
 target/hexagon/gen_hlx_ext.py              |   25 +
 target/hexagon/gen_idef_parser_funcs.py    |    3 +
 target/hexagon/gen_tcg_func_table.py       |   29 +
 target/hexagon/gen_tcg_funcs.py            |    7 +-
 target/hexagon/gen_trans_funcs.py          |    4 +-
 target/hexagon/genptr.c                    |   23 +-
 target/hexagon/helper.h                    |   36 +
 target/hexagon/hex_common.py               |  708 +++++-
 target/hexagon/hexswi.c                    |    1 +
 target/hexagon/hlx/decode_ext_hlx.c        |  117 +
 target/hexagon/hlx/decode_ext_hlx.h        |   14 +
 target/hexagon/hlx/hlx.h                   |   64 +
 target/hexagon/hlx_gvec_tables.c           |  286 +++
 target/hexagon/hlx_gvec_tables.h           |   25 +
 target/hexagon/hlx_helper.c                |  236 ++
 target/hexagon/imported/allext.idef        |    6 +
 target/hexagon/imported/allextenc.def      |    4 +
 target/hexagon/imported/hlx/encode_ext.def |  180 ++
 target/hexagon/imported/hlx_ext.idef       |  540 +++++
 target/hexagon/insn.h                      |    2 +
 target/hexagon/internal.h                  |    2 +
 target/hexagon/machine.c                   |   47 +-
 target/hexagon/macros.h                    |   56 +
 target/hexagon/meson.build                 |   53 +
 target/hexagon/mmvec/macros.h              |    5 +
 target/hexagon/op_helper.c                 |   13 +
 target/hexagon/opcodes.h                   |    1 +
 target/hexagon/reg_fields_def.h.inc        |    2 +
 target/hexagon/trace-events                |    6 +
 target/hexagon/trace.h                     |    2 +
 target/hexagon/translate.c                 |  128 +-
 target/hexagon/translate.h                 |   48 +
 tests/functional/hexagon/meson.build       |    2 +
 tests/functional/hexagon/test_hlx.py       |   49 +
 tests/tcg/hexagon/check_rev_gating.c       |   10 +-
 tests/tcg/hexagon/hlx_abs_cmp.c            |  570 +++++
 tests/tcg/hexagon/hlx_arith_h.c            |  197 ++
 tests/tcg/hexagon/hlx_arith_w.c            |  695 ++++++
 tests/tcg/hexagon/hlx_asm.h                | 2286 ++++++++++++++++++++
 tests/tcg/hexagon/hlx_assign_conv.c        |  354 +++
 tests/tcg/hexagon/hlx_basic.c              |  119 +
 tests/tcg/hexagon/hlx_lanes.c              |  455 ++++
 tests/tcg/hexagon/hlx_logical.c            |  275 +++
 tests/tcg/hexagon/hlx_lut_ilog2.c          |  289 +++
 tests/tcg/hexagon/hlx_mem.c                |  258 +++
 tests/tcg/hexagon/hlx_minmax_avg.c         |  801 +++++++
 tests/tcg/hexagon/hlx_mpy.c                |  375 ++++
 tests/tcg/hexagon/hlx_mpy_adv.c            |  452 ++++
 tests/tcg/hexagon/hlx_reg_writes.c         |  151 ++
 tests/tcg/hexagon/hlx_shift.c              |  545 +++++
 tests/tcg/hexagon/hlx_shift_acc.c          |  275 +++
 tests/tcg/hexagon/hlx_test.h               |  162 ++
 tests/tcg/hexagon/meson.build              |   16 +
 74 files changed, 11548 insertions(+), 77 deletions(-)
 create mode 100644 gdbstub/gdb-xml/hexagon-hlx.xml
 create mode 100644 hw/hexagon/hexagon_hlx.c
 create mode 100644 include/hw/hexagon/hexagon_hlx.h
 create mode 100755 target/hexagon/gen_hlx_ext.py
 create mode 100755 target/hexagon/gen_tcg_func_table.py
 create mode 100644 target/hexagon/hlx/decode_ext_hlx.c
 create mode 100644 target/hexagon/hlx/decode_ext_hlx.h
 create mode 100644 target/hexagon/hlx/hlx.h
 create mode 100644 target/hexagon/hlx_gvec_tables.c
 create mode 100644 target/hexagon/hlx_gvec_tables.h
 create mode 100644 target/hexagon/hlx_helper.c
 create mode 100644 target/hexagon/imported/hlx/encode_ext.def
 create mode 100644 target/hexagon/imported/hlx_ext.idef
 create mode 100644 target/hexagon/trace-events
 create mode 100644 target/hexagon/trace.h
 create mode 100755 tests/functional/hexagon/test_hlx.py
 create mode 100644 tests/tcg/hexagon/hlx_abs_cmp.c
 create mode 100644 tests/tcg/hexagon/hlx_arith_h.c
 create mode 100644 tests/tcg/hexagon/hlx_arith_w.c
 create mode 100644 tests/tcg/hexagon/hlx_asm.h
 create mode 100644 tests/tcg/hexagon/hlx_assign_conv.c
 create mode 100644 tests/tcg/hexagon/hlx_basic.c
 create mode 100644 tests/tcg/hexagon/hlx_lanes.c
 create mode 100644 tests/tcg/hexagon/hlx_logical.c
 create mode 100644 tests/tcg/hexagon/hlx_lut_ilog2.c
 create mode 100644 tests/tcg/hexagon/hlx_mem.c
 create mode 100644 tests/tcg/hexagon/hlx_minmax_avg.c
 create mode 100644 tests/tcg/hexagon/hlx_mpy.c
 create mode 100644 tests/tcg/hexagon/hlx_mpy_adv.c
 create mode 100644 tests/tcg/hexagon/hlx_reg_writes.c
 create mode 100644 tests/tcg/hexagon/hlx_shift.c
 create mode 100644 tests/tcg/hexagon/hlx_shift_acc.c
 create mode 100644 tests/tcg/hexagon/hlx_test.h

-- 
2.43.0


Reply via email to