Electronic Components Datasheet Search
  English  ▼
ALLDATASHEET.NET

X  

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

Back Button AN3350 Datasheet HTML 103Page - STMicroelectronics AN3350 Datasheet HTML 104Page - STMicroelectronics AN3350 Datasheet HTML 105Page - STMicroelectronics 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 Next Button
Zoom Inzoom in Zoom Outzoom out
 107 / 185 page
background image
AN3350
Intermediate optimizations
Doc ID 018512 Rev 2
107/185
13.1.5
Dead store elimination
Dead store elimination removes unused assignment statements. This optimization reduces
size and improves speed.
Table 21 explains how to control the optimization for dead store elimination.
For example, in Example 57 the variable x is first assigned the value of y * y. However,
this result is not used before x is assigned the result returned by a call to getresult().
In Example 58 the compiler can safely remove the first assignment to x since the result of
this assignment is never used.
Example 57 Before dead store elimination
void func_from(int x, int y)
{
x = y * y;
otherfunc1(y);
x = getresult();
otherfunc2(y);
}
Example 58 After dead store elimination
void func_to(int x, int y)
{
otherfunc1(y);
x = getresult();
otherfunc2(y);
}
13.1.6
Live range splitting
Live range splitting attempts to reduce the number of variables used in a function. This
optimization reduces a function’s runtime stack size, requiring fewer instructions to invoke
the function. This optimization potentially improves execution speed.
Table 22 explains how to control the optimization for live range splitting.
Table 21.
Controlling dead store elimination
Turn control this option from here...
use this setting
source code
#pragma opt_dead_assignments on | off | reset
command line
-opt [no]deadstore
Table 22.
Controlling live range splitting
Turn control this option from here...
use this setting
Source code
There is no pragma to control this optimization.
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