From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4461 invoked by alias); 14 Oct 2003 18:08:12 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 4448 invoked from network); 14 Oct 2003 18:08:11 -0000 Received: from unknown (HELO develer.com) (151.38.19.110) by sources.redhat.com with SMTP; 14 Oct 2003 18:08:11 -0000 Received: (qmail 21777 invoked from network); 14 Oct 2003 18:08:07 -0000 Received: from beetle.trilan (HELO develer.com) (?ldpxjAHFNRiTpGl5q1Tw+rLepo6QMGqE?@10.3.3.220) by trinity.trilan with SMTP; 14 Oct 2003 18:08:07 -0000 Message-ID: <3F8C3B87.3050902@develer.com> Date: Tue, 14 Oct 2003 20:36:00 -0000 From: Bernardo Innocenti Organization: Develer S.r.l. User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20030927 X-Accept-Language: en, en-us MIME-Version: 1.0 To: Gunther Nikl CC: colin-gcc@horizon.com, gcc@gcc.gnu.org Subject: Re: "small data" in m68k gcc? References: <20031012214902.2016.qmail@science.horizon.com> <200310130113.55072.bernie@develer.com> <20031014135942.GA17758@lorien.int.gecko.de> In-Reply-To: <20031014135942.GA17758@lorien.int.gecko.de> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2003-10/txt/msg00530.txt.bz2 Gunther Nikl wrote: >>This has been quite common practice on the Amiga to generate residentable >>programs and reduce code and relocs size. Actually, the Amiga uses >>A4-relative addressing because A5 is used as a frame pointer and A6 is >>reserved for calling shared library functions through a jump table. > > Correct. The AmigaOS/m68k patches add two additional pic modes (word > and long sized) and handle these modes at those places where they work > differently to the normal pic/PIC modes. These mode do only affect data, > not function calls. I'd be interested in having that code on the ColdFire too. It's an opportunity for getting rid of all relocations and generating smaller binaries. But I'm afraid most uClinux binaries linked against uClibc wouldn't fit into 64KB. And if you go for dynamic libraries, then you need that ID_SHARED_LIBRARY mess :-( >>On the Amiga, you'd use the "__loadds" function attribute for callbacks >>and softints. > > __saveds Yes, you already know about my memory problems :-) -- // Bernardo Innocenti - Develer S.r.l., R&D dept. \X/ http://www.develer.com/ Please don't send Word attachments - http://www.gnu.org/philosophy/no-word-attachments.html