MPLAB C18の最適化

C18のヘルプより

Optimizations will not occur on any function containing inline assembly code. 

関数内にインラインアセンブラを記述すると、関数全体が最適化の対象でなくなるという制限。 nop() なんかは実際はインラインアセンブラのマクロだったりするので、気軽に nop() を挟むと実は最適化されないという罠。nop() を1個追加しただけで “can not fit the section” なるエラーになったので何事かと思った次第。

Tweet about this on TwitterShare on FacebookShare on Google+

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です