Features/TCI: Difference between revisions

From QEMU
(add TCG interpreter)
 
m (moved Features-Done/TCI to Features/TCI over redirect)
 
(6 intermediate revisions by 5 users not shown)
Line 1: Line 1:
== Summary ==
== Summary ==


On this page we are collecting the current state of the TCG Interpreter (= TCI) implementation for Qemu.
On this page we are collecting the current state of the TCG Interpreter (= TCI) implementation for QEMU.


TCI allows running QEMU on any 32 or 64 bit host (while the current QEMU only supports the most important
TCG (Tiny Code Generator) is a code generator which translates code fragments (basic blocks) from target code (any of the targets supported by QEMU) to a code representation which can be run on a host. TCI allows running QEMU on any 32 or 64 bit host, whereas QEMU without TCI supports only the most important host architectures (including x86, arm, mips, ppc, s390 and sparc).
host architectures like x86, arm, mips, ppc, s390, sparc).


See http://repo.or.cz/w/qemu/ar7.git/blob_plain/HEAD:/tcg/bytecode/README for more details.
See http://repo.or.cz/w/qemu/ar7.git/blob_plain/HEAD:/tcg/tci/README for more details.


== Owner ==
== Owner ==
Line 15: Line 14:
== Status ==
== Status ==


Old versions of the TCG interpreter were already published on the mailing list (qemu-devel).
The latest version is part of the official QEMU release.
The latest version which includes many fixes and improvements still has to be published
before it can be committed to the official QEMU release.


* Tested on x86 (32 and 64 bit), arm, mips (emulated) and ppc (emulated) hosts running Debian GNU Linux or MS Windows.
* Tested on x86 (32 and 64 bit), arm, mips (emulated) and ppc (emulated) hosts running Debian GNU Linux or MS Windows.
Line 24: Line 21:
== TODOs ==
== TODOs ==


* Publish and discuss latest code on qemu-devel.
* Add better disassembler.
* Add better disassembler.
* Run more tests (especially with new hosts).
* Run more tests (especially with new hosts).
* Commit code to official QEMU.
* Support more hosts (call API!).


== Code ==
== Code ==


We are currently keeping the code in a separate git repository.
The latest code is also available from http://repo.or.cz/w/qemu/ar7.git.


* http://repo.or.cz/w/qemu/ar7.git
[[Category:Completed feature pages]]

Latest revision as of 14:54, 11 October 2016

Summary

On this page we are collecting the current state of the TCG Interpreter (= TCI) implementation for QEMU.

TCG (Tiny Code Generator) is a code generator which translates code fragments (basic blocks) from target code (any of the targets supported by QEMU) to a code representation which can be run on a host. TCI allows running QEMU on any 32 or 64 bit host, whereas QEMU without TCI supports only the most important host architectures (including x86, arm, mips, ppc, s390 and sparc).

See http://repo.or.cz/w/qemu/ar7.git/blob_plain/HEAD:/tcg/tci/README for more details.

Owner

Status

The latest version is part of the official QEMU release.

  • Tested on x86 (32 and 64 bit), arm, mips (emulated) and ppc (emulated) hosts running Debian GNU Linux or MS Windows.
  • Tested with i386, x86_64, mips and other emulations in system and user mode.

TODOs

  • Add better disassembler.
  • Run more tests (especially with new hosts).
  • Support more hosts (call API!).

Code

The latest code is also available from http://repo.or.cz/w/qemu/ar7.git.