accel/tcg/translate-all.c | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-)
Since 2ac01d6dafab, this function does only two things: assert a
lock is held, and call tcg_tb_alloc. It is used exactly once,
and its user has already done the assert.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
I noticed that this function was essentially a stub while
reviewing Clement's tb->orig_tb fix.
Note that the added newline in tb_gen_code both adds the
missing break after the variable declaration block and
also happens to highlight the assert mentioned above. ;-)
r~
---
accel/tcg/translate-all.c | 20 ++------------------
1 file changed, 2 insertions(+), 18 deletions(-)
diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c
index f9b7ba159d..ae063b53f9 100644
--- a/accel/tcg/translate-all.c
+++ b/accel/tcg/translate-all.c
@@ -1156,23 +1156,6 @@ void tcg_exec_init(unsigned long tb_size)
#endif
}
-/*
- * Allocate a new translation block. Flush the translation buffer if
- * too many translation blocks or too much generated code.
- */
-static TranslationBlock *tb_alloc(target_ulong pc)
-{
- TranslationBlock *tb;
-
- assert_memory_lock();
-
- tb = tcg_tb_alloc(tcg_ctx);
- if (unlikely(tb == NULL)) {
- return NULL;
- }
- return tb;
-}
-
/* call with @p->lock held */
static inline void invalidate_page_bitmap(PageDesc *p)
{
@@ -1681,6 +1664,7 @@ TranslationBlock *tb_gen_code(CPUState *cpu,
TCGProfile *prof = &tcg_ctx->prof;
int64_t ti;
#endif
+
assert_memory_lock();
phys_pc = get_page_addr_code(env, pc);
@@ -1706,7 +1690,7 @@ TranslationBlock *tb_gen_code(CPUState *cpu,
}
buffer_overflow:
- tb = tb_alloc(pc);
+ tb = tcg_tb_alloc(tcg_ctx);
if (unlikely(!tb)) {
/* flush must be done */
tb_flush(cpu);
--
2.17.1
On 10/23/19 6:46 PM, Richard Henderson wrote: > Since 2ac01d6dafab, this function does only two things: assert a > lock is held, and call tcg_tb_alloc. It is used exactly once, > and its user has already done the assert. > > Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > > I noticed that this function was essentially a stub while > reviewing Clement's tb->orig_tb fix. > > Note that the added newline in tb_gen_code both adds the > missing break after the variable declaration block and > also happens to highlight the assert mentioned above. ;-) > > > r~ > > --- > accel/tcg/translate-all.c | 20 ++------------------ > 1 file changed, 2 insertions(+), 18 deletions(-) > > diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c > index f9b7ba159d..ae063b53f9 100644 > --- a/accel/tcg/translate-all.c > +++ b/accel/tcg/translate-all.c > @@ -1156,23 +1156,6 @@ void tcg_exec_init(unsigned long tb_size) > #endif > } > > -/* > - * Allocate a new translation block. Flush the translation buffer if > - * too many translation blocks or too much generated code. > - */ > -static TranslationBlock *tb_alloc(target_ulong pc) > -{ > - TranslationBlock *tb; > - > - assert_memory_lock(); > - > - tb = tcg_tb_alloc(tcg_ctx); > - if (unlikely(tb == NULL)) { > - return NULL; > - } > - return tb; > -} > - > /* call with @p->lock held */ > static inline void invalidate_page_bitmap(PageDesc *p) > { > @@ -1681,6 +1664,7 @@ TranslationBlock *tb_gen_code(CPUState *cpu, > TCGProfile *prof = &tcg_ctx->prof; > int64_t ti; > #endif > + > assert_memory_lock(); > > phys_pc = get_page_addr_code(env, pc); > @@ -1706,7 +1690,7 @@ TranslationBlock *tb_gen_code(CPUState *cpu, > } > > buffer_overflow: > - tb = tb_alloc(pc); > + tb = tcg_tb_alloc(tcg_ctx); > if (unlikely(!tb)) { > /* flush must be done */ > tb_flush(cpu); >
On 10/23/19 6:46 PM, Richard Henderson wrote: > Since 2ac01d6dafab, this function does only two things: assert a > lock is held, and call tcg_tb_alloc. It is used exactly once, > and its user has already done the assert. > > Signed-off-by: Richard Henderson <richard.henderson@linaro.org> > --- Reviewed-by: Clement Deschamps <clement.deschamps@greensocs.com> > > I noticed that this function was essentially a stub while > reviewing Clement's tb->orig_tb fix. > > Note that the added newline in tb_gen_code both adds the > missing break after the variable declaration block and > also happens to highlight the assert mentioned above. ;-) > > > r~ > > --- > accel/tcg/translate-all.c | 20 ++------------------ > 1 file changed, 2 insertions(+), 18 deletions(-) > > diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c > index f9b7ba159d..ae063b53f9 100644 > --- a/accel/tcg/translate-all.c > +++ b/accel/tcg/translate-all.c > @@ -1156,23 +1156,6 @@ void tcg_exec_init(unsigned long tb_size) > #endif > } > > -/* > - * Allocate a new translation block. Flush the translation buffer if > - * too many translation blocks or too much generated code. > - */ > -static TranslationBlock *tb_alloc(target_ulong pc) > -{ > - TranslationBlock *tb; > - > - assert_memory_lock(); > - > - tb = tcg_tb_alloc(tcg_ctx); > - if (unlikely(tb == NULL)) { > - return NULL; > - } > - return tb; > -} > - > /* call with @p->lock held */ > static inline void invalidate_page_bitmap(PageDesc *p) > { > @@ -1681,6 +1664,7 @@ TranslationBlock *tb_gen_code(CPUState *cpu, > TCGProfile *prof = &tcg_ctx->prof; > int64_t ti; > #endif > + > assert_memory_lock(); > > phys_pc = get_page_addr_code(env, pc); > @@ -1706,7 +1690,7 @@ TranslationBlock *tb_gen_code(CPUState *cpu, > } > > buffer_overflow: > - tb = tb_alloc(pc); > + tb = tcg_tb_alloc(tcg_ctx); > if (unlikely(!tb)) { > /* flush must be done */ > tb_flush(cpu); >
© 2016 - 2024 Red Hat, Inc.