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

Enum statement differ from a typedef statement, How does an enumstatement d...

How does an enumstatement differ from a typedef statement? Typedef statement permits user to define an identifier that would show an exiting data type. The user-defined data

Which techniques are utilized to gain on the number pairs, Which techniques...

Which techniques are utilized to gain on the number pairs and also explain how it helps in connecting number of subscribers. In rural areas, subscribers are usually dispersed.

Describe the characteristics of mainframes, Problem 1 (a) List and desc...

Problem 1 (a) List and describe the characteristics of mainframes, minicomputers and microcomputers. (b) Briefly describe what is meant by electronic commerce and what b

Define situation as transmitter & receiver, The situation when both transmi...

The situation when both transmitter and receiver have to work in tandem is referred to as? The situation while both transmitter and receiver have to work into tandem is termed

Why smtp used as transfer protocol for web pages, Can SMTP be used as trans...

Can SMTP be used as transfer protocol for Web pages? Why? SMTP is an easy mail transfer protocol. This uses ASCII text for all communications. SMTP needs reliable delivery- the

Determine the values of the output of the logic gates, Write the values of ...

Write the values of the C output for the following gates: For a(n) ________ gate, the output is zero if any of the inputs are equal to  one. For a(n) ________ gate ,the

What is scsi, What is SCSI? Ans: It is the acronym for small computer s...

What is SCSI? Ans: It is the acronym for small computer system interface. It refers to a standard bus explained ANSI. Devices such as disks are linked to a computer via 50-wire

Programming a 64-bit processor, You are to write a C program called big_mul...

You are to write a C program called big_mult.c that multiplies two unsigned 64-bit integers, x and y, read from the command line. The output is a pair of unsigned 64-bit integers r

Paging, Hardware Support for paging

Hardware Support for paging

Explain micro-operations performed by cpu, Q. Explain Micro-operations perf...

Q. Explain Micro-operations performed by CPU? The micro-operations performed by CPU can be categorized as:    Micro-operations for data transfer from register-memory, re

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