Sandeep Dasgupta via llvm-dev
2016-Sep-21 06:46 UTC
[llvm-dev] Backward compatibility with llvm bitcode files
Hello All, Because of some requirements, I have to use tools (like llvm-dis, opt, clang) from the latest llvm version on *.bc files obtained from a previous version of llvm (version 3.5) and am able to do that without any visible problems. Is this backward compatibility guaranteed or are there any cases/constructs of llvm 3.5 which are not supported by the latest tools? Please help. With Regards, Sandeep -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160921/c77fa3f6/attachment.html>
Tim Northover via llvm-dev
2016-Sep-21 07:15 UTC
[llvm-dev] Backward compatibility with llvm bitcode files
Hi Sandeep, On 21 September 2016 at 07:46, Sandeep Dasgupta via llvm-dev <llvm-dev at lists.llvm.org> wrote:> Because of some requirements, I have to use tools (like llvm-dis, opt, > clang) from the latest llvm version on *.bc files obtained from a previous > version of llvm (version 3.5) and am able to do that without any visible > problems. Is this backward compatibility guaranteed or are there any > cases/constructs of llvm 3.5 which are not supported by the latest tools?This should be fine. We make sure newer LLVM tools can read older files (currently anything produced by 3.x) and produce correct code from them. We're allowed to drop metadata that only helps performance, but anything correctness-related we have to convert to the newer style when reading. There are no real plans to change this (even 4.x will be able to read 3.x), but we have discussed a hypothetical compatibility break in the future -- we'd give warning (at least a release) if that was going to happen though. Tim.