187 |
redo: |
redo: |
188 |
tlb_addr = env->tlb_write[is_user][index].address; |
tlb_addr = env->tlb_write[is_user][index].address; |
189 |
if ((addr & TARGET_PAGE_MASK) == (tlb_addr & (TARGET_PAGE_MASK | TLB_INVALID_MASK))) { |
if ((addr & TARGET_PAGE_MASK) == (tlb_addr & (TARGET_PAGE_MASK | TLB_INVALID_MASK))) { |
190 |
physaddr = addr + env->tlb_read[is_user][index].addend; |
physaddr = addr + env->tlb_write[is_user][index].addend; |
191 |
if (tlb_addr & ~TARGET_PAGE_MASK) { |
if (tlb_addr & ~TARGET_PAGE_MASK) { |
192 |
/* IO access */ |
/* IO access */ |
193 |
if ((addr & (DATA_SIZE - 1)) != 0) |
if ((addr & (DATA_SIZE - 1)) != 0) |
223 |
redo: |
redo: |
224 |
tlb_addr = env->tlb_write[is_user][index].address; |
tlb_addr = env->tlb_write[is_user][index].address; |
225 |
if ((addr & TARGET_PAGE_MASK) == (tlb_addr & (TARGET_PAGE_MASK | TLB_INVALID_MASK))) { |
if ((addr & TARGET_PAGE_MASK) == (tlb_addr & (TARGET_PAGE_MASK | TLB_INVALID_MASK))) { |
226 |
physaddr = addr + env->tlb_read[is_user][index].addend; |
physaddr = addr + env->tlb_write[is_user][index].addend; |
227 |
if (tlb_addr & ~TARGET_PAGE_MASK) { |
if (tlb_addr & ~TARGET_PAGE_MASK) { |
228 |
/* IO access */ |
/* IO access */ |
229 |
if ((addr & (DATA_SIZE - 1)) != 0) |
if ((addr & (DATA_SIZE - 1)) != 0) |