From owner-freebsd-toolchain@FreeBSD.ORG Mon Jun 6 21:33:40 2011 Return-Path: Delivered-To: freebsd-toolchain@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3AE341065673 for ; Mon, 6 Jun 2011 21:33:40 +0000 (UTC) (envelope-from erik@cederstrand.dk) Received: from csmtp2.one.com (csmtp2.one.com [91.198.169.22]) by mx1.freebsd.org (Postfix) with ESMTP id 013708FC08 for ; Mon, 6 Jun 2011 21:33:39 +0000 (UTC) Received: from [192.168.2.2] (unknown [2.108.128.227]) by csmtp2.one.com (Postfix) with ESMTPA id E3F9B307AE24 for ; Mon, 6 Jun 2011 21:14:08 +0000 (UTC) From: Erik Cederstrand Content-Type: multipart/signed; boundary=Apple-Mail-7-522647455; protocol="application/pkcs7-signature"; micalg=sha1 Date: Mon, 6 Jun 2011 23:14:05 +0200 Message-Id: To: freebsd-toolchain@FreeBSD.org Mime-Version: 1.0 (Apple Message framework v1084) X-Mailer: Apple Mail (2.1084) X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: Subject: Analyzer scans X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Jun 2011 21:33:40 -0000 --Apple-Mail-7-522647455 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Hi everyone, It seems the static analysis scans at = http://scan.freebsd.your.org/freebsd-head have vanished. Does anyone = here know what happened to them? Thanks, Erik --Apple-Mail-7-522647455-- From owner-freebsd-toolchain@FreeBSD.ORG Fri Jun 10 02:42:38 2011 Return-Path: Delivered-To: toolchain@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 42595106566C for ; Fri, 10 Jun 2011 02:42:38 +0000 (UTC) (envelope-from marcel@xcllnt.net) Received: from mail.xcllnt.net (mail.xcllnt.net [70.36.220.4]) by mx1.freebsd.org (Postfix) with ESMTP id 15F3F8FC15 for ; Fri, 10 Jun 2011 02:42:37 +0000 (UTC) Received: from sa-nc-it-231.static.jnpr.net (natint3.juniper.net [66.129.224.36]) (authenticated bits=0) by mail.xcllnt.net (8.14.4/8.14.4) with ESMTP id p5A2K9cf065183 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Thu, 9 Jun 2011 19:20:15 -0700 (PDT) (envelope-from marcel@xcllnt.net) From: Marcel Moolenaar Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Date: Thu, 9 Jun 2011 19:20:04 -0700 Message-Id: To: Roman Divacky Mime-Version: 1.0 (Apple Message framework v1084) X-Mailer: Apple Mail (2.1084) Cc: toolchain@freebsd.org Subject: llvm-ia64 is off the ground... X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Jun 2011 02:42:38 -0000 [CC toolchain@ -- more eyes is probably better] Hi Roman, I created the projects branch and committed a skeletal target for ia64 that's based on MSP430. I also discovered that CLang needs some target info, so I added that too. The branch is: projects/llvm-ia64 When you have time, feel free to go over it and critique what I've done. My next steps are simple: Fix whatever blocks me from making progress: ns1% cat ~/incr.c int incr(int x) { return (x + 1); } ns1% clang -ccc-host-triple ia64 -S ~/incr.c 'generic' is not a recognized processor for this target (ignoring processor) error: unable to interface with target machine 1 error generated. (The target defines generic as the default subtarget, but I didn't add that to IA64.td. I added CPU implementations as a test case. I just need to match things up) -- Marcel Moolenaar marcel@xcllnt.net From owner-freebsd-toolchain@FreeBSD.ORG Fri Jun 10 07:41:34 2011 Return-Path: Delivered-To: toolchain@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9A810106566C for ; Fri, 10 Jun 2011 07:41:34 +0000 (UTC) (envelope-from rdivacky@vlakno.cz) Received: from vlakno.cz (lev.vlakno.cz [46.28.110.116]) by mx1.freebsd.org (Postfix) with ESMTP id 5CD358FC0C for ; Fri, 10 Jun 2011 07:41:34 +0000 (UTC) Received: by vlakno.cz (Postfix, from userid 1002) id A834F7F387E; Fri, 10 Jun 2011 09:25:12 +0200 (CEST) Date: Fri, 10 Jun 2011 09:25:12 +0200 From: Roman Divacky To: Marcel Moolenaar Message-ID: <20110610072512.GA35144@freebsd.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i Cc: toolchain@freebsd.org Subject: Re: llvm-ia64 is off the ground... X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Jun 2011 07:41:34 -0000 On Thu, Jun 09, 2011 at 07:20:04PM -0700, Marcel Moolenaar wrote: > [CC toolchain@ -- more eyes is probably better] > > Hi Roman, > > I created the projects branch and committed a skeletal target > for ia64 that's based on MSP430. I also discovered that CLang > needs some target info, so I added that too. > > The branch is: > projects/llvm-ia64 wow :) This is fantastic. > When you have time, feel free to go over it and critique what > I've done. I sure will do! How do you build that? Do I have to build whole freebsd world or is there some easier way? Will "make" in usr.bin/clang work? > My next steps are simple: Fix whatever blocks me from making > progress: > > ns1% cat ~/incr.c > int > incr(int x) > { > return (x + 1); > } > ns1% clang -ccc-host-triple ia64 -S ~/incr.c > 'generic' is not a recognized processor for this target (ignoring processor) You can ignore this for now I think. > error: unable to interface with target machine > 1 error generated. You have to create and register IA64InstPrinter. Check MSP430/InstPrinter/* and and MSP430AsmPrinter.cpp:createMSP430MCInstPrinter(). Should not be hard for you! I'll take some detailed looked in the evening! roman From owner-freebsd-toolchain@FreeBSD.ORG Fri Jun 10 15:38:38 2011 Return-Path: Delivered-To: toolchain@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E8ADF1065672; Fri, 10 Jun 2011 15:38:38 +0000 (UTC) (envelope-from marcel@xcllnt.net) Received: from mail.xcllnt.net (mail.xcllnt.net [70.36.220.4]) by mx1.freebsd.org (Postfix) with ESMTP id 9CAE68FC0A; Fri, 10 Jun 2011 15:38:38 +0000 (UTC) Received: from dhcp-192-168-2-22.wifi.xcllnt.net (atm.xcllnt.net [70.36.220.6]) (authenticated bits=0) by mail.xcllnt.net (8.14.4/8.14.4) with ESMTP id p5AFcWHC068663 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Fri, 10 Jun 2011 08:38:38 -0700 (PDT) (envelope-from marcel@xcllnt.net) Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii From: Marcel Moolenaar In-Reply-To: <20110610072512.GA35144@freebsd.org> Date: Fri, 10 Jun 2011 08:38:38 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <5A6AC098-FB0D-474A-B92D-190121CA400F@xcllnt.net> References: <20110610072512.GA35144@freebsd.org> To: Roman Divacky X-Mailer: Apple Mail (2.1084) Cc: toolchain@freebsd.org Subject: Re: llvm-ia64 is off the ground... X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Jun 2011 15:38:39 -0000 On Jun 10, 2011, at 12:25 AM, Roman Divacky wrote: > On Thu, Jun 09, 2011 at 07:20:04PM -0700, Marcel Moolenaar wrote: >> [CC toolchain@ -- more eyes is probably better] >>=20 >> Hi Roman, >>=20 >> I created the projects branch and committed a skeletal target >> for ia64 that's based on MSP430. I also discovered that CLang >> needs some target info, so I added that too. >>=20 >> The branch is: >> projects/llvm-ia64 >=20 > wow :) This is fantastic. >=20 >> When you have time, feel free to go over it and critique what >> I've done. >=20 > I sure will do! How do you build that? Do I have to build whole > freebsd world or is there some easier way? Will "make" in = usr.bin/clang > work? On my FreeBSD 8 I first made lib/clang/libllvmsupport. After that I could make usr.bin/clang/tblgen and install it. Then it's easy: build lib/clang followed by usr.bin/clang. Install from usr.bin/clang Unfortunately, the FreeBSD build doesn't give me goodies like llc or bugpoint so there may be value in adding that to the FreeBSD build as optional or developer-only build targets... Thoughts anyone? >=20 >> My next steps are simple: Fix whatever blocks me from making >> progress: >>=20 >> ns1% cat ~/incr.c=20 >> int >> incr(int x) >> { >> return (x + 1); >> } >> ns1% clang -ccc-host-triple ia64 -S ~/incr.c=20 >> 'generic' is not a recognized processor for this target (ignoring = processor) >=20 > You can ignore this for now I think. I'll probably implement something simple like the merced and mckinley subtargets and default to mckinley. Later, when it's time to look at optimizations, is when this becomes important. >=20 >> error: unable to interface with target machine >> 1 error generated. >=20 > You have to create and register IA64InstPrinter. Check = MSP430/InstPrinter/* > and and MSP430AsmPrinter.cpp:createMSP430MCInstPrinter(). Ah, ok... BTW: these little tips save me hours of debugging. > I'll take some detailed looked in the evening! Thanks. Anytime, no rush... --=20 Marcel Moolenaar marcel@xcllnt.net From owner-freebsd-toolchain@FreeBSD.ORG Fri Jun 10 15:56:53 2011 Return-Path: Delivered-To: toolchain@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 59B071065670; Fri, 10 Jun 2011 15:56:53 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id EBFEA8FC14; Fri, 10 Jun 2011 15:56:52 +0000 (UTC) Received: from [10.30.101.53] ([209.117.142.2]) (authenticated bits=0) by harmony.bsdimp.com (8.14.4/8.14.3) with ESMTP id p5AFroSr044160 (version=TLSv1/SSLv3 cipher=DHE-DSS-AES128-SHA bits=128 verify=NO); Fri, 10 Jun 2011 09:53:51 -0600 (MDT) (envelope-from imp@bsdimp.com) Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: <5A6AC098-FB0D-474A-B92D-190121CA400F@xcllnt.net> Date: Fri, 10 Jun 2011 09:53:38 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: <2657C7E1-C7A2-4D0D-BB69-21BB6741DD9A@bsdimp.com> References: <20110610072512.GA35144@freebsd.org> <5A6AC098-FB0D-474A-B92D-190121CA400F@xcllnt.net> To: Marcel Moolenaar X-Mailer: Apple Mail (2.1084) X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.0.1 (harmony.bsdimp.com [10.0.0.6]); Fri, 10 Jun 2011 09:53:52 -0600 (MDT) Cc: toolchain@FreeBSD.ORG, Roman Divacky Subject: Re: llvm-ia64 is off the ground... X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Jun 2011 15:56:53 -0000 Hey Marcel, I don't mean to throw cold water at your enthusiasm, but I thought I = heard that upstream llvm was in the process of decommissioning ia64 = support. Did I hear wrong? Warner On Jun 10, 2011, at 9:38 AM, Marcel Moolenaar wrote: >=20 > On Jun 10, 2011, at 12:25 AM, Roman Divacky wrote: >=20 >> On Thu, Jun 09, 2011 at 07:20:04PM -0700, Marcel Moolenaar wrote: >>> [CC toolchain@ -- more eyes is probably better] >>>=20 >>> Hi Roman, >>>=20 >>> I created the projects branch and committed a skeletal target >>> for ia64 that's based on MSP430. I also discovered that CLang >>> needs some target info, so I added that too. >>>=20 >>> The branch is: >>> projects/llvm-ia64 >>=20 >> wow :) This is fantastic. >>=20 >>> When you have time, feel free to go over it and critique what >>> I've done. >>=20 >> I sure will do! How do you build that? Do I have to build whole >> freebsd world or is there some easier way? Will "make" in = usr.bin/clang >> work? >=20 > On my FreeBSD 8 I first made lib/clang/libllvmsupport. After > that I could make usr.bin/clang/tblgen and install it. Then > it's easy: build lib/clang followed by usr.bin/clang. Install > from usr.bin/clang >=20 > Unfortunately, the FreeBSD build doesn't give me goodies like > llc or bugpoint so there may be value in adding that to the > FreeBSD build as optional or developer-only build targets... >=20 > Thoughts anyone? >=20 >>=20 >>> My next steps are simple: Fix whatever blocks me from making >>> progress: >>>=20 >>> ns1% cat ~/incr.c=20 >>> int >>> incr(int x) >>> { >>> return (x + 1); >>> } >>> ns1% clang -ccc-host-triple ia64 -S ~/incr.c=20 >>> 'generic' is not a recognized processor for this target (ignoring = processor) >>=20 >> You can ignore this for now I think. >=20 > I'll probably implement something simple like the merced and > mckinley subtargets and default to mckinley. Later, when it's > time to look at optimizations, is when this becomes important. >=20 >>=20 >>> error: unable to interface with target machine >>> 1 error generated. >>=20 >> You have to create and register IA64InstPrinter. Check = MSP430/InstPrinter/* >> and and MSP430AsmPrinter.cpp:createMSP430MCInstPrinter(). >=20 > Ah, ok... >=20 > BTW: these little tips save me hours of debugging. >=20 >> I'll take some detailed looked in the evening! >=20 > Thanks. Anytime, no rush... >=20 > --=20 > Marcel Moolenaar > marcel@xcllnt.net >=20 >=20 > _______________________________________________ > freebsd-toolchain@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-toolchain > To unsubscribe, send any mail to = "freebsd-toolchain-unsubscribe@freebsd.org" >=20 >=20 From owner-freebsd-toolchain@FreeBSD.ORG Fri Jun 10 15:58:37 2011 Return-Path: Delivered-To: toolchain@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CDB5E1065676 for ; Fri, 10 Jun 2011 15:58:37 +0000 (UTC) (envelope-from rdivacky@vlakno.cz) Received: from vlakno.cz (lev.vlakno.cz [46.28.110.116]) by mx1.freebsd.org (Postfix) with ESMTP id 9241B8FC0C for ; Fri, 10 Jun 2011 15:58:37 +0000 (UTC) Received: by vlakno.cz (Postfix, from userid 1002) id BE1D57F387F; Fri, 10 Jun 2011 17:58:35 +0200 (CEST) Date: Fri, 10 Jun 2011 17:58:35 +0200 From: Roman Divacky To: Marcel Moolenaar Message-ID: <20110610155835.GA91825@freebsd.org> References: <20110610072512.GA35144@freebsd.org> <5A6AC098-FB0D-474A-B92D-190121CA400F@xcllnt.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5A6AC098-FB0D-474A-B92D-190121CA400F@xcllnt.net> User-Agent: Mutt/1.4.2.3i Cc: toolchain@freebsd.org Subject: Re: llvm-ia64 is off the ground... X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Jun 2011 15:58:37 -0000 > Unfortunately, the FreeBSD build doesn't give me goodies like > llc or bugpoint so there may be value in adding that to the > FreeBSD build as optional or developer-only build targets... > > Thoughts anyone? I know of a better solution :) Just build llvm libraries as shared and use vanilla llvm opt/llc/etc that are linked dynamically. It should just work. > >> error: unable to interface with target machine > >> 1 error generated. > > > > You have to create and register IA64InstPrinter. Check MSP430/InstPrinter/* > > and and MSP430AsmPrinter.cpp:createMSP430MCInstPrinter(). > > Ah, ok... > > BTW: these little tips save me hours of debugging. Let me know how it went. I am eager to see progress on this :) From owner-freebsd-toolchain@FreeBSD.ORG Fri Jun 10 15:59:13 2011 Return-Path: Delivered-To: toolchain@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F40AD106564A for ; Fri, 10 Jun 2011 15:59:12 +0000 (UTC) (envelope-from rdivacky@vlakno.cz) Received: from vlakno.cz (lev.vlakno.cz [46.28.110.116]) by mx1.freebsd.org (Postfix) with ESMTP id B7CD68FC0A for ; Fri, 10 Jun 2011 15:59:12 +0000 (UTC) Received: by vlakno.cz (Postfix, from userid 1002) id DF1357F3883; Fri, 10 Jun 2011 17:59:11 +0200 (CEST) Date: Fri, 10 Jun 2011 17:59:11 +0200 From: Roman Divacky To: Warner Losh Message-ID: <20110610155911.GB91825@freebsd.org> References: <20110610072512.GA35144@freebsd.org> <5A6AC098-FB0D-474A-B92D-190121CA400F@xcllnt.net> <2657C7E1-C7A2-4D0D-BB69-21BB6741DD9A@bsdimp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2657C7E1-C7A2-4D0D-BB69-21BB6741DD9A@bsdimp.com> User-Agent: Mutt/1.4.2.3i Cc: toolchain@FreeBSD.ORG Subject: Re: llvm-ia64 is off the ground... X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Jun 2011 15:59:13 -0000 On Fri, Jun 10, 2011 at 09:53:38AM -0600, Warner Losh wrote: > Hey Marcel, > > I don't mean to throw cold water at your enthusiasm, but I thought I heard that upstream llvm was in the process of decommissioning ia64 support. Did I hear wrong? Quite :) LLVM removed their IA64 backend a long time ago (2 years?). Marcel is attempting to write a new one from scratch. roman From owner-freebsd-toolchain@FreeBSD.ORG Fri Jun 10 16:25:01 2011 Return-Path: Delivered-To: toolchain@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BD385106564A; Fri, 10 Jun 2011 16:25:01 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (cl-327.ede-01.nl.sixxs.net [IPv6:2001:7b8:2ff:146::2]) by mx1.freebsd.org (Postfix) with ESMTP id 7C5928FC0A; Fri, 10 Jun 2011 16:25:01 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7:0:71b2:1bbd:ef99:d22c] (unknown [IPv6:2001:7b8:3a7:0:71b2:1bbd:ef99:d22c]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id B36205C37; Fri, 10 Jun 2011 18:25:00 +0200 (CEST) Message-ID: <4DF24561.5070803@FreeBSD.org> Date: Fri, 10 Jun 2011 18:25:05 +0200 From: Dimitry Andric Organization: The FreeBSD Project User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.18pre) Gecko/20110527 Lanikai/3.1.11pre MIME-Version: 1.0 To: Marcel Moolenaar References: <20110610072512.GA35144@freebsd.org> <5A6AC098-FB0D-474A-B92D-190121CA400F@xcllnt.net> In-Reply-To: <5A6AC098-FB0D-474A-B92D-190121CA400F@xcllnt.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: toolchain@freebsd.org Subject: Re: llvm-ia64 is off the ground... X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Jun 2011 16:25:01 -0000 On 2011-06-10 17:38, Marcel Moolenaar wrote: ... > Unfortunately, the FreeBSD build doesn't give me goodies like > llc or bugpoint so there may be value in adding that to the > FreeBSD build as optional or developer-only build targets... These programs are of little use for normal users, or even most developers, except for people who hack on clang/llvm itself. Also, to install them without too much overhead, we would have to start installing llvm and clang's shared libraries, which adds a lot of complexity. Currently, we just link everything into one clang executable. (There's also a tblgen executable, but it is debatable whether even that belongs in the base system, since it is only used for building llvm and clang.) That said, it is great you are working on this, but do you have any particular reason for not just using a checkout from the upstream llvm and clang repositories instead? If you work inside the FreeBSD tree, you have a version that is slightly behind the current version, and for hacking on a new backend, it is usually better to get hints and advice from the llvm people themselves... From owner-freebsd-toolchain@FreeBSD.ORG Fri Jun 10 20:43:31 2011 Return-Path: Delivered-To: toolchain@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 19F89106564A; Fri, 10 Jun 2011 20:43:31 +0000 (UTC) (envelope-from marcel@xcllnt.net) Received: from mail.xcllnt.net (mail.xcllnt.net [70.36.220.4]) by mx1.freebsd.org (Postfix) with ESMTP id C32798FC16; Fri, 10 Jun 2011 20:43:30 +0000 (UTC) Received: from sa-nc-it-231.static.jnpr.net (natint3.juniper.net [66.129.224.36]) (authenticated bits=0) by mail.xcllnt.net (8.14.4/8.14.4) with ESMTP id p5AKhGBv069577 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Fri, 10 Jun 2011 13:43:20 -0700 (PDT) (envelope-from marcel@xcllnt.net) Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii From: Marcel Moolenaar In-Reply-To: <20110610155911.GB91825@freebsd.org> Date: Fri, 10 Jun 2011 13:43:10 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <79C0472B-486C-4906-AFD2-FC868785C79C@xcllnt.net> References: <20110610072512.GA35144@freebsd.org> <5A6AC098-FB0D-474A-B92D-190121CA400F@xcllnt.net> <2657C7E1-C7A2-4D0D-BB69-21BB6741DD9A@bsdimp.com> <20110610155911.GB91825@freebsd.org> To: Roman Divacky , Warner Losh , Dimitry Andric X-Mailer: Apple Mail (2.1084) Cc: toolchain@freebsd.org Subject: Re: llvm-ia64 is off the ground... X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Jun 2011 20:43:31 -0000 [Combining responses...] On Jun 10, 2011, at 8:59 AM, Roman Divacky wrote: > On Fri, Jun 10, 2011 at 09:53:38AM -0600, Warner Losh wrote: >> Hey Marcel, >>=20 >> I don't mean to throw cold water at your enthusiasm, but I thought I = heard that upstream llvm was in the process of decommissioning ia64 = support. Did I hear wrong? >=20 > Quite :) LLVM removed their IA64 backend a long time ago (2 years?). > Marcel is attempting to write a new one from scratch. I was playing with LLVM at the time and was lingering on the mailing lists when the proposal was sent. There was a short email exchange on the subject and the end result was that I created the llvm-ia64 project on SF and LLVM removed the ia64 backend. See below for how well the SF project faired :-) =3D=3D=3D=3D=3D=3D=3D=3D > On 2011-06-10 17:38, Marcel Moolenaar wrote: > ... >> Unfortunately, the FreeBSD build doesn't give me goodies like >> llc or bugpoint so there may be value in adding that to the >> FreeBSD build as optional or developer-only build targets... On Jun 10, 2011, at 8:58 AM, Roman Divacky wrote: >> Unfortunately, the FreeBSD build doesn't give me goodies like >> llc or bugpoint so there may be value in adding that to the >> FreeBSD build as optional or developer-only build targets... >>=20 >> Thoughts anyone? >=20 > I know of a better solution :) Just build llvm libraries as shared > and use vanilla llvm opt/llc/etc that are linked dynamically. It = should > just work. On Jun 10, 2011, at 9:25 AM, Dimitry Andric wrote: > These programs are of little use for normal users, or even most > developers, except for people who hack on clang/llvm itself. Granted. > Also, to install them without too much overhead, we would have to = start > installing llvm and clang's shared libraries, which adds a lot of > complexity. Currently, we just link everything into one clang > executable. (There's also a tblgen executable, but it is debatable > whether even that belongs in the base system, since it is only used = for > building llvm and clang.) Yes, one can argue whether tblgen should be installed. I don't think I would mind it if it wasn't installed (with my LLVM/clang hacking hat on). > That said, it is great you are working on this, but do you have any > particular reason for not just using a checkout from the upstream llvm > and clang repositories instead? If you work inside the FreeBSD tree, > you have a version that is slightly behind the current version, and = for > hacking on a new backend, it is usually better to get hints and advice > from the llvm people themselves... With the llvm-ia64 project on SF, that is exactly what I was doing. However, I never really got it off the ground as easily as I could do it now. The problem, I think, is that there was an added complexity of having to deal with auto tools, the fact that pure LLVM doesn't come with a good C/C++ frontend and I found myself having to worry about the GCC frontend (at the time clang was probably in the baby stage). etc... I'm not saying it was impossible. All I'm saying that there were more hurdles to take, more unknowns to demystify and therefore a much steeper learning curve to overcome that it simply wasn't as focussed an effort as I needed at the time. Now I have a very simple goal: bootstrap a usable target for ia64 that allows me to compile FreeBSD/ia64 correctly and have it done before GCC is removed from the FreeBSD source tree. As a side-effect, I hope to inspire other people to do the same for their own favorite platform. The build is familiar to me. No auto tools, no magic. I end up with a single executable clang that us fully functional at the top and even has a few fully functional targets at the bottom. This is not to say that I should not revisit this decisions at a later time. I think I should. But I don't think I have to do it before I have a working target. It's easier for me to switch focus and worry about the LLVM development environment if I do not have to worry about writing a backend. I'm perfectly fine having a static LLVM source base that may only get infrequent updates. Anyway: in the mean time it would be great if we can bridge the gap between LLVM/Clang in FreeBSD and having all the LLVM to help diagnose LLVM/Clang problems. I'm good with shared libs, additional build targets and/or having a port. I think it helps if it's something that this mailinglist knows about and "supports" to the extend that it can be used to describe problems and is easy for anyone to set up. FYI, --=20 Marcel Moolenaar marcel@xcllnt.net