Hello all, We would like to contribute a new backend for Qualcomm's Hexagon processor. We will actively maintain the port once it is accepted. Hexagon is a VLIW core that is used principally in modem and low power audio applications in Qualcomm's chip sets. We have a patch for both llvm and for clang. As this is a new port, these patches are quite large (approximately 26k and 3k lines, respectively). Most of the patches consist of, quite naturally, new files. I have looked for guidelines for submitting a new backend, but have not found anything. Is there anything of that nature? If not, my plan is to simply submit the two patches. Any other suggestions? Thanks. Tony Linthicum -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum.
On Tue, Nov 1, 2011 at 11:44 AM, Tony Linthicum <tlinth at codeaurora.org> wrote:> Hello all, > > We would like to contribute a new backend for Qualcomm's Hexagon > processor. We will actively maintain the port once it is accepted. > Hexagon is a VLIW core that is used principally in modem and low power > audio applications in Qualcomm's chip sets. > > We have a patch for both llvm and for clang. As this is a new port, > these patches are quite large (approximately 26k and 3k lines, > respectively). Most of the patches consist of, quite naturally, new > files. I have looked for guidelines for submitting a new backend, but > have not found anything. Is there anything of that nature? If not, my > plan is to simply submit the two patches. Any other suggestions?There isn't any special prodedure for submitting new backends... standard patch review guidelines apply. Make sure you include tests. -Eli
Eli, When you say "include tests" what exactly do you mean - ability to run newly produced binary on newly supported target? Can you please elaborate? Thanks. Sergei Larin -----Original Message----- From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Eli Friedman Sent: Tuesday, November 01, 2011 1:58 PM To: Tony Linthicum Cc: llvmdev at cs.uiuc.edu Subject: Re: [LLVMdev] Contributing new backend to LLVM On Tue, Nov 1, 2011 at 11:44 AM, Tony Linthicum <tlinth at codeaurora.org> wrote:> Hello all, > > We would like to contribute a new backend for Qualcomm's Hexagon > processor. We will actively maintain the port once it is accepted. > Hexagon is a VLIW core that is used principally in modem and low power > audio applications in Qualcomm's chip sets. > > We have a patch for both llvm and for clang. As this is a new port, > these patches are quite large (approximately 26k and 3k lines, > respectively). Most of the patches consist of, quite naturally, new > files. I have looked for guidelines for submitting a new backend, but > have not found anything. Is there anything of that nature? If not, my > plan is to simply submit the two patches. Any other suggestions?There isn't any special prodedure for submitting new backends... standard patch review guidelines apply. Make sure you include tests. -Eli _______________________________________________ LLVM Developers mailing list LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
On Nov 1, 2011, at 11:44 AM, Tony Linthicum wrote:> Hello all, > > We would like to contribute a new backend for Qualcomm's Hexagon > processor. We will actively maintain the port once it is accepted. > Hexagon is a VLIW core that is used principally in modem and low power > audio applications in Qualcomm's chip sets. > > We have a patch for both llvm and for clang. As this is a new port, > these patches are quite large (approximately 26k and 3k lines, > respectively). Most of the patches consist of, quite naturally, new > files. I have looked for guidelines for submitting a new backend, but > have not found anything. Is there anything of that nature? If not, my > plan is to simply submit the two patches. Any other suggestions?Hi Tony, If relevant, I'd suggest splitting it up as: 1. Changes to LLVM code outside your target directory. 2. Your new target directory. 3. Clang patches. As others have pointed out, you really do need some basic regression tests to make sure that the backend is working. Also, make sure to update this: http://llvm.org/docs/CodeGenerator.html#targetfeatures and add a new section to that document on your target. Thanks! -Chris
On 11/1/2011 3:46 PM, Chris Lattner wrote:> > If relevant, I'd suggest splitting it up as: > > 1. Changes to LLVM code outside your target directory. > 2. Your new target directory. > 3. Clang patches. > > As others have pointed out, you really do need some basic regression tests to make sure that the backend is working. Also, make sure to update this: > http://llvm.org/docs/CodeGenerator.html#targetfeatures > > and add a new section to that document on your target. > > Thanks! > > -ChrisHi Chris, Will do! WRT new files, I assume you want them as part of a patch rather than in a tar file or some other format. Is that correct? I will create a basic regression suite for Hexagon modeled from the other back-ends as Eric and others suggested. Thanks. Tony -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum.