MIPS: Fix tlbwi/tlbwr

In CP0 Index register, bit 31 means 'Probe Failure', while lowest bits
contain the TLB index.

In tlbwi and tlbwr instructions, this Probe Failure bit must be ignored
when reading the TLB index.

Attached patch fixes it.

(Hervé Poussineau)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5215 c046a42c-6fe2-441c-8c8c-71466251a162
1 file changed
tree: b0da0d9b64891f15fdbdf8fc941753cb6658d049
  1. audio/
  2. darwin-user/
  3. fpu/
  4. hw/
  5. keymaps/
  6. linux-user/
  7. pc-bios/
  8. slirp/
  9. target-alpha/
  10. target-arm/
  11. target-cris/
  12. target-i386/
  13. target-m68k/
  14. target-mips/
  15. target-ppc/
  16. target-sh4/
  17. target-sparc/
  18. tcg/
  19. tests/
  20. .gitignore
  21. a.out.h
  22. aes.c
  23. aes.h
  24. alpha-dis.c
  25. alpha.ld
  26. arm-dis.c
  27. arm-semi.c
  28. arm.ld
  29. block-bochs.c
  30. block-cloop.c
  31. block-cow.c
  32. block-dmg.c
  33. block-nbd.c
  34. block-parallels.c
  35. block-qcow.c
  36. block-qcow2.c
  37. block-raw-posix.c
  38. block-raw-win32.c
  39. block-vmdk.c
  40. block-vpc.c
  41. block-vvfat.c
  42. block.c
  43. block.h
  44. block_int.h
  45. bswap.h
  46. Changelog
  47. check_ops.sh
  48. cocoa.m
  49. compatfd.c
  50. compatfd.h
  51. configure
  52. console.c
  53. console.h
  54. COPYING
  55. COPYING.LIB
  56. cpu-all.h
  57. cpu-defs.h
  58. cpu-exec.c
  59. cris-dis.c
  60. curses.c
  61. curses_keys.h
  62. cutils.c
  63. d3des.c
  64. d3des.h
  65. dis-asm.h
  66. disas.c
  67. disas.h
  68. dyngen-exec.h
  69. dyngen.c
  70. elf.h
  71. elf_ops.h
  72. exec-all.h
  73. exec.c
  74. gdbstub.c
  75. gdbstub.h
  76. gen-icount.h
  77. host-utils.c
  78. host-utils.h
  79. hostregs_helper.h
  80. hpet.h
  81. hppa-dis.c
  82. hppa.ld
  83. i386-dis.c
  84. i386.ld
  85. ia64.ld
  86. keymaps.c
  87. kqemu.c
  88. kqemu.h
  89. LICENSE
  90. loader.c
  91. m68k-dis.c
  92. m68k-semi.c
  93. m68k.ld
  94. MAINTAINERS
  95. Makefile
  96. Makefile.target
  97. mips-dis.c
  98. mips.ld
  99. mipsel.ld
  100. monitor.c
  101. nbd.c
  102. nbd.h
  103. net-checksum.c
  104. net.h
  105. osdep.c
  106. osdep.h
  107. ppc-dis.c
  108. ppc.ld
  109. ppc64.ld
  110. qemu-binfmt-conf.sh
  111. qemu-char.h
  112. qemu-common.h
  113. qemu-doc.texi
  114. qemu-img.c
  115. qemu-img.texi
  116. qemu-lock.h
  117. qemu-log.h
  118. qemu-malloc.c
  119. qemu-nbd.c
  120. qemu-nbd.texi
  121. qemu-tech.texi
  122. qemu-timer.h
  123. qemu_socket.h
  124. readline.c
  125. README
  126. s390-dis.c
  127. s390.ld
  128. sdl.c
  129. sdl_keysym.h
  130. sh4-dis.c
  131. softmmu-semi.h
  132. softmmu_defs.h
  133. softmmu_exec.h
  134. softmmu_header.h
  135. softmmu_template.h
  136. sparc-dis.c
  137. sparc.ld
  138. sparc64.ld
  139. sys-queue.h
  140. sysemu.h
  141. tap-win32.c
  142. texi2pod.pl
  143. thunk.c
  144. thunk.h
  145. TODO
  146. translate-all.c
  147. uboot_image.h
  148. usb-linux.c
  149. VERSION
  150. vgafont.h
  151. vl.c
  152. vnc.c
  153. vnc_keysym.h
  154. vnchextile.h
  155. x86_64.ld
  156. x_keymap.c