1. 01 6月, 2011 1 次提交
  2. 22 5月, 2011 1 次提交
  3. 20 5月, 2011 1 次提交
  4. 20 4月, 2011 2 次提交
  5. 11 2月, 2011 1 次提交
  6. 24 1月, 2011 1 次提交
  7. 01 1月, 2011 1 次提交
    • A
      TCG: Improve tb_phys_hash_func() · f96a3834
      Aurelien Jarno 提交于
      Most of emulated CPU have instructions aligned on 16 or 32 bits, while
      on others GCC tries to align the target jump location. This means that
      1/2 or 3/4 of tb_phys_hash entries are never used.
      
      Update the hash function tb_phys_hash_func() to ignore the two lowest
      bits of the address. This brings a 6% speed-up when booting a MIPS
      image.
      Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
      f96a3834
  8. 22 12月, 2010 1 次提交
    • A
      tcg-arm: fix __clear_cache() warning · 4a1e19ae
      Aurelien Jarno 提交于
      Use __builtin___clear_cache() instead of __clear_cache() to avoid having
      to define the function as extern. Fix the following warning:
      
      | In file included from qemu/cpus.c:34:
      | qemu/exec-all.h: In function 'tb_set_jmp_target1':
      | qemu/exec-all.h:208: error: nested extern declaration of '__clear_cache'
      | make[1]: *** [cpus.o] Error 1
      | make: *** [subdir-i386-softmmu] Error 2
      Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
      4a1e19ae
  9. 21 10月, 2010 1 次提交
  10. 24 7月, 2010 1 次提交
  11. 22 7月, 2010 1 次提交
  12. 09 6月, 2010 1 次提交
  13. 12 5月, 2010 1 次提交
  14. 02 5月, 2010 1 次提交
    • S
      Clean up definition of MAX_OPC_PARAM · 4d0e4ac7
      Stuart Brady 提交于
      MAX_OPC_PARAM is intended to refer to the maximum number of entries used
      in gen_opparam_buf[] for any single helper call.  It is currently defined
      as 10, but for 32-bit archs, the correct value (with a maximum for four
      helper arguments) is 14, and for 64-bit archs, only 9 entries are needed.
      
      tcg_gen_callN() fills four entries with the function address, flags,
      number of args, etc. and on 32-bit archs uses a further two entries per
      argument (with a maximum of four helper arguments), plus two more for the
      return value.  On 64-bit archs, only half as many entries are used for the
      args and the return value.
      
      In reality, TBs tend not to consist purely of helper calls exceeding the
      stated 10 gen_opparam_buf[] entries, so this would never actually be a
      problem on 32-bit archs, but the definition is still rather confusing.
      Signed-off-by: NStuart Brady <sdb@zubnet.me.uk>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      4d0e4ac7
  15. 09 4月, 2010 2 次提交
  16. 30 3月, 2010 1 次提交
  17. 17 3月, 2010 1 次提交
    • P
      Large page TLB flush · d4c430a8
      Paul Brook 提交于
      QEMU uses a fixed page size for the CPU TLB.  If the guest uses large
      pages then we effectively split these into multiple smaller pages, and
      populate the corresponding TLB entries on demand.
      
      When the guest invalidates the TLB by virtual address we must invalidate
      all entries covered by the large page.  However the address used to
      invalidate the entry may not be present in the QEMU TLB, so we do not
      know which regions to clear.
      
      Implementing a full vaiable size TLB is hard and slow, so just keep a
      simple address/mask pair to record which addresses may have been mapped by
      large pages.  If the guest invalidates this region then flush the
      whole TLB.
      Signed-off-by: NPaul Brook <paul@codesourcery.com>
      d4c430a8
  18. 13 3月, 2010 3 次提交
  19. 01 3月, 2010 1 次提交
  20. 01 12月, 2009 1 次提交
  21. 02 10月, 2009 2 次提交
  22. 25 9月, 2009 1 次提交
  23. 23 9月, 2009 2 次提交
  24. 24 8月, 2009 1 次提交
    • A
      Unbreak large mem support by removing kqemu · 4a1418e0
      Anthony Liguori 提交于
      kqemu introduces a number of restrictions on the i386 target.  The worst is that
      it prevents large memory from working in the default build.
      
      Furthermore, kqemu is fundamentally flawed in a number of ways.  It relies on
      the TSC as a time source which will not be reliable on a multiple processor
      system in userspace.  Since most modern processors are multicore, this severely
      limits the utility of kqemu.
      
      kvm is a viable alternative for people looking to accelerate qemu and has the
      benefit of being supported by the upstream Linux kernel.  If someone can
      implement work arounds to remove the restrictions introduced by kqemu, I'm
      happy to avoid and/or revert this patch.
      
      N.B. kqemu will still function in the 0.11 series but this patch removes it from
      the 0.12 series.
      
      Paul, please Ack or Nack this patch.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      4a1418e0
  25. 28 7月, 2009 1 次提交
  26. 17 7月, 2009 1 次提交
  27. 19 4月, 2009 1 次提交
  28. 12 4月, 2009 1 次提交
  29. 11 4月, 2009 1 次提交
  30. 06 4月, 2009 1 次提交
  31. 09 2月, 2009 1 次提交
  32. 02 2月, 2009 1 次提交
  33. 15 1月, 2009 2 次提交
    • B
      Add noreturn function attribute · 7d99a001
      blueswir1 提交于
      Introduce noreturn attribute and attach it to cpu_loop_exit as well as
      interrupt/exception helpers for i386. This avoids a bunch of gcc4
      warnings.
      
      [ Note that this patch comes with a workaround to include qemu-common.h
      even in cases where is currently causes conflicts with dyngen-exec.h.
      I've been told that these conflicts will get resolved in the future
      (/me will try to have a look as well - as time permits). ]
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6303 c046a42c-6fe2-441c-8c8c-71466251a162
      7d99a001
    • M
      Remove all traces of __powerpc__ · e58ffeb3
      malc 提交于
      According to $GCC/gcc/config/rs6000/rs6000-c.c _ARCH_PPC is the
      ubiquitous define which should be used to test whether gcc targets
      PowerPC, on 64bit platforms _ARCH_PPC64 will be also defined.
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6301 c046a42c-6fe2-441c-8c8c-71466251a162
      e58ffeb3