*
*Home|Chinese|Japanese*About ARM|Forums|Events|News|Employment|Contact Us|Investors*
dotted rule
*ARM - the architecture for the digital worldARM - the architecture for the digital world
search
*
*
***
*MARKETS:PRODUCTS & SOLUTIONS:CONNECTED COMMUNITY:TECHNICAL SUPPORT:DOCUMENTATION*
*
technical support
*
*
****
*.Technical Support
*
*
*>>Home Page*
*
*.Obtaining Support*
*
*.FAQs*
*
*.Downloads*
*
**Development Tool Downloads*
**Development Tool Tutorials*
**Artisan Physical IP Downloads (Login Required)*
*
*.Documentation*
*
*.Training*
*
*.Where To Buy*
*
*.Keil MCU Tools*
*
*.What's New*
*
*.ARM Newsgroups*
*
*.Active Assist On-site Services*
*
*
*
RVCT 2.2: Build 435 patch for Linuxask ARM*
dotted rule

Technical Support Search
*     (Advanced Search)
  FAQs   Documentation   Downloads   Forums

*
This patch consists of a ZIP file containing new versions of the ARM compilation tools for use with RVDS/RVCT versions 2.2.  To install these, carry out the following steps:

Note:
This patch is NOT compatible with the RVDS v2.2 Evaluation CD or RVDK products.

  1. Extract the contents of the ZIP file into a temporary directory.

  2. Ensure that you are currently using RVCT 2.2. To do this, type:

         armcc --vsn

    and ensure that this returns RVCT 2.2. Then type:

         which armcc

    This will tell you the subdirectory that armcc is located in. Then copy the new versions of the tools to this subdirectory.

  3. *IMPORTANT*
    To minimise the ZIP file sizes, only one compiler (armcc) is provided in this patch.  However, the separate armcc, tcc, armcpp and tcpp executables are identical in RVCT 2.2, so you will need to copy the new armcc to tcc, armcpp and tcpp appropriately in the bin directory.

  4. The updated tools should now have been installed. To confirm this type:
         armcc --vsn
         armcpp --vsn
         tcc --vsn
         tcpp --vsn
         armlink --vsn
         armasm --vsn
         fromelf --vsn
         armar --vsn
  5. After unzipping the executables, you may find that they cannot be executed because the UNIX permissions have been reset. The workaround is to set the execute permissions for the user with e.g:

    chmod u+x armcc
   The version returned should be build 435.  
 

Build 435
 
RVCT 2.2 patch build 435 includes the following corrections and improvements since the original RVCT 2.2 build 349:
 
Compiler:
Further improvements have been added in the support of C++ exceptions.
Corrections have been made to the compiler's front-end to resolve: 
  • Erroneous "Error:  #1446: problem opening source file ... Not a directory" error on Unix due to file/directory clash in inclusion.
  • Internal fault: 0xc512 when initializing a bitfield from a cast address in C++.
  • Internal fault: 0xe9ad when compiling for multi-byte character sets.
  • Valid floating point constants being reported as out-of-range in IEEE modes.
  • Static float member initializers now accepted in --gnu mode.


Some code generation issues have been corrected, including:
  • In C++, some temporaries were not being destroyed correctly, e.g. temporaries returned from virtual function calls, temporaries returned from pointer to member calls and temporaries of classes with no constructor.
 
Linker:
The following issues are resolved:
  • A crash when generating a --feedback file and with a scatter file containing .ANY.
  • Inline veneer sharing was broken in Thumb large region mode.
  • RW data compression corner case fault with "--datacompressor 2".
  • To avoid L6286E, Thumb large region mode is now enabled just before the 4MB code size limit in an Execution Region is reached, where extra veneers would otherwise be generated.
  • Dynamic section tags (DT_ARM_xxx) now match the new Base Platform ABI.
 
Assembler:
Some Unified Assembler issues are resolved, including:
  • incorrect encoding of SETEND BE and PC-rel Thumb-2 LDRH/LDRSH instructions
 
 Fromelf:
  • Dynamic section tags (DT_ARM_xxx) now match the new Base Platform ABI.

*Download (Login Required) EULA included in archive



*
**
*4 dots*Other ARM Websites
*
shadow *LEGAL STATEMENTshadow