Electronic Components Datasheet Search
  English  ▼
ALLDATASHEET.NET

X  

AN3350 Datasheet(PDF) 111 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) 111 Page - STMicroelectronics

Back Button 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 AN3350 Datasheet HTML 115Page - STMicroelectronics Next Button
Zoom Inzoom in Zoom Outzoom out
 111 / 185 page
background image
AN3350
Intermediate optimizations
Doc ID 018512 Rev 2
111/185
For example, in Example 65, the for loop’s body is a single call to a function,
otherfunc()
. For each time the loop’s completion test executes
for (i = 0; i < MAX; ++i)
the function executes the loop body only once.
In Example 66, the compiler has inserted another copy of the loop body and rearranged the
loop to ensure that variable i is incremented properly. With this arrangement, the loop’s
completion test executes once for every 2 times that the loop body executes.
Example 65 Before loop unrolling
const int MAX = 100;
void func_from(int* vec)
{
int i;
for (i = 0; i < MAX; ++i)
{
otherfunc(vec[i]);
}
}
Example 66 After loop unrolling
const int MAX = 100;
void func_to(int* vec)
{
int i;
for (i = 0; i < MAX;)
{
otherfunc(vec[i]);
++i;
otherfunc(vec[i]);
++i;
}
}
13.2
Inlining
Inlining replaces instructions that call a function and return from it with the actual
instructions of the function being called. Inlining functions makes your program faster
because it executes the function code immediately without the overhead of a function call
and return. However, inlining can also make your program larger because the compiler may
insert the function’s instructions many times throughout your program.
Table 25.
Controlling loop unrolling
Turn control this option from here...
use this setting
Source code
#pragma opt_unroll_loops on | off | reset
Command line
-opt level=3, -opt level=4



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