| Age | Commit message (Expand) | Author | Files | Lines |
| 2022-06-24 | fix "unreplaced" warnings caused by using typeof() on inline functions | Luc Van Oostenryck | 1 | -0/+17 |
| 2021-04-20 | Merge branches misc, cmp-pow2, optim-and-cmp, cmp-and-or and optim-cast-eval ... | Luc Van Oostenryck | 6 | -24/+136 |
| 2021-04-19 | simplify TRUNC(NOT(x)) --> NOT(TRUNC(x)) | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-04-18 | simplify AND(x >= 0, x < C) --> (unsigned)x < C | Luc Van Oostenryck | 2 | -2/+0 |
| 2021-04-18 | add testcases for AND(x > 0, x <= C) --> x u<= C | Luc Van Oostenryck | 2 | -0/+32 |
| 2021-04-18 | canonicalize constant signed compares toward zero | Luc Van Oostenryck | 1 | -0/+74 |
| 2021-04-18 | Merge branches 'fix-phisrc' and 'insert-last-insn' into memops-prep | Luc Van Oostenryck | 6 | -0/+124 |
| 2021-04-18 | add testcases for simplification of casts. | Luc Van Oostenryck | 2 | -24/+21 |
| 2021-04-02 | fix remove_merging_phisrc() | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-28 | correctly count phi arguments | Luc Van Oostenryck | 1 | -0/+27 |
| 2021-03-26 | additional testcase for remove_merging_phisrc() | Luc Van Oostenryck | 1 | -0/+24 |
| 2021-03-19 | fix phisources during SWITCH-BR conversion | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-19 | use convert_to_jump() when converting a CBR with same targets | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-19 | fix phisources during CBR-BR conversion | Luc Van Oostenryck | 2 | -2/+0 |
| 2021-03-19 | add testcases to check if phi-sources from removed targets are removed too | Luc Van Oostenryck | 4 | -0/+78 |
| 2021-03-13 | canonicalize ((x & M) == M) --> ((x & M) != 0) when M is a power-of-2 | Luc Van Oostenryck | 1 | -0/+12 |
| 2021-03-10 | simplify (x | M) cmpu C | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-10 | simplify (x | M) cmps C | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-10 | simplify (x | M) {==,!=} C | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-10 | simplify (x & M) {==,!=} C | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-10 | simplify (x & M) cmps 0 | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-10 | simplify (x & M) cmpu C | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-10 | simplify (x & M) cmps C | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-03-10 | add testcases for constant compares against AND/OR | Luc Van Oostenryck | 7 | -0/+116 |
| 2021-03-10 | change testing of signed compares against SMIN or SMAX | Luc Van Oostenryck | 1 | -4/+4 |
| 2021-01-26 | cmps: canonicalize SEL(x > 0, a, -a) --> SEL(x >= 0, a, -a) | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-01-26 | cmps: canonicalize SEL(x {<,<=} y, a, b) --> SEL(x {>=,>} y, b, a) | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-01-26 | cmps: canonicalize signed compares with constant | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-01-26 | cmps: canonicalize SMIN/SMAX +- 1 --> EQ/NE | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-01-26 | cmps: canonicalize signed compares with SMIN/SMAX | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-01-26 | cmps: simplify signed compares with SMIN or SMAX | Luc Van Oostenryck | 1 | -1/+0 |
| 2021-01-26 | cmps: add testcases for simplification of signed compares | Luc Van Oostenryck | 6 | -0/+106 |
| 2021-01-26 | cmps: fix simplification of sext(x) + signed compare of {SMAX,SMIN} | Luc Van Oostenryck | 1 | -11/+35 |
| 2021-01-24 | simplify LSR + SEXT into ASR | Luc Van Oostenryck | 1 | -0/+27 |
| 2020-11-28 | Merge branch 'bit-trans' into next | Luc Van Oostenryck | 9 | -0/+228 |
| 2020-11-27 | convert SEL(x & BIT1, BIT2, 0) into SHIFT(x & BIT1, S) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-27 | factorize SEL(x, OP(y,z), y) into OP(SEL(x, z, 0), y) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-27 | add testscases for 'bits translation' optimization | Luc Van Oostenryck | 2 | -0/+44 |
| 2020-11-27 | factorize SHIFT(x, s) OP SHIFT(y, s) into SHIFT((x OP y), s) | Luc Van Oostenryck | 3 | -3/+0 |
| 2020-11-27 | factorize (x OP1 z) OP2 (y OP1 z) into (x OP2 y) OP1 z | Luc Van Oostenryck | 4 | -4/+0 |
| 2020-11-27 | add testscases for some factorization of distributive operations | Luc Van Oostenryck | 7 | -0/+193 |
| 2020-11-26 | fix trivial_phi() when the target is before the single value | Luc Van Oostenryck | 1 | -0/+20 |
| 2020-11-24 | Merge branch 'optim-not' into next | Luc Van Oostenryck | 6 | -0/+69 |
| 2020-11-22 | Merge branch 'optim-cgoto' into next | Luc Van Oostenryck | 3 | -0/+54 |
| 2020-11-22 | not: simplify ((x cmp y) {&,|,^} (x !cmp y)) --> {0,1,1} | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-22 | not: simplify (~x {&,|,^} x) --> {0,~0,~0} | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-22 | canon: put PSEUDO_REGs in canonical order too | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-22 | canon: put PSEUDO_ARGs in canonical order too | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-22 | not: add testcases for canonicalization & simplification of negations | Luc Van Oostenryck | 6 | -0/+73 |
| 2020-11-21 | add a new instruction for label-as-value | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-21 | simplify CGOTO(SEL(x, L1, L2)) into CBR x, L1, L2 | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-21 | simplify OP_COMPUTEDGOTO with unique and known target | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-21 | add testcases for COMPUTEDGOTO simplification | Luc Van Oostenryck | 3 | -0/+57 |
| 2020-11-17 | cfg: early CFG simplification | Luc Van Oostenryck | 1 | -1/+1 |
| 2020-11-17 | cfg: call simplify_memops() unconditionally. | Luc Van Oostenryck | 2 | -0/+37 |
| 2020-11-17 | cfg: remove phi-sources when merging BBs | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-15 | cfg: add testcase for phi-adjusting during BB merge | Luc Van Oostenryck | 1 | -0/+24 |
| 2020-11-15 | testcase: avoid UNDEF | Luc Van Oostenryck | 1 | -2/+3 |
| 2020-11-09 | Merge branch 'optim-cmp' into next | Luc Van Oostenryck | 16 | -111/+293 |
| 2020-11-08 | select: simplify select(x, x, 0) --> x | Luc Van Oostenryck | 2 | -9/+3 |
| 2020-11-08 | select: simplify handling of select(x, 0, x) --> 0 | Luc Van Oostenryck | 1 | -0/+9 |
| 2020-11-08 | cmp: simplify compares and sign/zero extend | Luc Van Oostenryck | 2 | -2/+0 |
| 2020-11-08 | cmp: simplify zext(x) cmpu C | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-08 | cmp: simplify zext(x) cmps C | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-08 | cmp: canonicalize sext(x) cmpu C (with C >= SMAX) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-08 | cmp: simplify sext(x) cmps {SMAX,SMIN} | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-08 | cmp: simplify zext(x) cmp C --> x cmp C | Luc Van Oostenryck | 3 | -3/+0 |
| 2020-11-08 | cmp: simplify sext(x) cmp C --> x cmp C | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-08 | cmp: canonicalize unsigned (x {<=,>} SMAX) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-08 | cmp: canonicalize unsigned compare with UMAX or UMAX-1 | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-08 | cmp: simplify unsigned (x {<=,>} UMAX) into {1,0} | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-08 | cmp: canonicalize unsigned (x {<,>=} C) --> (x {<=,>} C-1) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-07 | simplify SEL(x == y, x, y) and friends | Luc Van Oostenryck | 1 | -0/+12 |
| 2020-11-07 | select: simplify SEL(SEL(x, C1, C2), y, z) --> y (with C1, C2 != 0) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-11-07 | select: simplify SEL(SEL(x, C, 0), y, z) --> SEL(x, y, z) and its dual | Luc Van Oostenryck | 2 | -2/+0 |
| 2020-11-07 | select: add some testcases for select simplification | Luc Van Oostenryck | 5 | -0/+54 |
| 2020-11-05 | cmp: add testcases for the simplification of compares | Luc Van Oostenryck | 15 | -0/+293 |
| 2020-11-02 | cmp: adapt testcase for compares' canonicalization | Luc Van Oostenryck | 1 | -111/+14 |
| 2020-11-01 | eval_insn: give an explicit type to compare's operands | Luc Van Oostenryck | 2 | -2/+0 |
| 2020-11-01 | eval_insn: add testcases for incorrect type in OP_SET_* | Luc Van Oostenryck | 3 | -0/+47 |
| 2020-11-01 | testsuite: add a new tag: check-output-returns | Luc Van Oostenryck | 1 | -0/+1 |
| 2020-11-01 | testsuite: add a new tag: check-output-match | Luc Van Oostenryck | 1 | -0/+12 |
| 2020-10-24 | Merge branches 'optim-setuimm' and 'optim-unop' into next | Luc Van Oostenryck | 8 | -0/+85 |
| 2020-10-24 | unop: simplify ~(-x) --> x - 1 | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-24 | unop: simplify ~(x ^ C) --> x ^ ~C | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-24 | unop: simplify ~(C - x) --> x + ~C | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-24 | unop: simplify ~(x + C) --> ~C - x | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-24 | unop: simplify -(~x) --> x + 1 | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-24 | unop: simplify -(x - y) --> y - x | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-24 | unop: simplify -(x + C) --> -C - x | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-23 | canonicalize unsigned compares against 0 or 1 | Luc Van Oostenryck | 1 | -1/+5 |
| 2020-10-23 | simplify unsigned compares against 0 | Luc Van Oostenryck | 1 | -0/+10 |
| 2020-10-23 | unop: add testcases for unop simplifications | Luc Van Oostenryck | 7 | -0/+78 |
| 2020-10-22 | Merge branch 'optim-base' into next | Luc Van Oostenryck | 15 | -0/+156 |
| 2020-10-21 | optim: fix some testcases related to bitfield manipulation | Luc Van Oostenryck | 2 | -5/+8 |
| 2020-10-20 | Merge branch 'bf-sign' into next | Luc Van Oostenryck | 2 | -15/+4 |
| 2020-10-20 | sub: simplify x + (y - x) --> y | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: simplify (x - y) + y --> x | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: simplify x - (y + x) --> -y | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: simplify x - (x + y) --> -y | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: simplify (x + y) - y --> x | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: simplify (x + y) - x --> y | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | add: simplify (-x + y) --> (y - x) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | add: simplify (x + -y) --> (x - y) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: simplify (x - -y) --> (x + y) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: simplify (C - y) + D --> eval(C+D) - y | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: simplify C - (D - z) --> z + eval(C-D) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: simplify C - (y + D) --> eval(C-D) - y | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | sub: canonicalize (0 - x) into -x | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | reassoc: simplify (x # C) # K --> x # eval(C # K) | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | constants must be truncated to the operation's size | Luc Van Oostenryck | 1 | -1/+0 |
| 2020-10-20 | add testcases about OP_ADD & OP_SUB simplifications | Luc Van Oostenryck | 15 | -0/+171 |
| 2020-10-01 | testsuite: fix erroneous comment | Luc Van Oostenryck | 1 | -1/+1 |
| 2020-09-16 | teach sparse about -funsigned-bitfields | Luc Van Oostenryck | 2 | -15/+4 |
| 2020-08-06 | bad-shift: wait dead code elimination to warn about bad shifts | Luc Van Oostenryck | 1 | -4/+8 |
| 2019-02-04 | target.c: ignore -m64 on archs where int32_t is a long | Luc Van Oostenryck | 1 | -0/+1 |
| 2018-09-10 | test: use integers of different sizes, even on 32-bit | Luc Van Oostenryck | 1 | -2/+2 |
| 2018-09-06 | Merge branch 'rem-trivial-phi' into tip | Luc Van Oostenryck | 1 | -0/+14 |
| 2018-09-01 | trivial-phi: remove more complex trivial phi-nodes | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-09-01 | trivial-phi: add testcase for unneeded trivial phi-nodes | Luc Van Oostenryck | 1 | -0/+15 |
| 2018-08-25 | fix: do not optimize away accesses to volatile bitfields | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-25 | add testcase for accesses to volatile bitfields | Luc Van Oostenryck | 1 | -0/+17 |
| 2018-08-25 | Merge branch 'ssa' into tip | Luc Van Oostenryck | 4 | -3/+24 |
| 2018-08-25 | Merge branch 'kill-dead-stores' into tip | Luc Van Oostenryck | 4 | -0/+128 |
| 2018-08-24 | Merge branches 'optim-trunc-or' and 'optim-mask-shift-or' into tip | Luc Van Oostenryck | 4 | -4/+0 |
| 2018-08-24 | simplify TRUNC(SHIFT(a | b, S), N) | Luc Van Oostenryck | 2 | -2/+0 |
| 2018-08-24 | simplify AND(SHIFT(a | b, S), M) | Luc Van Oostenryck | 2 | -2/+0 |
| 2018-08-22 | simplify TRUNC((x & M') | y, N) | Luc Van Oostenryck | 4 | -4/+0 |
| 2018-08-22 | Merge branches 'optim-shift-and' and 'optim-bitfield' into tip | Luc Van Oostenryck | 38 | -0/+628 |
| 2018-08-22 | simplify ((x & M) << S) when (M << S) == (-1 << S) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-22 | simplify ((x & M) << S) when (M << S) == 0 | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-22 | simplify ((x & M) >> S) when (M >> S) == (-1 >> S) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-22 | simplify ((x & M) >> S) when (M >> S) == 0 | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-22 | add testcases for {LSR,SHL}(AND(x, M), S) with shared AND(x, M) | Luc Van Oostenryck | 4 | -0/+66 |
| 2018-08-22 | simplify SHL((x & M') | y, S) | Luc Van Oostenryck | 7 | -7/+0 |
| 2018-08-22 | simplify OP((x | C), K) when (C & M) != C | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-22 | simplify OP((x | C), K) when (C & M) == M | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-22 | simplify OP((x | C), K) when (C & M) == 0 | Luc Van Oostenryck | 2 | -2/+0 |
| 2018-08-22 | simplify OP(((x & M') | y), K) when (M' & M) != M' | Luc Van Oostenryck | 3 | -3/+0 |
| 2018-08-22 | simplify OP(((x & M') | y), K) when (M' & M) == M | Luc Van Oostenryck | 3 | -3/+0 |
| 2018-08-22 | allow simplification of OP(((x & y) | (a & M')), K) | Luc Van Oostenryck | 3 | -3/+0 |
| 2018-08-22 | add testcases for bitfield & AND/OR simplification | Luc Van Oostenryck | 36 | -0/+625 |
| 2018-08-22 | add testcase for (((x & M') | (y & M'')) & M) | Luc Van Oostenryck | 2 | -0/+23 |
| 2018-08-17 | Merge branches 'optim-shl-lsr' and 'optim-trunc-trunc' into tip | Luc Van Oostenryck | 1 | -0/+12 |
| 2018-08-17 | simplify TRUNC(TRUNC(x)) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-17 | simplify ((x >> S) << S) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-16 | add testcase for TRUNC(TRUNC(x)) simplification | Luc Van Oostenryck | 1 | -0/+13 |
| 2018-08-16 | add testcase for ((x >> S) << S) simplification | Luc Van Oostenryck | 1 | -0/+15 |
| 2018-08-16 | rename testcase for ((x << S) >> S) simplification | Luc Van Oostenryck | 1 | -1/+1 |
| 2018-08-08 | simplify (x & M) >> S to (x >> S) & (M >> S) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-08 | simplify (x << S) >> S into x & (-1 >> S) | Luc Van Oostenryck | 3 | -11/+3 |
| 2018-08-08 | simplify ((x & M) | y) >> S to (y >> S) when (M >> S) == 0 | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-08 | simplify ((x & M') | y ) & M into (y & M) when (M' & M) == 0 | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-07 | optim: add a few more testcases for shift & mask | Luc Van Oostenryck | 1 | -0/+15 |
| 2018-08-06 | boolean conversion of boolean value is a no-op | Luc Van Oostenryck | 1 | -6/+6 |
| 2018-08-06 | simplify AND(SETCC(x,y), M) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-06 | simplify TRUNC(SETCC(x,y), N) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-06 | simplify SEXT(SETCC(x,y), N) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-06 | simplify ZEXT(SETCC(x,y), N) | Luc Van Oostenryck | 3 | -8/+3 |
| 2018-08-06 | simplify SETNE(TRUNC(x,N),{0,1}) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-06 | simplify SETNE(AND(X,1),0) to AND(X,1) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-08-06 | conditional branches can't accept arbitrary expressions | Luc Van Oostenryck | 1 | -2/+2 |
| 2018-08-04 | add testcase for linearize_logical() | Luc Van Oostenryck | 7 | -0/+118 |
| 2018-07-28 | Merge branch 'optim-setne' into tip | Luc Van Oostenryck | 4 | -37/+43 |
| 2018-07-28 | simplify 'x != 0' or 'x == 1' to 'x' | Luc Van Oostenryck | 2 | -37/+19 |
| 2018-07-28 | simplify SET{EQ,NE}(SEXT(x, N),{0,1}) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-07-28 | simplify SET{EQ,NE}(ZEXT(x, N),{0,1}) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-07-25 | testcase for SET{EQ,NE}([SZ]EXT(x, N),{0,1})'s simplification | Luc Van Oostenryck | 2 | -0/+26 |
| 2018-07-25 | Merge branch 'optim-cast' into tip | Luc Van Oostenryck | 18 | -0/+322 |
| 2018-07-25 | Merge branch 'optim-shift' into tip | Luc Van Oostenryck | 4 | -0/+286 |
| 2018-07-25 | shift: simplify ASR(ZEXT(X, N), C) | Luc Van Oostenryck | 1 | -0/+13 |
| 2018-07-25 | shift: simplify ASR(LSR(x,N),N') | Luc Van Oostenryck | 1 | -0/+42 |
| 2018-07-25 | shift: simplify LSR(LSR(x,N),N') & friends | Luc Van Oostenryck | 1 | -0/+149 |
| 2018-07-24 | use "%Le" to display floats | Luc Van Oostenryck | 1 | -8/+8 |
| 2018-07-23 | big-shift: add testcases for simplification of over-sized shifts | Luc Van Oostenryck | 1 | -7/+55 |
| 2018-07-23 | cast: simplify SEXT(ZEXT(x,N),N') | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-07-23 | cast: simplify ZEXT(ZEXT(x,N),N') | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-07-23 | cast: simplify SEXT(SEXT(x,N),N') | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-07-23 | cast: simplify AND(ZEXT(x,M),N) | Luc Van Oostenryck | 2 | -2/+0 |
| 2018-07-23 | cast: simplify [ZS]EXT(AND(x,M),N) | Luc Van Oostenryck | 3 | -3/+0 |
| 2018-07-23 | cast: preserve the sizes of TRUNC(AND(x,M),N) | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-07-23 | cast: simplify [SZ]EXT + TRUNC to a smaller/greater size | Luc Van Oostenryck | 2 | -2/+0 |
| 2018-07-23 | cast: simplify [SZ]EXT + TRUNC to original size | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-07-23 | add testcases for casts & bitfield insertion/extraction | Luc Van Oostenryck | 18 | -0/+334 |
| 2018-07-23 | big-shift: simplify over-sized OP_SHLs | Luc Van Oostenryck | 1 | -0/+7 |
| 2018-07-23 | big-shift: simplify over-sized OP_LSRs | Luc Van Oostenryck | 1 | -0/+27 |
| 2018-07-01 | ssa: activate the new SSA conversion | Luc Van Oostenryck | 2 | -3/+1 |
| 2018-07-01 | testsuite: improve mem2reg testcases | Luc Van Oostenryck | 2 | -0/+23 |
| 2018-06-30 | kds: fix recursion in kill_dead_stores_bb() | Luc Van Oostenryck | 1 | -1/+0 |
| 2018-06-30 | kds: kill dead stores after memops simplification | Luc Van Oostenryck | 2 | -2/+0 |
| 2018-06-30 | kds: add testcases for kill_dead_stores() | Luc Van Oostenryck | 4 | -0/+131 |
| 2018-06-30 | Merge branch 'cse-cast' into tip | Luc Van Oostenryck | 1 | -0/+15 |
| 2018-06-30 | Merge branch 'cast-optim' into tip | Luc Van Oostenryck | 2 | -0/+415 |
| 2018-06-29 | cast: optimize away casts to/from pointers | Luc Van Oostenryck | 2 | -16/+26 |
| 2018-06-29 | cast: reorganize testcases for cast optimization | Luc Van Oostenryck | 1 | -0/+405 |
| 2018-06-28 | bool: generate plain OP_{AND,OR} instead of OP_{AND,OR}_BOOL | Luc Van Oostenryck | 3 | -28/+53 |
| 2018-06-28 | bool: fix missing boolean context for floats | Luc Van Oostenryck | 1 | -0/+48 |
| 2018-06-28 | bool: simplify ZEXT in bool -> int -> bool | Luc Van Oostenryck | 2 | -33/+29 |
| 2018-06-28 | bool: add testcase for bool simplification | Luc Van Oostenryck | 1 | -0/+247 |
| 2018-06-28 | simplify 'x ^ ~0' to '~x' | Luc Van Oostenryck | 1 | -0/+8 |