Compiler Version Numbers and What They Mean
From Texas Instruments Embedded Processors Wiki
Contents |
Introduction
When you see a compiler version number like 6.1.11, what does that mean?
The Code Generation Tools (aka compiler) version numbers are of the form X.Y.Z, where a change in each position indicates the type and/or degree of changes that that compiler version has from any preceding version. You can use the differences to determine what sort of changes in features and bugs you will experience when you upgrade from one version to another.
Change in the Z digit
When only bug fixes (and no new features) are made to a release, the Z digit is incremented. If the only difference between version numbers is Z, then only bug fixes have been applied. See the README and/or ReleaseNotes for information on which defects have been fixed (and possibly any new defects that have been identified).
Two releases with the same X.Y numbers are fully compatible and there should be no trouble linking the object files together or using the same options on both versions. In general, you want your Z number to be as high as possible since that means you have the greatest number of bugs fixed. Over time, subsequent releases with only changes in the Z digit will have less and less bugs as they are found and fixed because no other changes are being made to that release stream (e.g. no new features or functionality).
Change in the Y digit
A change in the Y digit means there is still ABI-level (or object level) compatibility. In addition to bug fixes, new features are typically added. Code which requires the new features is not compatible with previous versions that lack those features.
Change in the X digit
This represents a substantial change of some sort. Compatibility across versions with different X numbers is not assured. Build options may be provided to preserve compatibility, but not always.
Further Detail
... is available in slides 4-7 of the presentation on C6x Code Generation Tools v6.1
Leave a Comment