(output_inlined_enumeration_type_die): New function.
authorRichard Stallman <rms@gnu.org>
Wed, 8 Jul 1992 22:37:48 +0000 (22:37 +0000)
committerRichard Stallman <rms@gnu.org>
Wed, 8 Jul 1992 22:37:48 +0000 (22:37 +0000)
commitd4d4c5a87dcb900b9ec6d1abdcc656122b4c4d8a
treec8b74232cb7a79251db97b2e79f0fd03d5b86f75
parentef03bc85d59cbba3ff75de814490f4d60be1ffd1
(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".

From-SVN: r1531
gcc/dwarfout.c