Explain loop-invariant code motion, Computer Engineering

Assignment Help:

Explain briefly Loop-invariant code motion of the commonly used code optimization techniques.

Loop-invariant code motion

If a quantity is calculated inside a loop during iteration and its value is similar for iteration, this can vastly improve efficiency to hoist this outside the loop and calculate its value just once before the loop begins. It is particularly significant with the address-calculation expressions generated through loops over arrays. For accurate implementation, such technique must be utilized with loop inversion, since not all code is safe to be hoisted outside the loop.

For illustration:

 for (i=1; i≤10, i++){

x=y*2-(1)

.

.

.

}

statement 1 can be hoisted outside the loop assuming value of x and y does not modify in the loop.


Related Discussions:- Explain loop-invariant code motion

What is the ccitt standard bandwidth for speech, The CCITT standard bandwid...

The CCITT standard bandwidth for speech is: (A) 20000 Hz                                  (B) 15000 Hz (C) 7000 Hz                                    (D) 3400 Hz Ans:

Register transfer - computer architecture, Register transfer - computer arc...

Register transfer - computer architecture: Register transfer: The output and input gates for register Ri are controlled by the signals Riout and Riin respectively.

Explain with the help of examples fifo algorithms, Explain with the help of...

Explain with the help of examples FIFO algorithms? FIFO policy: This policy easy removes pages in the order they arrived into the main memory. By using this policy we easily

Specifying research problems, Specifying Research Problems: In our age...

Specifying Research Problems: In our agent terminology or in technique history, a problem to be solved is a specific and justified manner where the agent has starts with the b

Multiple instruction and multiple data stream (mimd), Multiple Instruction ...

Multiple Instruction and Multiple Data stream (MIMD): In this categorization, numerous processing elements and multiple control units are ordered as in MISD. However the differ

Which rule is used for the expansion of nested macro calls, The expansion ...

The expansion of nested macro calls done by using of? Ans. LIFO rule is used for the expansion of nested macro calls.

Name of current gui status is there, In which system field does the name of...

In which system field does the name of current gui status is there? The name of the present GUI STATUS is available in the system field SY-PFKEY.

Advantages and disadvantages of public-key cryptography, Advantages and Dis...

Advantages and Disadvantages of Public-key cryptography Advantages (i) Enhanced security and convenience  (ii) Electronic records may be authenticated by affixing

What a hardware uses to calculates cyclic redundancy check, Hardware that c...

Hardware that calculates CRC (Cyclic Redundancy Check) uses: Hardware which computes CRC utilizes shift register and Xor unit.

What is data movement, Data movement instructions shift data from one locat...

Data movement instructions shift data from one location to another. The source and destination locations are verified by the addressing modes, and can be registers or memory. Many

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd