aboutsummaryrefslogtreecommitdiff
path: root/tcg/optimize.c
AgeCommit message (Expand)AuthorFilesLines
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
2021-10-27tcg/optimize: Split out fold_extract2Richard Henderson1-17/+22
2021-10-27tcg/optimize: Split out fold_movcondRichard Henderson1-25/+31
2021-10-27tcg/optimize: Split out fold_addsub2_i32Richard Henderson1-26/+44
2021-10-27tcg/optimize: Split out fold_mulu2_i32Richard Henderson1-16/+21
2021-10-27tcg/optimize: Split out fold_setcondRichard Henderson1-9/+14
2021-10-27tcg/optimize: Split out fold_brcondRichard Henderson1-14/+19
2021-10-27tcg/optimize: Split out fold_brcond2Richard Henderson1-78/+81
2021-10-27tcg/optimize: Split out fold_setcond2Richard Henderson1-73/+72
2021-10-27tcg/optimize: Split out fold_const{1,2}Richard Henderson1-52/+219
2021-10-27tcg/optimize: Split out fold_mb, fold_qemu_{ld,st}Richard Henderson1-38/+51
2021-10-27tcg/optimize: Use a boolean to avoid a mass of continuesRichard Henderson1-3/+6
2021-10-27tcg/optimize: Split out finish_foldingRichard Henderson1-16/+33
2021-10-27tcg/optimize: Return true from tcg_opt_gen_{mov,movi}Richard Henderson1-4/+5
2021-10-27tcg/optimize: Change fail return for do_constant_folding_cond*Richard Henderson1-71/+74
2021-10-27tcg/optimize: Drop nb_oargs, nb_iargs localsRichard Henderson1-10/+4
2021-10-27tcg/optimize: Split out fold_callRichard Henderson1-22/+41
2021-10-27tcg/optimize: Split out copy_propagateRichard Henderson1-8/+14
2021-10-27tcg/optimize: Split out init_argumentsRichard Henderson1-14/+11
2021-10-27tcg/optimize: Move prev_mb into OptContextRichard Henderson1-5/+6
2021-10-27tcg/optimize: Change tcg_opt_gen_{mov,movi} interfaceRichard Henderson1-33/+34