From owner-svn-src-projects@FreeBSD.ORG Tue Jun 21 15:40:31 2011 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B11A1106564A for ; Tue, 21 Jun 2011 15:40: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 7D1DE8FC0C for ; Tue, 21 Jun 2011 15:40:31 +0000 (UTC) Received: from sa-nc-common-177.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 p5LF182X058988 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Tue, 21 Jun 2011 08:01:14 -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: <20110621071352.GA44571@freebsd.org> Date: Tue, 21 Jun 2011 08:01:05 -0700 Content-Transfer-Encoding: 7bit Message-Id: <8D265214-C867-443B-8C93-2D7CD22CE4DF@xcllnt.net> References: <201106210527.p5L5RoKW081314@svn.freebsd.org> <20110621071352.GA44571@freebsd.org> To: Roman Divacky X-Mailer: Apple Mail (2.1084) Cc: svn-src-projects@freebsd.org, Marcel Moolenaar , src-committers@freebsd.org Subject: Re: svn commit: r223357 - projects/llvm-ia64/contrib/llvm/lib/Target/IA64 X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Jun 2011 15:40:31 -0000 On Jun 21, 2011, at 12:13 AM, Roman Divacky wrote: >> + >> +SDValue >> +IA64TargetLowering::LowerReturn(SDValue Chain, CallingConv::ID CallConv, >> + bool isVarArg, const SmallVectorImpl &Outs, >> + const SmallVectorImpl &OutVals, DebugLoc dl, >> + SelectionDAG &DAG) const >> +{ >> + return Chain; >> +} > > This doesn't look right, you probably want to copy the result(s) into > register(s) or something like this. Oh, it's definitely not right. I just want to get to the point where I can compile 1 thing, no matter if that's: void foo(void) { } The thing is that you can expand in multiple directions in parallel after you have that. You can work on supporting more and different formal arguments (including the icky varargs), different return values and structure returns, more instructions patterns for the instruction selection pass, etc. More importantly, it allows me (in parallel) to work out the best way to abstract the notion of having a flexible number of stacked registers, rotating registers and other ia64 specific features. FYI, -- Marcel Moolenaar marcel@xcllnt.net