However, there are some instances where you want to sacrifice code size (use more FLASH memory) in order to get more speed. Luckily, Rick has introduced features in mpide that makes changing the default compiler options easy to change.
To change the optimization level:
- open the /hardware/pic32/platforms.txt file in your favorite text editor.
- Find the lines beginning with pic32.compiler.c.flags and pic32.compiler.cpp.flags. In those lines, you should see a compiler optimization option, -O0, -O1, -O2, -Os, or -O3.
- Change the optimization level option to the desired level, as listed below.
- Save platforms.txt
- Restart mpide.
- -O0 - Disable optimizations
- -O1 - Reduce code size and execution time, without performing any optimizations that take a great deal of compilation time.
- -O2 - Optimize even more. GCC performs nearly all supported optimizations that do not involve a space-speed tradeoff. As compared to -O1, this option increases both compilation time and the performance of the generated code. (This is currently the default.)
- -O3 - Optimize yet more. GCC optimizes for maximum performance at the expense of code size.
- -Os - Optimize for size. -Os enables all -O2 optimizations that do not typically increase code size. It also performs further optimizations designed to reduce code size.
If you really want aggressive performance for your sketch, you could also add the -funroll-loops option. Note that this option almost always increases code size but it may or may not increase performance.
Code: Select all
For more information on platforms.txt, see Rick's post here.
Code: Select all