|
From: | Richard Henderson |
Subject: | Re: [PATCH 12/19] target/ppc/pmu_book3s_helper.c: enable PMC1 counter negative EBB |
Date: | Sun, 15 Aug 2021 09:24:37 -1000 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 |
On 8/14/21 9:13 AM, Daniel Henrique Barboza wrote:
https://github.com/torvalds/linux/blob/master/tools/testing/selftests/powerpc/pmu/count_instructions.cThis test runs an instruction loop that consists of 'addi' instructions . Before running the instructionsthere's an overhead calculation with an empty loop.
...
static void ppc_tr_tb_stop(DisasContextBase *dcbase, CPUState *cs) target_ulong nip = ctx->base.pc_next; int sse; + gen_helper_insns_inc(cpu_env, tcg_constant_i32(dcbase->num_insns)); + if (is_jmp == DISAS_NORETURN) { /* We have already exited the TB. */ return;
You've not considered how branches are implemented. We generate code to exit the tb in gen_bcond. Anything you emit after that is dead code. r~
[Prev in Thread] | Current Thread | [Next in Thread] |