The idef-parser skips the change-of-flow (COF) instructions, so add
overrides
**** Changes in v2 ****
Add a new generator for analyze_<tag> instructions. Pouplate the
DisasContext ahead of generating code.
**** Changes in v3 ****
Cleanup of analysis code
Added test updates enabled by new toolchain container
**** Changes in v4 ****
Additional patch for bug fix
Remove pkt_has_store_s1 from runtime state with dealloc-return patch
New patches to utilize new analyzer to improve predicated instructions
Taylor Simpson (13):
Hexagon (target/hexagon) Add overrides for jumpr31 instructions
Hexagon (target/hexagon) Add overrides for callr
Hexagon (target/hexagon) Add overrides for endloop1/endloop01
Hexagon (target/hexagon) Add overrides for dealloc-return instructions
Hexagon (target/hexagon) Analyze packet before generating TCG
Hexagon (target/hexagon) Analyze packet for HVX
Hexagon (tests/tcg/hexagon) Update preg_alias.c
Hexagon (tests/tcg/hexagon) Remove __builtin from scatter_gather
Hexagon (tests/tcg/hexagon) Enable HVX tests
Hexagon (target/hexagon) Change subtract from zero to change sign
Hexagon (target/hexagon) Remove gen_log_predicated_reg_write[_pair]
Hexagon (target/hexagon) Reduce manipulation of slot_cancelled
Hexagon (target/hexagon) Improve code gen for predicated HVX
instructions
target/hexagon/cpu.h | 6 +-
target/hexagon/gen_tcg.h | 78 ++-
target/hexagon/gen_tcg_hvx.h | 17 +-
target/hexagon/macros.h | 14 +-
target/hexagon/op_helper.h | 1 -
target/hexagon/translate.h | 76 +--
target/hexagon/genptr.c | 307 +++++++-----
target/hexagon/idef-parser/parser-helpers.c | 12 +-
target/hexagon/op_helper.c | 96 +---
target/hexagon/translate.c | 271 ++++++-----
tests/tcg/hexagon/fpstuff.c | 31 +-
tests/tcg/hexagon/preg_alias.c | 10 +-
tests/tcg/hexagon/scatter_gather.c | 513 +++++++++++---------
target/hexagon/README | 38 +-
target/hexagon/gen_analyze_funcs.py | 235 +++++++++
target/hexagon/gen_tcg_funcs.py | 128 ++---
target/hexagon/idef-parser/idef-parser.lex | 4 +-
target/hexagon/idef-parser/idef-parser.y | 7 +-
target/hexagon/meson.build | 11 +-
tests/tcg/hexagon/Makefile.target | 13 +-
20 files changed, 1098 insertions(+), 770 deletions(-)
create mode 100755 target/hexagon/gen_analyze_funcs.py
--
2.17.1