From owner-freebsd-mips@FreeBSD.ORG Mon Mar 1 19:38:23 2010 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 690AC106564A for ; Mon, 1 Mar 2010 19:38:23 +0000 (UTC) (envelope-from juli@clockworksquid.com) Received: from mail-ew0-f226.google.com (mail-ew0-f226.google.com [209.85.219.226]) by mx1.freebsd.org (Postfix) with ESMTP id 0BB598FC0C for ; Mon, 1 Mar 2010 19:38:22 +0000 (UTC) Received: by ewy26 with SMTP id 26so1548747ewy.3 for ; Mon, 01 Mar 2010 11:38:17 -0800 (PST) MIME-Version: 1.0 Sender: juli@clockworksquid.com Received: by 10.102.14.3 with SMTP id 3mr3904960mun.90.1267472295132; Mon, 01 Mar 2010 11:38:15 -0800 (PST) In-Reply-To: <98a59be81003010628g6099768erc397bc90841840f8@mail.gmail.com> References: <98a59be81003010628g6099768erc397bc90841840f8@mail.gmail.com> From: Juli Mallett Date: Mon, 1 Mar 2010 11:37:54 -0800 X-Google-Sender-Auth: 3dab08f1011b1950 Message-ID: To: "C. Jayachandran" Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Cc: freebsd-mips@freebsd.org Subject: Re: n32 support patches X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2010 19:38:23 -0000 On Mon, Mar 1, 2010 at 06:28, C. Jayachandran wr= ote: > I'm in the process of getting n32 ABI support for the RMI processors. > The plan is have n32 compiled kernel with 64-bit register_t and > physaddr_t and 32 bit long and pointer types. Hi JC, I've been working on this too in my user/jmallett/octeon branch in Subversion and have gotten past some of the problems you mention, but not always in the cleanest of ways. I switched to using the libgcc softfloat implementation instead of the libc one, for example, and have committed some changes from Warner to libc's abicalls support. I am currently running with a static root filesystem to track down some bugs with syscalls (I think just the ones with lots of arguments, i.e. the ones we need to do copyin to get; or maybe it's the bogus quad stuff, I don't know yet =97 the day is young) before moving on to fixing the problems with dynamic linking. If there's any way to coordinate our efforts and you'd like to, let me know! One thing I will say is that I've been talking with Warner and we think that n32 kernels are probably a pretty bad idea =97 a lot of the system depends on pointers being the same width as registers, etc. Neither of us could really think of a case where you'd want an n32 kernel instead of an n64 kernel except for the case where your bootloader just can't handle ELF64, in which case a trampoline or an n32/o32 loader which can load ELF64 seems more beneficial. Do you have a use case in mind, or is it just that n32 is an easier target than n64? Thanks, Juli.