1. 08 2月, 2017 1 次提交
  2. 27 12月, 2016 1 次提交
  3. 21 12月, 2016 1 次提交
    • T
      Move target-* CPU file into a target/ folder · fcf5ef2a
      Thomas Huth 提交于
      We've currently got 18 architectures in QEMU, and thus 18 target-xxx
      folders in the root folder of the QEMU source tree. More architectures
      (e.g. RISC-V, AVR) are likely to be included soon, too, so the main
      folder of the QEMU sources slowly gets quite overcrowded with the
      target-xxx folders.
      To disburden the main folder a little bit, let's move the target-xxx
      folders into a dedicated target/ folder, so that target-xxx/ simply
      becomes target/xxx/ instead.
      
      Acked-by: Laurent Vivier <laurent@vivier.eu> [m68k part]
      Acked-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de> [tricore part]
      Acked-by: Michael Walle <michael@walle.cc> [lm32 part]
      Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> [s390x part]
      Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> [s390x part]
      Acked-by: Eduardo Habkost <ehabkost@redhat.com> [i386 part]
      Acked-by: Artyom Tarasenko <atar4qemu@gmail.com> [sparc part]
      Acked-by: Richard Henderson <rth@twiddle.net> [alpha part]
      Acked-by: Max Filippov <jcmvbkbc@gmail.com> [xtensa part]
      Reviewed-by: David Gibson <david@gibson.dropbear.id.au> [ppc part]
      Acked-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> [cris&microblaze part]
      Acked-by: Guan Xuetao <gxt@mprc.pku.edu.cn> [unicore32 part]
      Signed-off-by: NThomas Huth <thuth@redhat.com>
      fcf5ef2a
  4. 18 10月, 2016 1 次提交
    • P
      Fix masking of PC lower bits when doing exception returns · fb0e8e79
      Peter Maydell 提交于
      In commit 9b6a3ea7 store_reg() was changed to mask
      both bits 0 and 1 of the new PC value when in ARM mode.
      Unfortunately this broke the exception return code paths
      when doing a return from ARM mode to Thumb mode: in some
      of these we write a new CPSR including new Thumb mode
      bit via gen_helper_cpsr_write_eret(), and then use store_reg()
      to write the new PC. In this case if the new CPSR specified
      Thumb mode then masking bit 1 of the PC is incorrect
      (these code paths correspond to the v8 ARM ARM pseudocode
      function AArch32.ExceptionReturn(), which always aligns the
      new PC appropriately for the new instruction set state).
      
      Instead of using store_reg() in exception-return code paths,
      call a new store_pc_exc_ret() which stores the raw new PC
      value to env->regs[15], and then mask it appropriately in
      the subsequent helper_cpsr_write_eret() where the new
      env->thumb state is available.
      
      This fixes a bug introduced by 9b6a3ea7 which caused
      crashes/hangs or otherwise bad behaviour for Linux when
      userspace was using Thumb.
      Reported-by: NJerome Forissier <jerome.forissier@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1476113163-24578-1-git-send-email-peter.maydell@linaro.org
      fb0e8e79
  5. 07 9月, 2016 1 次提交
  6. 12 7月, 2016 1 次提交
  7. 17 6月, 2016 1 次提交
  8. 06 6月, 2016 1 次提交
  9. 19 5月, 2016 1 次提交
  10. 12 5月, 2016 1 次提交
    • P
      target-arm: Split data abort syndrome generator · 094d028a
      Peter Maydell 提交于
      Split the data abort syndrome generator into two versions:
      One with a valid Instruction Specific Syndrome (ISS) and another without.
      
      The following new flags are supported by the syndrome generator
      with ISS:
      * isv - Instruction syndrome valid
      * sas - Syndrome access size
      * sse - Syndrome sign extend
      * srt - Syndrome register transfer
      * sf  - Sixty-Four bit register width
      * ar  - Acquire/Release
      
      These flags are not yet used, so this patch has no functional change
      except that we will now correctly set the IL bit in data abort
      syndromes without ISS information.
      Signed-off-by: NEdgar E. Iglesias <edgar.iglesias@xilinx.com>
      Message-id: 1461931684-1867-5-git-send-email-edgar.iglesias@gmail.com>
      [PMM: squashed in with patch which was just adding the IL bit]
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      094d028a
  11. 17 3月, 2016 1 次提交
  12. 04 3月, 2016 1 次提交
  13. 26 2月, 2016 3 次提交
  14. 18 2月, 2016 5 次提交
  15. 11 2月, 2016 2 次提交
  16. 21 1月, 2016 3 次提交
  17. 19 1月, 2016 1 次提交
  18. 15 1月, 2016 1 次提交
  19. 17 12月, 2015 1 次提交
  20. 10 11月, 2015 1 次提交
  21. 03 11月, 2015 1 次提交
  22. 27 10月, 2015 4 次提交
  23. 16 10月, 2015 2 次提交
  24. 25 8月, 2015 1 次提交
  25. 06 7月, 2015 1 次提交
    • P
      target-arm: Split DISAS_YIELD from DISAS_WFE · 049e24a1
      Peter Maydell 提交于
      Currently we use DISAS_WFE for both WFE and YIELD instructions.
      This is functionally correct because at the moment both of them
      are implemented as "yield this CPU back to the top level loop so
      another CPU has a chance to run". However it's rather confusing
      that YIELD ends up calling HELPER(wfe), and if we ever want to
      implement real behaviour for WFE and SEV it's likely to trip us up.
      
      Split out the yield codepath to use DISAS_YIELD and a new
      HELPER(yield) function, and have HELPER(wfe) call HELPER(yield).
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1435672316-3311-2-git-send-email-peter.maydell@linaro.org
      Reviewed-by: NPeter Crosthwaite <peter.crosthwaite@xilinx.com>
      049e24a1
  26. 16 6月, 2015 1 次提交
  27. 02 6月, 2015 1 次提交