diff options
author | Richard Henderson <rth@twiddle.net> | 2015-08-31 14:34:41 -0700 |
---|---|---|
committer | Richard Henderson <rth@twiddle.net> | 2015-10-07 20:36:50 +1100 |
commit | 190ce7fbc79fd0883a6170d7f30da59d366e6830 (patch) | |
tree | b51499526739d5ac8a550e72b4e3e94214f48fcc /target-arm | |
parent | dc03246cc377268db63abc8c5663ef571aec2eea (diff) | |
download | qemu-190ce7fbc79fd0883a6170d7f30da59d366e6830.tar.gz qemu-190ce7fbc79fd0883a6170d7f30da59d366e6830.tar.bz2 qemu-190ce7fbc79fd0883a6170d7f30da59d366e6830.zip |
tcg: Add TCG_MAX_INSNS
Adjust all translators to respect it.
Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'target-arm')
-rw-r--r-- | target-arm/translate-a64.c | 3 | ||||
-rw-r--r-- | target-arm/translate.c | 6 |
2 files changed, 8 insertions, 1 deletions
diff --git a/target-arm/translate-a64.c b/target-arm/translate-a64.c index 654a58645c..5022fc35c6 100644 --- a/target-arm/translate-a64.c +++ b/target-arm/translate-a64.c @@ -11072,6 +11072,9 @@ void gen_intermediate_code_internal_a64(ARMCPU *cpu, if (max_insns == 0) { max_insns = CF_COUNT_MASK; } + if (max_insns > TCG_MAX_INSNS) { + max_insns = TCG_MAX_INSNS; + } gen_tb_start(tb); diff --git a/target-arm/translate.c b/target-arm/translate.c index fb69ecb03d..fedb7814bd 100644 --- a/target-arm/translate.c +++ b/target-arm/translate.c @@ -11258,8 +11258,12 @@ static inline void gen_intermediate_code_internal(ARMCPU *cpu, lj = -1; num_insns = 0; max_insns = tb->cflags & CF_COUNT_MASK; - if (max_insns == 0) + if (max_insns == 0) { max_insns = CF_COUNT_MASK; + } + if (max_insns > TCG_MAX_INSNS) { + max_insns = TCG_MAX_INSNS; + } gen_tb_start(tb); |