Currently, we pass env to every generated helper. When the semantics of the instruction only depend on the arguments, this is unnecessary and adds extra overhead to the helper call.
**** Changes in v3 **** Update copyright year to 2024 Mark Reviewed-by/Tested-by: Anton Johansson <[email protected]> **** Changes in v2 **** - Separate patches to pass P0 and SP explicitly to helpers that need it - Add the TCG_CALL_NO_RWG_SE flag to any non-HVX helpers that don't get ptr to env Taylor Simpson (3): Hexagon (target/hexagon) Pass P0 explicitly to helpers that need it Hexagon (target/hexagon) Pass SP explicitly to helpers that need it Hexagon (target/hexagon) Only pass env to generated helper when needed target/hexagon/gen_tcg.h | 5 +++- target/hexagon/macros.h | 6 ++-- target/hexagon/attribs_def.h.inc | 3 +- target/hexagon/gen_helper_protos.py | 12 ++++++-- target/hexagon/hex_common.py | 46 +++++++++++++++++++++++++---- 5 files changed, 59 insertions(+), 13 deletions(-) -- 2.34.1
