[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 6/8] target-sh4: MMU: reduce the size of a TLB entry
From: |
Aurelien Jarno |
Subject: |
[Qemu-devel] [PATCH 6/8] target-sh4: MMU: reduce the size of a TLB entry |
Date: |
Sat, 6 Feb 2010 17:43:41 +0100 |
Reduce the size of the TLB entry from 32 to 16 bytes, reorganising
members and using a bit field.
Signed-off-by: Aurelien Jarno <address@hidden>
---
target-sh4/cpu.h | 23 +++++++++++------------
1 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/target-sh4/cpu.h b/target-sh4/cpu.h
index 015d598..85f221d 100644
--- a/target-sh4/cpu.h
+++ b/target-sh4/cpu.h
@@ -72,21 +72,20 @@
* The use of DELAY_SLOT_TRUE flag makes us accept such SR_T modification.
*/
-/* XXXXX The structure could be made more compact */
typedef struct tlb_t {
- uint8_t asid; /* address space identifier */
uint32_t vpn; /* virtual page number */
- uint8_t v; /* validity */
uint32_t ppn; /* physical page number */
- uint8_t sz; /* page size */
- uint32_t size; /* cached page size in bytes */
- uint8_t sh; /* share status */
- uint8_t c; /* cacheability */
- uint8_t pr; /* protection key */
- uint8_t d; /* dirty */
- uint8_t wt; /* write through */
- uint8_t sa; /* space attribute (PCMCIA) */
- uint8_t tc; /* timing control */
+ uint32_t size; /* mapped page size in bytes */
+ uint8_t asid; /* address space identifier */
+ uint8_t v:1; /* validity */
+ uint8_t sz:2; /* page size */
+ uint8_t sh:1; /* share status */
+ uint8_t c:1; /* cacheability */
+ uint8_t pr:2; /* protection key */
+ uint8_t d:1; /* dirty */
+ uint8_t wt:1; /* write through */
+ uint8_t sa:3; /* space attribute (PCMCIA) */
+ uint8_t tc:1; /* timing control */
} tlb_t;
#define UTLB_SIZE 64
--
1.6.6.1
- [Qemu-devel] [PATCH 0/8] SH4 MMU fixes and optimisation, Aurelien Jarno, 2010/02/06
- [Qemu-devel] [PATCH 7/8] target-sh4: MMU: remove dead code, Aurelien Jarno, 2010/02/06
- [Qemu-devel] [PATCH 2/8] target-sh4: MMU: fix mem_idx computation, Aurelien Jarno, 2010/02/06
- [Qemu-devel] [PATCH 6/8] target-sh4: MMU: reduce the size of a TLB entry,
Aurelien Jarno <=
- [Qemu-devel] [PATCH 8/8] target-sh4: MMU: fix store queue addresses, Aurelien Jarno, 2010/02/06
- [Qemu-devel] [PATCH 3/8] target-sh4: MMU: simplify call to tlb_set_page(), Aurelien Jarno, 2010/02/06
- [Qemu-devel] [PATCH 1/8] sh7750: handle MMUCR TI bit, Aurelien Jarno, 2010/02/06
- [Qemu-devel] [PATCH 5/8] target-sh4: MMU: optimize UTLB accesses, Aurelien Jarno, 2010/02/06
- [Qemu-devel] [PATCH 4/8] target-sh4: MMU: fix ITLB priviledge check, Aurelien Jarno, 2010/02/06