On 2/17/26 02:03, Peter Maydell wrote:
This patchset gets rid of a couple of uses of HELPER_H to pull in the
TCG helper function prototypes in files that aren't in
target/arm/tcg:

  - debug_helper.c has a lot of TCG only code that can
    happily live in a new tcg/debug.c file instead, and only
    the CONFIG_TCG code was using the helper prototypes
  - helper.c was calling exactly one TCG helper function
    directly, and can be made to call a different function
    instead for the same effect

Pierrick: these might be helpful for you with getting the target/arm
single-binary series to compile when TCG is disabled.  I think it
might be best to avoid having a single helper.h that gives both the
helper_foo and the gen_helper_foo prototypes, though: even if it
doesn't cause compilation failures, only translate*.c need all the
inline definitions of gen_helper_foo. If you take that approach
then it would fix the compile errors without needing these patches.

(I did wonder if we could move target/arm/helper.h into the
tcg/ subdirectory, since it really is TCG-specific, but it looks
like the machinery in include/exec/helper* assumes that the target
has a helper.h in its top level directory.)

thanks
-- PMM

Peter Maydell (2):
   target/arm: Move TCG-specific code out of debug_helper.c
   target/arm: Don't require helper prototypes in helper.c

  target/arm/debug_helper.c                  | 769 ---------------------
  target/arm/helper.c                        |   5 +-
  target/arm/{debug_helper.c => tcg/debug.c} | 542 +--------------
  target/arm/tcg/meson.build                 |   2 +
  4 files changed, 4 insertions(+), 1314 deletions(-)
  copy target/arm/{debug_helper.c => tcg/debug.c} (53%)


Reviewed-by: Richard Henderson <[email protected]>

r~

Reply via email to