On 11/5/22 06:26, Taylor Simpson wrote:
When a packet has more than one change-of-flow instruction, only the first
one to branch is considered.  We use the branch_taken variable to keep
track of this.

However, when there is a single cof instruction, we don't need the same
amount of bookkeeping.

We add the pkt_has_multi_cof member to the Packet structure, and pass this
information to the needed functions.

When there is a generated helper function with cof, the generator will
pass this pkt_has_multi_cof as a runtime value.

Signed-off-by: Taylor Simpson<tsimp...@quicinc.com>
---
  target/hexagon/insn.h               |  1 +
  target/hexagon/macros.h             |  2 +-
  target/hexagon/decode.c             | 15 +++++++++++++--
  target/hexagon/op_helper.c          | 24 +++++++++++++++---------
  target/hexagon/translate.c          |  4 +++-
  target/hexagon/gen_helper_funcs.py  |  5 ++++-
  target/hexagon/gen_helper_protos.py |  8 ++++++--
  target/hexagon/gen_tcg_funcs.py     |  5 +++++
  target/hexagon/hex_common.py        |  3 +++
  9 files changed, 51 insertions(+), 16 deletions(-)

Acked-by: Richard Henderson <richard.hender...@linaro.org>

r~

Reply via email to