qemu-patch-raspberry4/target-ppc
David Gibson fda6a0ecc6 Use "hash" more consistently in ppc mmu code
Currently, get_segment() has a variable called hash.  However it doesn't
(quite) get the hash value for the ppc hashed page table.  Instead it
gets the hash shifted - effectively the offset of the hash bucket within
the hash page table.

As well, as being different to the normal use of plain "hash" in the
architecture documentation, this usage necessitates some awkward 32/64
dependent masks and shifts which clutter up the path in get_segment().

This patch alters the code to use raw hash values through get_segment()
including storing raw hashes instead of pte group offsets in the ctx
structure.  This cleans up the path noticeably.

This does necessitate 32/64 dependent shifts when the hash values are
taken out of the ctx structure and used, but those paths already have
32/64 bit variants so this is less awkward than it was in get_segment().

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
2011-04-01 18:34:55 +02:00
..
cpu.h Use "hash" more consistently in ppc mmu code 2011-04-01 18:34:55 +02:00
exec.h inline cpu_halted into sole caller 2011-03-13 14:44:21 +00:00
helper.c Use "hash" more consistently in ppc mmu code 2011-04-01 18:34:55 +02:00
helper.h Correct ppc popcntb logic, implement popcntw and popcntd 2011-04-01 18:34:54 +02:00
helper_regs.h Replace always_inline with inline 2009-08-16 09:06:54 +00:00
kvm.c Parse SDR1 on mtspr instead of at translate time 2011-04-01 18:34:55 +02:00
kvm_ppc.c change all other clock references to use nanosecond resolution accessors 2011-03-21 09:23:23 +01:00
kvm_ppc.h KVM: PPC: Add level based interrupt logic 2010-09-05 11:50:48 +02:00
machine.c Parse SDR1 on mtspr instead of at translate time 2011-04-01 18:34:55 +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 find -type f | xargs sed -i 's/[\t ]*$//g' # Yes, again. Note the star in the regex. 2007-09-17 08:09:54 +00:00
op_helper.c Correct ppc popcntb logic, implement popcntw and popcntd 2011-04-01 18:34:54 +02:00
STATUS Update PowerPC emulation status file. 2007-10-25 21:38:16 +00:00
translate.c Parse SDR1 on mtspr instead of at translate time 2011-04-01 18:34:55 +02:00
translate_init.c Parse SDR1 on mtspr instead of at translate time 2011-04-01 18:34:55 +02:00