{"id":"https://openalex.org/W2289487420","doi":"https://doi.org/10.1145/2854038.2854057","title":"Re-constructing high-level information for language-specific binary re-optimization","display_name":"Re-constructing high-level information for language-specific binary re-optimization","publication_year":2016,"publication_date":"2016-02-29","ids":{"openalex":"https://openalex.org/W2289487420","doi":"https://doi.org/10.1145/2854038.2854057","mag":"2289487420"},"language":"en","primary_location":{"id":"doi:10.1145/2854038.2854057","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2854038.2854057","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2016 International Symposium on Code Generation and Optimization","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/A5043913889","display_name":"Toshihiko Koju","orcid":null},"institutions":[{"id":"https://openalex.org/I4210145865","display_name":"IBM Research - Tokyo","ror":"https://ror.org/04915qk43","country_code":"JP","type":"facility","lineage":["https://openalex.org/I1341412227","https://openalex.org/I4210114115","https://openalex.org/I4210145865"]}],"countries":["JP"],"is_corresponding":true,"raw_author_name":"Toshihiko Koju","raw_affiliation_strings":["IBM Research, Japan"],"affiliations":[{"raw_affiliation_string":"IBM Research, Japan","institution_ids":["https://openalex.org/I4210145865"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5071766112","display_name":"Reid Copeland","orcid":null},"institutions":[{"id":"https://openalex.org/I4210113654","display_name":"IBM (Canada)","ror":"https://ror.org/025sxka56","country_code":"CA","type":"company","lineage":["https://openalex.org/I1341412227","https://openalex.org/I4210113654"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Reid Copeland","raw_affiliation_strings":["IBM, Canada"],"affiliations":[{"raw_affiliation_string":"IBM, Canada","institution_ids":["https://openalex.org/I4210113654"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5084728520","display_name":"Motohiro Kawahito","orcid":null},"institutions":[{"id":"https://openalex.org/I4210145865","display_name":"IBM Research - Tokyo","ror":"https://ror.org/04915qk43","country_code":"JP","type":"facility","lineage":["https://openalex.org/I1341412227","https://openalex.org/I4210114115","https://openalex.org/I4210145865"]}],"countries":["JP"],"is_corresponding":false,"raw_author_name":"Motohiro Kawahito","raw_affiliation_strings":["IBM Research, Japan"],"affiliations":[{"raw_affiliation_string":"IBM Research, Japan","institution_ids":["https://openalex.org/I4210145865"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5108772251","display_name":"Moriyoshi Ohara","orcid":null},"institutions":[{"id":"https://openalex.org/I4210145865","display_name":"IBM Research - Tokyo","ror":"https://ror.org/04915qk43","country_code":"JP","type":"facility","lineage":["https://openalex.org/I1341412227","https://openalex.org/I4210114115","https://openalex.org/I4210145865"]}],"countries":["JP"],"is_corresponding":false,"raw_author_name":"Moriyoshi Ohara","raw_affiliation_strings":["IBM Research, Japan"],"affiliations":[{"raw_affiliation_string":"IBM Research, Japan","institution_ids":["https://openalex.org/I4210145865"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5043913889"],"corresponding_institution_ids":["https://openalex.org/I4210145865"],"apc_list":null,"apc_paid":null,"fwci":0.3153,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.53545232,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":95},"biblio":{"volume":null,"issue":null,"first_page":"273","last_page":"283"},"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.9998999834060669,"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.9998999834060669,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9955000281333923,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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.9930999875068665,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.9328493475914001},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.874252438545227},{"id":"https://openalex.org/keywords/compiler-correctness","display_name":"Compiler correctness","score":0.7329950332641602},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6567210555076599},{"id":"https://openalex.org/keywords/compiler-construction","display_name":"Compiler construction","score":0.5866967439651489},{"id":"https://openalex.org/keywords/optimizing-compiler","display_name":"Optimizing compiler","score":0.5702894926071167},{"id":"https://openalex.org/keywords/intermediate-language","display_name":"Intermediate language","score":0.5312124490737915},{"id":"https://openalex.org/keywords/dead-code-elimination","display_name":"Dead code elimination","score":0.514577329158783},{"id":"https://openalex.org/keywords/interprocedural-optimization","display_name":"Interprocedural optimization","score":0.4946124255657196},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.494412899017334},{"id":"https://openalex.org/keywords/binary-code","display_name":"Binary code","score":0.4885493218898773},{"id":"https://openalex.org/keywords/binary-number","display_name":"Binary number","score":0.48542413115501404},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.47888892889022827},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.47176840901374817},{"id":"https://openalex.org/keywords/program-optimization","display_name":"Program optimization","score":0.4449736177921295},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4206860661506653},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.3968330919742584},{"id":"https://openalex.org/keywords/loop-optimization","display_name":"Loop optimization","score":0.33650028705596924},{"id":"https://openalex.org/keywords/object-code","display_name":"Object code","score":0.32917922735214233},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.16072604060173035},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.0829775333404541},{"id":"https://openalex.org/keywords/arithmetic","display_name":"Arithmetic","score":0.08116582036018372}],"concepts":[{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.9328493475914001},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.874252438545227},{"id":"https://openalex.org/C68366613","wikidata":"https://www.wikidata.org/wiki/Q5156378","display_name":"Compiler correctness","level":3,"score":0.7329950332641602},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6567210555076599},{"id":"https://openalex.org/C9957790","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler construction","level":3,"score":0.5866967439651489},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.5702894926071167},{"id":"https://openalex.org/C77660490","wikidata":"https://www.wikidata.org/wiki/Q244916","display_name":"Intermediate language","level":3,"score":0.5312124490737915},{"id":"https://openalex.org/C2144512","wikidata":"https://www.wikidata.org/wiki/Q1143090","display_name":"Dead code elimination","level":5,"score":0.514577329158783},{"id":"https://openalex.org/C111564260","wikidata":"https://www.wikidata.org/wiki/Q4288856","display_name":"Interprocedural optimization","level":5,"score":0.4946124255657196},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.494412899017334},{"id":"https://openalex.org/C63435697","wikidata":"https://www.wikidata.org/wiki/Q864135","display_name":"Binary code","level":3,"score":0.4885493218898773},{"id":"https://openalex.org/C48372109","wikidata":"https://www.wikidata.org/wiki/Q3913","display_name":"Binary number","level":2,"score":0.48542413115501404},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.47888892889022827},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.47176840901374817},{"id":"https://openalex.org/C139571649","wikidata":"https://www.wikidata.org/wiki/Q1156793","display_name":"Program optimization","level":3,"score":0.4449736177921295},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4206860661506653},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3968330919742584},{"id":"https://openalex.org/C29331672","wikidata":"https://www.wikidata.org/wiki/Q3354468","display_name":"Loop optimization","level":4,"score":0.33650028705596924},{"id":"https://openalex.org/C154526789","wikidata":"https://www.wikidata.org/wiki/Q157965","display_name":"Object code","level":4,"score":0.32917922735214233},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.16072604060173035},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0829775333404541},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.08116582036018372},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2854038.2854057","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2854038.2854057","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2016 International Symposium on Code Generation and Optimization","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":22,"referenced_works":["https://openalex.org/W1522250664","https://openalex.org/W1949003947","https://openalex.org/W1986780368","https://openalex.org/W2014012690","https://openalex.org/W2030906223","https://openalex.org/W2043100293","https://openalex.org/W2059048359","https://openalex.org/W2064391085","https://openalex.org/W2072737419","https://openalex.org/W2073944597","https://openalex.org/W2093122758","https://openalex.org/W2100341130","https://openalex.org/W2127859789","https://openalex.org/W2140323279","https://openalex.org/W2147118954","https://openalex.org/W2153185479","https://openalex.org/W2157277188","https://openalex.org/W2161992906","https://openalex.org/W2166073523","https://openalex.org/W4231002400","https://openalex.org/W6631155369","https://openalex.org/W6646973133"],"related_works":["https://openalex.org/W2083681681","https://openalex.org/W2053033210","https://openalex.org/W1597127505","https://openalex.org/W1606793177","https://openalex.org/W2014855281","https://openalex.org/W1524758670","https://openalex.org/W3140187916","https://openalex.org/W2109065821","https://openalex.org/W2140495717","https://openalex.org/W2289487420"],"abstract_inverted_index":{"In":[0],"this":[1,127,175],"paper,":[2],"we":[3,129],"show":[4],"a":[5,14,34,55,62,66,72,132,148,200,212],"binary":[6,56,178],"optimizer":[7,57,179],"can":[8],"achieve":[9],"competitive":[10],"performance":[11,36,183],"relative":[12],"to":[13,53,75,93,134,207,211],"state-of-the-art":[15],"source":[16,68],"code":[17,69],"compiler":[18,29,63,87,190,218],"by":[19,140,191],"re-constructing":[20],"high-level":[21],"information":[22,111,146],"(HLI)":[23],"from":[24,138,187],"binaries.":[25],"Recent":[26],"advances":[27],"in":[28,33,101,121,195],"technologies":[30],"have":[31,130],"resulted":[32],"large":[35],"gap":[37],"between":[38],"binaries":[39,60,139,185],"compiled":[40,46],"with":[41,47,215],"old":[42,59],"compilers":[43],"and":[44,114,168],"those":[45],"latest":[48,67],"ones.":[49],"This":[50,104,144],"motivated":[51],"us":[52,92],"develop":[54],"for":[58,65,199],"using":[61,141],"engine":[64],"compiler.":[70,103],"However,":[71],"traditional":[73],"approach":[74],"naively":[76],"convert":[77],"machine":[78],"instructions":[79],"into":[80],"an":[81,123,188],"intermediate":[82],"representation":[83],"(IR)":[84],"of":[85,97,150,160,165,171,184,202],"the":[86,102,107,136,158,163,169,182,196,208,216],"engine,":[88,219],"does":[89],"not":[90,119],"allow":[91],"take":[94],"full":[95],"advantage":[96],"optimization":[98],"techniques":[99],"available":[100,120],"is":[105,118,147,205],"because":[106],"HLI,":[108],"such":[109,122,156],"as":[110,157],"about":[112,152],"variables":[113],"their":[115],"data":[116,161],"types,":[117],"IR.":[124],"To":[125],"address":[126],"issue,":[128],"devised":[131],"technique":[133],"re-construct":[135],"HLI":[137],"contextual":[142,145],"information.":[143],"set":[149,201],"knowledge":[151],"specific":[153],"compilation":[154],"technologies,":[155],"conventions":[159],"structures,":[162],"patterns":[164],"instruction":[166],"sequences,":[167],"semantics":[170],"runtime":[172],"routines.":[173],"With":[174],"technique,":[176],"our":[177],"has":[180],"improved":[181],"generated":[186],"older":[189],"40.1%":[192],"on":[193,221],"average":[194],"CPU":[197],"time":[198],"benchmarks,":[203],"which":[204],"close":[206],"one":[209],"due":[210],"source-code":[213],"recompilation":[214],"same":[217],"55.2%":[220],"average.":[222]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2022,"cited_by_count":1},{"year":2017,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
