]> git.ipfire.org Git - thirdparty/gcc.git/history - gcc/match.pd
Checking undefined_p before using the vr
[thirdparty/gcc.git] / gcc / match.pd
2023-09-13  Jiufu GuoChecking undefined_p before using the vr
2023-09-12  Andrew PinskiMATCH: Simplify (a CMP1 b) ^ (a CMP2 b)
2023-09-11  Andrew PinskiMATCH: [PR111348] add missing :c to cmp in the `(a...
2023-09-11  Andrew PinskiMATCH: [PR111349] add missing :c to cmp in the `(a...
2023-09-11  Andrew PinskiMATCH: [PR111346] `X CMP MINMAX` pattern missing :c...
2023-09-10  Andrew PinskiFix PR 111331: wrong code for `a > 28 ? MIN<a, 28>...
2023-09-06  Jakub JelinekMiddle-end _BitInt support [PR102989]
2023-09-05  Andrew PinskiMATCH: Add `(x | c) & ~(y | c)` and `x & ~(y | x)`...
2023-09-05  Andrew PinskiMATCH: Add pattern for `(x | y) & (x & z)`
2023-09-05  Andrew PinskiMATCH: `(nop_convert)-(convert)a` into -(convert)a...
2023-09-05  Andrew PinskiMATCH: Add `~MAX(~X, Y)` pattern: [PR96694]
2023-09-05  Andrew PinskiMATCH: Transform `(1 >> X) !=/== 0` into `X ==/!= 0`
2023-09-04  Jiufu GuoOptimize '(X - N * M) / N' to 'X / N - M' if valid
2023-09-01  Andrew PinskiMATCH [PR19832]: Optimize some `(a != b) ? a OP b : c`
2023-08-31  Andrew PinskiMATCH: extend min_value/max_value match to vectors
2023-08-30  Richard Bienertree-optimization/111228 - combine two VEC_PERM_EXPRs
2023-08-29  Andrew PinskiMATCH: Move `(x | y) & (~x ^ y)` over to use bitwise_in...
2023-08-28  Andrew PinskiMATCH: Move `(X & ~Y) | (~X & Y)` over to use bitwise_i...
2023-08-28  Andrew PinskiMATCH: Remove redundant pattern for `(x | y) & ~x`
2023-08-25  Andrew PinskiMATCH: Move `a ? one_zero : one_zero` matching after...
2023-08-25  Andrew PinskiMATCH: `a | C -> C` when we know that `a & ~C == 0`
2023-08-24  Andrew PinskiMATCH: [PR111109] Fix bit_ior(cond,cond) when compariso...
2023-08-24  Andrew PinskiMATCH: remove negate for 1bit types
2023-08-22  Richard Bienertree-optimization/94864 - vector insert of vector extra...
2023-08-21  Andrew PinskiMATCH: [PR111002] Sink view_convert for vec_cond
2023-08-20  Andrew PinskiMATCH: Sink convert for vec_cond
2023-08-17  Andrew PinskiAdd support for vector conitional not
2023-08-11  Drew Rossmatch.pd: Implement missed optimization ((x ^ y) &...
2023-08-11  Andrew PinskiFix PR 110954: wrong code with cmp | !cmp
2023-08-09  Andrew PinskiMATCH: [PR110937/PR100798] (a ? ~b : b) should be optim...
2023-08-07  Andrew PinskiMATCH: [PR109959] `(uns <= 1) & uns` could be optimized...
2023-08-07  Andrew PinskiMATCH: Extend min_value/max_value to pointer types
2023-08-04  Richard Bienertree-optimization/110838 - less aggressively fold out...
2023-08-04  Andrew PinskiFix PR 110874: infinite loop in gimple_bitwise_inverted...
2023-08-04  Drew Rossmatch.pd: Canonicalize (signed x << c) >> c [PR101955]
2023-08-03  Andrew PinskiFix `~X & X` and `~X | X` patterns
2023-08-02  Andrew PinskiMove `~X & X` and `~X | X` over to use bitwise_inverted...
2023-08-01  Andrew PinskiFix PR 93044: extra cast is not removed
2023-07-31  Andrew PinskiMATCH: Add `a == b | a cmp b` and `a != b & a cmp b...
2023-07-31  Andrew PinskiMATCH: PR 106164 : Optimize `(X CMP1 Y) AND/IOR (X...
2023-07-31  Andrew Pinskitree-optimization: [PR100864] `(a&!b) | b` is not opimi...
2023-07-27  Richard Bienertree-optimization/91838 - fix FAIL of g++.dg/opt/pr91838.C
2023-07-24  Drew Rossmatch.pd: Implement missed optimization (~X | Y) ^...
2023-07-21  Andrew PinskiMATCH: Add Max<Max<a,b>,a> -> Max<a,b> simplifcation
2023-07-19  Andrew PinskiFix PR110726: a | (a == b) can sometimes produce wrong...
2023-07-17  Andrew PinskiPR 95923: More (boolean) bitop simplifications in match.pd
2023-07-17  Andrew PinskiFix PR 110666: `(a != 2) == a` produces wrong code
2023-07-13  Andrew PinskiFix part of PR 110293: `A NEEQ (A NEEQ CST)` part
2023-07-04  Andrew PinskiPR 110487: `(a !=/== CST1 ? CST2 : CST3)` pattern for...
2023-07-04  Andrew PinskiFix PR 110487: invalid signed boolean value
2023-07-04  Richard Bienermiddle-end/110495 - avoid associating constants with...
2023-06-29  Richard Bienermiddle-end/110461 - pattern applying wrongly to vectors
2023-06-27  Robin Dappmatch.pd: Use element_mode instead of TYPE_MODE.
2023-06-23  Prathamesh Kulkarni[aarch64/match.pd] Fix ICE observed in PR110280.
2023-06-23  Richard BienerUse element_precision for match.pd arith conversion...
2023-06-23  Richard BienerBogus and missed folding on vector compares
2023-06-16  Richard Bienertree-optimization/110278 - uns < (typeof uns)(uns ...
2023-06-16  Richard Bienertree-optimization/110269 - restore missed condition...
2023-06-09  Andrew PinskiAdd Plus to the op list of `(zero_one == 0) ? y : z...
2023-06-09  Andrew PinskiChange the `(zero_one ==/!= 0) ? y : z <op> y` patterns...
2023-06-09  Andrew PinskiMATCH: Allow unsigned types for `X & -Y -> X * Y` pattern
2023-06-09  Andrew PinskiMATCH: Fix zero_one_valued_p not to match signed 1...
2023-06-09  Richard Bienermiddle-end/110182 - TYPE_PRECISION on VECTOR_TYPE cause...
2023-06-07  Andrew PinskiMATCH: Fix comment for `(zero_one ==/!= 0) ? y : z...
2023-06-07  Jakub Jelinekmatch.pd: Improve zero_one_valued_p
2023-06-07  Andrew PinskiFor the `-A CMP -B -> B CMP A` pattern allow EQ/NE...
2023-06-07  Andrew PinskiAdd match patterns for `a ? onezero : onezero` where...
2023-06-07  Andrew PinskiMatch: zero_one_valued_p should match 0 constants too
2023-05-30  Andrew PinskiAdd a != MIN/MAX_VALUE_CST ? CST-+1 : a to minmax_from_...
2023-05-30  Andrew PinskiMATCH: Move `a <= CST1 ? MAX<a, CST2> : a` optimization...
2023-05-29  Eric BotcazouFix artificial overflow during GENERIC folding
2023-05-24  Roger SaylePR middle-end/109840: Preserve popcount/parity type...
2023-05-21  Jakub Jelinekatch.pd: Ensure (op CONSTANT_CLASS_P CONSTANT_CLASS_P...
2023-05-16  Andrew PinskiMATCH: [PR109424] Simplify min/max of boolean arguments
2023-05-14  Andrew PinskiMATCH: Add pattern for `signbit(x) ? x : -x` into abs...
2023-05-13  Andrew PinskiMATCH: Fix PR 109834, ICE with popcount combined with...
2023-05-12  Richard Bienertree-optimization/109791 - simplify (unsigned)&foo...
2023-05-11  mtsamisaarch64: convert vector shift + bitwise and + multiply...
2023-05-11  Roger Saylematch.pd: Simplify popcount(X&Y)+popcount(X|Y) as popco...
2023-05-11  Roger Saylematch.pd: Simplify popcount/parity of bswap/rotate.
2023-05-05  Andrew PinskiMATCH: Add ABSU<a> == 0 to a == 0 simplification
2023-05-02  Andrew PinskiMATCH: Port CLRSB part of builtin_zero_pattern
2023-05-02  Andrew Pinskitree-optimization: [PR109702] MATCH: Fix a ? func(a...
2023-04-30  Andrew PinskiMATCH: add some of what phiopt's builtin_zero_pattern did
2023-04-28  Andrew PinskiPHIOPT: Move two_value_replacement to match.pd
2023-04-28  Andrew PinskiMATCH: Add patterns from phiopt's minmax_replacement
2023-04-28  Andrew PinskiMATCH: Factor out code that for min max detection with...
2023-04-27  Richard Bienerwrong GIMPLE from (bit_field_ref CTOR ..) simplification
2023-04-26  Aldy HernandezRemove some uses of deprecated irange API.
2023-04-22  Jakub Jelinekmatch.pd: Fix fneg/fadd optimization [PR109583]
2023-04-18  Jakub Jelinekmatch.pd: Improve fneg/fadd optimization [PR109240]
2023-04-04  Marek Polaceksanitizer: missing signed integer overflow errors ...
2023-03-26  Jakub Jelinekmatch.pd: Fix up fneg/fadd simplification [PR109230]
2023-02-18  Andrew PinskiRemove #if GIMPLE around 1 - a pattern
2023-02-14  Andrew PinskiSimplify "1 - bool_val" to "bool_val ^ 1"
2023-02-09  Jakub Jelinekmatch.pd: Simplify BFR of insert when extracting exactl...
2023-02-09  Andrew Pinskimatch.pd: When simplifying BFR of an insert, require...
2023-01-27  Richard SandifordAdd support for conditional xorsign [PR96373]
2023-01-12  Roger SaylePR tree-optimization/92342: Optimize b & -(a==c) in...
2023-01-02  Jakub JelinekUpdate copyright years.
next