Revision 05f92404 target-ppc/helper.c

b/target-ppc/helper.c
198 198
    target_ulong ptem, mmask;
199 199
    int access, ret, pteh, ptev, pp;
200 200

  
201
    access = 0;
202 201
    ret = -1;
203 202
    /* Check validity and table match */
204 203
#if defined(TARGET_PPC64)
......
493 492
                          int rw, int type)
494 493
{
495 494
    target_ulong *BATlt, *BATut, *BATu, *BATl;
496
    target_ulong base, BEPIl, BEPIu, bl;
495
    target_ulong BEPIl, BEPIu, bl;
497 496
    int i, valid, prot;
498 497
    int ret = -1;
499 498

  
......
509 508
        BATut = env->DBAT[0];
510 509
        break;
511 510
    }
512
    base = virtual & 0xFFFC0000;
513 511
    for (i = 0; i < env->nb_BATs; i++) {
514 512
        BATu = &BATut[i];
515 513
        BATl = &BATlt[i];
......
1755 1753
void ppc_store_ibatu_601 (CPUPPCState *env, int nr, target_ulong value)
1756 1754
{
1757 1755
    target_ulong mask;
1756
#if defined(FLUSH_ALL_TLBS)
1758 1757
    int do_inval;
1758
#endif
1759 1759

  
1760 1760
    dump_store_bat(env, 'I', 0, nr, value);
1761 1761
    if (env->IBAT[0][nr] != value) {
1762
#if defined(FLUSH_ALL_TLBS)
1762 1763
        do_inval = 0;
1764
#endif
1763 1765
        mask = (env->IBAT[1][nr] << 17) & 0x0FFE0000UL;
1764 1766
        if (env->IBAT[1][nr] & 0x40) {
1765 1767
            /* Invalidate BAT only if it is valid */
......
1792 1794
void ppc_store_ibatl_601 (CPUPPCState *env, int nr, target_ulong value)
1793 1795
{
1794 1796
    target_ulong mask;
1797
#if defined(FLUSH_ALL_TLBS)
1795 1798
    int do_inval;
1799
#endif
1796 1800

  
1797 1801
    dump_store_bat(env, 'I', 1, nr, value);
1798 1802
    if (env->IBAT[1][nr] != value) {
1803
#if defined(FLUSH_ALL_TLBS)
1799 1804
        do_inval = 0;
1805
#endif
1800 1806
        if (env->IBAT[1][nr] & 0x40) {
1801 1807
#if !defined(FLUSH_ALL_TLBS)
1802 1808
            mask = (env->IBAT[1][nr] << 17) & 0x0FFE0000UL;

Also available in: Unified diff