OpenVMS Fortran on Alpha and Itanium uses DW_TAG_entry_point as well, just as shown in the prior email.
Ron Brender On Wed, Oct 24, 2018 at 1:00 AM Rafik Zurob via Dwarf-Discuss < dwarf-discuss@lists.dwarfstd.org> wrote: > > I dug up gfortran 5.4, which does not emit DW_TAG_entry_point with my > > simple example program. Does anybody actually use it? > > IBM XL Fortran generates it. > > $ cat entry.f > subroutine foo(a) > integer a > real b > > a = 5 > return > entry bar(b) > b = 3.0 > return > end subroutine > $ > > Gets the following DWARF: > > <1><42>: Abbrev Number: 2 (DW_TAG_base_type) > <43> DW_AT_name : INTEGER > <4b> DW_AT_byte_size : 4 > <4c> DW_AT_encoding : 5 (signed) > <1><51>: Abbrev Number: 2 (DW_TAG_base_type) > <52> DW_AT_name : REAL > <57> DW_AT_byte_size : 4 > <58> DW_AT_encoding : 4 (float) > <1><59>: Abbrev Number: 4 (DW_TAG_subprogram) > <5a> DW_AT_name : foo > <5e> DW_AT_low_pc : 0x0 > <66> DW_AT_high_pc : 128 > <67> DW_AT_decl_file : 1 > <68> DW_AT_decl_line : 1 > <69> DW_AT_external : 1 > <6a> DW_AT_frame_base : 0x0 (location list) > <2><72>: Abbrev Number: 5 (DW_TAG_formal_parameter) > <73> DW_AT_location : 3 byte block: 91 20 6 (DW_OP_fbreg: 32; > DW_OP_deref) > <77> DW_AT_name : a > <79> DW_AT_type : 0x42 > <2><81>: Abbrev Number: 5 (DW_TAG_formal_parameter) > <82> DW_AT_location : 3 byte block: 91 28 6 (DW_OP_fbreg: 40; > DW_OP_deref) > <86> DW_AT_name : b > <88> DW_AT_type : 0x51 > <2><90>: Abbrev Number: 6 (DW_TAG_entry_point) > <91> DW_AT_name : bar > <95> DW_AT_low_pc : 0x28 > <9d> DW_AT_decl_file : 1 > <9e> DW_AT_decl_line : 7 > <9f> DW_AT_frame_base : 1 byte block: 6e (DW_OP_reg30 > (r30)) > > > > _______________________________________________ > Dwarf-Discuss mailing list > Dwarf-Discuss@lists.dwarfstd.org > http://lists.dwarfstd.org/listinfo.cgi/dwarf-discuss-dwarfstd.org >
_______________________________________________ Dwarf-Discuss mailing list Dwarf-Discuss@lists.dwarfstd.org http://lists.dwarfstd.org/listinfo.cgi/dwarf-discuss-dwarfstd.org