{"id":"https://openalex.org/W2060041228","doi":"https://doi.org/10.1145/2093157.2093175","title":"Eliminating partially-redundant array-bounds check in the Android Dalvik JIT compiler","display_name":"Eliminating partially-redundant array-bounds check in the Android Dalvik JIT compiler","publication_year":2011,"publication_date":"2011-08-24","ids":{"openalex":"https://openalex.org/W2060041228","doi":"https://doi.org/10.1145/2093157.2093175","mag":"2060041228"},"language":"en","primary_location":{"id":"doi:10.1145/2093157.2093175","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2093157.2093175","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 9th International Conference on Principles and Practice of Programming in Java","raw_type":"proceedings-article"},"type":"conference-paper","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/A5021162892","display_name":"Javed Absar","orcid":null},"institutions":[{"id":"https://openalex.org/I4210139030","display_name":"Samsung (India)","ror":"https://ror.org/04cpx2569","country_code":"IN","type":"company","lineage":["https://openalex.org/I2250650973","https://openalex.org/I4210139030"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Javed Absar","raw_affiliation_strings":["Samsung, Bangalore, India"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Samsung, Bangalore, India","institution_ids":["https://openalex.org/I4210139030"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5075920976","display_name":"Deepak Shekhar","orcid":null},"institutions":[{"id":"https://openalex.org/I4210139030","display_name":"Samsung (India)","ror":"https://ror.org/04cpx2569","country_code":"IN","type":"company","lineage":["https://openalex.org/I2250650973","https://openalex.org/I4210139030"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Deepak Shekhar","raw_affiliation_strings":["Samsung, Bangalore, India"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Samsung, Bangalore, India","institution_ids":["https://openalex.org/I4210139030"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I4210139030"],"apc_list":null,"apc_paid":null,"fwci":0.2698,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.49501673,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"121","last_page":"128"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9995999932289124,"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"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9995999932289124,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9993000030517578,"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/T10142","display_name":"Formal Methods in Verification","score":0.9990000128746033,"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/compiler","display_name":"Compiler","score":0.8799768686294556},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8742443323135376},{"id":"https://openalex.org/keywords/optimizing-compiler","display_name":"Optimizing compiler","score":0.7000426054000854},{"id":"https://openalex.org/keywords/android","display_name":"Android (operating system)","score":0.6434618830680847},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6397097110748291},{"id":"https://openalex.org/keywords/just-in-time-compilation","display_name":"Just-in-time compilation","score":0.6218990683555603},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.6202966570854187},{"id":"https://openalex.org/keywords/virtual-machine","display_name":"Virtual machine","score":0.5105305910110474},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4987161159515381},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.48281368613243103},{"id":"https://openalex.org/keywords/program-optimization","display_name":"Program optimization","score":0.4263090193271637},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.40469861030578613}],"concepts":[{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.8799768686294556},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8742443323135376},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.7000426054000854},{"id":"https://openalex.org/C557433098","wikidata":"https://www.wikidata.org/wiki/Q94","display_name":"Android (operating system)","level":2,"score":0.6434618830680847},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6397097110748291},{"id":"https://openalex.org/C76782552","wikidata":"https://www.wikidata.org/wiki/Q110546","display_name":"Just-in-time compilation","level":3,"score":0.6218990683555603},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6202966570854187},{"id":"https://openalex.org/C25344961","wikidata":"https://www.wikidata.org/wiki/Q192726","display_name":"Virtual machine","level":2,"score":0.5105305910110474},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4987161159515381},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.48281368613243103},{"id":"https://openalex.org/C139571649","wikidata":"https://www.wikidata.org/wiki/Q1156793","display_name":"Program optimization","level":3,"score":0.4263090193271637},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.40469861030578613},{"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/2093157.2093175","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2093157.2093175","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 9th International Conference on Principles and Practice of Programming in Java","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":18,"referenced_works":["https://openalex.org/W4015096","https://openalex.org/W69024957","https://openalex.org/W1982205631","https://openalex.org/W1994372357","https://openalex.org/W2010167524","https://openalex.org/W2011325955","https://openalex.org/W2013724146","https://openalex.org/W2024914463","https://openalex.org/W2038053930","https://openalex.org/W2040384644","https://openalex.org/W2054939714","https://openalex.org/W2079549821","https://openalex.org/W2114067856","https://openalex.org/W2126774541","https://openalex.org/W2130262734","https://openalex.org/W2130711572","https://openalex.org/W2158134106","https://openalex.org/W6600156937"],"related_works":["https://openalex.org/W2004337747","https://openalex.org/W3004536583","https://openalex.org/W2061483729","https://openalex.org/W2172096703","https://openalex.org/W4254156924","https://openalex.org/W1989702012","https://openalex.org/W1577067912","https://openalex.org/W4233359889","https://openalex.org/W2102888818","https://openalex.org/W4242026152"],"abstract_inverted_index":{"The":[0],"Android":[1,17],"operating":[2],"system":[3],"has":[4,112],"transformed":[5],"the":[6,16,19,49,80,88,98,162],"mobile":[7],"software":[8],"platform":[9],"landscape":[10],"significantly.":[11],"A":[12],"significant":[13],"component":[14],"of":[15,53,87,92,100,149],"is":[18,38,97,156,159],"Dalvik":[20],"Virtual":[21],"Machine":[22],"(DVM)":[23],"that":[24,60,115,124,135,141,145],"interprets":[25],"client":[26],"applications'":[27],"codes":[28],"written":[29],"in":[30,79,90,106],"Java":[31,107],"and":[32,152,158],"compiled":[33],"to":[34,64],"dexcode.":[35],"Since":[36],"interpretation":[37],"inherently":[39],"slow,":[40],"virtual":[41],"machines":[42],"typically":[43],"employ":[44],"just-in-time":[45],"(JIT)":[46],"compilation.":[47],"In":[48,130],"Froyo":[50],"2.2":[51],"release":[52],"Android,":[54],"DVM":[55,83,163],"added":[56],"a":[57,113,128],"JIT":[58,164],"compiler":[59],"selectively":[61],"compiles":[62],"hot-traces":[63],"native":[65],"ARM":[66],"code.":[67],"Some":[68],"crucial":[69],"optimizations":[70],"such":[71],"as":[72,104],"array":[73],"bounds-check":[74],"optimization":[75,91],"have":[76],"been":[77],"implemented":[78,105,160],"DVM-JIT":[81],"compiler.":[82,165],"implements":[84],"an":[85,139],"extension":[86,140,155],"state-of-the-art":[89],"partially-redundant":[93],"array-bounds":[94],"check,":[95],"which":[96],"approach":[99],"Wurthinger":[101],"et":[102],"al.":[103],"Hot-Spot":[108],"Compiler.":[109],"That":[110],"technique":[111],"limitation":[114],"it":[116],"can":[117,142],"optimize":[118],"bounds":[119],"checks":[120],"only":[121],"for":[122],"indices":[123,144],"are":[125,146],"\"iterator":[126],"plus":[127],"constant\".":[129],"this":[131],"paper,":[132],"we":[133],"tackle":[134],"problem":[136],"by":[137],"proposing":[138],"handle":[143],"\"affine":[147],"functions":[148],"iterators,":[150],"loop-invariants":[151],"literals\".":[153],"Our":[154],"fast":[157],"into":[161]},"counts_by_year":[{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":1}],"updated_date":"2026-07-29T14:22:42.915294","created_date":"2025-10-10T00:00:00"}
