Richard Stallman [Fri, 17 Jul 1992 04:17:58 +0000 (04:17 +0000)]
(typedef tree_node_kind): Added new kind, i.e. `b_kind'.
(tree_node_kind_names): Added name for `b_kind'.
(make_node, copy_node, stabilize_reference_1):
Handle case 'b' (for BLOCK nodes).
(make_node): Don't try to deal with BLOCKs when doing a type 'e' node.
Richard Stallman [Fri, 17 Jul 1992 04:15:55 +0000 (04:15 +0000)]
(struct tree_block): New struct type definition added.
(BLOCK_VARS, BLOCK_TYPE_TAGS, BLOCK_SUBBLOCKS, BLOCK_HANDLER_BLOCK):
Changed to reference fields of the new `struct tree_block' type.
(BLOCK_ABSTRACT_ORIGIN, BLOCK_ABSTRACT): Definitions added.
(union tree_node): Added `struct tree_block' as a new variant.
Richard Stallman [Wed, 15 Jul 1992 18:35:30 +0000 (18:35 +0000)]
(self_promoting_args_p, self_promoting_type_p):
(signed_type, unsigned_type, default_conversion, check_format):
(build_binary_op, c_expand_start_case):
Use TYPE_MAIN_VARIANT when comparing against specific non-void types.
Richard Kenner [Tue, 14 Jul 1992 10:09:46 +0000 (06:09 -0400)]
(yylex): Ensure TOTAL_PARTS is wide enough to store a constant as wide as we can store in an INTEGER_CST.
(yylex): Ensure TOTAL_PARTS is wide enough to store a
constant as wide as we can store in an INTEGER_CST.
(LONG_LONG_TYPE_SIZE): Deleted; no longer needed.
Richard Stallman [Sun, 12 Jul 1992 19:39:00 +0000 (19:39 +0000)]
(process_aux_info_file): Set must_create before jumping to start_over.
(process_aux_info_file): Set must_create before jumping to
start_over. Don't clear must_create at start_over. Don't test
source file mod time for SYSCALLS.
Richard Stallman [Fri, 10 Jul 1992 08:50:35 +0000 (08:50 +0000)]
(dbxout_type_methods): Fix minimal_debug so that it skips a redundant class name prefix, as intended.
(dbxout_type_methods): Fix minimal_debug so
that it skips a redundant class name prefix, as intended.
It now expects the length digits that precede the class name.
(output_inlined_enumeration_type_die): New function.
(output_inlined_structure_type_die, output_inlined_union_type_die):
New functions added.
(output_entry_point_die, output_formal_parameter_die,
output_global_subroutine_die, output_global_variable_die,
output_label_die, output_lexical_block_die,
output_inlined_subroutine_die, output_local_variable_die,
output_local_subroutine_die):
Fixed to handle inline abstract & concrete (i.e. inlined) instances.
(output_inlined_subroutine_die): Deleted.
(output_label_die): Don't permit the rtx associated with a named
user-declared label to be marked as INSN_DELETED_P.
(output_tagged_type_instantiation): New function added.
(output_decl): Call `output_tagged_type_instantiation'.
Don't generate a pubnames label for anything marked as DECL_ABSTRACT.
(output_die): Generate the proper kind fo DIE for each of the four
possible combination of {normal, inlined} {variable, parameter}.
(dwarfout_file_scope_decl): Don't generate pubnames entries if
strictly abstract.
(ordering_attribute): Only def if USE_ORDERING_ATTRIBUTE
is defined.
(output_array_type_die): Only call ordering_attribute if it is defined.
(name_and_src_coords_attributes): Don't make it inline.
Do make it static linkage.
(const_value_attribute): Catch invalid kinds of rtx nodes
by aborting for the default case in switch.
(output_ptr_to_mbr_type_die): Make it static linkage.
(output_formal_types): Make sure that `formal_type' is initialized.
(output_type): Add a default case for switch.
(output_decl): Don't suppress DIEs for the initial (artificial)
arguments for C++ static member functions.
(ceiling, field_type, simple_type_align_in_bits,
simple_type_size_in_bits, field_byte_offset): New functions added.
(data_member_location_attribute): Use new routine `field_byte_offset'
to calculate the offset value for the AT_location attribute.
(byte_size_attribute): Use new routine `field_type' to get the
actual type for any FIELD_DECL. Also, use `simple_type_size_in_bits'
to avoid potential problems with ERROR_MARKs when computing the size
of a FIELD_DECL.
(bit_offset_attribute): Rewritten to use `field_byte_offset' when
determining the start of the "containing object".