14.1 General changes between RVCT v2.2 and RVCT v3.0

Various general changes have been made in RVCT v3.0.

The following changes affect multiple tools:

  • DWARF3 is the default.

  • Since RVCT v2.1, -g no longer implies -O0. If you specify -g without an optimization level, the following warning is produced:

    Warning: C2083W: -g defaults to -O2 if no optimisation level is specified

Compatibility with legacy RVCT v2.x objects and libraries

Backwards compatibility of RVCT v2.x object and library code is supported provided you use the RVCT v3.0 linker and C/C++ libraries. Forward compatibility is not guaranteed.

You must link using the RVCT v3.0 linker, not the linker of older ARM tools. This is because older linkers cannot process objects produced by the RVCT v3.0 compiler.

Given these restrictions, ARM strongly recommends that you rebuild your entire project, including any user-supplied libraries, with RVCT v3.0 to avoid any potential incompatibilities, and to take full advantage of the improved optimization, enhancements, and new features provided by RVCT v3.0.

Non-ConfidentialPDF file icon PDF versionARM DUI0530M
Copyright © 2010-2016 ARM Limited or its affiliates. All rights reserved.