• Ben Avison's avatar
    Simplify physical memory access, and reduce TLB operations · 4f9af0d4
    Ben Avison authored
    * Separate out the act of mapping in a physical address (with fallbacks to
      progressively older APIs) from the loading or storing of each 1-8 byte
      location, using a system of callback functions.
    * Remember which OS_Memory calls (if any) are available on the current kernel
      to avoid having to test them again for each address accessed.
    * Defer releasing the temporarily-mapped IO window until the end of the
      respective star command (as permitted by the OS_Memory documentation) to
      effectively halve the number of times the TLB has to be flushed. Note that
      the window will remain mapped if we exit via an exception during memory
      access, but this was the case in previous versions too, and now you can at
      least unmap it by issuing a further *Memory P command that doesn't cause an
      exception.
    
    Version 2.04. Tagged as 'Debugger-2_04'
    4f9af0d4
ARM 80.9 KB