aboutsummaryrefslogtreecommitdiff
path: root/gcc/match.pd
AgeCommit message (Expand)AuthorFilesLines
2022-09-14Disallow pointer operands for |, ^ and partly & [PR106878]Jakub Jelinek1-1/+5
2022-09-02Convert rest of compiler to dconst[n]inf.Aldy Hernandez1-1/+1
2022-08-30A == 0 ? A : -A same as -A (when A is 0.0)Aldy Hernandez1-1/+1
2022-08-18middle-end/106617 - fix fold_binary_op_with_conditional_arg pattern issueRichard Biener1-1/+3
2022-08-16middle-end/106630 - avoid ping-pong between extract_muldiv and match.pdRichard Biener1-1/+1
2022-08-15PR tree-optimization/64992: (B << 2) != 0 is B when B is Boolean.Roger Sayle1-0/+20
2022-08-15PR tree-optimization/71343: Optimize (X<<C)&(Y<<C) as (X&Y)<<C.Roger Sayle1-0/+20
2022-08-09middle-end: Optimize ((X >> C1) & C2) != C3 for more cases.Roger Sayle1-11/+34
2022-08-04middle-end: Simplify subtract where both arguments are being bitwise inverted.Tamar Christina1-0/+5
2022-08-04match.pd: Add bitwise and pattern [PR106243]Sam Feifer1-0/+5
2022-08-01match.pd: Add new division pattern [PR104992]Sam Feifer1-0/+6
2022-07-25middle-end/106414 - fix mistake in ~(x ^ y) -> x == y patternRichard Biener1-1/+2
2022-07-21match.pd: Add new abs pattern [PR94920]Sam Feifer1-0/+10
2022-07-21tree-optimization/106379 - add missing ~(a ^ b) folding for _BoolRichard Biener1-0/+6
2022-07-09[PATCH] match.pd: Add new bitwise arithmetic pattern [PR98304]Sam Feifer1-0/+12
2022-07-08middle-end: don't lower past veclower [PR106063]Tamar Christina1-4/+10
2022-06-28middle-end/106053 - fold_sign_changed_comparison and large boolsRichard Biener1-1/+6
2022-06-27[PATCH] PR tree-optimization/94026: Simplify (X>>8)&6 != 0 as X&1536 != 0.Roger Sayle1-0/+23
2022-06-24middle-end/106070 - bogus cond-expr foldingRichard Biener1-4/+7
2022-06-21match.pd: Remove "+ 0x80000000" in int comparisons [PR94899]Arjun Shankar1-0/+13
2022-06-18PR tree-optimization/105835: Two narrowing patterns for match.pd.Roger Sayle1-0/+15
2022-06-16match.pd: Improve y == MIN || x < y optimization [PR105983]Jakub Jelinek1-2/+2
2022-06-16match.pd: Fix up __builtin_mul_overflow_p signed type optimization [PR105984]Jakub Jelinek1-5/+4
2022-06-16Simplify (B * v + C) * D -> BD* v + CD when B,C,D are all INTEGER_CST.liuhongt1-0/+81
2022-06-15Fold truncations of left shifts in match.pdRoger Sayle1-9/+10
2022-06-14middle-end/105965 - add missing v_c_e <{ el }> simplificationRichard Biener1-4/+13
2022-06-03match.pd: Optimize __builtin_mul_overflow_p (x, cst, (stype)0) [PR105777]Jakub Jelinek1-3/+27
2022-06-01match.pd: Optimize __builtin_mul_overflow_p (x, cst, (utype)0) to x > ~(utype...Jakub Jelinek1-0/+11
2022-05-27Canonicalize X&-Y as X*Y in match.pd when Y is [0,1].Roger Sayle1-45/+41
2022-05-25Add new parameter to vec_perm_const hook for specifying operand mode.Prathamesh Kulkarni1-3/+5
2022-05-18Enhance final_value_replacement_loop to handle bitwise induction.liuhongt1-0/+10
2022-05-16Add MIN/MAX folding from fold_cond_expr_with_comparison to match.pdRichard Biener1-0/+46
2022-05-11Implement some of fold_binary_op_with_conditional_arg in match.pdRichard Biener1-1/+40
2022-05-11This patch skips constant folding for fmin/max when either argument is sNaN. ...Haochen Gui1-5/+12
2022-05-09Remove GIMPLE restriction of ! using match.pd patternsRichard Biener1-11/+1
2022-03-16Some minor HONOR_NANS improvements to match.pdRoger Sayle1-3/+3
2022-03-15PR tree-optimization/101895: Fold VEC_PERM to help recognize FMA.Roger Sayle1-2/+19
2022-03-12PR middle-end/98420: Don't fold x - x to 0.0 with -frounding-mathRoger Sayle1-1/+4
2022-02-25match.pd: Further complex simplification fixes [PR104675]Jakub Jelinek1-2/+2
2022-02-25match.pd: Don't create BIT_NOT_EXPRs for COMPLEX_TYPE [PR104675]Jakub Jelinek1-1/+3
2022-02-23middle-end/104644 - recursion with bswap match.pd patternRichard Biener1-1/+1
2022-02-22Implement constant-folding simplifications of reductions.Roger Sayle1-0/+18
2022-02-17Restrict the two sources of vect_recog_cond_expr_convert_pattern to be of the...liuhongt1-0/+6
2022-02-13Add vect_recog_cond_expr_convert_pattern.liuhongt1-0/+14
2022-02-11match.pd: Fix up (X & Y) CMP 0 -> X CMP2 ~Y simplifications [PR104499]Jakub Jelinek1-1/+1
2022-02-11Add single_use to simplification (uncond_op + vec_cond -> cond_op).liuhongt1-4/+8
2022-02-10middle-end/104467 - fix vector extract simplificationRichard Biener1-1/+1
2022-02-09[PATCH] PR tree-optimization/104420: Fix checks for constant folding X*0.0Roger Sayle1-2/+1
2022-02-05match.pd: Fix x * 0.0 -> 0.0 folding [PR104389]Jakub Jelinek1-1/+3
2022-02-04Disable new 1/X optimization with -fnon-call-exceptionsEric Botcazou1-5/+14