{"id":"https://openalex.org/W4256617400","doi":"https://doi.org/10.1145/1926385.1926451","title":"Resourceable, retargetable, modular instruction selection using a machine-independent, type-based tiling of low-level intermediate code","display_name":"Resourceable, retargetable, modular instruction selection using a machine-independent, type-based tiling of low-level intermediate code","publication_year":2011,"publication_date":"2011-01-24","ids":{"openalex":"https://openalex.org/W4256617400","doi":"https://doi.org/10.1145/1926385.1926451"},"language":"en","primary_location":{"id":"doi:10.1145/1926385.1926451","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1926385.1926451","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5068702687","display_name":"Norman F. Ramsey","orcid":"https://orcid.org/0000-0002-5435-1135"},"institutions":[{"id":"https://openalex.org/I121934306","display_name":"Tufts University","ror":"https://ror.org/05wvpxv85","country_code":"US","type":"education","lineage":["https://openalex.org/I121934306"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Norman Ramsey","raw_affiliation_strings":["Tufts University, Medford, MA, USA"],"affiliations":[{"raw_affiliation_string":"Tufts University, Medford, MA, USA","institution_ids":["https://openalex.org/I121934306"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5017714052","display_name":"Jo\u00e3o Dias","orcid":"https://orcid.org/0000-0002-1653-1821"},"institutions":[{"id":"https://openalex.org/I121934306","display_name":"Tufts University","ror":"https://ror.org/05wvpxv85","country_code":"US","type":"education","lineage":["https://openalex.org/I121934306"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Jo\u00e3o Dias","raw_affiliation_strings":["Tufts University, Medford, MA, USA"],"affiliations":[{"raw_affiliation_string":"Tufts University, Medford, MA, USA","institution_ids":["https://openalex.org/I121934306"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5068702687"],"corresponding_institution_ids":["https://openalex.org/I121934306"],"apc_list":null,"apc_paid":null,"fwci":0.24167956,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.63439034,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"575","last_page":"586"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9994999766349792,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9941999912261963,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8675910234451294},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6917129755020142},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6798629760742188},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.5233575701713562},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.5125584602355957},{"id":"https://openalex.org/keywords/instruction-set","display_name":"Instruction set","score":0.5063565969467163},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.4985213279724121},{"id":"https://openalex.org/keywords/abstract-machine","display_name":"Abstract machine","score":0.47558605670928955},{"id":"https://openalex.org/keywords/retargeting","display_name":"Retargeting","score":0.4592532813549042},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.4480220079421997},{"id":"https://openalex.org/keywords/object-code","display_name":"Object code","score":0.42673471570014954},{"id":"https://openalex.org/keywords/addressing-mode","display_name":"Addressing mode","score":0.41678041219711304},{"id":"https://openalex.org/keywords/computer-architecture","display_name":"Computer architecture","score":0.35663485527038574},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3233308792114258},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.14695701003074646},{"id":"https://openalex.org/keywords/instructions-per-cycle","display_name":"Instructions per cycle","score":0.10493189096450806}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8675910234451294},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6917129755020142},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6798629760742188},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.5233575701713562},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.5125584602355957},{"id":"https://openalex.org/C202491316","wikidata":"https://www.wikidata.org/wiki/Q272683","display_name":"Instruction set","level":2,"score":0.5063565969467163},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.4985213279724121},{"id":"https://openalex.org/C88977235","wikidata":"https://www.wikidata.org/wiki/Q787114","display_name":"Abstract machine","level":2,"score":0.47558605670928955},{"id":"https://openalex.org/C2780575108","wikidata":"https://www.wikidata.org/wiki/Q7316652","display_name":"Retargeting","level":2,"score":0.4592532813549042},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.4480220079421997},{"id":"https://openalex.org/C154526789","wikidata":"https://www.wikidata.org/wiki/Q157965","display_name":"Object code","level":4,"score":0.42673471570014954},{"id":"https://openalex.org/C16901944","wikidata":"https://www.wikidata.org/wiki/Q367183","display_name":"Addressing mode","level":4,"score":0.41678041219711304},{"id":"https://openalex.org/C118524514","wikidata":"https://www.wikidata.org/wiki/Q173212","display_name":"Computer architecture","level":1,"score":0.35663485527038574},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3233308792114258},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.14695701003074646},{"id":"https://openalex.org/C156972235","wikidata":"https://www.wikidata.org/wiki/Q1443434","display_name":"Instructions per cycle","level":3,"score":0.10493189096450806},{"id":"https://openalex.org/C49154492","wikidata":"https://www.wikidata.org/wiki/Q5300","display_name":"Central processing unit","level":2,"score":0.0},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/1926385.1926451","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1926385.1926451","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320307102","display_name":"Intel Corporation","ror":"https://ror.org/01ek73717"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":17,"referenced_works":["https://openalex.org/W1525713713","https://openalex.org/W1536799011","https://openalex.org/W1992244261","https://openalex.org/W2004141018","https://openalex.org/W2054572543","https://openalex.org/W2057455870","https://openalex.org/W2064192124","https://openalex.org/W2064723869","https://openalex.org/W2085022143","https://openalex.org/W2087585770","https://openalex.org/W2136285318","https://openalex.org/W2153185479","https://openalex.org/W2162310026","https://openalex.org/W2166822586","https://openalex.org/W2168315159","https://openalex.org/W3161644134","https://openalex.org/W4238321249"],"related_works":["https://openalex.org/W2491664907","https://openalex.org/W2076425390","https://openalex.org/W2125859822","https://openalex.org/W1588619283","https://openalex.org/W2038155434","https://openalex.org/W1416703566","https://openalex.org/W4252066710","https://openalex.org/W2046374187","https://openalex.org/W3111420004","https://openalex.org/W2013731952"],"abstract_inverted_index":{"We":[0],"present":[1],"a":[2,20,31,40,135],"novel":[3],"variation":[4],"on":[5],"the":[6,50,61,82,85,88,127,144,162,165,169,172,177],"standard":[7,113],"technique":[8,99],"of":[9,23,34,43,53,63,87,130,138,147,154,164,171],"selecting":[10],"instructions":[11],"by":[12,120],"tiling":[13],"an":[14,105,122],"intermediate-code":[15],"tree.":[16],"Typical":[17],"compilers":[18],"use":[19],"different":[21],"set":[22,42],"tiles":[24,44],"for":[25],"every":[26],"target":[27,173,183],"machine.":[28],"By":[29],"analyzing":[30],"formal":[32],"model":[33],"machine-level":[35],"computation,":[36],"we":[37,59],"have":[38],"developed":[39],"single":[41],"that":[45,91,157],"is":[46,84,92,117],"machine-independent":[47],"while":[48],"retaining":[49],"expressive":[51],"power":[52],"machine":[54,69],"code.":[55,184],"Using":[56],"this":[57],"tileset,":[58],"reduce":[60],"number":[62],"tilers":[64],"required":[65],"from":[66,134],"one":[67,71],"per":[68,72],"to":[70,95,103,180],"architectural":[73],"family":[74],"(e.g.,":[75],"register":[76],"architecture":[77],"or":[78],"stack":[79],"architecture).":[80],"Because":[81],"tiler":[83],"part":[86],"instruction":[89,106,174],"selector":[90,107],"most":[93],"difficult":[94],"reason":[96],"about,":[97],"our":[98,131],"makes":[100],"it":[101],"possible":[102],"retarget":[104],"with":[108],"significantly":[109],"less":[110],"effort":[111,116],"than":[112],"techniques.":[114],"Retargeting":[115],"further":[118],"reduced":[119],"applying":[121],"earlier":[123],"result":[124],"which":[125],"generates":[126],"machine-dependent":[128],"implementation":[129],"tileset":[132],"automatically":[133],"declarative":[136],"description":[137],"instructions'":[139],"semantics.":[140],"Our":[141],"design":[142],"has":[143],"additional":[145],"benefit":[146],"enabling":[148],"modular":[149],"reasoning":[150],"about":[151],"three":[152],"aspects":[153],"code":[155],"generation":[156],"are":[158],"not":[159],"typically":[160],"separated:":[161],"semantics":[163,170],"compiler's":[166],"intermediate":[167],"representation,":[168],"set,":[175],"and":[176],"techniques":[178],"needed":[179],"generate":[181],"good":[182]},"counts_by_year":[{"year":2023,"cited_by_count":1},{"year":2016,"cited_by_count":1},{"year":2012,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
