Electronic Components Datasheet Search
  New Zealand  ▼
ALLDATASHEET.CO.NZ

X  

AN3350 Datasheet(PDF) 110 Page - STMicroelectronics

Part # AN3350
Description  eTPU compiler tools
PDF  185 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  STMICROELECTRONICS [STMicroelectronics]
Direct Link  http://www.st.com
Logo STMICROELECTRONICS - STMicroelectronics

AN3350 Datasheet(HTML) 110 Page - STMicroelectronics

Back Button AN3350 Datasheet HTML 106Page - STMicroelectronics AN3350 Datasheet HTML 107Page - STMicroelectronics AN3350 Datasheet HTML 108Page - STMicroelectronics AN3350 Datasheet HTML 109Page - STMicroelectronics AN3350 Datasheet HTML 110Page - STMicroelectronics AN3350 Datasheet HTML 111Page - STMicroelectronics AN3350 Datasheet HTML 112Page - STMicroelectronics AN3350 Datasheet HTML 113Page - STMicroelectronics AN3350 Datasheet HTML 114Page - STMicroelectronics Next Button
Zoom Inzoom in Zoom Outzoom out
 110 / 185 page
background image
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



Html Pages

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100  ...More


Datasheet Download

Go To PDF Page


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


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
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