1. 16 9月, 2012 1 次提交
  2. 29 8月, 2012 1 次提交
    • A
      tcg/mips: fix broken CONFIG_TCG_PASS_AREG0 code · 18fec301
      Aurelien Jarno 提交于
      The CONFIG_TCG_PASS_AREG0 code for calling ld/st helpers was
      broken in that it did not respect the ABI requirement that 64
      bit values were passed in even-odd register pairs. The simplest
      way to fix this is to implement some new utility functions
      for marshalling function arguments into the correct registers
      and stack, so that the code which sets up the address and
      data arguments does not need to care whether there has been
      a preceding env argument.
      
      Based on commit 9716ef3b for ARM by Peter Maydell.
      Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      18fec301
  3. 18 3月, 2012 1 次提交
  4. 15 3月, 2012 1 次提交
  5. 15 11月, 2011 1 次提交
  6. 21 7月, 2011 1 次提交
  7. 27 6月, 2011 2 次提交
  8. 12 1月, 2011 1 次提交
  9. 08 1月, 2011 1 次提交
  10. 09 6月, 2010 2 次提交
  11. 14 4月, 2010 1 次提交
    • S
      tcp/mips: Change TCG_AREG0 (fp -> s0) · 60bf84cf
      Stefan Weil 提交于
      Register fp (frame pointer) is a bad choice for compilations
      without optimisation, because the compiler makes heavy use
      of this register (so the resulting code crashes).
      
      Register s0 had been used for TCG_AREG1 in earlier releases,
      but was no longer used and is now free for TCG_AREG0.
      
      The resulting code works for compilations without
      optimisation (tested with qemu mips in qemu mips
      on x86 host).
      Signed-off-by: NStefan Weil <weil@mail.berlios.de>
      Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
      60bf84cf
  12. 05 4月, 2010 3 次提交
  13. 29 3月, 2010 1 次提交
  14. 28 3月, 2010 1 次提交
  15. 27 3月, 2010 5 次提交
  16. 10 2月, 2010 1 次提交
  17. 09 2月, 2010 1 次提交
  18. 08 2月, 2010 1 次提交
  19. 01 12月, 2009 1 次提交
    • A
      tcg: initial mips support · afa05235
      Aurelien Jarno 提交于
      Based on a patch from Arnaud Patard (Rtp) <arnaud.patard@rtp-net.org>
      
      A few words about design choices:
      * Two registers, at and t0, are reserved for TCG internal use. They are
        useful for bswap and 64-bit ops.
      * Most ops supports a constant argument with value 0, which is actually
        mapped to the zero register.
      * While the at register is available for constant loading, ops only
        support a limited range of constants. TCG does a better job doing the
        register allocation and constant loading by itself. There are plenty of
        registers available anyway.
      Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
      afa05235