On 14/6/23 07:03, Richard Henderson wrote:
On 6/11/23 10:58, Philippe Mathieu-Daudé wrote:
+++ b/target/arm/tcg/vec_helper.c
@@ -19,12 +19,15 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "exec/helper-proto.h"
#include "tcg/tcg-gvec-desc.h"
#include "fpu/softfloat.h"
#include "qemu/int128.h"
#include "vec_internal.h"
+#define HELPER_H "helper.h"
+#include "exec/helper-proto.h.inc"
+#undef HELPER_H
+
#define HELPER_H "tcg/helper-vfp.h.inc"
#include "exec/helper-proto.h.inc"
#undef HELPER_H
diff --git a/target/arm/vfp_helper.c b/target/arm/vfp_helper.c
index cbd78cc810..51f8e92ff7 100644
--- a/target/arm/vfp_helper.c
+++ b/target/arm/vfp_helper.c
@@ -19,7 +19,6 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "exec/helper-proto.h"
#include "internals.h"
#ifdef CONFIG_TCG
#include "qemu/log.h"
@@ -32,6 +31,10 @@
#ifdef CONFIG_TCG
+#define HELPER_H "helper.h"
+#include "exec/helper-proto.h.inc"
+#undef HELPER_H
+
#define HELPER_H "tcg/helper-vfp.h.inc"
#include "exec/helper-proto.h.inc"
#undef HELPER_H
Are these really required, or are you simply replacing what you removed?
We get:
../../target/arm/tcg/vec_helper.c:268:6: error: no previous prototype
for function 'helper_gvec_qrdmlah_s16' [-Werror,-Wmissing-prototypes]
../../target/arm/tcg/vec_helper.c:293:6: error: no previous prototype
for function 'helper_gvec_qrdmlsh_s16' [-Werror,-Wmissing-prototypes]
...
../../target/arm/vfp_helper.c:511:10: error: no previous prototype for
function 'helper_set_rmode' [-Werror,-Wmissing-prototypes]
../../target/arm/vfp_helper.c:1127:10: error: no previous prototype for
function 'helper_fjcvtzs' [-Werror,-Wmissing-prototypes]
...
../../target/arm/tcg/m_helper.c:581:9: error: call to undeclared
function 'helper_exception_internal'; ISO C99 and later do not support
implicit function declarations [-Wimplicit-function-declaration]
../../target/arm/tcg/helper-a64.c:831:9: error: call to undeclared
function 'helper_rebuild_hflags_a32'; ISO C99 and later do not support
implicit function declarations [-Wimplicit-function-declaration]
../../target/arm/tcg/psci.c:174:9: error: call to undeclared function
'helper_wfi'; ISO C99 and later do not support implicit function
declarations [-Wimplicit-function-declaration]
../../target/arm/tcg/tlb_helper.c:168:6: error: no previous prototype
for function 'helper_exception_pc_alignment' [-Werror,-Wmissing-prototypes]
../../target/arm/tcg/crypto_helper.c:73:12: error: function cannot
return function type 'void (void *, void *, void *, uint32_t)' (aka
'void (void *, void *, void *, unsigned int)')
void HELPER(crypto_aese)(void *vd, void *vn, void *vm, uint32_t desc)
Do we need more tcg/helper-foo.h.inc?
- gvec / simd / crypto
- exception / wfi