From owner-freebsd-sparc64@FreeBSD.ORG Mon Feb 16 22:30:48 2004 Return-Path: Delivered-To: freebsd-sparc64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A89D616A4CE for ; Mon, 16 Feb 2004 22:30:48 -0800 (PST) Received: from mgr2.xmission.com (mgr2.xmission.com [198.60.22.202]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8BC1943D1D for ; Mon, 16 Feb 2004 22:30:48 -0800 (PST) (envelope-from glewis@eyesbeyond.com) Received: from [198.60.22.204] (helo=mgr4.xmission.com) by mgr2.xmission.com with esmtp (Exim 3.35 #1) id 1Asykq-0004Vq-02 for freebsd-sparc64@freebsd.org; Mon, 16 Feb 2004 23:30:48 -0700 Received: from [207.135.128.145] (helo=misty.eyesbeyond.com) by mgr4.xmission.com with esmtp (Exim 4.30) id 1Asykp-00050u-Pq for freebsd-sparc64@freebsd.org; Mon, 16 Feb 2004 23:30:47 -0700 Received: from misty.eyesbeyond.com (localhost.eyesbeyond.com [127.0.0.1]) i1H6UiN2098433 for ; Mon, 16 Feb 2004 23:30:45 -0700 (MST) (envelope-from glewis@eyesbeyond.com) Received: (from glewis@localhost) by misty.eyesbeyond.com (8.12.10/8.12.10/Submit) id i1H6Uhj0098432 for freebsd-sparc64@freebsd.org; Mon, 16 Feb 2004 23:30:43 -0700 (MST) (envelope-from glewis@eyesbeyond.com) X-Authentication-Warning: misty.eyesbeyond.com: glewis set sender to glewis@eyesbeyond.com using -f Date: Mon, 16 Feb 2004 23:30:42 -0700 From: Greg Lewis To: freebsd-sparc64@freebsd.org Message-ID: <20040217063042.GA94592@misty.eyesbeyond.com> Mime-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.4.2i Content-Type: text/plain; charset=us-ascii X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on mgr4.xmission.com X-Spam-Level: X-Spam-Status: No, hits=0.0 required=8.0 tests=none autolearn=no version=2.63 X-SA-Exim-Mail-From: glewis@eyesbeyond.com X-SA-Exim-Version: 3.1 (built Mon Jan 26 13:00:24 MST 2004) X-SA-Exim-Scanned: Yes Subject: Sparc assembler help (jdk13 port) X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Feb 2004 06:30:48 -0000 Hi all, I'm trying to get the jdk13 port running on sparc64. Unfortunately JDK 1.3.1 runs on the Sparc in 32 bit mode under Solaris, so there were a number of 32 bit vs. 64 bit problems. I think I've got most of the initial stage of the build working correctly, however I'm running into some trouble with the assembler code which 'translates the "Java" calling convention into the "C" * calling convention used in native methods'. Since the code was written for 32 bit mode it assumes a pointer can be passed in a single 32 bit register, etc. Unfortunately my knowledge of assembler is very limited and in particular I know nothing about Sparc assembler. I'd love to hear from someone who knows some Sparc assembler and in particular how FreeBSD calls functions (i.e. how the arguments are placed into registers or on the stack). Short of this, some pointers to the right information may eventually yield some results. The code itself is quite short, however I can't post it due to the way Sun licenses their Java source code. If you've compiled any of the jdk* ports though, then you've agreed to the appropriate license (Sun Community Source License). Note that I'm working on getting jdk13 working with the Classic VM. The HotSpot VM is a whole lot more work (which is also why I'm not starting with the jdk14 port). -- Greg Lewis Email : glewis@eyesbeyond.com Eyes Beyond Web : http://www.eyesbeyond.com Information Technology FreeBSD : glewis@FreeBSD.org