<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Oct 20, 2015, at 7:01 PM, Chandler Carruth <<a href="mailto:chandlerc@gmail.com" class="">chandlerc@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">I'm sorry, I actually missed this comment. My bad.<br class=""><br class=""><div class="gmail_quote"><div dir="ltr" class="">On Wed, Oct 14, 2015 at 10:44 AM Mehdi Amini via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org" class="">llvm-commits@lists.llvm.org</a>> wrote:<br class=""></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Rafael on IRC mentioned that it would be nice to have the option of progressively deprecating bitcode in the future. For instance LLVM 4.1 could be able to read bitcode generated by version 3.14 (random number) and above. And 4.2 deprecate in turn anything older than 3.19 (random number again).<br class="">
<br class="">
We can do that by encoding the version directly (major.minor.patch) in separate bytes and use it instead of the epoch.<br class="">
<br class="">
What’s your take on this?<br class=""></blockquote><div class=""><br class=""></div><div class="">Ultimately, I'm worried about adding this without having a clear use case. For example, it means we need to be careful about exactly when we bump the minor version. It also isn't clear how to define it if people are managing their own releases out-of-band with the upstream repository.</div><div class=""><br class=""></div><div class="">We can extend this with an IDENTIFICATION_CODE_MAJOR, IDENTIFICATION_CODE_MINOR, or whatever other fields we're interested within this block in the future. So I think we should move forward with this patch now, and revisit more detailed information here when there is a clear plan around both 1) how to update them meaningfully and 2) what problem they are solving.</div><div class=""><br class=""></div><div class="">That make sense to you Rafael?</div></div></div></div></blockquote><div><br class=""></div><div>In the meantime I uploaded another diff that encode a major.minor.patch in the bitcode instead of the epoch, just for the posterity (I implemented it before seeing your email).</div><div><br class=""></div><div>I don’t mind going with any version.</div><div><br class=""></div><div>— </div><div>Mehdi</div><div><br class=""></div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="gmail_quote"><div class=""> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br class="">
Thanks,<br class="">
<br class="">
—<br class="">
Mehdi<br class="">
<br class="">
<br class="">
> On Oct 14, 2015, at 12:59 PM, Mehdi AMINI <<a href="mailto:mehdi.amini@apple.com" target="_blank" class="">mehdi.amini@apple.com</a>> wrote:<br class="">
><br class="">
> joker.eph updated this revision to Diff 37380.<br class="">
> joker.eph added a comment.<br class="">
><br class="">
> Add the "epoch" field along with the producer string.<br class="">
><br class="">
><br class="">
> <a href="http://reviews.llvm.org/D13666" rel="noreferrer" target="_blank" class="">http://reviews.llvm.org/D13666</a><br class="">
><br class="">
> Files:<br class="">
>  include/llvm/Bitcode/LLVMBitCodes.h<br class="">
>  lib/Bitcode/Reader/BitcodeReader.cpp<br class="">
>  lib/Bitcode/Writer/BitcodeWriter.cpp<br class="">
>  test/Bitcode/identification.ll<br class="">
>  tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp<br class="">
><br class="">
> <D13666.37380.patch><br class="">
<br class="">
_______________________________________________<br class="">
llvm-commits mailing list<br class="">
<a href="mailto:llvm-commits@lists.llvm.org" target="_blank" class="">llvm-commits@lists.llvm.org</a><br class="">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank" class="">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br class="">
</blockquote></div></div>
</div></blockquote></div><br class=""></body></html>