[PATCH] Bitcode: Add bitcode format compatibility test

Reid Kleckner rnk at google.com
Wed Jul 22 15:36:08 PDT 2015

I don't think everyone has been as vigilant. Most people aren't checking in
old bitcode when they switch the writer to produce a new record.

I thought the plan of record for doing this compatibility testing was to
have one compatibility.ll file which exercises all IR features, and then at
every release point we assemble that IR file to compatibility-N.M.ll and
add a RUN line for it. If your IR is exhaustive, could it serve as the
basis for this going forwards?

On Wed, Jul 22, 2015 at 3:10 PM, David Blaikie <dblaikie at gmail.com> wrote:

> Not sure about everyone else, but I tried to add regression tests whenever
> I've changed the bitcode format, so I'm not sure how much it's necessary to
> have a generic test like this. I could imagine coverage isn't great & this
> might help - if it's easy to quantify, that might be interesting to know.
> On Wed, Jul 22, 2015 at 2:02 PM, Vedant Kumar <vsk at apple.com> wrote:
>> Successive versions of LLVM should retain the ability to parse bitcode
>> generated by old releases of the compiler. To that end, I've attached a
>> patch which contains a bitcode format compatibility test. It's set up as a
>> regression test. It achieves good coverage of the 3.7 LangRef (excepting a
>> bunch of intrinsics).
>> The test consists of two files:
>>     o test/Bitcode/compatibility-3.7.ll
>>     o test/Bitcode/compatibility-3.7.ll.bc
>> We should always be able to disassemble the bitcode file and exactly
>> recover
>> the original IR.
>> I've tried to stress as much of the LangRef as possible. I'm still trying
>> to find a good way of testing format compatibility for intrinsics.
>> I'd have preferred to split this patch up into smaller ones, but since it
>> contains a binary file I thought it'd be best to get it done in one shot.
>> I
>> don't have commit rights, so I'd appreciate someone taking a look at the
>> patch and getting it into trunk :).
>> thanks!
>> vedant
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150722/6aca52d9/attachment.html>

More information about the llvm-commits mailing list