1. 30 Jan, 2023 1 commit
    • Timothy E Baldwin's avatar
      Fix aborttrap for ARMv3 · 91415538
      Timothy E Baldwin authored
      Was trying to use SYS mode to access user registers, which was introduced
      in ARMv4. Fix by using STM and LDM instead.
      
      Also support reading and writing registers for 26-bit modes.
      
      Tested on RPCEmu.
      
      Version 6.63. Not tagged
      91415538
  2. 28 Jul, 2021 1 commit
    • Jeffrey Lee's avatar
      Add OS_AbortTrap implementation · c199c178
      Jeffrey Lee authored
      This supports all the load/store instructions, including FPA & VFP/NEON.
      Most instructions are handled directly via the base version of the
      AbortTrap API that was first implemented in RISC OS Select. However, to
      properly cope with LDREX/STREX, and future support for prefetch aborts,
      the API has been extended to allow the kernel to request that a block of
      memory is mapped in with certain permissions. For LDREX/STREX the kernel
      will then rewind the PC so that the instruction can be retried directly.
      
      Test code in Dev/AbortTrap exists in order to allow checking of all
      major functionality, along with code for building the code in a
      softloadable module for easier/quicker testing.
      c199c178