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 do you mean by segment numbers, Q. What do you mean by Segment numbers...

Q. What do you mean by Segment numbers? There is a good reason for not leaving determination of segment numbers up to assembler. It permits programs written in 8086 assembly

What are assemblies, What are Assemblies? Assemblies are same to dll f...

What are Assemblies? Assemblies are same to dll files. Both have the reusable pieces of code in the shape of classes/ functions. Dll needs to be registered but assemblies have

Define program counter, Define Program Counter(PC) The Program Counter ...

Define Program Counter(PC) The Program Counter holds the address of the next instruction to be read from memory after the current instruction is implemented.

Difference between latches and flip-flops based designs, What is the differ...

What is the difference between latches and flip-flops based designs Latches are level sensitive whether flip-flops are edge sensitive. So, latch based design and flop based des

Differentiate between hardware and software, Differentiate between Hardware...

Differentiate between Hardware and Software Another classification is software vs. hardware. Hardware is the collection of physical components, like chips, wires, PCBs, connect

What is unique port number, Q. What is Unique port number? A port is an...

Q. What is Unique port number? A port is an extra 16-bit number which uniquely identifies particular service on any given machine on Internet. Port numbers are 16 bit wide, con

What is a switchboard, What is a switchboard A switchboard is only a f...

What is a switchboard A switchboard is only a form with command button that open other switchboard or perform tasks like opening forms and printing reports. Switchboard is a t

Meaning of convergence regarding e-commerce, What does the term convergence...

What does the term convergence mean regarding E-commerce? Convergence regarding e-commerce: The capability to leverage and integrate the different data sources and proces

Use of overlapped register windows, Q. Use of Overlapped Register Windows? ...

Q. Use of Overlapped Register Windows? Register file comprises 138 registers. Let them be called by register number 0 - 137.  Diagram demonstrates the use of registers: when

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