Commit Graph

937 Commits

Author SHA1 Message Date
Richard Kenner
3a96b5ebb4 (fold, case COND_EXPR): Properly swap args 1 and 2.
Strip nops from ARG2, just like ARG1.
Make {MIN,MAX}_EXPR properly when type of result different than args.

From-SVN: r8745
1995-01-13 19:16:09 -05:00
Richard Kenner
7f0b305c5a (fold): Avoid infinite recursion caused by last change.
From-SVN: r8730
1995-01-10 05:49:13 -05:00
Richard Kenner
7e13907585 (fold, case CONVERT_EXPR): Don't remove an integer conversion when outer is FP unless it doesn't change signedness...
(fold, case CONVERT_EXPR): Don't remove an integer conversion when
outer is FP unless it doesn't change signedness; rework code in this
area to be clearer.

From-SVN: r8724
1995-01-07 08:51:14 -05:00
Richard Kenner
4ab3cb6597 (pedantic_omit_one_operand): New function.
(fold, case COND_EXPR): Use it instead of calling pedantic_non_lvalue on the
result of omit_one_operand.

From-SVN: r8641
1994-12-10 16:05:49 -05:00
Doug Evans
68c6b3a925 (fold): Call real_zerop for real constants.
From-SVN: r8634
1994-12-09 21:06:03 +00:00
Richard Kenner
db40b434fa (fold_truthop): Delete BIT_AND_EXPR of constants with masks.
From-SVN: r8592
1994-11-30 19:02:39 -05:00
Richard Kenner
e33745253e (fold_convert): Don't fold conversion if it would produce constant
larger than we can support.

From-SVN: r8551
1994-11-22 17:40:46 -05:00
Ian Lance Taylor
f76b9db287 Check target endianness at run time, not compile time
From-SVN: r8470
1994-11-16 21:10:09 +00:00
Richard Kenner
e1f56f62a0 (fold): If moved conversion into COND_EXPR, leave it there if it is an integral conversion to word or narrower.
(fold): If moved conversion into COND_EXPR, leave it there if it is an
integral conversion to word or narrower.
(fold, case NOP_EXPR): Ignore conversion to same type as operand.
(fold, case COND_EXPR): Make third operand the simplest.

From-SVN: r8467
1994-11-16 07:55:26 -05:00
Jason Merrill
3ac4f0e6d0 (fold, COMPONENT_REF): Don't die if the CONSTRUCTOR
doesn't initialize the field we want.

From-SVN: r8223
1994-10-05 23:08:12 +00:00
Jason Merrill
e082358bff (fold): Handle COMPONENT_REFs involving CONSTRUCTORs.
From-SVN: r8095
1994-09-20 00:32:29 +00:00
Richard Kenner
7106180777 Fix typo.
From-SVN: r7840
1994-07-30 19:01:48 -04:00
Richard Kenner
474636f3e8 (fold_truthop): Apply masks to constants.
From-SVN: r7839
1994-07-30 18:18:55 -04:00
Jim Wilson
59d9021293 (fold): Don't fold X-X to 0 if X is floating point
and !flag_fast_math.

From-SVN: r7786
1994-07-21 14:46:32 -07:00
Richard Kenner
6d9f1f5f63 (decode_field_reference): Merge operand of a BIT_AND_EXPR with the
mask made from the description of the field.

From-SVN: r7766
1994-07-13 14:44:38 -04:00
Richard Kenner
8f03b1af61 Remove last change.
From-SVN: r7764
1994-07-13 08:40:00 -04:00
Richard Kenner
78221d63e7 (fold, case MULT_EXPR): If arg is an unsigned CEIL_DIV_EXPR, convert
to TRUNC_DIV_EXPR of a PLUS_EXPR in some cases.

