aboutsummaryrefslogtreecommitdiff
path: root/gcc/match.pd
AgeCommit message (Expand)AuthorFilesLines
2024-10-30Match: Simplify (x != 0 ? x + ~0 : 0) to (x - x != 0).xuli1-0/+10
2024-10-25match.pd: Add std::pow folding optimizations.Jennifer Schmitz1-0/+28
2024-10-25Match: Simplify branch form 3 of unsigned SAT_ADD into branchlessPan Li1-4/+7
2024-10-25Default expand_vec_cond_expr_p code to ERROR_MARKRichard Biener1-10/+7
2024-10-25Restrict :c to commutative ops as intendedRichard Biener1-1/+1
2024-10-24Try to simplify (X >> C1) * (C2 << C1) -> X * C2Richard Sandiford1-0/+13
2024-10-24Handle POLY_INT_CSTs in get_nonzero_bitsRichard Sandiford1-0/+2
2024-10-24Try to simplify (X >> C1) << (C1 + C2) -> X << C2Richard Sandiford1-0/+13
2024-10-24Generalise ((X /[ex] A) +- B) * A -> X +- A * B ruleRichard Sandiford1-14/+24
2024-10-24Simplify (X /[ex] C1) * (C1 * C2) -> X * C2Richard Sandiford1-0/+8
2024-10-24Use get_nonzero_bits to simplify trunc_div to exact_divRichard Sandiford1-0/+9
2024-10-24Make more places handle exact_div like trunc_divRichard Sandiford1-29/+31
2024-10-22Match: Support IMM=1 for unsigned scalar .SAT_SUB IMM form 1xuli1-0/+7
2024-10-22Match: Support IMM=max-1 for unsigned scalar .SAT_SUB IMM form 1xuli1-1/+17
2024-10-21Match: Support form 1 for vector signed integer SAT_TRUNCPan Li1-1/+3
2024-10-15match.pd: Further fma negation fixes [PR116891]Jakub Jelinek1-3/+3
2024-10-15Match: Remove dup match pattern for signed_integer_sat_sub [PR117141]Pan Li1-13/+2
2024-10-14middle-end/116891 - fix (negate (IFN_FNMS@3 @0 @1 @2)) -> (IFN_FMA @0 @1 @2)Richard Biener1-1/+1
2024-10-14Match: Support form 3 for vector signed integer SAT_SUBPan Li1-0/+12
2024-10-12tree-optimization/117104 - add missed guards to max(a,b) != a simplificationRichard Biener1-1/+5
2024-10-12Match: Support form 1 for vector signed integer SAT_SUBPan Li1-0/+16
2024-10-11match.pd: Fold logarithmic identities.Jennifer Schmitz1-0/+25
2024-10-11middle-end/117086 - fixup vec_cond simplificationsRichard Biener1-21/+24
2024-10-11Match: Support form 4 for scalar signed integer SAT_TRUNCPan Li1-0/+1
2024-10-11Match: Support form 3 for scalar signed integer SAT_TRUNCPan Li1-0/+3
2024-10-11Match: Support form 2 for scalar signed integer SAT_TRUNCPan Li1-8/+13
2024-10-10match.pd: Check trunc_mod vector obtap before folding.Jennifer Schmitz1-2/+7
2024-10-09tree-optimization/117000 - elide .REDUC_IOR with compare against zeroRichard Biener1-0/+9
2024-10-08tree-optimization/116024 - simplify some cases of X +- C1 cmp C2Artemiy Volkov1-1/+42
2024-10-08tree-optimization/116024 - simplify C1-X cmp C2 for wrapping signed typesArtemiy Volkov1-1/+20
2024-10-08tree-optimization/116024 - simplify C1-X cmp C2 for unsigned typesArtemiy Volkov1-1/+22
2024-10-08tree-optimization/116024 - simplify C1-X cmp C2 for UB-on-overflow typesArtemiy Volkov1-0/+26
2024-10-08Match: Support form 1 for scalar signed integer SAT_TRUNCPan Li1-0/+22
2024-10-08Match: Support form 3 and form 4 for scalar signed integer SAT_SUBPan Li1-0/+13
2024-10-02Match: Support form 2 for scalar signed integer SAT_SUBPan Li1-0/+14
2024-09-30Match: Support form 1 for scalar signed integer SAT_SUBPan Li1-0/+14
2024-09-26[match.pd] Handle abs pattern with convertKugan Vivekanandarajah1-21/+35
2024-09-26Match: Support form 3 for vector signed integer .SAT_ADDPan Li1-1/+3
2024-09-25match: Fix `a != 0 ? a * b : 0` patterns for things that trap [PR116772]Andrew Pinski1-2/+8
2024-09-25match: Fix A || B not optimized to true when !B implies A [PR114326]Konstantinos Eleftheriou1-0/+30
2024-09-25match: Change (A * B) + (-C) to (B - C/A) * A, if C multiple of A [PR109393]Konstantinos Eleftheriou1-1/+20
2024-09-23Match: Support form 2 for vector signed integer .SAT_ADDPan Li1-0/+16
2024-09-19Match: Support form 3 for scalar signed integer .SAT_ADDPan Li1-0/+10
2024-09-18match.pd: Check trunc_mod vector obtap before folding.Jennifer Schmitz1-1/+6
2024-09-13Match: Remove unnecessary types_match for case 1 of signed SAT_ADDPan Li1-2/+1
2024-09-11Vect: Support form 1 of vector signed integer .SAT_ADDPan Li1-0/+16
2024-09-10Match: Support form 2 for scalar signed integer .SAT_ADDPan Li1-0/+14
2024-09-06Match: Add int type fits check for form 2 of .SAT_SUB imm operandPan Li1-1/+1
2024-09-06Match: Add int type fits check for form 1 of .SAT_SUB imm operandPan Li1-1/+1
2024-09-05Match: Fix ordered and nonequalHu, Lin11-2/+2