From mint-bounce@lists.fishpool.fi  Mon Jan 30 18:49:01 2006
X-Original-To: fnaumann@mail.boerde.de
Delivered-To: fnaumann@mail.boerde.de
X-ME-UUID: 20060130174410470.72E04700009D@mwinf1412.wanadoo.fr
Date: Mon, 30 Jan 2006 18:44:09 +0100
From: Patrice Mandin <mandin.patrice@wanadoo.fr>
To: Mint list <mint@fishpool.com>
Subject: Re: [MiNT] modules hang 1.16.1 kernel
Message-Id: <20060130184409.2bfa620d.mandin.patrice@wanadoo.fr>
In-Reply-To: <1138567981.6920.47.camel@joy.home>
References: <000101c6250b$febb6600$0480a8c0@in.systinet.com>
	<1138567981.6920.47.camel@joy.home>
Organization: Chez moi
X-Mailer: Sylpheed version 1.0.4 (GTK+ 1.2.10; i386-pc-linux-gnu)
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-15
X-ecartis-version: Ecartis v1.0.0
Sender: mint-bounce@lists.fishpool.fi
Errors-To: mint-bounce@lists.fishpool.fi
X-original-sender: mandin.patrice@wanadoo.fr
Precedence: bulk
List-help: <mailto:ecartis@lists.fishpool.fi?Subject=help>
List-unsubscribe: <mailto:mint-request@lists.fishpool.fi?Subject=unsubscribe>
List-Id: <mint.lists.fishpool.fi>
X-List-ID: <mint.lists.fishpool.fi>
X-Virus-Scanned: by amavisd-new at relay.boerde.de
X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on relay.boerde.de
X-Spam-Status: No, hits=2.2 tagged_above=-50.5 required=7.0 tests=AWL,
 BAYES_00, RCVD_IN_SORBS
X-Spam-Level: **
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by wh58-508.st.uni-magdeburg.de id k0UHn1bA014735

Le Sun, 29 Jan 2006 21:53:01 +0100
Petr Stehlik <joy@sophics.cz> a écrit:

> > IMHO this is actually a bug in our binutils adaptation. When I save
> > only the d4 it is enough to get FreeMiNT running. And it is caused
> > by this the following binutils-2.13.2.1-mint.patch (from the RPM):
> 
> If saving d4 fixes loading of FreeMiNT modules then I suppose the
> original code saved d0-d3 only. The question is why didn't it save all
> (d0-a6) registers? Are we short of space on stack?
> 
> Is there a rule for module authors to not use the d4-d7 registers
> without saving and restoring them? Even if it was I would still think
> that the OS should always try to protect itself and save all registers
> it needs for its own run before executing external programs.

According to compendium, all functions in a xdd/xfs can use d2-d7/a2-a6
provided they are backup/restored, and d0-d1/a0-a1 as scratch registers.

But, it does not say which registers can be used/must be saved in the
initialization function, if any. And this init function is used by most
drivers.

-- 
Patrice Mandin
WWW: http://pmandin.atari.org/
Programmeur Linux, Atari
Spécialité: Développement, jeux


