From owner-freebsd-alpha Tue Feb 11 13:44:43 2003 Delivered-To: freebsd-alpha@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EFEA637B401 for ; Tue, 11 Feb 2003 13:44:41 -0800 (PST) Received: from alcanet.com.au (mail2.alcanet.com.au [203.62.196.17]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7E9AD43F85 for ; Tue, 11 Feb 2003 13:44:40 -0800 (PST) (envelope-from peter.jeremy@alcatel.com.au) Received: from sydsmtp01.alcatel.com.au (IDENT:root@localhost.localdomain [127.0.0.1]) by alcanet.com.au (8.12.4/8.12.4/Alcanet1.3) with ESMTP id h1BLicFx015734; Wed, 12 Feb 2003 08:44:39 +1100 Received: from gsmx07.alcatel.com.au ([139.188.20.247]) by sydsmtp01.alcatel.com.au (Lotus Domino Release 5.0.11) with ESMTP id 2003021208443693:12735 ; Wed, 12 Feb 2003 08:44:36 +1100 Received: from gsmx07.alcatel.com.au (localhost [127.0.0.1]) by gsmx07.alcatel.com.au (8.12.5/8.12.5) with ESMTP id h1BLiaIs044815; Wed, 12 Feb 2003 08:44:36 +1100 (EST) (envelope-from peter.jeremy@alcatel.com.au) Received: (from jeremyp@localhost) by gsmx07.alcatel.com.au (8.12.5/8.12.5/Submit) id h1BLiZOj044814; Wed, 12 Feb 2003 08:44:35 +1100 (EST) (envelope-from peter.jeremy@alcatel.com.au) Date: Wed, 12 Feb 2003 08:44:35 +1100 From: Peter Jeremy To: Marcel Moolenaar Cc: alpha@FreeBSD.ORG Subject: Re: Open Watcom compiler Message-ID: <20030211214435.GI1877@gsmx07.alcatel.com.au> Mail-Followup-To: Marcel Moolenaar , alpha@FreeBSD.ORG References: <20030211003353.GA12187@athlon.pn.xcllnt.net> <15945.1278.292937.743702@grasshopper.cs.duke.edu> <20030211192217.GD2881@dhcp01.pn.xcllnt.net> Mime-Version: 1.0 In-Reply-To: <20030211192217.GD2881@dhcp01.pn.xcllnt.net> User-Agent: Mutt/1.4i X-MIMETrack: Itemize by SMTP Server on SYDSMTP01/AlcatelAustralia(Release 5.0.11 |July 24, 2002) at 12/02/2003 08:44:36 AM, Serialize by Router on SYDSMTP01/AlcatelAustralia(Release 5.0.11 |July 24, 2002) at 12/02/2003 08:44:39 AM, Serialize complete at 12/02/2003 08:44:39 AM Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Sender: owner-freebsd-alpha@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org On 2003-Feb-11 11:22:17 -0800, Marcel Moolenaar wrote: >On Tue, Feb 11, 2003 at 09:13:18AM -0500, Andrew Gallatin wrote: >> >> > Am I right when I say that Compaq's compiler cannot be used to >> > compile the kernel? >> >> Yes. This is mainly due to lazyness on our part. The Compaq compiler >> does not support gcc asm syntanx, so making it compile the kernel >> would largely be a matter of converting inline asm (as well as >> stepping over other hurdles common to non-gnu compilers). > >Ok. This mostly applies to OW as well I guess. It's also not specific >to alpha, so it would be nice if we could come up with a good way to >replace and avoid inline assembly in general without negative side- >effects like duplication, performance hits and the likes... Note that Andrew said "convert" not "replace and avoid". The Compaq compiler _does_ support inline assembler, it just has to be explicitly enabled and uses a different syntax. asm() needs to be treated more like a function call - the arguments are found in the standard function arg registers (%aX) and it returns %v0. I don't know if CCC treats these as virtual registers that it can re-write to better suit data flow or as hard-coded registers. The gcc inline syntax is definitely more powerful but unless we have inlines that return multiple values, we can probably write alternative inlines in CCC syntax. (Of course this will generate lots of compiler- dependent #if/#else/#endif code). I don't know what the OW support for inline assember is. Peter To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message