From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.71) id 1ZZULY-0003bZ-8m for mharc-grub-devel@gnu.org; Tue, 08 Sep 2015 21:38:48 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41117) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZZULV-0003b5-IN for grub-devel@gnu.org; Tue, 08 Sep 2015 21:38:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZZULS-0000la-Bt for grub-devel@gnu.org; Tue, 08 Sep 2015 21:38:45 -0400 Received: from world.peace.net ([50.252.239.5]:57342) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZZULS-0000lW-8K for grub-devel@gnu.org; Tue, 08 Sep 2015 21:38:42 -0400 Received: from [10.1.10.32] (helo=yeeloong) by world.peace.net with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1ZZULL-0002QT-Jj; Tue, 08 Sep 2015 21:38:35 -0400 From: Mark H Weaver To: =?utf-8?Q?Vladimir_'=CF=86-coder=2Fphcoder'_Serbinenko?= Subject: Re: [PATCH v2] Ensure that MIPS target code is compiled for the O32 ABI. References: <1440009323-8667-1-git-send-email-mhw@netris.org> <55D6A36D.205@gmail.com> <876147ryhy.fsf@netris.org> <55D99791.4080104@gmail.com> <87a8thuqmo.fsf_-_@netris.org> <55EF16C0.6010703@gmail.com> Date: Tue, 08 Sep 2015 21:37:47 -0400 In-Reply-To: <55EF16C0.6010703@gmail.com> ("Vladimir =?utf-8?Q?'=CF=86-cod?= =?utf-8?Q?er=2Fphcoder'?= Serbinenko"'s message of "Tue, 8 Sep 2015 10:11:28 -0700") Message-ID: <87egi8v0d0.fsf@netris.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 50.252.239.5 Cc: The development of GNU GRUB X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Sep 2015 01:38:46 -0000 "Vladimir '=CF=86-coder/phcoder' Serbinenko" writes: > On 23.08.2015 23:50, Mark H Weaver wrote: >> Include -mabi=3D32 in CFLAGS_PLATFORM and CCASFLAGS_PLATFORM to compile >> code for the O32 ABI when targetting MIPS, since the MIPS assembly code >> in GRUB assumes this. > Could you be more precise where we assume this? Well, to begin with, most of the MIPS assembly code in GRUB uses the MIPS register names such as $tN, $sN, $aN, $vN, etc. Such code is rejected by the assembler unless the O32 ABI is being used, which makes sense since those names are based on the registers' roles in the O32 ABI. In addition, I guess that any MIPS assembly code in *.S that is called by C (or calls into C) will need to be adjusted to use the calling conventions of the ABI in use (N32 or N64). There may be other issues as well; I haven't researched it. > Why not fix the assembly instead? If someone wants to do that job, I'd be pleased, but I don't have time to do it. I have too many other more important things to work on, and not enough time. Too few people are working on non-Intel platforms, leaving most of the work on both the MIPS and ARMHF ports of GNU Guix to me. Many other important packages still need to be fixed on both MIPS and ARMHF, whereas I have GRUB working well. Regards, Mark