Message ID | 20230619155510.80991-10-philmd@linaro.org |
---|---|
State | New |
Headers | show |
Series | target/arm/tcg: Remove inclusions of 'exec/helper-[proto/gen].h' | expand |
On 6/19/23 17:54, Philippe Mathieu-Daudé wrote: > +++ b/target/arm/tcg/crypto_helper.c > @@ -12,12 +12,17 @@ > #include "qemu/osdep.h" > > #include "cpu.h" > -#include "exec/helper-proto.h" > #include "tcg/tcg-gvec-desc.h" > #include "crypto/aes.h" > #include "crypto/sm4.h" > #include "vec_internal.h" > > +#define HELPER_H "tcg/helper-crypto.h.inc" > +#include "exec/helper-proto.h.inc" > +#include "exec/helper-gen.h.inc" > +#include "exec/helper-info.c.inc" > +#undef HELPER_H > + foo_helper.c does not require helper-gen.h.inc. Usually we put helper-info.c.inc into one of the translate*.c files; probably translate-neon.c in this case. r~
On 20/6/23 12:38, Richard Henderson wrote: > On 6/19/23 17:54, Philippe Mathieu-Daudé wrote: >> +++ b/target/arm/tcg/crypto_helper.c >> @@ -12,12 +12,17 @@ >> #include "qemu/osdep.h" >> #include "cpu.h" >> -#include "exec/helper-proto.h" >> #include "tcg/tcg-gvec-desc.h" >> #include "crypto/aes.h" >> #include "crypto/sm4.h" >> #include "vec_internal.h" >> +#define HELPER_H "tcg/helper-crypto.h.inc" >> +#include "exec/helper-proto.h.inc" >> +#include "exec/helper-gen.h.inc" >> +#include "exec/helper-info.c.inc" >> +#undef HELPER_H >> + > > foo_helper.c does not require helper-gen.h.inc. Right. > Usually we put helper-info.c.inc into one of the translate*.c files; > probably translate-neon.c in this case. Yes.
diff --git a/target/arm/helper.h b/target/arm/helper.h index 175589cbb4..e132969837 100644 --- a/target/arm/helper.h +++ b/target/arm/helper.h @@ -111,8 +111,6 @@ DEF_HELPER_3(ror_cc, i32, env, i32, i32) DEF_HELPER_FLAGS_3(crc32, TCG_CALL_NO_RWG_SE, i32, i32, i32, i32) DEF_HELPER_FLAGS_3(crc32c, TCG_CALL_NO_RWG_SE, i32, i32, i32, i32) -#include "tcg/helper-crypto.h.inc" - #ifdef TARGET_AARCH64 #include "tcg/helper-a64.h.inc" #include "tcg/helper-sme.h.inc" diff --git a/target/arm/tcg/crypto_helper.c b/target/arm/tcg/crypto_helper.c index d28690321f..75d9e57e3d 100644 --- a/target/arm/tcg/crypto_helper.c +++ b/target/arm/tcg/crypto_helper.c @@ -12,12 +12,17 @@ #include "qemu/osdep.h" #include "cpu.h" -#include "exec/helper-proto.h" #include "tcg/tcg-gvec-desc.h" #include "crypto/aes.h" #include "crypto/sm4.h" #include "vec_internal.h" +#define HELPER_H "tcg/helper-crypto.h.inc" +#include "exec/helper-proto.h.inc" +#include "exec/helper-gen.h.inc" +#include "exec/helper-info.c.inc" +#undef HELPER_H + union CRYPTO_STATE { uint8_t bytes[16]; uint32_t words[4]; diff --git a/target/arm/tcg/translate-a64.c b/target/arm/tcg/translate-a64.c index 924bbdbf1d..46428ef034 100644 --- a/target/arm/tcg/translate-a64.c +++ b/target/arm/tcg/translate-a64.c @@ -38,6 +38,10 @@ #include "exec/helper-gen.h.inc" #undef HELPER_H +#define HELPER_H "tcg/helper-crypto.h.inc" +#include "exec/helper-gen.h.inc" +#undef HELPER_H + static TCGv_i64 cpu_X[32]; static TCGv_i64 cpu_pc; diff --git a/target/arm/tcg/translate-neon.c b/target/arm/tcg/translate-neon.c index fa13e7e8cb..ba9f1a9801 100644 --- a/target/arm/tcg/translate-neon.c +++ b/target/arm/tcg/translate-neon.c @@ -32,6 +32,10 @@ #include "exec/helper-gen.h.inc" #undef HELPER_H +#define HELPER_H "tcg/helper-crypto.h.inc" +#include "exec/helper-gen.h.inc" +#undef HELPER_H + #define HELPER_H "tcg/helper-neon.h.inc" #include "exec/helper-proto.h.inc" #include "exec/helper-gen.h.inc" diff --git a/target/arm/tcg/translate-sve.c b/target/arm/tcg/translate-sve.c index 87f92b4d1d..0fa3a14512 100644 --- a/target/arm/tcg/translate-sve.c +++ b/target/arm/tcg/translate-sve.c @@ -26,6 +26,10 @@ #include "exec/helper-gen.h.inc" #undef HELPER_H +#define HELPER_H "tcg/helper-crypto.h.inc" +#include "exec/helper-gen.h.inc" +#undef HELPER_H + #define HELPER_H "tcg/helper-sve.h.inc" #include "exec/helper-proto.h.inc" #include "exec/helper-gen.h.inc"
Instead of including helper-crypto.h.inc via helper.h which is included by all TCG files, restrict it to the few files that require it. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- target/arm/helper.h | 2 -- target/arm/tcg/crypto_helper.c | 7 ++++++- target/arm/tcg/translate-a64.c | 4 ++++ target/arm/tcg/translate-neon.c | 4 ++++ target/arm/tcg/translate-sve.c | 4 ++++ 5 files changed, 18 insertions(+), 3 deletions(-)