Patchwork [1/4] ppc-40x: Get TLB attributes from TLBLO.

login
register
mail settings
Submitter Edgar Iglesias
Date Jan. 11, 2010, 2:49 p.m.
Message ID <1263221391-3642-2-git-send-email-edgar.iglesias@gmail.com>
Download mbox | patch
Permalink /patch/42626/
State New
Headers show

Comments

Edgar Iglesias - Jan. 11, 2010, 2:49 p.m.
The ZSEL was incorrectly beeing decoded from TLBHI. Decode it from
TLBLO instead.

Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
---
 target-ppc/op_helper.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Patch

diff --git a/target-ppc/op_helper.c b/target-ppc/op_helper.c
index cea27f2..3575b29 100644
--- a/target-ppc/op_helper.c
+++ b/target-ppc/op_helper.c
@@ -3990,7 +3990,6 @@  void helper_4xx_tlbwe_hi (target_ulong entry, target_ulong val)
         cpu_abort(env, "Little-endian TLB entries are not supported by now\n");
     }
     tlb->PID = env->spr[SPR_40x_PID]; /* PID */
-    tlb->attr = val & 0xFF;
     LOG_SWTLB("%s: set up TLB %d RPN " TARGET_FMT_plx " EPN " TARGET_FMT_lx
               " size " TARGET_FMT_lx " prot %c%c%c%c PID %d\n", __func__,
               (int)entry, tlb->RPN, tlb->EPN, tlb->size,
@@ -4016,6 +4015,7 @@  void helper_4xx_tlbwe_lo (target_ulong entry, target_ulong val)
               val);
     entry &= 0x3F;
     tlb = &env->tlb[entry].tlbe;
+    tlb->attr = val & 0xFF;
     tlb->RPN = val & 0xFFFFFC00;
     tlb->prot = PAGE_READ;
     if (val & 0x200)