|
| 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] |