Mike Stump
a4a3f053b7
tree.def (OFFSET_REF): Remove.
...
* tree.def (OFFSET_REF): Remove.
* expr.c (expand_expr, case OFFSET_REF): Ditto.
* tree.c (substitute_in_expr): Remove OFFSET_REF code.
Remove some old cruft
From-SVN: r12127
1996-05-31 05:08:47 +00:00
Richard Kenner
4d12b2fee4
(unsave_expr_now): Avoid use of NULL_RTX since no rtl.h.
...
From-SVN: r12037
1996-05-18 22:09:21 -04:00
Mike Stump
4847c9386b
expr.c (expand_expr, [...]): Make TARGET_EXPRs redoable for UNSAVE_EXPR.
...
* expr.c (expand_expr, cond TARGET_EXPR): Make TARGET_EXPRs
redoable for UNSAVE_EXPR.
* stmt.c (expand_decl_cleanup): Wrap the cleanup in an UNSAVE_EXPR
to that we can redo it.
* tree.c (unsave_expr_now): Handle TARGET_EXPRs fully now.
* tree.def (TARGET_EXPR): Add a third field so that TARGET_EXPRs
are redoable.
From-SVN: r12018
1996-05-17 21:48:14 +00:00
Mike Stump
679163cf4d
expr.c (expand_expr, [...]): Move from the C++ frontend to the backend where it belongs.
...
* expr.c (expand_expr, cond UNSAVE_EXPR): Move from the C++
frontend to the backend where it belongs.
* tree.c (unsave_expr): Ditto.
(unsave_expr_now): Ditto.
* tree.def (UNSAVE_EXPR): Ditto.
* tree.h (unsave_expr): Ditto.
(unsave_expr_now): Ditto.
From-SVN: r12015
1996-05-17 20:13:01 +00:00
Mike Stump
7b8b9722a4
expr.c (expand_increment): Add third parameter to know when to ignore the result value.
...
* expr.c (expand_increment): Add third parameter to know when to
ignore the result value.
(store_constructor): Ditto.
(expand_expr, case PREINCREMENT_EXPR): Ditto.
(expand_expr, case PREDECREMENT_EXPR): Ditto.
(expand_expr, case POSTINCREMENT_EXPR): Ditto.
(expand_expr, case POSTDECREMENT_EXPR): Ditto.
* tree.c (stabilize_reference): Always ignore the first operand of
COMPOUND_EXPRs.
From-SVN: r11939
1996-05-06 18:07:22 +00:00
Richard Kenner
fef854565e
(build_real_from_int_cst): Remove spurious test for
...
REAL_IS_NOT_DOUBLE.
From-SVN: r11924
1996-05-05 12:47:58 -04:00
Richard Kenner
84c7be4b21
(real_value_from_int_cst): New arg, TYPE.
...
Pass mode to REAL_VALUE_FROM_INT.
(build_real_from_int_cst): Properly deal with truncation.
From-SVN: r11767
1996-04-14 08:56:17 -04:00
Richard Kenner
9b594acf0e
(substitute_in_expr): Don't return new expression if nothing changed.
...
(substitute_in_type): Deleted, not used.
From-SVN: r11683
1996-04-09 07:10:49 -04:00
Richard Kenner
6cba9fcc21
(substitute_in_expr, case COMPONENT_REF): Ignore if inner
...
PLACEHOLDER_EXPR has not yet been initialized.
From-SVN: r11547
1996-03-16 19:23:14 -05:00
Jason Merrill
3e29c1a88c
(staticp): Check DECL_NO_STATIC_CHAIN on nested functions.
...
From-SVN: r11462
1996-03-05 22:16:33 +00:00
Jason Merrill
2a6cff31d6
(decl_function_context): Do decl_function_context right for
...
| function-local classes.
From-SVN: r11334
1996-02-21 19:12:32 +00:00
Per Bothner
28238567cd
Changes to distinguish typedef from original type in debug output.
...
* tree.c (copy_node): Zero out type.symtab union.
From-SVN: r11218
1996-02-12 12:03:24 -08:00
Doug Evans
f3209e2f76
(merge_attributes): Moved here from c-typeck.c.
...
From-SVN: r10955
1996-01-09 22:23:26 +00:00
Mike Stump
8fa6b6c92c
libgcc2.c (__empty): An empty function used by the C++ frontend for defaulting cleanup actions.
...
* libgcc2.c (__empty): An empty function used by the C++ frontend for
defaulting cleanup actions.
* tree.c (save_tree_status, restore_tree_status): Save and restore
temporary_firstobj, so that in progress objects that live on the
temporary obstack are not reallocated, if we save and restore the
tree status in their lifetime.
From-SVN: r10799
1995-12-18 17:42:56 +00:00
Richard Kenner
2cd2a93e72
(staticp, case INDIRECT_EXPR): Disable case.
...
From-SVN: r10416
1995-10-01 21:27:28 -04:00
Richard Kenner
e0094edb03
(save_expr): Return original for ERROR_MARK.
...
From-SVN: r10399
1995-09-25 17:50:22 -04:00
Richard Kenner
978958060c
(simple_cst_equal): Work around enum bug in vax ultrix 4.3 pcc.
...
From-SVN: r10016
1995-06-19 19:08:22 -04:00
Richard Kenner
e9fa0c7c6f
Update FSF address.
...
From-SVN: r9966
1995-06-15 08:29:51 -04:00
Jason Merrill
bbda425097
*** empty log message ***
...
From-SVN: r9811
1995-05-24 21:46:55 +00:00
Richard Kenner
364e1f1cf2
(type_list_equal, simple_cst_list_equal, index_type_equal):
...
Check for simple_cst_equal return value of -1.
From-SVN: r9802
1995-05-24 15:41:37 -04:00
Richard Kenner
15c8ec1ccd
(valid_machine_attribute): Handle attribute on pointer-to-function
...
types.
From-SVN: r9762
1995-05-22 07:10:37 -04:00
Richard Kenner
8ae49a28b3
(simple_cst_equal): Don't look at language-specific nodes since we
...
don't know what's in them.
From-SVN: r9754
1995-05-20 07:00:47 -04:00
Richard Kenner
9faa82d8c0
Fix typos in comments.
...
From-SVN: r9712
1995-05-16 08:39:54 -04:00
Richard Kenner
abd23b66b4
(substitute_in_expr): Preserve TREE_READONLY.
...
From-SVN: r9546
1995-04-30 07:16:51 -04:00
Doug Evans
2a3c15b553
(attribute_hash_list): New function.
...
(build_type_attribute_variant): Call it.
(valid_machine_attribute): Handle attributes with arguments.
(is_attribute_p): New function.
(lookup_attribute): New function.
(attribute_in_list): Deleted.
(attribute_list_contained): Check TREE_PURPOSE and TREE_VALUE.
From-SVN: r9520
1995-04-28 01:08:30 +00:00
Richard Kenner
3c013dd5b9
(valid_machine_attribute): Update last change.
...
From-SVN: r9504
1995-04-27 08:56:36 -04:00
Richard Kenner
3e3d7e77cd
(valid_machine_attribute): Use new function attribute_in_list...
...
(valid_machine_attribute): Use new function attribute_in_list, makes
sure type_attribute_variants are reused even when attributes have
parameters.
Assign any new type to TREE_TYPE (decl).
(attribute_in_list): New function.
(attribute_list_contained): Use it.
From-SVN: r9456
1995-04-25 18:52:18 -04:00
Richard Kenner
33a79dfafb
(chain_member_purpose): Make similar to chain_member_value.
...
From-SVN: r9454
1995-04-25 18:39:11 -04:00
Richard Kenner
8980b5a34d
(integer_all_onesp): Test to size of mode, not TYPE_PRECISION.
...
From-SVN: r9427
1995-04-21 08:11:06 -04:00
Per Bothner
8a0e8d4dc4
(get_set_constructor_bytes): Fix BITS_BIG_ENDIAN -> BYTES_BIG_ENDIAN.
...
From-SVN: r9417
1995-04-18 18:09:38 -07:00
Richard Kenner
0bcec3673d
(chain_member_purpose): New function.
...
From-SVN: r9292
1995-04-02 07:55:13 -04:00
Richard Kenner
4084f7897a
(valid_machine_attribute): Now receive name and args.
...
From-SVN: r9262
1995-03-30 08:59:39 -05:00
Jason Merrill
a0dabda52b
Handle compilation of nested functions from another scope.
...
From-SVN: r9185
1995-03-15 21:48:01 +00:00
Per Bothner
b001a02f29
Remove Feb 28's FUNCTION_NEEDS_STATIC_CHAIN changes.
...
From-SVN: r9106
1995-03-01 19:33:25 -08:00
Per Bothner
d72471fd1a
* tree.c (staticp): Use FUNCTION_NEEDS_STATIC_CHAIN.
...
From-SVN: r9097
1995-02-28 15:06:49 -08:00
Richard Kenner
f8a89236c4
Formatting changes.
...
From-SVN: r9048
1995-02-23 07:06:03 -05:00
Richard Kenner
1a2927d261
(chain_member_value, decl_attribute_variant): New functions.
...
(valid_machine_attribute): Moved here from c-common.c.
From-SVN: r9020
1995-02-21 18:58:27 -05:00
Per Bothner
f3ffec8eee
tree.c (get_set_constructor_bytes): New function. Replaces ...
...
(get_set_constructor_words): ... removed old function.
From-SVN: r8952
1995-02-14 22:39:19 -08:00
Richard Kenner
4745ddae5d
(stabilize_reference_1): No longer static.
...
From-SVN: r8951
1995-02-14 08:04:52 -05:00
Per Bothner
9ccd47de71
tree.c (permanent_allocation): Pop function_maybepermanent_obstack, not hardwired &maybepermanent_obstack.
...
* tree.c (permanent_allocation): Pop function_maybepermanent_obstack,
not hardwired &maybepermanent_obstack.
From-SVN: r8938
1995-02-13 12:55:17 -08:00
Richard Kenner
21f0e042fc
(stabilize_reference): Fix typo in last change.
...
From-SVN: r8771
1995-01-18 07:42:42 -05:00
Richard Kenner
c36a127d64
(stabilize_reference, case RTL_EXPR): New case.
...
From-SVN: r8770
1995-01-17 22:33:13 -05:00
Richard Kenner
9e8730a444
(preserve_momentary): New function.
...
From-SVN: r8623
1994-12-07 16:42:35 -05:00
Richard Kenner
9ad265b05e
(integer_{zero,one,all_ones,pow2}p): Handle COMPLEX_CST.
...
(real_{zero,one,two}p): Likewise.
From-SVN: r8473
1994-11-16 17:37:52 -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
1324c5deb7
(staticp): A non-nested function is always static.
...
From-SVN: r8451
1994-11-15 19:28:56 -05:00
Jason Merrill
cafbaf85f5
(save_tree_status): Add argument to indicate that the new function is not a nested function.
...
(save_tree_status): Add argument to indicate that the new
function is not a nested function.
(restore_tree_status): Ditto.
From-SVN: r8206
1994-10-02 23:17:08 +00:00
Mike Stump
fe1e3bf47e
tree.c (decl_function_context): Don't treat C++ member functions of classes declared in a function...
...
* tree.c (decl_function_context): Don't treat C++ member
functions of classes declared in a function, as nested functions.
From-SVN: r8065
1994-09-09 23:48:21 +00:00
Per Bothner
bca949e251
(get_set_constructor_bits, get_set_constructor_words): New functions.
...
From-SVN: r8044
1994-09-08 11:59:33 -07:00
Jason Merrill
ac83e1bb1c
(type_list_equal): If the types of the default arguments
...
differ, the lists do not match.
From-SVN: r8015
1994-09-01 23:33:02 +00:00