Currently top of tree is top of tree and no backwards compatibility, other than the C backend, is promised. I think that instead of asserting that you need to check in conditional compilation for a backend, perhaps, you would be open to other options to accomplish the same needs?<div>
<br></div><div>My suggestion would be to check in or make some branches for the two older versions and then apply your patches on top of that, letting people know where to get those sources so that they can build what they need. If this won't work then perhaps you can explain why you think you need to have multiple versions available in top of tree?</div>
<div><br></div><div>Thanks!</div><div><br></div><div>-eric</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Dec 7, 2012 at 10:08 AM, Relph, Richard <span dir="ltr"><<a href="mailto:Richard.Relph@amd.com" target="_blank">Richard.Relph@amd.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Is there a convention for how the LLVM community prefers to have conditional compilation in code intended to be checked in to <a href="http://llvm.org" target="_blank">llvm.org</a>?<br>

<br>
Our goal is a single code base that can support multiple LLVM revisions, including LLVM TOT. In the long run, of course, we'll simply be able to refer to the backend revision that corresponds to the revision of LLVM in use. If fixes between TOT and that older version are desired, cherry-picking from trunk will be required, of course.<br>

<br>
But in the short run, that's not viable. We have to support a minimum of 3 different LLVM versions with our backend… LLVM TOT, the LLVM version used for AMD's OpenCL as shipped for Windows and Linux, and the LLVM version used for Apple's OpenCL as shipped for Mac OS… all different today and for the foreseeable future.<br>

<br>
Between the time that we get AMDIL "in" to <a href="http://llvm.org" target="_blank">llvm.org</a> and the time that the other platforms using AMDIL are up to the level of LLVM at that initial check-in, we'll need to have conditional code in AMDIL.<br>

<br>
Thanks,<br>
Richard<br>
<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
</blockquote></div><br></div>