Statistics
| Branch: | Revision:

root / tcg @ a2623021

Name Size
  arm
  hppa
  i386
  ia64
  mips
  ppc
  ppc64
  s390
  sparc
  tci
LICENSE 146 Bytes
README 15.6 kB
TODO 394 Bytes
optimize.c 33.1 kB
tcg-op.h 86.1 kB
tcg-opc.h 9.3 kB
tcg-runtime.h 706 Bytes
tcg.c 82 kB
tcg.h 20.7 kB

Latest revisions

# Date Author Comment
5256a720 01/19/2013 12:27 pm Peter Maydell

tcg/target-arm: Add missing parens to assertions

Silence a (legitimate) complaint about missing parentheses:

tcg/arm/tcg-target.c: In function ‘tcg_out_qemu_ld’:
tcg/arm/tcg-target.c:1148:5: error: suggest parentheses around
comparison in operand of ‘&’ [-Werror=parentheses]...

633f6502 01/19/2013 12:13 pm Paolo Bonzini

optimize: optimize using nonzero bits

This adds two optimizations using the non-zero bit mask. In some cases
involving shifts or ANDs the value can become zero, and can thus be
optimized to a move of zero. Second, useless zero-extension or an
AND with constant can be detected that would only zero bits that are...

3a9d8b17 01/19/2013 12:13 pm Paolo Bonzini

optimize: track nonzero bits of registers

Add a "mask" field to the tcg_temp_info struct. A bit that is zero
in "mask" will always be zero in the corresponding temporary.
Zero bits in the mask can be produced from moves of immediates,
zero-extensions, ANDs with constants, shifts; they can then be...

d193a14a 01/19/2013 12:13 pm Paolo Bonzini

optimize: only write to state when clearing optimizer data

The next patch will add to the TCG optimizer a field that should be
non-zero in the default case. Thus, replace the memset of the
temps array with a loop. Only the state field has to be up-to-date,...

163fa4b0 01/12/2013 02:45 pm Paolo Bonzini

tcg-i386: use LEA for 3-operand 64-bit addition

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

9a8a5ae6 01/02/2013 07:23 pm Stefan Weil

tcg: Remove unneeded assertion

Commit 7f6f0ae5b95adfa76e10eabe2c34424a955fd10c added two assertions.

One of these assertions is not needed:
The pointer ts is never NULL because it is initialized with the
address of an array element.

Reviewed-by: Richard Henderson <>...

753d99d3 12/29/2012 02:21 pm Richard Henderson

tcg-hppa: Fix typo in brcond2

Reported-by: Stuart Brady <>
Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

76a347e1 12/29/2012 02:21 pm Richard Henderson

tcg-i386: Perform cmov detection at runtime for 32-bit.

Existing compile-time detection is spotty at best. Convert
it all to runtime detection instead.

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

afcb92be 12/29/2012 02:14 pm Richard Henderson

tcg: Add TCGV_IS_UNUSED_*

Cc: Aurelien Jarno <>
Signed-off-by: Richard Henderson <>
Reviewed-by: Andreas Färber <>
Signed-off-by: Blue Swirl <>

1de7afc9 12/19/2012 09:32 am Paolo Bonzini

misc: move include files to include/qemu/

Signed-off-by: Paolo Bonzini <>

View revisions

Also available in: Atom