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%)
--
2.43.0