13.07.2015 Views

TASKING VX-toolset for ARM User Guide

TASKING VX-toolset for ARM User Guide

TASKING VX-toolset for ARM User Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>TASKING</strong> <strong>VX</strong>-<strong>toolset</strong> <strong>for</strong> <strong>ARM</strong> <strong>User</strong> <strong>Guide</strong>6. Specify the Maximum days files will live in the cache.7. (Optional) Enable the option Clear cache upon project clean.Each time you use Project » Clean... the cache is cleared.Eclipse calls the C compiler with option --cache. The cache directory may be shared, <strong>for</strong> instance byplacing it on a network drive. The compiler creates a directory carmcache in the specified directory.When a result from the cache is used, the C compiler generates a comment line in the assembly sourcefile to notify that. In that case be aware of the following:• In case source merging is enabled an older version of the source is still shown. As long as a sourcechange has no effect on the preprocessed code, the cached version of the output file is used.• Some options, like --define, --include-directory and --output are not part of the hash used <strong>for</strong> thecache. As long as a change in these options has no influence on the preprocessed code, the cachedversion of the output is used.This means that the options listed as comments in the generated assemblyfile might not match the options actually used.With every compilation of a file that results in a cache miss, a new file is stored in the cache. Old files arenot removed from the cache automatically because that would slow down the compiler too much. To keepthe cache size reasonable specify a maximum number of days the files will live in the cache. Eclipse usethe utility expirearm <strong>for</strong> this. It is recommended to run this utility frequently, <strong>for</strong> example with each timethe project is linked. For more in<strong>for</strong>mation on this utility see Section 10.6, Expire Cache Utility.Header FilesMany applications include all header files in each module, often by including them all within a singleinclude file. Processing header files takes time. It is a good programming practice to only include theheader files that are really required in a module, because:• it is clear what interfaces are used by a module• an incremental build after modifying a header file results in less modules required to be rebuild• it reduces compile timeParallel BuildThe make utility amk, which is used by Eclipse, has a feature to build jobs in parallel. This means thatmultiple modules can be compiled in parallel. With today's multi-core processors this means that eachcore can be fully utilized. In practice even on single core machines the compile time decreases whenusing parallel jobs. On multi-core machines the build time even improves further when specifying moreparallel jobs than the number of cores.In Eclipse you can control the parallel build behavior:1. From the Project menu, select Properties <strong>for</strong>The Properties dialog appears.162

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!