aboutsummaryrefslogtreecommitdiff
path: root/tcg/optimize.c
AgeCommit message (Expand)AuthorFilesLines
2024-05-06tcg/optimize: Optimize setcond with zmaskRichard Henderson1-0/+110
2024-04-09tcg/optimize: Do not attempt to constant fold neg_vecRichard Henderson1-9/+8
2024-03-29tcg/optimize: Fix sign_mask for logical right-shiftRichard Henderson1-1/+1
2024-02-29tcg/optimize: fix uninitialized variablePaolo Bonzini1-1/+2
2024-02-03tcg/optimize: Lower TCG_COND_TST{EQ,NE} if unsupportedRichard Henderson1-8/+52
2024-02-03tcg/optimize: Handle TCG_COND_TST{EQ,NE}Richard Henderson1-22/+218
2024-02-03tcg/optimize: Do swap_commutative2 in do_constant_folding_cond2Richard Henderson1-50/+57
2024-02-03tcg/optimize: Split out do_constant_folding_cond1Richard Henderson1-30/+27
2024-02-03tcg/optimize: Split out arg_is_const_valRichard Henderson1-15/+23
2023-11-06tcg/optimize: Canonicalize sub2 with constants to add2Richard Henderson1-2/+19
2023-11-06tcg/optimize: Canonicalize subi to addi during optimizationRichard Henderson1-1/+13
2023-11-06tcg/optimize: Split out arg_new_constantRichard Henderson1-11/+18
2023-11-06tcg: Eliminate duplicate env store operationsRichard Henderson1-0/+13
2023-11-06tcg/optimize: Optimize env memory operationsRichard Henderson1-21/+243
2023-11-06tcg/optimize: Split out cmp_better_copyRichard Henderson1-18/+11
2023-11-06tcg/optimize: Pipe OptContext into reset_tsRichard Henderson1-7/+7
2023-11-06tcg: Remove TCG_TARGET_HAS_neg_{i32,i64}Richard Henderson1-2/+2
2023-10-22tcg: Optimize past conditional branchesRichard Henderson1-3/+5
2023-08-24tcg: Introduce negsetcond opcodesRichard Henderson1-1/+40
2023-08-24tcg: Fold deposit with zero to andRichard Henderson1-0/+37
2023-06-05tcg: Split tcg/tcg-op-common.h from tcg/tcg-op.hRichard Henderson1-1/+1
2023-05-16tcg: Split INDEX_op_qemu_{ld,st}* for guest address sizeRichard Henderson1-7/+14
2023-05-16tcg: Add INDEX_op_qemu_{ld,st}_i128Richard Henderson1-0/+2
2023-04-23tcg: Replace tcg_abort with g_assert_not_reachedRichard Henderson1-6/+4
2023-03-01tcg: Rename TEMP_LOCAL to TEMP_TBRichard Henderson1-1/+1
2023-01-05tcg: Reorg function callsRichard Henderson1-4/+2
2023-01-05tcg: Pass number of arguments to tcg_emit_op() / tcg_op_insert_*()Philippe Mathieu-Daudé1-2/+2
2022-03-04tcg: Add opcodes for vector nand, nor, eqvRichard Henderson1-6/+6
2022-03-04tcg/optimize: only read val after const checkAlex Bennée1-4/+4
2022-01-04tcg/optimize: Fix folding of vector opsRichard Henderson1-11/+38
2021-11-11tcg/optimize: Add an extra cast to fold_extract2Richard Henderson1-1/+1
2021-10-28tcg/optimize: Propagate sign info for shiftingRichard Henderson1-3/+47
2021-10-28tcg/optimize: Propagate sign info for bit countingRichard Henderson1-1/+2
2021-10-28tcg/optimize: Propagate sign info for setcondRichard Henderson1-0/+2
2021-10-28tcg/optimize: Propagate sign info for logical operationsRichard Henderson1-0/+29
2021-10-28tcg/optimize: Optimize sign extensionsRichard Henderson1-21/+102
2021-10-28tcg/optimize: Use fold_xx_to_i for remRichard Henderson1-1/+5
2021-10-28tcg/optimize: Use fold_xi_to_x for divRichard Henderson1-1/+5
2021-10-28tcg/optimize: Use fold_xi_to_x for mulRichard Henderson1-1/+2
2021-10-28tcg/optimize: Use fold_xx_to_i for orcRichard Henderson1-0/+1
2021-10-28tcg/optimize: Stop forcing z_mask to "garbage" for 32-bit valuesRichard Henderson1-19/+16
2021-10-27tcg/optimize: Sink commutative operand swapping into fold functionsRichard Henderson1-72/+70
2021-10-27tcg/optimize: Expand fold_addsub2_i32 to 64-bit opsRichard Henderson1-21/+44
2021-10-27tcg/optimize: Expand fold_mulu2_i32 to all 4-arg multipliesRichard Henderson1-9/+35
2021-10-27tcg/optimize: Split out fold_masksRichard Henderson1-251/+294
2021-10-27tcg/optimize: Split out fold_ix_to_iRichard Henderson1-18/+10
2021-10-27tcg/optimize: Split out fold_xi_to_xRichard Henderson1-35/+26
2021-10-27tcg/optimize: Split out fold_sub_to_negRichard Henderson1-42/+47
2021-10-27tcg/optimize: Split out fold_to_notRichard Henderson1-72/+86
2021-10-27tcg/optimize: Add type to OptContextRichard Henderson1-59/+88