From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24039 invoked by alias); 8 Aug 2012 06:32:05 -0000 Received: (qmail 24026 invoked by uid 22791); 8 Aug 2012 06:32:04 -0000 X-SWARE-Spam-Status: No, hits=-5.7 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail-gh0-f175.google.com (HELO mail-gh0-f175.google.com) (209.85.160.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 08 Aug 2012 06:31:51 +0000 Received: by ghbz2 with SMTP id z2so428815ghb.20 for ; Tue, 07 Aug 2012 23:31:51 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-system-of-record:x-gm-message-state; bh=P7nXidcxj/6wEYp08W/vStOGNK55H+n5br+YD1Jh0Og=; b=oByhBbO5gXpdnCWQBuHhgRMMHc5wM1xtZOZVWCZ6IUImI/upUuHBkXrU16eHpQ7B6/ pIvMRG53hY7MsM+hak2GvolvDvsDPV3/yIU/6ZGBbE9J5QBFbL+c9p0hhCwgHqENkDMm lFHWWo52bGGclq2DwyXBl+ky5dctMURYO75pmihsxXyvPIlXXsIJoesoUOe3Ku4SZcBz lbdLkAnU6Ihk/IqA/E1vpIuBd89onW96ykM+Tp+WxWAuMfQV+uB0F/ZvLpzwbKoEzACV iAa38wuWDuC/Xq9RTiRYtlHxysFNq0tJbdER3n89U484SXYBAznc/AkKszetALLpCEE1 Ak9Q== Received: by 10.66.9.2 with SMTP id v2mr31476659paa.65.1344407510454; Tue, 07 Aug 2012 23:31:50 -0700 (PDT) MIME-Version: 1.0 Received: by 10.66.9.2 with SMTP id v2mr31476633paa.65.1344407510196; Tue, 07 Aug 2012 23:31:50 -0700 (PDT) Received: by 10.68.23.10 with HTTP; Tue, 7 Aug 2012 23:31:50 -0700 (PDT) In-Reply-To: <5021FB65.2010704@gmail.com> References: <5021FB65.2010704@gmail.com> Date: Wed, 08 Aug 2012 06:32:00 -0000 Message-ID: Subject: Re: The Extension to ELF From: Ian Lance Taylor To: Fumiaki Isoya Cc: gcc@gcc.gnu.org Content-Type: text/plain; charset=ISO-8859-1 X-System-Of-Record: true X-Gm-Message-State: ALoCoQnLEkxPhaNSfPlirij+SH9SPF3XdR+e4jXw5dW7xqSB+ZPVdumlkETQOJE1F2u4Zhu8DyWfv74njCQuqilACWHC3nSYsush2a25IfCEvY984dpxgDrqXZVLRuIssjwMOKa/8qYESYMq8vnxjHYYTJQpbOVPOZX7+d/Aw2ZFoaRYydvx3MHZgAFYNiJV68hC1EU/rNou X-IsSubscribed: yes Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2012-08/txt/msg00075.txt.bz2 On Tue, Aug 7, 2012 at 10:38 PM, Fumiaki Isoya wrote: >> I suspect we should make decision of solving all symbols by the >> calculation. That is, all symbols should be solved by the >> calculation of the information that stored in Reverse Polish which >> consists of constants, other symbols, and their arithmetic. It >> also contains the information of shared libraries possibly. I >> suppose this decision gives unified implementation of object >> files, static libraries, and shared libraries. In fact it will be >> the extended ELF. The details matter. ELF is designed to permit fast program loading at runtime, and to permit fast linking. Changing symbol and relocation values to take general expressions works against that goal. > I imagine the goal of this infrastructure > is to provide seamless linking of OO language's object files, C's > object files, and Asm's object files. We can already link all these object files together. I'm sure it is possible to improve on ELF in various ways. However, ELF is pretty good. I very strongly recommend that you understand how the format works before you attempt to extend it. Ian