[LLVMdev] Contributing a new target to LLVM

Chandler Carruth chandlerc at gmail.com
Fri Mar 27 09:02:33 PDT 2015


Welcome! A few additional suggestions to Tom's already excellent
suggestions...

On Fri, Mar 27, 2015 at 8:51 AM, Tom Stellard <tom at stellard.net> wrote:
>
> Here are a few suggestions for starting the process of getting your
> backend upstream.
>
>
> - Publish your code somewhere public (github, bitbucket, etc.) as soon as
> you
> can.
>

I would also recommend making a Phabricator review available for folks to
glance at the code in that format.


>
> - Adopt an 'upstream' development model, which means moving your patch
>   review process to the public mailing lists and committing changes
>   directly to LLVM ToT (or your temporary public repo).  Whether you
>   commit to internal trees first and then commit upstream or the other
>   way around is up to you, but the point is that your interaction with
>   LLVM ToT should not be monthly patch bombs.
>
> - Make sure you comply with the coding standards
>   (http://llvm.org/docs/CodingStandards.html)
>

In particular, using clang-format will likely help with many of these
issues.


>
> - If you have changes to core libraries, break them up into small
>   self-contained patches and send them to the mailing lists.
>

Absolutely.


>
> - When targets are first added to LLVM, they are built using the
>   experimental target options.  Make this change internally to make it
>   easier to merge your code.
>
> - As you prepare the code, keep the community in the loop on the
>   progress (this is where it helps to have a public repo).
>
> This is not a complete list, but hopefully it will help get you started.
>

It may also be helpful to look at the recently added BPF backend and the
process it followed.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150327/43377c98/attachment.html>


More information about the llvm-dev mailing list