qemu/target-ppc
Alexander Graf 9761ad7571 PPC: Introduce an alias cache for faster lookups
When running QEMU with "-cpu ?" we walk through every alias for every
target CPU we know about. This takes several seconds on my very fast
host system.

Let's introduce a class object cache in the alias table. Using that we
don't have to go through the tedious work of finding our target class.
Instead, we can just go directly from the alias name to the target class
pointer.

This patch brings -cpu "?" to reasonable times again.

Before:
  real    0m4.716s

After:
  real    0m0.025s

Signed-off-by: Alexander Graf <agraf@suse.de>
2013-07-01 01:11:17 +02:00
..
cpu-models.c PPC: Introduce an alias cache for faster lookups 2013-07-01 01:11:17 +02:00
cpu-models.h PPC: Introduce an alias cache for faster lookups 2013-07-01 01:11:17 +02:00
cpu-qom.h cpu: Turn cpu_dump_{state,statistics}() into CPUState hooks 2013-06-28 13:25:12 +02:00
cpu.h target-ppc: Introduce unrealizefn for PowerPCCPU 2013-07-01 01:11:16 +02:00
excp_helper.c cpu: Replace do_interrupt() by CPUClass::do_interrupt method 2013-03-12 10:35:55 +01:00
fpu_helper.c target-ppc: add support for extended mtfsf/mtfsfi forms 2013-04-26 23:02:43 +02:00
helper.h target-ppc: emulate cmpb instruction 2013-04-26 23:02:42 +02:00
helper_regs.h cpu: Move halted and interrupt_request fields to CPUState 2013-03-12 10:35:55 +01:00
int_helper.c target-ppc: emulate cmpb instruction 2013-04-26 23:02:42 +02:00
kvm-stub.c kvm/openpic: in-kernel mpic support 2013-07-01 01:11:14 +02:00
kvm.c target-ppc kvm: save cr register 2013-07-01 01:11:16 +02:00
kvm_ppc.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
kvm_ppc.h Enable kvm emulated watchdog 2013-04-26 23:02:40 +02:00
machine.c PPC: Remove env->hreset_excp_prefix 2013-04-26 23:02:40 +02:00
Makefile.objs PPC: Add non-kvm stub file 2013-07-01 01:11:14 +02:00
mem_helper.c PPC: Fix dcbz for linux-user on 970 2013-04-26 23:02:42 +02:00
mfrom_table.c find -type f | xargs sed -i 's/[\t ]$//g' # on most files 2007-09-16 21:08:06 +00:00
mfrom_table_gen.c fix spelling in target sub directory 2011-12-02 10:50:57 +00:00
misc_helper.c target-ppc: Remove vestigial PowerPC 620 support 2013-03-22 15:28:46 +01:00
mmu-hash32.c mmu-hash*: Merge translate and fault handling functions 2013-03-22 15:28:53 +01:00
mmu-hash32.h mmu-hash32: Clean up BAT matching logic 2013-03-22 15:28:51 +01:00
mmu-hash64.c kvm: Change cpu_synchronize_state() argument to CPUState 2013-06-28 13:25:12 +02:00
mmu-hash64.h mmu-hash64: Implement Virtual Page Class Key Protection 2013-03-22 15:28:53 +01:00
mmu_helper.c PPC: Fix GDB read on code area for PPC6xx 2013-07-01 01:11:17 +02:00
STATUS Fix typos in comments (chek -> check) 2011-05-22 22:31:45 +01:00
timebase_helper.c ppc: Avoid AREG0 for timebase helpers 2012-06-24 01:04:43 +02:00
translate.c cpu: Turn cpu_dump_{state,statistics}() into CPUState hooks 2013-06-28 13:25:12 +02:00
translate_init.c PPC: Introduce an alias cache for faster lookups 2013-07-01 01:11:17 +02:00
user_only_helper.c target-ppc: Split user only code out of mmu_helper.c 2013-03-22 15:28:53 +01:00