Instruction selection (original) (raw)

About DBpedia

In computer science, instruction selection is the stage of a compiler backend that transforms its middle-level intermediate representation (IR) into a low-level IR. In a typical compiler, instruction selection precedes both instruction scheduling and register allocation; hence its output IR has an infinite set of pseudo-registers (often known as temporaries) and may still be – and typically is – subject to peephole optimization. Otherwise, it closely resembles the target machine code, bytecode, or assembly language. For example, for the following sequence of middle-level IR code

Property Value
dbo:abstract In computer science, instruction selection is the stage of a compiler backend that transforms its middle-level intermediate representation (IR) into a low-level IR. In a typical compiler, instruction selection precedes both instruction scheduling and register allocation; hence its output IR has an infinite set of pseudo-registers (often known as temporaries) and may still be – and typically is – subject to peephole optimization. Otherwise, it closely resembles the target machine code, bytecode, or assembly language. For example, for the following sequence of middle-level IR code t1 = at2 = bt3 = t1 + t2a = t3b = t1 a good instruction sequence for the x86 architecture is MOV EAX, aXCHG EAX, bADD a, EAX For a comprehensive survey on instruction selection, see. (en)
dbo:wikiPageExternalLink http://markhobley.yi.org/programming/generations.html
dbo:wikiPageID 1869211 (xsd:integer)
dbo:wikiPageLength 8082 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID 1096635468 (xsd:integer)
dbo:wikiPageWikiLink dbr:Instruction_scheduling dbr:Intermediate_representation dbr:Register_allocation dbr:Peephole_optimization dbr:Compiler dbr:GNU_Compiler_Collection dbr:Graph_(discrete_mathematics) dbr:Computer_science dbc:Compiler_optimizations dbr:Dynamic_programming dbr:Machine_code dbr:Covering_graph dbr:Assembly_language dbr:Directed_acyclic_graph dbr:Bytecode dbr:Greedy_algorithm dbr:X86 dbr:Lowest_common_denominator dbr:Processor_supplementary_capability
dbp:bot InternetArchiveBot (en)
dbp:date January 2020 (en)
dbp:fixAttempted yes (en)
dbp:wikiPageUsesTemplate dbt:Dead_link dbt:Reflist dbt:Unreferenced_section dbt:Compiler_optimizations
dct:subject dbc:Compiler_optimizations
rdf:type yago:WikicatCompilerOptimizations yago:Abstraction100002137 yago:Act100030358 yago:Action100037396 yago:Change100191142 yago:ChangeOfState100199130 yago:Event100029378 yago:Improvement100248977 yago:Optimization100260051 yago:PsychologicalFeature100023100 yago:YagoPermanentlyLocatedEntity
rdfs:comment In computer science, instruction selection is the stage of a compiler backend that transforms its middle-level intermediate representation (IR) into a low-level IR. In a typical compiler, instruction selection precedes both instruction scheduling and register allocation; hence its output IR has an infinite set of pseudo-registers (often known as temporaries) and may still be – and typically is – subject to peephole optimization. Otherwise, it closely resembles the target machine code, bytecode, or assembly language. For example, for the following sequence of middle-level IR code (en)
rdfs:label Instruction selection (en)
owl:sameAs freebase:Instruction selection yago-res:Instruction selection wikidata:Instruction selection dbpedia-fa:Instruction selection https://global.dbpedia.org/id/fmjM
prov:wasDerivedFrom wikipedia-en:Instruction_selection?oldid=1096635468&ns=0
foaf:isPrimaryTopicOf wikipedia-en:Instruction_selection
is dbo:wikiPageRedirects of dbr:Lowest_common_denominator_(computers)
is dbo:wikiPageWikiLink of dbr:Instruction_unit dbr:Compiler dbr:Maximal_munch dbr:Code_generation_(compiler) dbr:Optimizing_compiler dbr:I386 dbr:Lowest_common_denominator_(computers)
is foaf:primaryTopic of wikipedia-en:Instruction_selection