1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00

IR: Add a broad bitcode compatibility test

Successive versions of LLVM should retain the ability to parse bitcode
generated by old releases of the compiler.  This adds a bitcode format
compatibility test, which is intended to provide good (albeit not
entirely exhaustive) coverage of the current LangRef.

This also includes compatibility tests for LLVM 3.6.  After every 3.X.0
release, the compatibility.ll file from the 3.X branch should be copied
to compatibility-3.X.ll on trunk, and the 3.X.0 release used to generate
a corresponding bitcode file.

Patch by Vedant Kumar!

llvm-svn: 243779
This commit is contained in:
Duncan P. N. Exon Smith 2015-07-31 20:44:32 +00:00
parent 72b2ac666f
commit b87fbd089e
4 changed files with 2482 additions and 2 deletions

View File

@ -505,8 +505,13 @@ for llvm users and not imposing a big burden on llvm developers:
* The textual format is not backwards compatible. We don't change it too often, * The textual format is not backwards compatible. We don't change it too often,
but there are no specific promises. but there are no specific promises.
* The bitcode format produced by a X.Y release will be readable by all following * Additions and changes to the IR should be reflected in
X.Z releases and the (X+1).0 release. ``test/Bitcode/compatibility.ll``.
* The bitcode format produced by a X.Y release will be readable by all
following X.Z releases and the (X+1).0 release. To help ensure this, an X.Y
version of ``test/Bitcode/compatibility.ll`` should be assembled and
committed after each release.
* Newer releases can ignore features from older releases, but they cannot * Newer releases can ignore features from older releases, but they cannot
miscompile them. For example, if nsw is ever replaced with something else, miscompile them. For example, if nsw is ever replaced with something else,

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff