From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4343 invoked by alias); 10 Jul 2002 18:49:32 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 4330 invoked from network); 10 Jul 2002 18:49:31 -0000 Received: from unknown (HELO www.dberlin.org) (138.88.47.164) by sources.redhat.com with SMTP; 10 Jul 2002 18:49:31 -0000 Received: by www.dberlin.org (Postfix, from userid 503) id EA3921818961; Wed, 10 Jul 2002 14:49:30 -0400 (EDT) Received: from localhost (localhost.localdomain [127.0.0.1]) by www.dberlin.org (Postfix) with ESMTP id 524711818960; Wed, 10 Jul 2002 14:49:25 -0400 (EDT) Date: Wed, 10 Jul 2002 12:27:00 -0000 From: Daniel Berlin To: Jim Blandy Cc: Petr Sorfa , Subject: Re: [PATCH] DW_AT_calling_convention support In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Spam-Status: No, hits=-1.6 required=5.0 tests=IN_REP_TO,NO_MX_FOR_FROM,AWL version=2.31 X-Spam-Level: X-SW-Source: 2002-07/txt/msg00199.txt.bz2 > > "The DW_CC_program value is intended to support Fortran main programs. > > It is not intended as > > a way of finding the entry address for the program." > > > > So the answer is yes and no. But I think the patch is valid as it > > determines not the entry point, but the main program. As far as I am > > aware you can have only one PROGRAM entry per FORTRAN program. If there > > is more than one found, the patch just uses the last read entry. I don't > > think supporting a more intricate way would be much use (such as keeping > > a list of DW_CC_program entries.) > > What's the difference between the entry point and the main program? I would imagine the thinking is executables that can act as both shared libs, and as main programs (IE they have one entry point used when loaded as a module, one when used as loaded as a program). A not-so-clear example of this would be a C++ program that can act as a shared lib and an executable. As a shared lib, it probably has some automatically run by the runtime linker entry point that deals with exception registration and whatnot, but as a main program, this is probably done from main. Thus, the main program is "main", but the entry points are "main" and "initialize_exceptions". >