[LLVMdev] Clarification on the backward compatibility promises

Evan Cheng evan.cheng at apple.com
Wed Jul 9 15:12:57 PDT 2014


> On Jun 17, 2014, at 2:10 PM, Eric Christopher <echristo at gmail.com> wrote:
> 
>>> 2. Metadata compatibility. We already had precedence of introducing
>>> incompatible changes into metadata format in the past within release.
>>> Should we use relaxes rules for metadata compatibility?
>> 
>> I think we have a special case for debug metadata (and should document
>> that), but otherwise I think we should hold metadata to the same
>> standard as the rest of the IR.
>> 
> 
> The idea with metadata is that it can be removed and everything still
> works. I'm definitely not ready to lock down the debug metadata format
> and I really don't think we should for any of the other uses since
> stripping already works. (Note, I don't consider function attributes
> etc as metadata)

We may need to rethink this. If metadata is used only as optimization / codegen hints, then yes I agree they can be dropped. But I suspect there is a need for metadata that’s *required* for correctness. As LLVM continues to gain clients beyond “just” compilers, we will need to be sensitive to their needs. I anticipate use of LLVM bitcode files as persistent object format.

Evan

> 
> -eric
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev





More information about the llvm-dev mailing list