aboutsummaryrefslogtreecommitdiffstats
path: root/tcg
AgeCommit message (Expand)AuthorFilesLines
2018-02-08tcg/aarch64: Add vector operationsRichard Henderson3-47/+569
2018-02-08tcg/i386: Add vector operationsRichard Henderson3-54/+987
2018-02-08tcg/optimize: Handle vector opcodes during optimizeRichard Henderson1-73/+77
2018-02-08tcg: Add generic vector helpers with a scalar operandRichard Henderson2-2/+418
2018-02-08tcg: Add generic helpers for saturating arithmeticRichard Henderson2-0/+102
2018-02-08tcg: Add generic vector ops for multiplicationRichard Henderson8-0/+62
2018-02-08tcg: Add generic vector ops for comparisonsRichard Henderson7-0/+189
2018-02-08tcg: Add generic vector ops for constant shiftsRichard Henderson8-0/+416
2018-02-08tcg: Add generic vector expandersRichard Henderson8-16/+1620
2018-02-08tcg: Standardize integral arguments to expandersRichard Henderson2-29/+29
2018-02-08tcg: Add types and basic operations for host vectorsRichard Henderson6-4/+541
2018-02-08tcg: Allow multiple word entries into the constant poolRichard Henderson1-21/+92
2018-01-16tcg/ppc: Allow a 32-bit offset to the constant poolRichard Henderson1-28/+39
2018-01-16tcg/ppc: Support tlb offsets larger than 64kRichard Henderson1-9/+8
2018-01-16tcg/arm: Support tlb offsets larger than 64kRichard Henderson1-13/+17
2018-01-16tcg/arm: Fix double-word comparisonsRichard Henderson1-26/+60
2017-12-29tcg: Allow 6 arguments to TCG helpersRichard Henderson3-7/+13
2017-12-29tcg: Add tcg_signed_condRichard Henderson1-0/+6
2017-12-29tcg: Generalize TCGOp parametersRichard Henderson3-17/+19
2017-12-29tcg: Dynamically allocate TCGOpsRichard Henderson4-136/+62
2017-12-29tcg: Remove TCGV_UNUSED* and TCGV_IS_UNUSED*Richard Henderson3-15/+2
2017-11-03tcg/s390x: Use constant pool for prologueRichard Henderson1-32/+12
2017-11-03tcg: Allow constant pool entries in the prologueRichard Henderson1-7/+42
2017-10-24tcg: Initialize cpu_env genericallyRichard Henderson3-47/+24
2017-10-24tcg: enable multiple TCG contexts in softmmuEmilio G. Cota2-12/+141
2017-10-24tcg: introduce regions to split code_gen_bufferEmilio G. Cota2-2/+226
2017-10-24tcg: allocate optimizer temps with tcg_mallocEmilio G. Cota1-23/+19
2017-10-24tcg: distribute profiling counters across TCGContext'sEmilio G. Cota2-35/+113
2017-10-24tcg: introduce **tcg_ctxs to keep track of all TCGContext'sEmilio G. Cota1-0/+5
2017-10-24gen-icount: fold exitreq_label into TCGContextEmilio G. Cota1-0/+2
2017-10-24tcg: define tcg_init_ctx and make tcg_ctx a pointerEmilio G. Cota3-43/+46
2017-10-24tcg: take tb_ctx out of TCGContextEmilio G. Cota1-2/+0
2017-10-24tcg: check CF_PARALLEL instead of parallel_cpusEmilio G. Cota2-5/+6
2017-10-24tcg: define CF_PARALLEL and use it for TB hashing along with CF_COUNT_MASKEmilio G. Cota1-1/+0
2017-10-24tcg: Use offsets not indices for TCGv_*Richard Henderson1-31/+33
2017-10-24tcg: Remove TCGV_EQUAL*Richard Henderson2-8/+2
2017-10-24tcg: Remove GET_TCGV_* and MAKE_TCGV_*Richard Henderson3-55/+29
2017-10-24tcg: Introduce temp_tcgv_{i32,i64,ptr}Richard Henderson2-47/+53
2017-10-24tcg: Introduce tcgv_{i32,i64,ptr}_{arg,temp}Richard Henderson4-79/+111
2017-10-24tcg: Push tcg_ctx into tcg_gen_callNRichard Henderson2-4/+3
2017-10-24tcg: Push tcg_ctx into generator functionsRichard Henderson2-78/+69
2017-10-24tcg: Use per-temp state data in optimizeRichard Henderson2-182/+246
2017-10-24tcg: Remove unused TCG_CALL_DUMMY_TCGVRichard Henderson1-1/+0
2017-10-24tcg: Change temp_allocate_frame arg to TCGTempRichard Henderson1-5/+3
2017-10-24tcg: Avoid loops against variable boundsRichard Henderson1-17/+10
2017-10-24tcg: Use per-temp state data in livenessRichard Henderson2-109/+122
2017-10-24tcg: Introduce temp_arg, export temp_idxRichard Henderson2-13/+18
2017-10-24tcg: Return NULL temp for TCG_CALL_DUMMY_ARGRichard Henderson1-1/+1
2017-10-24tcg: Add temp_global bit to TCGTempRichard Henderson3-14/+24
2017-10-24tcg: Introduce arg_tempRichard Henderson3-28/+32
2017-10-24tcg: Propagate TCGOp down to allocatorsRichard Henderson1-38/+37
2017-10-24tcg: Propagate args to op->args in tcg.cRichard Henderson1-63/+58
2017-10-24tcg: Propagate args to op->args in optimizerRichard Henderson1-203/+227
2017-10-24tcg: Merge opcode arguments into TCGOpRichard Henderson4-142/+98
2017-10-10tcg/mips: delete commented out extern keyword.Jiang Biao1-1/+1
2017-10-10tcg: define TCG_HIGHWATEREmilio G. Cota1-1/+3
2017-10-10tcg: take .helpers out of TCGContextEmilio G. Cota2-7/+5
2017-10-10tci: move tci_regs to tcg_qemu_tb_exec's stackEmilio G. Cota1-273/+279
2017-10-10exec-all: extract tb->tc_* into a separate struct tc_tbEmilio G. Cota1-2/+2
2017-10-10tcg: remove addr argument from lookup_tb_ptrEmilio G. Cota2-4/+4
2017-10-10tcg/mips: constify tcg_target_callee_save_regsEmilio G. Cota1-1/+1
2017-10-10tcg/i386: constify tcg_target_callee_save_regsEmilio G. Cota1-1/+1
2017-09-17tcg/mips: Fully convert tcg_target_op_defRichard Henderson1-154/+170
2017-09-17tcg/sparc: Fully convert tcg_target_op_defRichard Henderson1-102/+137
2017-09-17tcg/ppc: Fully convert tcg_target_op_defRichard Henderson1-153/+168
2017-09-17tcg/arm: Fully convert tcg_target_op_defRichard Henderson1-79/+107
2017-09-17tcg/aarch64: Fully convert tcg_target_op_defRichard Henderson1-131/+151
2017-09-17tcg: Fix types in tcg_regset_{set,reset}_regRichard Henderson1-3/+3
2017-09-17tcg: Remove tcg_regset_set32Richard Henderson8-103/+90
2017-09-17tcg: Remove tcg_regset_{or,and,andnot,not}Richard Henderson2-5/+1
2017-09-17tcg: Remove tcg_regset_setRichard Henderson3-28/+28
2017-09-17tcg: Remove tcg_regset_clearRichard Henderson10-16/+14
2017-09-17tcg: Add tcg_op_supportedRichard Henderson2-3/+226
2017-09-17accel/tcg: move tcg-runtime to accel/tcg/Philippe Mathieu-Daudé2-370/+0
2017-09-17tcg/ppc: disable atomic write check on ppc32Philippe Mathieu-Daudé1-1/+3
2017-09-11tcg/tci: do not use ldst label (never implemented)Philippe Mathieu-Daudé1-4/+0
2017-09-07tcg/ppc: Use constant pool for moviRichard Henderson2-4/+31
2017-09-07tcg/ppc: Look for shifted constantsRichard Henderson1-10/+48
2017-09-07tcg/ppc: Change TCG_REG_RA to TCG_REG_TBRichard Henderson1-151/+122
2017-09-07tcg/arm: Use constant pool for callRichard Henderson1-6/+3
2017-09-07tcg/arm: Use constant pool for moviRichard Henderson2-18/+75
2017-09-07tcg/arm: Extract INSN_NOPRichard Henderson1-10/+11
2017-09-07tcg/arm: Code rearrangementRichard Henderson1-258/+257
2017-09-07tcg/arm: Tighten tlb indexing offset testRichard Henderson1-1/+3
2017-09-07tcg/arm: Improve tlb load for armv7Richard Henderson1-20/+52
2017-09-07tcg/sparc: Use constant pool for moviRichard Henderson2-21/+58
2017-09-07tcg/sparc: Introduce TCG_REG_TBRichard Henderson1-30/+140
2017-09-07tcg/aarch64: Use constant pool for moviRichard Henderson2-30/+33
2017-09-07tcg/s390: Use constant pool for cmpiRichard Henderson1-69/+67
2017-09-07tcg/s390: Use constant pool for xoriRichard Henderson1-37/+40
2017-09-07tcg/s390: Use constant pool for oriRichard Henderson1-40/+34
2017-09-07tcg/s390: Use constant pool for andiRichard Henderson1-6/+14
2017-09-07tcg/s390: Use constant pool for moviRichard Henderson2-53/+78
2017-09-07tcg/s390: Fix sign of patch_reloc addendRichard Henderson1-12/+13
2017-09-07tcg/s390: Introduce TCG_REG_TBRichard Henderson2-12/+61
2017-09-07tcg/i386: Store out-of-range call targets in constant poolRichard Henderson2-3/+16
2017-09-07tcg: Infrastructure for managing constant poolsRichard Henderson3-0/+98
2017-09-07tcg: Rearrange ldst label trackingRichard Henderson19-91/+57
2017-09-07tcg: Move USE_DIRECT_JUMP discriminator to tcg/cpu/tcg-target.hRichard Henderson13-17/+61
2017-09-07tcg/tci: Add TCG_TARGET_DEFAULT_MORichard Henderson1-0/+5
2017-09-06tcg/s390: Use slbgr for setcond le and leuRichard Henderson1-76/+43
2017-09-06tcg/s390: Use load-on-condition-2 facilityRichard Henderson2-17/+63
2017-09-06tcg/s390: Use distinct-operands facilityRichard Henderson2-28/+91
2017-09-06tcg/s390: Merge ori+xori facilities check to tcg_target_op_defRichard Henderson1-68/+33
2017-09-06tcg/s390: Merge add2i facilities check to tcg_target_op_defRichard Henderson1-24/+14
2017-09-06tcg/s390: Merge muli facilities check to tcg_target_op_defRichard Henderson1-20/+25
2017-09-06tcg/s390: Merge cmpi facilities check to tcg_target_op_defRichard Henderson1-38/+30
2017-09-06tcg/s390: Fully convert tcg_target_op_defRichard Henderson1-124/+154
2017-09-05tcg: Implement implicit ordering semanticsPranith Kumar1-0/+16
2017-09-05tcg: Add tcg target default memory orderingPranith Kumar6-0/+12
2017-09-05tcg: Remove support for ia64 as hostRichard Henderson2-2680/+0
2017-08-03tcg: Increase minimum alignment from tcg_malloc to 8Richard Henderson1-1/+4
2017-08-03tcg/arm: Fix runtime overalignment testRichard Henderson1-1/+1
2017-07-31docs: fix broken paths to docs/devel/atomics.txtPhilippe Mathieu-Daudé1-1/+1
2017-07-24util: Introduce include/qemu/cpuid.hRichard Henderson1-28/+8
2017-07-19tcg/tci: enable bswap16_i64Philippe Mathieu-Daudé1-1/+0
2017-07-19tcg/mips: reserve a register for the guest_base.Jiang Biao1-4/+13
2017-07-17exec: [tcg] Use different TBs according to the vCPU's dynamic tracing stateLluís Vilanova1-1/+2
2017-07-09tcg/mips: Bugfix for crash when running program with qemu-i386.Jiang Biao1-4/+4
2017-07-09tcg/aarch64: Enable indirect jump path using LDR (literal)Pranith Kumar1-14/+28
2017-07-09tcg/aarch64: Use ADRP+ADD to compute target addressPranith Kumar1-6/+30
2017-07-09tcg/aarch64: Introduce and use long branch to registerPranith Kumar1-2/+13
2017-07-04tcg: move tb_lock out of translate-all.hPaolo Bonzini1-4/+0
2017-06-22Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20170619' into stagingPeter Maydell6-117/+89
2017-06-19tcg/arm: Use ldr (literal) for goto_tbRichard Henderson1-5/+18
2017-06-19tcg/arm: Try pc-relative addresses for moviRichard Henderson1-13/+27
2017-06-19tcg/arm: Use indirect branch for goto_tbRichard Henderson1-15/+2
2017-06-19tcg/aarch64: Use ADR in tcg_out_moviRichard Henderson1-1/+6
2017-06-19tcg: allocate TB structs before the corresponding translated codeEmilio G. Cota2-1/+21
2017-06-19util: add cacheinfoEmilio G. Cota1-69/+2
2017-06-15tcg: move tcg backend files into accel/tcg/Yang Zhong2-0/+1484
2017-06-05tcg/mips: implement goto_ptrAurelien Jarno2-1/+14
2017-06-05tcg/arm: Implement goto_ptrRichard Henderson2-5/+22
2017-06-05tcg/arm: Clarify tcg_out_bx for arm4 hostRichard Henderson1-14/+15
2017-06-05tcg/s390: Implement goto_ptrRichard Henderson2-4/+22
2017-06-05tcg/sparc: Implement goto_ptrRichard Henderson2-2/+11
2017-06-05tcg/aarch64: Implement goto_ptrRichard Henderson2-3/+21
2017-06-05tcg/ppc: Implement goto_ptrRichard Henderson2-1/+8
2017-06-05tcg/i386: implement goto_ptrEmilio G. Cota2-3/+23
2017-06-05tcg: Introduce goto_ptr opcode and tcg_gen_lookup_and_goto_ptrEmilio G. Cota16-0/+49
2017-05-06tcg/mips: fix field extraction opcodeAurelien Jarno1-2/+2
2017-04-26tcg: Initialize return value after exit_atomicRichard Henderson1-0/+6
2017-04-20Drop QEMU_GNUC_PREREQ() checks for gcc older than 4.1Peter Maydell1-7/+0
2017-04-03tcg/sparc: Zero extend address argument to ld/st helpersPeter Maydell1-2/+2
2017-04-03tcg/sparc: Zero extend data argument to store helpersPeter Maydell1-0/+25
2017-03-03Merge branch 'icount-update' into HEADPaolo Bonzini1-1/+0
2017-03-01aarch64: Change ext type to TCGType to fix warningsPranith Kumar1-2/+2
2017-02-24tcg: enable MTTCG by default for ARM on x86 hostsAlex Bennée1-0/+11
2017-02-24tcg: add options for enabling MTTCGKONRAD Frederic1-0/+9
2017-02-24tcg: move TCG_MO/BAR types into own fileAlex Bennée2-17/+49
2017-02-22cpu-exec: unify icount_decr and tcg_exit_reqPaolo Bonzini1-1/+0
2017-02-03tci: Remove invalid assertionsStefan Weil1-2/+0
2017-01-17tcg/i386: Always use TZCNT when availableRichard Henderson1-3/+7
2017-01-17Revert "tcg/i386: Rely on undefined/undocumented behaviour of BSF/BSR"Richard Henderson1-22/+13
2017-01-13tcg/aarch64: Fix tcg_out_moviRichard Henderson1-33/+24
2017-01-13tcg/aarch64: Fix addsub2 for 0+CRichard Henderson1-0/+9
2017-01-13tcg/s390: Fix merge error with facilitiesRichard Henderson1-1/+1
2017-01-10tcg/i386: Handle ctpop opcodeRichard Henderson2-3/+14
2017-01-10tcg/ppc: Handle ctpop opcodeRichard Henderson2-3/+14
2017-01-10tcg: Use ctpop to generate ctz if neededRichard Henderson1-40/+60
2017-01-10tcg: Add opcode for ctpopRichard Henderson15-0/+69
2017-01-10tcg: Add helpers for clrsbRichard Henderson3-0/+34
2017-01-10tcg/i386: Rely on undefined/undocumented behaviour of BSF/BSRRichard Henderson1-13/+22
2017-01-10tcg/i386: Handle ctz and clz opcodesRichard Henderson2-13/+120
2017-01-10tcg/i386: Allow bmi2 shiftx to have non-matching operandsRichard Henderson1-14/+19
2017-01-10tcg/i386: Hoist common arguments in tcg_out_opRichard Henderson1-102/+95
2017-01-10tcg/i386: Fuly convert tcg_target_op_defRichard Henderson1-142/+198
2017-01-10tcg/s390: Handle clz opcodeRichard Henderson2-2/+36
2017-01-10tcg/mips: Handle clz opcodeRichard Henderson2-2/+51
2017-01-10tcg/arm: Handle ctz and clz opcodesRichard Henderson2-2/+29
2017-01-10tcg/aarch64: Handle ctz and clz opcodesRichard Henderson2-4/+52
2017-01-10tcg/ppc: Handle ctz and clz opcodesRichard Henderson2-4/+73
2017-01-10tcg: Add clz and ctz opcodesRichard Henderson16-0/+246
2017-01-10tcg: Allow an operand to be matching or a constantRichard Henderson2-35/+41
2017-01-10tcg: Pass the opcode width to target_parse_constraintRichard Henderson10-85/+53
2017-01-10tcg: Transition flat op_defs array to a target callbackRichard Henderson11-77/+136
2017-01-10tcg: Add markup for output requires new registerRichard Henderson2-12/+23
2017-01-10tcg/optimize: Fold movcond 0/1 into setcondRichard Henderson1-0/+15
2017-01-10tcg/s390: Support deposit into zeroRichard Henderson1-4/+26
2017-01-10tcg/s390: Implement field extraction opcodesRichard Henderson2-2/+13
2017-01-10tcg/s390: Expose host facilities to tcg-target.hRichard Henderson2-104/+96
2017-01-10tcg/ppc: Implement field extraction opcodesRichard Henderson2-2/+12
2017-01-10tcg/mips: Implement field extraction opcodesRichard Henderson2-1/+12
2017-01-10tcg/i386: Implement field extraction opcodesRichard Henderson2-3/+47
2017-01-10tcg/arm: Implement field extraction opcodesRichard Henderson2-2/+26
2017-01-10tcg/arm: Move isa detection to tcg-target.hRichard Henderson2-44/+33
2017-01-10tcg/aarch64: Implement field extraction opcodesRichard Henderson2-4/+18
2017-01-10tcg: Add deposit_z expanderRichard Henderson2-0/+149
2017-01-10tcg: Minor adjustments to deposit expandersRichard Henderson1-2/+4
2017-01-10tcg: Add field extraction primitivesRichard Henderson15-2/+426
2017-01-06tcg-mips: Adjust qemu_ld/st for mips64Jin Guojie1-57/+146
2017-01-06tcg-mips: Adjust calling conventions for mips64Jin Guojie2-10/+30
2017-01-06tcg-mips: Add tcg unwind infoJin Guojie1-0/+44
2017-01-06tcg-mips: Adjust prologue for mips64Jin Guojie1-29/+25
2017-01-06tcg-mips: Adjust load/store functions for mips64Jin Guojie1-3/+11
2017-01-06tcg-mips: Adjust move functions for mips64Jin Guojie1-9/+25
2017-01-06tcg-mips: Add bswap32u and bswap64Jin Guojie1-3/+99
2017-01-06tcg-mips: Support 64-bit opcodesJin Guojie2-10/+353
2017-01-06tcg-mips: Add mips64 opcodesJin Guojie1-75/+118
2017-01-06tcg-mips: Move bswap code to a subroutineJin Guojie2-70/+139