[LLVMdev] Clarification on the backward compatibility promises

Rafael Espíndola
2014-06-18T16:17:24Z

>> That is not my experience with the bitcode format. The way the API is
>> structured makes it really easy to support backwards compatibility.
>
>
> Could you elaborate more on this?
>
> My anecdotal experience is that the .ll is more stable. I remember last
> summer that in multiple situations passing the old .bc (from the 3.1-based
> or 3.2-based SCE compiler IIRC) to trunk would cause it to barf, while
> passing the .ll file would not barf. I don't think I would be able to
> reproduce this without a lot of work, so I'm just leaving this as an
> anecdote.

Also anecdote, but since each "item" is output as a variable length
record, it is easy to append new members to the end. When we want to
make a more fundamental change, we can add a new enum value (like we
did for assembly).

Cheers,
Rafael