| Electronic Components Datasheet Search |
|
AN3350 Datasheet(PDF) 110 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
AN3350 Datasheet(HTML) 110 Page - STMicroelectronics |
|
110 / 185 page ![]() Intermediate optimizations AN3350 110/185 Doc ID 018512 Rev 2 For example, in Example 63, the assignment to elements of the vec array use a multiplication operation that refers to the for loop’s counter variable, i. In Example 64, the compiler has replaced the multiplication operation with a hidden variable that is increased by an equivalent addition operation. Processors execute addition operations faster than multiplication operations. Example 63 Before strength reduction void func_from(int* vec, int max, int fac) { int i; for (i = 0; i < max; ++i) { vec[i] = fac * i; } } Example 64 After strength reduction void func_to(int* vec, int max, int fac) { int i; int strength_red; hidden_strength_red = 0; for (i = 0; i < max; ++i) { vec[i] = hidden_strength_red; hidden_strength_red = hidden_strength_red + i; } } 13.1.9 Loop unrolling Loop unrolling inserts extra copies of a loop’s body in a loop to reduce processor time executing a loop’s overhead instructions for each iteration of the loop body. In other words, this optimization attempts to reduce the ratio of time that the processor executes a loop’s completion test and branching instructions compared to the time the processor executes the loop’s body. This optimization improves execution speed but increases code size. Table 25 explains how to control the optimization for loop unrolling. Table 24. Controlling strength reduction Turn control this option from here... use this setting Source code #pragma opt_strength_reduction on | off | reset Command line -opt [no]strength |
|
Link URL |
| Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Contact us | Privacy Policy | Link to Datasheet | Link Exchange | Manufacturer List All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |