aboutsummaryrefslogtreecommitdiff
path: root/tcg/optimize.c
AgeCommit message (Expand)AuthorFilesLines
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
2021-10-27tcg/optimize: Split out fold_xi_to_iRichard Henderson1-18/+20
2021-10-27tcg/optimize: Split out fold_xx_to_xRichard Henderson1-15/+24
2021-10-27tcg/optimize: Split out fold_xx_to_iRichard Henderson1-17/+24
2021-10-27tcg/optimize: Split out fold_movRichard Henderson1-13/+14
2021-10-27tcg/optimize: Split out fold_dup, fold_dup2Richard Henderson1-22/+31
2021-10-27tcg/optimize: Split out fold_bswapRichard Henderson1-11/+16
2021-10-27tcg/optimize: Split out fold_count_zerosRichard Henderson1-14/+18
2021-10-27tcg/optimize: Split out fold_depositRichard Henderson1-10/+15
2021-10-27tcg/optimize: Split out fold_extract, fold_sextractRichard Henderson1-18/+30