11.07.2015 Views

MSP430 IAR C/C++ Compiler reference guide - Rice University

MSP430 IAR C/C++ Compiler reference guide - Rice University

MSP430 IAR C/C++ Compiler reference guide - Rice University

SHOW MORE
SHOW LESS
  • No tags were found...

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

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

Pragma directivesno_inlineno_tbaano_unrollTurns off function inliningTurns off type-based alias analysisTurns off loop unrollingDescriptionExampleUse this pragma directive to decrease the optimization level, or to turn off some specificoptimizations. This pragma directive only affects the function that follows immediatelyafter the directive.The parameters speed, size, and balanced only have effect on the high optimizationlevel and only one of them can be used as it is not possible to optimize for speed and sizeat the same time. It is also not possible to use preprocessor macros embedded in thispragma directive. Any such macro will not be expanded by the preprocessor.Note: If you use the #pragma optimize directive to specify an optimization level thatis higher than the optimization level you specify using a compiler option, the pragmadirective is ignored.#pragma optimize=speedint small_and_used_often(){...}#pragma optimize=size no_inlineint big_and_seldom_used(){...}packSyntaxParameters#pragma pack(n)#pragma pack()#pragma pack({push|pop}[,name] [,n])n Sets an optional structure alignment; one of: 1, 2, 4, 8, or 16Empty listpushpopRestores the structure alignment to defaultSets a temporary structure alignmentRestores the structure alignment from a temporarily pushedalignmentPart 2. <strong>Compiler</strong> <strong>reference</strong>209

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

Saved successfully!

Ooh no, something went wrong!