This is an archive of the discontinued LLVM Phabricator instance.

Driver: bifurcate extended and basic MSC versioning
ClosedPublic

Authored by compnerd on Jun 30 2014, 10:15 PM.

Details

Summary

This restores the original behaviour of -fmsc-version. The older option
remains as a mechanism for specifying the basic version information. A
secondary option, -fms-compatibility-version permits the user to specify an
extended version to the driver.

The new version takes the value as a dot-separated value rather than the
major * 100 + minor format that -fmsc-version format. This makes it easier to
specify the value as well as a more flexible manner for specifying the value.

Specifying both values is considered an error.

The older parameter is left solely as a driver option, which is normalised into
the newer parameter. This allows us to retain a single code path in the
compiler itself whilst preserving the semantics of the old parameter as well as
avoid having to determine which of two formats are being used by the invocation.

The test changes are due to the fact that the compiler no longer supports the
old option, and is a direct conversion to the new option.

Diff Detail

Event Timeline

compnerd updated this revision to Diff 10991.Jun 30 2014, 10:15 PM
compnerd retitled this revision from to Driver: bifurcate extended and basic MSC versioning.
compnerd updated this object.
compnerd edited the test plan for this revision. (Show Details)
compnerd added reviewers: rnk, aaron.ballman.
compnerd set the repository for this revision to rL LLVM.
compnerd added a project: deleted.
compnerd added a subscriber: Unknown Object (MLST).
compnerd updated this revision to Diff 11005.Jul 1 2014, 11:54 AM
compnerd updated this object.

Renamed -fmsc-version-ex to -fmsc-extended-version as a compromise between -fmsc-version-ex and -fmsc-full-version. The -fmsc-version has also been converted to a driver-only option and is normalised to the new -fmsc-version-ex form. This should address the concern that we had a single option that could take a parameter encoded in two different ways. It also preserves the previous behaviour.

compnerd updated this revision to Diff 11446.Jul 15 2014, 9:36 AM
compnerd updated this object.

Rename to -fms-compatibility-version as this meshes well with the existing -fms-compatibility option.

compnerd accepted this revision.Jul 15 2014, 9:19 PM
compnerd added a reviewer: compnerd.
This revision is now accepted and ready to land.Jul 15 2014, 9:19 PM
compnerd closed this revision.Jul 15 2014, 9:19 PM

Committed as SVN r213119.