In computer science, instruction selection is the stage of a compiler backend that transforms its tree-based middle-level intermediate representation (IR) into a low-level IR very close to its final target language. In a typical compiler, it precedes both instruction scheduling and register allocation, so its output IR has an infinite set of pseudoregisters and may still be subject to peephole optimization; otherwise, it closely resembles the target machine code, bytecode, or assembly language. It works by "covering" the intermediate representation with as few tiles as possible. A tile is a template that matches a portion of the IR tree and can be implemented with a single target instruction.
Read more about Instruction Selection: Approach, Lowest Common Denominator Strategy
Famous quotes containing the words instruction and/or selection:
“And, fathers, do not provoke your children to anger, but bring them up in the discipline and instruction of the Lord.”
—Bible: New Testament, Ephesians 6:4.
“Every writer is necessarily a criticthat is, each sentence is a skeleton accompanied by enormous activity of rejection; and each selection is governed by general principles concerning truth, force, beauty, and so on.... The critic that is in every fabulist is like the icebergnine-tenths of him is under water.”
—Thornton Wilder (18971975)