summaryrefslogtreecommitdiff
path: root/tcg/optimize.c
AgeCommit message (Expand)AuthorFilesLines
2016-08-05tcg: Lower indirect registers in a separate passRichard Henderson1-29/+2
2016-08-05tcg: Reorg TCGOp chainingRichard Henderson1-6/+2
2016-05-19exec: extract exec/tb-context.hPaolo Bonzini1-1/+1
2016-05-19qemu-common: push cpu.h inclusion out of qemu-common.hPaolo Bonzini1-2/+1
2016-04-21tcg: use tcg_debug_assert instead of assert (fix performance regression)Aurelien Jarno1-2/+2
2016-01-29tcg: Clean up includesPeter Maydell1-3/+1
2015-08-24tcg: Split trunc_shr_i32 opcode into extr[lh]_i64_i32Richard Henderson1-11/+11
2015-08-24tcg/optimize: add optimizations for ext_i32_i64 and extu_i32_i64 opsAurelien Jarno1-0/+13
2015-08-24tcg: rename trunc_shr_i32 into trunc_shr_i64_i32Aurelien Jarno1-3/+3
2015-08-24tcg/optimize: allow constant to have copiesAurelien Jarno1-8/+2
2015-08-24tcg/optimize: track const/copy status separatelyAurelien Jarno1-28/+14
2015-08-24tcg/optimize: add temp_is_const and temp_is_copy functionsAurelien Jarno1-71/+60
2015-08-24tcg/optimize: optimize temps trackingAurelien Jarno1-11/+32
2015-08-24tcg/optimize: fix constant signednessAurelien Jarno1-5/+5
2015-07-23tcg/optimize: fix tcg_opt_gen_moviAurelien Jarno1-1/+1
2015-06-09tcg/optimize: rename tcg_constant_foldingAurelien Jarno1-6/+1
2015-06-09tcg/optimize: fold constant test in tcg_opt_gen_movAurelien Jarno1-53/+36
2015-06-09tcg/optimize: fold temp copies test in tcg_opt_gen_movAurelien Jarno1-18/+9
2015-06-09tcg/optimize: remove opc argument from tcg_opt_gen_movAurelien Jarno1-7/+7
2015-06-09tcg/optimize: remove opc argument from tcg_opt_gen_moviAurelien Jarno1-20/+20
2015-05-14tcg: Merge memop and mmu_idx parameters to qemu_ld/stRichard Henderson1-1/+2
2015-03-16tcg/optimize: Handle or r,a,a with constant aRichard Henderson1-1/+4
2015-02-12tcg: Implement insert_op_beforeRichard Henderson1-22/+35
2015-02-12tcg: Remove opcodes instead of noping them outRichard Henderson1-7/+7
2015-02-12tcg: Put opcodes in a linked listRichard Henderson1-170/+116
2014-06-18tcg/optimize: Don't special case TCG_OPF_CALL_CLOBBERRichard Henderson1-5/+4
2014-06-04tcg: Remove TCG_TARGET_HAS_new_ldstRichard Henderson1-5/+0
2014-05-28tcg/optimize: Remember garbage high bits for 32-bit opsRichard Henderson1-7/+26
2014-05-28tcg/optimize: Move updating of gen_opc_buf into tcg_opt_gen_mov*Richard Henderson1-61/+56
2014-05-28tcg: Optimize brcond2 and setcond2 ne/eqRichard Henderson1-0/+94
2014-05-12tcg: Make call address a constant parameterRichard Henderson1-42/+33
2014-04-28tcg: Add INDEX_op_trunc_shr_i32Richard Henderson1-0/+16
2014-04-18tcg: Fix out of range shift in deposit optimizationsRichard Henderson1-6/+4
2014-04-18tcg: Mask shift quantities while foldingRichard Henderson1-15/+20
2014-02-17tcg/optimize: Add more identity simplificationsRichard Henderson1-15/+24
2014-02-17tcg/optimize: Optmize ANDC X,Y,Y to MOV X,0Richard Henderson1-0/+1
2014-02-17tcg/optimize: Simply some logical ops to NOTRichard Henderson1-0/+57
2014-02-17tcg/optimize: Handle known-zeros masks for ANDCRichard Henderson1-0/+11
2014-02-17tcg/optimize: add known-zero bits compute for load opsAurelien Jarno1-1/+25
2014-02-17tcg/optimize: improve known-zero bits for 32-bit opsAurelien Jarno1-0/+6
2014-02-17tcg/optimize: fix known-zero bits optimizationAurelien Jarno1-1/+7
2014-02-17tcg/optimize: fix known-zero bits for right shift opsAurelien Jarno1-5/+14
2013-09-25misc: Use new rotate functionsStefan Weil1-8/+4
2013-09-02tcg: Constant fold div, remRichard Henderson1-0/+23
2013-09-02tcg: Add muluh and mulsh opcodesRichard Henderson1-0/+20
2013-05-09tcg/optimize: fix setcond2 optimizationAurelien Jarno1-0/+1
2013-03-23tcg-optimize: Fold sub r,0,x to neg r,xRichard Henderson1-1/+33
2013-02-23tcg: Add signed multiword multiplication operationsRichard Henderson1-0/+1
2013-02-23tcg: Add 64-bit multiword arithmetic operationsRichard Henderson1-2/+2
2013-01-19optimize: optimize using nonzero bitsPaolo Bonzini1-2/+28