From-SVN: r7744
1994-07-12 12:39:17 -04:00
Torbjorn Granlund
dbb5b3cec9 (div_and_round_double): Make it globally accessible.
From-SVN: r7594
1994-06-29 00:20:58 +00:00
Torbjorn Granlund
e627f0b601 Revert last patch: (fold, case *_DIV_EXPR): Optimize (x / C << y)...
From-SVN: r7475
1994-06-15 02:29:07 +00:00
Torbjorn Granlund
37bdb7e314 (encode, decode): Use 4 HOST_WIDE_INTs for encoded value with 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-15 02:23:14 +00:00
Richard Kenner
4c9a05bc55 Cast pointer operands to bzero, bcopy, and bcmp to (char *).
From-SVN: r7472
1994-06-14 18:19:28 -04:00
Richard Kenner
4b8a006289 (fold-convert): Use assignment, instead of initializing, aggregate
local variable REAL_VALUE_TYPE.

From-SVN: r7146
1994-04-25 06:33:38 -04:00
Richard Kenner
5f61007448 (const_binop): If arg is NaN, just return it
(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-18 15:41:06 -04:00
Richard Kenner
4c64b88406 (fold): Avoid exponential work when simplifying conditional
expressions; don't recurse twice if ARG1 is constant.

From-SVN: r7010
1994-04-09 16:05:15 -04:00
Richard Kenner
34b1b41f3b Fix typo in comment of last change.
From-SVN: r7000
1994-04-08 18:35:23 -04:00
Richard Kenner
e92d30482e (fold, case GT_EXPR): Simplify X < (1 << Y) into X >> Y == 0.
From-SVN: r6999
1994-04-08 18:18:08 -04:00
Richard Kenner
b5f3b6b60b (strip_compound_expr): New function.
(fold): Call it; avoid exponential work when simplifying binary op over
a COND_EXPR.

From-SVN: r6921
1994-03-30 16:59:47 -05:00
Richard Kenner
3122945e76 (fold, case *_DIV_EXPR): Correct result when product of constants
overflows.

From-SVN: r6900
1994-03-25 16:12:56 -05:00
Richard Kenner
79c844cdca (const_binop): Avoid initialized aggregate local variables, for
antique compilers.

From-SVN: r6821
1994-03-19 06:25:26 -05:00
Richard Kenner
e9aaa5a553 (fold, associate): If -ffast-math, associate FP mults.
(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 06:18:52 -05:00
Richard Kenner
d0cb4c6591 (fold): Call tree_int_cst_sgn.
(fold, case *_DIV_EXPR): Add missing conversion.

From-SVN: r6779
1994-03-14 05:11:28 -05:00
Richard Kenner
649ff3b44f (force_fit_value): Operate on REAL_CST as well.
(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-13 08:30:50 -05:00
Richard Kenner
b9b5c1b376 (fold, case MULT_EXPR): Simplify MULT_EXPR of an EXACT_DIV_EXPR with
the same divisor as our multiplicand.

From-SVN: r6734
1994-03-09 16:50:25 -05:00
Richard Kenner
58633be8f3 (const_binop, COMPLEX_TYPE, case RDIV_EXPR): If complex integer, use
TRUNC_DIV_EXPR for inner division.

From-SVN: r6468
1994-02-02 15:14:18 -05:00
Richard Kenner
7a75868d8e (operand_equal_for_comparison_p): Declare correct_width as unsigned.
From-SVN: r6447
1994-01-31 18:40:54 -05:00
Richard Kenner
e9b5e15f60 (fold, truth_andor): Don't apply distributive law when it would change 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-11 19:14:18 -05:00
Richard Kenner
61f275ffe7 (truth_value_p): New function.
(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
1994-01-03 07:59:59 -05:00
Richard Kenner
996c63d336 (fold, case PLUS_EXPR): Add a missing test of flag_fast_math.
From-SVN: r6341
1993-12-29 18:04:48 -05:00
Richard Kenner
fab446b8c3 (fold): Simplify more FP ops if -ffast-math.
From-SVN: r6335
1993-12-27 08:48:58 -05:00
Richard Kenner
95aa28ae18 (fold...
(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-25 08:52:25 -05:00
Richard Kenner
aae678414b (fold, case *_{DIV,MOD}_EXPR): When using distributive law, take care
when C2 is negative.

From-SVN: r6194
1993-12-08 05:46:16 -05:00
Richard Stallman
2315a5db38 (twoval_comparison_p): Do nothing for SAVE_EXPR, at least for now.
From-SVN: r6090
1993-11-15 00:25:53 +00:00
Richard Stallman
dfa90b4271 (invert_truthvalue): Handle SAVE_EXPR.
From-SVN: r5797
1993-10-19 02:50:50 +00:00
Richard Kenner
9f5e873c8f (optimize_bit_field_compare, decode_field_reference): Don't do
anything if get_inner_reference returned its argument.

From-SVN: r5773
1993-10-13 15:14:21 -04:00
Richard Kenner
cc5edac673 (fold, case PLUS_EXPR, MINUS_EXPR): Properly handle case when ARG1
splits and VARSIGN is -1.

From-SVN: r5537
1993-09-30 05:53:43 -04:00
Per Bothner
efc1a4d9b4 (invert_truthvalue): Allow arbitrary BOOLEAN_TYPE arguments.
From-SVN: r5351
1993-09-17 21:43:29 -07:00
Richard Kenner
ac27d58987 (fold): Don't try to process an RTL_EXPR.
From-SVN: r5274
1993-09-07 14:32:05 -04:00
Richard Kenner
35e66bd1d9 (twoval_comparison_p): Add new arg, SAVE_P; all callers changed.
(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-23 18:33:11 -04:00
Richard Kenner
2df46b06a2 (fold): Handle EQ_EXPR and NE_EXPR where both args are comparisons or
BIT_AND_EXPR with constant 1.

From-SVN: r5186
1993-08-19 08:28:38 -04:00
Richard Kenner
79bf94d3ea (fold...
(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-08-16 18:47:39 -04:00
Richard Kenner
33558beb6a (fold...
(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-30 19:07:52 -04:00
Richard Kenner
9db73acb48 (optimize_bit_field_compare): Preserve volatility of bitfield.
From-SVN: r5005
1993-07-27 16:42:34 -04:00
Richard Kenner
e507581872 (fold, case EQ_EXPR): Remove code that converts mod to unsigned mod;
it isn't correct for negative operands.

From-SVN: r4995
1993-07-26 20:26:20 -04:00
Richard Stallman
551064b16e (fold): Handle CONJ_EXPR.
From-SVN: r4938
1993-07-18 20:24:45 +00:00
Jim Wilson
a5e9b1248c (fold, COND_EXPR case): All simplified results must go through 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 14:01:14 -07:00
Jim Wilson
8ac1abdf6a (invert_truthvalue): Check for ERROR_MARK input.
From-SVN: r4864
1993-07-06 13:48:51 -07:00
Richard Kenner
05a0d5eabb (fold, case EQ_EXPR, LE_EXPR): If comparing results of signed MOD with
zero, use an unsigned MOD.

From-SVN: r4852
1993-07-05 17:55:06 -04:00
Paul Eggert
dc3907c5c1 (const_binop, fold_convert, fold):
Set TREE_OVERFLOW in addition to TREE_CONSTANT_OVERFLOW.

From-SVN: r4828
1993-07-02 01:26:01 +00:00
Richard Kenner
56f8e5e67c (fold, case GE_EXPR, LT_EXPR): Don't assume result of comparison is
integer_type_node.

From-SVN: r4813
1993-07-01 09:48:11 -04:00
Richard Kenner
62d8b51eb2 (fold, case TRUTH_XOR_EXPR): End with return', not break'.
From-SVN: r4770
1993-06-27 18:48:22 -04:00
Richard Kenner
6a96fcb495 (fold, case PLUS_EXPR, MINUS_EXPR): Apply distributive law to multiplication.
(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
1993-06-26 11:55:06 -04:00
Richard Kenner
6dc7571d06 Add prototypes for static functions.
({l,r}{shift,rotate}_double): COUNT arg is HOST_WIDE_INT, PREC is int.
(all_ones_mask): Remove __inline__.
(range_test): Make static; not used elsewhere.

From-SVN: r4750
1993-06-26 11:12:58 -04:00
Richard Kenner
96d4cf0ace (fold_truthop): Treat a BIT_AND_EXPR with a constant of one as if it were surrounded with an NE_EXPR.
(fold_truthop): Treat a BIT_AND_EXPR with a constant of one as if it were
surrounded with an NE_EXPR.
(fold): Don't move operation into conditional if it is BIT_{AND,OR}_EXPR with
the constant 1; change it to TRUTH_*_EXPR instead.
When moving things inside conditions, move comparisons as well as binary
operations.
Don't make a SAVE_EXPR when moving things inside conditionals unless the value
would really have been used twice.

From-SVN: r4746
1993-06-26 11:05:12 -04:00
Richard Kenner
772ae9f018 (decode_field_reference): Don't do anything for non-integral fields.
From-SVN: r4353
1993-05-06 05:45:47 -04:00
Richard Kenner
194c082fed (optimize_bit_field_compare): Add missing arg to const_binop.
From-SVN: r4344
1993-05-05 18:16:52 -04:00
Richard Kenner
b8a914304d (fold): Signedness matters for comparisons and right shifts.
From-SVN: r4243
1993-04-26 19:12:11 -04:00
Richard Kenner
7178e3af78 Use INTEGRAL_TYPE_P and FLOAT_TYPE_P.
From-SVN: r4241
1993-04-26 19:02:43 -04:00
Richard Kenner
a32793551e (fold...
(fold, case REALPART_EXPR, IMAGPART_EXPR): Avoid using
build_{unary,binary}_op since the calling sequences depend on the
front-end.

From-SVN: r4194
1993-04-23 06:55:07 -04:00
Richard Kenner
aa830baff1 (size_int): NUMBER is unsigned so don't test for negative.
(optimize_bit_field_compare, all_ones_mask_p): Add missing last arg to
force_fit_type call.

From-SVN: r4138
1993-04-13 17:16:37 -04:00
Richard Stallman
b1aa345d4f Comment change.
From-SVN: r4130
1993-04-13 20:33:27 +00:00
Richard Kenner
88ee26514d (div_and_round_double): Don't mix HOST_WIDE_INT * and unsigned
HOST_WIDE_INT * parameters; some compilers complain.

From-SVN: r4114
1993-04-13 06:07:59 -04:00
Jim Wilson
b76478952b (fold...
(fold, COMPOUND_EXPR case): When pedantic, don't
simplify a COMPOUND_EXPR, so that it won't be mistaken for an
lvalue or an integer constant expression.

From-SVN: r4103
1993-04-12 12:45:58 -07:00
Richard Stallman
5008b8ae95 (real_value_truncate): If REAL_ARITHMETIC, replace by routine of same name in real.c.
(real_value_truncate): If REAL_ARITHMETIC, replace
by routine of same name in real.c.
target_isinf, target_isnan, target_negative): Likewise.
(const_binop): Delete `register' from decls using REAL_VALUE_TYPE.
(fold_convert): Use REAL_VALUE_TO_INT.

From-SVN: r3939
1993-03-31 05:50:11 +00:00
Richard Kenner
ca86a57ae7 (fold, case PLUS_EXPR): Don't associate apart a constant operand.
From-SVN: r3807
1993-03-20 20:49:22 -05:00
Richard Stallman
88ece8db61 (const_binop): When evaluating a shift, ignore
overflows generated by force_fit_type.

From-SVN: r3700
1993-03-11 08:18:16 +00:00
Richard Stallman
a333b79fc5 (fold): Fix error in handling REALPART_EXPR and IMAGPART_EXPR.
From-SVN: r3644
1993-03-04 20:34:20 +00:00
Richard Stallman
1cc1b11a2e (fold): Handle complex constants as "winning".
Handle REALPART_EXPR and IMAGPART_EXPR.

From-SVN: r3637
1993-03-04 19:35:40 +00:00
Jim Wilson
ab314f6a6b (decode_field_reference): Fix force_fit_type call.
From-SVN: r3530
1993-02-25 11:31:18 -08:00
Richard Stallman
13af526d4f (all_ones_mask_p): Really use tmask.
(all_ones_mask_p): Declare tmask to be `tree'.
(optimize_bit_field_compare) Add missing semicolon.

(decode_field_reference): Use force_fit_type
instead of convert to avoid truncated integer warning.
(all_ones_mask_p): Likewise.

From-SVN: r3519
1993-02-24 06:43:37 +00:00
Doug Evans
5709eb48d8 (decode_field_reference): Use force_fit_type instead of convert to avoid truncated integer warning.
* (decode_field_reference): Use force_fit_type instead of convert to avoid
truncated integer warning.

From-SVN: r3501
1993-02-20 22:24:44 +00:00
Richard Stallman
ef2bf0c061 (fold): Call force_fit_type with two parameters.
(force_fit_type): Don't examine the tree until
it is known to an INTEGER_CST.  If it isn't, just return.

From-SVN: r3434
1993-02-07 17:24:37 +00:00
Richard Stallman
a4d8855c2a Comment fixes.
From-SVN: r3416
1993-02-02 23:38:03 +00:00
Richard Stallman
e0f776fbcb (same_sign): Removed.
(lshift_double): Don't report arithmetic overflow, since the
C standard doesn't seem to require it here.
(force_fit_type): Accept new parameter specifying whether a signed
overflow has already occurred.  Yield overflow indication.
All callers changed.
(neg_double): Don't report overflow when -0 yields 0.
(const_binop): Propagate operand overflow for warnings.
Don't report overflow when -1 + 1 yields 0.

From-SVN: r3401
1993-02-02 04:37:37 +00:00
Richard Stallman
42f769c15a (force_fit_type): Abort if T not INTEGER_CST.
From-SVN: r3387
1993-01-30 01:57:54 +00:00
Richard Stallman
d023bff9eb (non_lvalue): Result must not be null ptr constant.
(omit_one_operand): Use non_lvalue.
(fold, case COMPOUND_EXPR): Use non_lvalue if value is 0.

From-SVN: r3276
1993-01-19 15:09:12 +00:00
Brendan Kehoe
3d9a7827ed * fold-const.c (fold): Only call force_fit_type with one arg.
From-SVN: r3210
1993-01-12 18:30:21 -05:00
Richard Kenner
772447c5cf (invert_truthvalue, case TRUTH_XOR_EXPR): New case.
(fold, case TRUTH_XOR_EXPR): New case.
(fold, case TRUTH_OR_EXPR, TRUTH_AND_EXPR): Check for second operand
of appropriate value to determine result whether or not first operand
is a constant.

From-SVN: r2997
1992-12-30 06:13:24 -05:00
Richard Stallman
91d33e36a0 (const_binop): New arg NOTRUNC. All calls changed.
(size_binop): Pass 1 for NOTRUNC.
(force_fit_type): No longer static.

From-SVN: r2995
1992-12-30 11:09:07 +00:00
Richard Kenner
85d2e16cf7 (fold, case BIT_IOR_EXPR): Convert the IOR of a pair of shifts into a
rotate when it is equivalent.

From-SVN: r2970
1992-12-28 06:07:05 -05:00
Tom Wood
21431f802a (range_test): Convert the constants to the unsigned
type before expanding the range test.

From-SVN: r2785
1992-11-24 02:08:38 +00:00
Richard Stallman
d26d14f71a (real_value_truncate): Use push/pop_float_handler.
From-SVN: r2544
1992-10-21 21:21:25 +00:00
Richard Stallman
fced8ba341 (distribute_bit_expr): Test for BIT_{AND,IOR}_EXPR.
From-SVN: r2484
1992-10-16 02:49:07 +00:00
Richard Kenner
459a265325 (fold): Add missing test in case when we distribute a NOP_EXPR into a
COND_EXPR and try to pull it back out again.

From-SVN: r2476
1992-10-15 08:39:59 -04:00
Tom Wood
8227896cf6 (simple_operand_p): Don't regard global or static variables as simple.
(simple_operand_p): Don't regard global or static
	variables as simple.
	(fold_truthop): Only require the RHS to be simple.

From-SVN: r2473
1992-10-15 11:39:38 +00:00
Mike Stump
ca46db8715 Fix a simple typo.
From-SVN: r2368
1992-10-08 09:34:37 +00:00
Richard Stallman
3f78332988 (invert_truthvalue): Never alter ARG.
From-SVN: r2365
1992-10-08 08:30:25 +00:00
Richard Kenner
1f9dfb724b (fold_convert): Add missing cast to HOST_WIDE_INT.
From-SVN: r2218
1992-09-23 19:24:45 -04:00
Richard Stallman
b6b19f41c6 (fold_convert): Avoid using conversion of unsigned
to floating; offset value by hand to fit in signed type.

From-SVN: r2165
1992-09-19 19:00:40 +00:00
Richard Stallman
2a23183eba (convert_for_assignment): Warn about constant integer
overflow even if no conversion is involved.

From-SVN: r2075
1992-09-07 21:22:56 +00:00
Richard Stallman
2d7a4cf5cf (const_binop): Fix typo.
From-SVN: r2069
1992-09-07 06:06:12 +00:00
Richard Stallman
fe3e8e402b (left_shift_overflows, same_sign, overflow_sum_sign): New macros.
(add_double, div_and_round_double, lshift_double, mul_double):
(neg_double, const_binop, fold): Check for signed integer overflow.
Propagate overflow flags from operands to result.
(const_binop, fold_convert): Use pedwarn for overflow warnings.
Say `constant expression', not `constant folding', for user's sake.

From-SVN: r2053
1992-09-05 02:02:17 +00:00
Richard Stallman
812dd8a30d (const_binop): Delete special case for mult by 3.
From-SVN: r2002
1992-08-31 08:02:58 +00:00
Richard Stallman
53d2fb4f5f (fold): Do A op C1 ? A : C2 opt only for INTEGER_TYPEs.
From-SVN: r1965
1992-08-26 19:45:07 +00:00
Richard Stallman
1b81aa1493 (fold): Avoid the normal STRIP_NOPS on arg of NOP_EXPR.
From-SVN: r1959
1992-08-26 06:04:35 +00:00
Richard Kenner
b8eb43a245 (fold): Move conversion back outside of COND_EXPR if moving it inside
didn't help anything.

(div_and_round_double): Change some more ints to HOST_WIDE_INTs.

From-SVN: r1871
1992-08-17 07:36:10 -04:00
Torbjorn Granlund
858a47b165 Fix spelling errors in comments.
From-SVN: r1825
1992-08-14 11:33:04 +00:00
Richard Stallman
6a1746af42 (operand_equal_p): Make it clear that this function tests for indistinguishable values, not for equality as computed by `=='...
(operand_equal_p): Make it clear that this function
tests for indistinguishable values, not for equality as computed by
`=='; the distinction is important for IEEE NaNs and -0.0.

From-SVN: r1807
1992-08-12 07:43:50 +00:00
Richard Stallman
b5c525860d (fold): Don't fold (A op B ? A : C) if A is IEEE
floating point, because A might be -0.0 or NaN.

From-SVN: r1793
1992-08-11 08:33:24 +00:00
Richard Kenner
c0b9d4c816 (optimize_bit_field_compare): Correct bogus use of types in expressions...
(optimize_bit_field_compare): Correct bogus use of types in
expressions; always do computation in a type wide enough for the
result.

From-SVN: r1743
1992-08-02 21:31:25 -04:00
Richard Stallman
0924ddefb6 Renamed TREE_INLINE, TREE_NONLOCAL, TREE_REGDECL, TREE_EXTERNAL.
to DECL_INLINE, DECL_NONLOCAL, DECL_REGISTER, DECL_EXTERNAL.

From-SVN: r1570
1992-07-12 03:06:32 +00:00
Charles Hannum
9c0ae98b3a entered into RCS
From-SVN: r1522
1992-07-08 15:41:19 +00:00
Richard Kenner
906c4e36c6 *** empty log message ***
From-SVN: r1473
1992-07-06 16:04:13 -04:00
Richard Stallman
4b3d5ea0f5 *** empty log message ***
From-SVN: r1423
1992-07-04 16:44:05 +00:00
Richard Stallman
d35357ed3d *** empty log message ***
From-SVN: r1403
1992-07-03 20:11:05 +00:00
Tom Wood
b2215d835c *** empty log message ***
From-SVN: r1378
1992-07-01 20:55:32 +00:00
Richard Stallman
e6a28f2698 *** empty log message ***
From-SVN: r1359
1992-06-30 03:53:40 +00:00
Tom Wood
f59028696a *** empty log message ***
From-SVN: r1306
1992-06-27 10:21:04 +00:00
Tom Wood
ef659ec075 *** empty log message ***
From-SVN: r1301
1992-06-26 16:36:45 +00:00
Richard Kenner
42495ca044 *** empty log message ***
From-SVN: r1296
1992-06-26 07:06:07 -04:00
Richard Stallman
f72aed244a *** empty log message ***
From-SVN: r1263
1992-06-24 03:59:40 +00:00
Richard Stallman
5352b11a95 *** empty log message ***
From-SVN: r1232
1992-06-22 03:40:10 +00:00
Richard Stallman
68d884911e *** empty log message ***
From-SVN: r1153
1992-06-04 02:12:28 +00:00
Richard Kenner
3b998c11fb *** empty log message ***
From-SVN: r1079
1992-05-25 06:28:09 -04:00
Richard Stallman
7c7b029dab *** empty log message ***
From-SVN: r1070
1992-05-24 04:30:40 +00:00
Richard Stallman
a6acbe157b *** empty log message ***
From-SVN: r999
1992-05-17 07:07:44 +00:00
Richard Stallman
d8f6dbb911 *** empty log message ***
From-SVN: r968
1992-05-13 05:02:10 +00:00
Richard Stallman
f1e60ec6d5 *** empty log message ***
From-SVN: r951
1992-05-10 01:56:55 +00:00
Richard Stallman
6dc42e49d3 *** empty log message ***
From-SVN: r930
1992-05-07 06:41:23 +00:00
Richard Kenner
95ca4f9677 *** empty log message ***
From-SVN: r863
1992-04-30 23:15:40 -04:00
Tom Wood
13837058c1 *** empty log message ***
From-SVN: r815
1992-04-22 10:20:05 +00:00
Tom Wood
cdc54cc9f9 *** empty log message ***
From-SVN: r729
1992-04-12 14:34:57 +00:00
Richard Kenner
29ebe69a72 *** empty log message ***
From-SVN: r666
1992-04-02 06:03:52 -05:00
Richard Stallman
c05a9b68b8 *** empty log message ***
From-SVN: r664
1992-04-01 23:59:21 +00:00
Richard Stallman
7d4d4d22e4 *** empty log message ***
From-SVN: r563
1992-03-22 05:08:53 +00:00
Richard Kenner
ef9fe0da13 *** empty log message ***
From-SVN: r462
1992-03-13 08:58:47 -05:00
Richard Kenner
2002d72d90 *** empty log message ***
From-SVN: r371
1992-03-01 11:30:41 -05:00
Richard Stallman
6d716ca834 Initial revision
From-SVN: r330
1992-02-16 05:09:21 +00:00