Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
1994-07-30 | Fix typo. | Richard Kenner | 1 | -2/+2 | |
From-SVN: r7840 | |||||
1994-07-30 | (fold_truthop): Apply masks to constants. | Richard Kenner | 1 | -0/+2 | |
From-SVN: r7839 | |||||
1994-07-21 | (fold): Don't fold X-X to 0 if X is floating point | Jim Wilson | 1 | -2/+2 | |
and !flag_fast_math. From-SVN: r7786 | |||||
1994-07-13 | (decode_field_reference): Merge operand of a BIT_AND_EXPR with the | Richard Kenner | 1 | -17/+21 | |
mask made from the description of the field. From-SVN: r7766 | |||||
1994-07-13 | Remove last change. | Richard Kenner | 1 | -18/+0 | |
From-SVN: r7764 | |||||
1994-07-12 | (fold, case MULT_EXPR): If arg is an unsigned CEIL_DIV_EXPR, convert | Richard Kenner | 1 | -0/+18 | |
to TRUNC_DIV_EXPR of a PLUS_EXPR in some cases. From-SVN: r7744 | |||||
1994-06-29 | (div_and_round_double): Make it globally accessible. | Torbjorn Granlund | 1 | -2/+2 | |
From-SVN: r7594 | |||||
1994-06-15 | Revert last patch: (fold, case *_DIV_EXPR): Optimize (x / C << y)... | Torbjorn Granlund | 1 | -47/+0 | |
From-SVN: r7475 | |||||
1994-06-15 | (encode, decode): Use 4 HOST_WIDE_INTs for encoded value with ↵ | Torbjorn Granlund | 1 | -338/+192 | |
HOST_BITS_PER_WIDE_INT/2 bits in each. (encode, decode): Use 4 HOST_WIDE_INTs for encoded value with HOST_BITS_PER_WIDE_INT/2 bits in each. (LOWPART, HIGHPART): New macros. (BASE): Move definition outside of div_and_round_double. (add_double, mul_double, lshift_double, rshift_double): Rewrite. (lrotate_double): Use LOWPART, HIGHPART, and BASE. (rrotate_double): Likewise. (div_and_round_double): Major changes to code for general case. Now it actually produces non-garbage results for large operands. (div_and_round_double): Simplify condition for special code used when divisor < BASE. (const_binop): Delete special cases for multiplying by 0, 1, 2, 4, 8. (fold, case *_DIV_EXPR): Don't try to optimize for overflow. From-SVN: r7473 | |||||
1994-06-14 | Cast pointer operands to bzero, bcopy, and bcmp to (char *). | Richard Kenner | 1 | -5/+6 | |
From-SVN: r7472 | |||||
1994-04-25 | (fold-convert): Use assignment, instead of initializing, aggregate | Richard Kenner | 1 | -4/+9 | |
local variable REAL_VALUE_TYPE. From-SVN: r7146 | |||||
1994-04-18 | (const_binop): If arg is NaN, just return it | Richard Kenner | 1 | -18/+27 | |
(const_binop): If arg is NaN, just return it (fold_convert): Handle NaN in real->int and real->real cases. From-SVN: r7072 | |||||
1994-04-09 | (fold): Avoid exponential work when simplifying conditional | Richard Kenner | 1 | -1/+2 | |
expressions; don't recurse twice if ARG1 is constant. From-SVN: r7010 | |||||
1994-04-08 | Fix typo in comment of last change. | Richard Kenner | 1 | -1/+1 | |
From-SVN: r7000 | |||||
1994-04-08 | (fold, case GT_EXPR): Simplify X < (1 << Y) into X >> Y == 0. | Richard Kenner | 1 | -0/+24 | |
From-SVN: r6999 | |||||
1994-03-30 | (strip_compound_expr): New function. | Richard Kenner | 1 | -6/+50 | |
(fold): Call it; avoid exponential work when simplifying binary op over a COND_EXPR. From-SVN: r6921 | |||||
1994-03-25 | (fold, case *_DIV_EXPR): Correct result when product of constants | Richard Kenner | 1 | -15/+29 | |
overflows. From-SVN: r6900 | |||||
1994-03-19 | (const_binop): Avoid initialized aggregate local variables, for | Richard Kenner | 1 | -2/+4 | |
antique compilers. From-SVN: r6821 | |||||
1994-03-14 | (fold, associate): If -ffast-math, associate FP mults. | Richard Kenner | 1 | -11/+70 | |
(fold, case RDIV_EXPR): Split case; ignore division by 1. If -ffast-math, convert to multply by reciprocal. (fold, case *_DIV_EXPR): Simplify A/C1/C2. From-SVN: r6780 | |||||
1994-03-14 | (fold): Call tree_int_cst_sgn. | Richard Kenner | 1 | -7/+7 | |
(fold, case *_DIV_EXPR): Add missing conversion. From-SVN: r6779 | |||||
1994-03-13 | (force_fit_value): Operate on REAL_CST as well. | Richard Kenner | 1 | -37/+53 | |
(real_value_truncate): Don't use its own handler. (const_binop): Set overflow on FP error and call force_fit_type. (fold_convert): Likewise. From-SVN: r6768 | |||||
1994-03-09 | (fold, case MULT_EXPR): Simplify MULT_EXPR of an EXACT_DIV_EXPR with | Richard Kenner | 1 | -0/+8 | |
the same divisor as our multiplicand. From-SVN: r6734 | |||||
1994-02-02 | (const_binop, COMPLEX_TYPE, case RDIV_EXPR): If complex integer, use | Richard Kenner | 1 | -12/+20 | |
TRUNC_DIV_EXPR for inner division. From-SVN: r6468 | |||||
1994-01-31 | (operand_equal_for_comparison_p): Declare correct_width as unsigned. | Richard Kenner | 1 | -1/+1 | |
From-SVN: r6447 | |||||
1994-01-11 | (fold, truth_andor): Don't apply distributive law when it would change ↵ | Richard Kenner | 1 | -42/+50 | |
evaluation order. (fold, truth_andor): Don't apply distributive law when it would change evaluation order. Clean up code a bit to improve flow. From-SVN: r6381 | |||||
1994-01-03 | (truth_value_p): New function. | Richard Kenner | 1 | -8/+51 | |
(fold): Use it to see when we should make a TRUTH_{AND,OR}_EXPR. (fold, case TRUTH_{AND,OR,ANDIF,ORIF}_EXPR): Use distributive law on expressions such as (A && B) || (A && C). From-SVN: r6352 | |||||
1993-12-29 | (fold, case PLUS_EXPR): Add a missing test of flag_fast_math. | Richard Kenner | 1 | -1/+2 | |
From-SVN: r6341 | |||||
1993-12-27 | (fold): Simplify more FP ops if -ffast-math. | Richard Kenner | 1 | -11/+17 | |
From-SVN: r6335 | |||||
1993-12-25 | (fold... | Richard Kenner | 1 | -0/+22 | |
(fold, case EQ_EXPR, NE_EXPR): If COMPLEX_TYPE and at least one arg is a COMPLEX_EXPR, split into a logical operation on the real and imaginary parts. From-SVN: r6313 | |||||
1993-12-08 | (fold, case *_{DIV,MOD}_EXPR): When using distributive law, take care | Richard Kenner | 1 | -5/+13 | |
when C2 is negative. From-SVN: r6194 | |||||
1993-11-15 | (twoval_comparison_p): Do nothing for SAVE_EXPR, at least for now. | Richard Stallman | 1 | -0/+6 | |
From-SVN: r6090 | |||||
1993-10-19 | (invert_truthvalue): Handle SAVE_EXPR. | Richard Stallman | 1 | -1/+3 | |
From-SVN: r5797 | |||||
1993-10-13 | (optimize_bit_field_compare, decode_field_reference): Don't do | Richard Kenner | 1 | -3/+3 | |
anything if get_inner_reference returned its argument. From-SVN: r5773 | |||||
1993-09-30 | (fold, case PLUS_EXPR, MINUS_EXPR): Properly handle case when ARG1 | Richard Kenner | 1 | -5/+8 | |
splits and VARSIGN is -1. From-SVN: r5537 | |||||
1993-09-17 | (invert_truthvalue): Allow arbitrary BOOLEAN_TYPE arguments. | Per Bothner | 1 | -4/+6 | |
From-SVN: r5351 | |||||
1993-09-07 | (fold): Don't try to process an RTL_EXPR. | Richard Kenner | 1 | -0/+4 | |
From-SVN: r5274 | |||||
1993-08-23 | (twoval_comparison_p): Add new arg, SAVE_P; all callers changed. | Richard Kenner | 1 | -14/+32 | |
(fold, case EQ_EXPR): If SAVE_P is true after call to twoval_comparison_p call save_expr on the expression we make. From-SVN: r5194 | |||||
1993-08-19 | (fold): Handle EQ_EXPR and NE_EXPR where both args are comparisons or | Richard Kenner | 1 | -4/+15 | |
BIT_AND_EXPR with constant 1. From-SVN: r5186 | |||||
1993-08-16 | (fold... | Richard Kenner | 1 | -8/+4 | |
(fold, case EQ_EXPR): Re-enable converting signed MOD operations to unsigned when inside comparisons against zero, but only when the second operand of the MOD is an integral power of two. From-SVN: r5166 | |||||
1993-07-30 | (fold... | Richard Kenner | 1 | -0/+16 | |
(fold, case NOP_EXPR): Delete a pair of conversions back to the original type when intermediate type is at least as wide. From-SVN: r5046 | |||||
1993-07-27 | (optimize_bit_field_compare): Preserve volatility of bitfield. | Richard Kenner | 1 | -0/+5 | |
From-SVN: r5005 | |||||
1993-07-26 | (fold, case EQ_EXPR): Remove code that converts mod to unsigned mod; | Richard Kenner | 1 | -0/+5 | |
it isn't correct for negative operands. From-SVN: r4995 | |||||
1993-07-18 | (fold): Handle CONJ_EXPR. | Richard Stallman | 1 | -0/+24 | |
From-SVN: r4938 | |||||
1993-07-06 | (fold, COND_EXPR case): All simplified results must go through ↵ | Jim Wilson | 1 | -19/+44 | |
pedantic_non_lvalue. (fold, COND_EXPR case): All simplified results must go through pedantic_non_lvalue. (pedantic_non_lvalue): New function. From-SVN: r4867 | |||||
1993-07-06 | (invert_truthvalue): Check for ERROR_MARK input. | Jim Wilson | 1 | -0/+3 | |
From-SVN: r4864 | |||||
1993-07-05 | (fold, case EQ_EXPR, LE_EXPR): If comparing results of signed MOD with | Richard Kenner | 1 | -0/+19 | |
zero, use an unsigned MOD. From-SVN: r4852 | |||||
1993-07-02 | (const_binop, fold_convert, fold): | Paul Eggert | 1 | -15/+27 | |
Set TREE_OVERFLOW in addition to TREE_CONSTANT_OVERFLOW. From-SVN: r4828 | |||||
1993-07-01 | (fold, case GE_EXPR, LT_EXPR): Don't assume result of comparison is | Richard Kenner | 1 | -4/+6 | |
integer_type_node. From-SVN: r4813 | |||||
1993-06-27 | (fold, case TRUTH_XOR_EXPR): End with `return', not `break'. | Richard Kenner | 1 | -1/+1 | |
From-SVN: r4770 | |||||
1993-06-26 | (fold, case PLUS_EXPR, MINUS_EXPR): Apply distributive law to multiplication. | Richard Kenner | 1 | -36/+122 | |
(fold, case *_DIV_EXPR): Replace code to handle (A*C1)/C2 with more general code to handle addition as well. (fold, case *_MOD_EXPR): Add simplified version of above code. From-SVN: r4757 |