{"id":"https://openalex.org/W2017616301","doi":"https://doi.org/10.1145/177492.177517","title":"Debugging optimized code without being misled","display_name":"Debugging optimized code without being misled","publication_year":1994,"publication_date":"1994-05-01","ids":{"openalex":"https://openalex.org/W2017616301","doi":"https://doi.org/10.1145/177492.177517","mag":"2017616301"},"language":"en","primary_location":{"id":"doi:10.1145/177492.177517","doi":"https://doi.org/10.1145/177492.177517","is_oa":true,"landing_page_url":"https://doi.org/10.1145/177492.177517","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/177492.177517","source":{"id":"https://openalex.org/S41449414","display_name":"ACM Transactions on Programming Languages and Systems","issn_l":"0164-0925","issn":["0164-0925","1558-4593"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["ccf-a","cwts-core","dongbi-a","jufo-3","norway-2","poland-140","russia-white-list-2"],"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Programming Languages and Systems","raw_type":"journal-article"},"volume":null,"type":"article","is_traditional":true,"indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://dl.acm.org/doi/pdf/10.1145/177492.177517","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5060417004","display_name":"Max Copperman","orcid":null,"observed_orcids":[]},"institutions":[{"id":"https://openalex.org/I185103710","display_name":"University of California, Santa Cruz","ror":"https://ror.org/03s65by71","country_code":"US","type":"education","lineage":["https://openalex.org/I185103710"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Max Copperman","raw_affiliation_strings":["Univ. of California, Santa Cruz","University of California/Santa Cruz"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Univ. of California, Santa Cruz","institution_ids":["https://openalex.org/I185103710"]},{"raw_affiliation_string":"University of California/Santa Cruz","institution_ids":["https://openalex.org/I185103710"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5060417004"],"corresponding_institution_ids":["https://openalex.org/I185103710"],"apc_list":null,"apc_paid":null,"fwci":2.9567,"has_fulltext":true,"cited_by_count":50,"citation_normalized_percentile":{"value":0.90499753,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":87,"max":96},"biblio":{"volume":"16","issue":"3","first_page":"387","last_page":"427"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9603999853134155,"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"}},"topics":[{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9603999853134155,"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.018400000408291817,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.010499999858438969,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/optimizing-compilers","display_name":"optimizing compilers","score":0.6110000014305115},{"id":"https://openalex.org/keywords/breakpoint-mapping","display_name":"breakpoint mapping","score":0.5490000247955322},{"id":"https://openalex.org/keywords/source-level-debugging","display_name":"source-level debugging","score":0.75},{"id":"https://openalex.org/keywords/global-optimization","display_name":"global optimization","score":0.6729999780654907}],"concepts":[{"id":"https://openalex.org/C2778485113","wikidata":"https://www.wikidata.org/wiki/Q193231","display_name":"Debugger","level":3,"score":0.9208279252052307},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8812525272369385},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.8747840523719788},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7591420412063599},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7299758195877075},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.6461571455001831},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.6263864636421204},{"id":"https://openalex.org/C139571649","wikidata":"https://www.wikidata.org/wiki/Q1156793","display_name":"Program optimization","level":3,"score":0.5797603726387024},{"id":"https://openalex.org/C128916667","wikidata":"https://www.wikidata.org/wiki/Q1343660","display_name":"Register allocation","level":3,"score":0.544363796710968},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5114620923995972},{"id":"https://openalex.org/C88468194","wikidata":"https://www.wikidata.org/wiki/Q1172416","display_name":"Data-flow analysis","level":3,"score":0.44278237223625183},{"id":"https://openalex.org/C2144512","wikidata":"https://www.wikidata.org/wiki/Q1143090","display_name":"Dead code elimination","level":5,"score":0.42952659726142883},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3887746334075928},{"id":"https://openalex.org/C489000","wikidata":"https://www.wikidata.org/wiki/Q747385","display_name":"Data flow diagram","level":2,"score":0.3242836594581604},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.2980231046676636},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.2948044538497925},{"id":"https://openalex.org/C151578736","wikidata":"https://www.wikidata.org/wiki/Q1251793","display_name":"Redundant code","level":4,"score":0.19551891088485718},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.07673847675323486},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1145/177492.177517","doi":"https://doi.org/10.1145/177492.177517","is_oa":true,"landing_page_url":"https://doi.org/10.1145/177492.177517","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/177492.177517","source":{"id":"https://openalex.org/S41449414","display_name":"ACM Transactions on Programming Languages and Systems","issn_l":"0164-0925","issn":["0164-0925","1558-4593"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["ccf-a","cwts-core","dongbi-a","jufo-3","norway-2","poland-140","russia-white-list-2"],"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Programming Languages and Systems","raw_type":"journal-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.31.3167","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.31.3167","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"ftp://ftp.cse.ucsc.edu/pub/tr/ucsc-crl-93-21.ps.Z","raw_type":"text"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.43.190","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.43.190","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"ftp://ftp.cse.ucsc.edu/pub/tr/ucsc-crl-92-01.ps.Z","raw_type":"text"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.501.1617","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.501.1617","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.cs.berkeley.edu/~fateman/264/papers/copperman.pdf","raw_type":"text"}],"best_oa_location":{"id":"doi:10.1145/177492.177517","doi":"https://doi.org/10.1145/177492.177517","is_oa":true,"landing_page_url":"https://doi.org/10.1145/177492.177517","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/177492.177517","source":{"id":"https://openalex.org/S41449414","display_name":"ACM Transactions on Programming Languages and Systems","issn_l":"0164-0925","issn":["0164-0925","1558-4593"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["ccf-a","cwts-core","dongbi-a","jufo-3","norway-2","poland-140","russia-white-list-2"],"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Programming Languages and Systems","raw_type":"journal-article"},"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2017616301.pdf","grobid_xml":"https://content.openalex.org/works/W2017616301.grobid-xml"},"referenced_works_count":27,"referenced_works":["https://openalex.org/W1491178396","https://openalex.org/W1492560660","https://openalex.org/W1531612323","https://openalex.org/W1592489162","https://openalex.org/W1978206649","https://openalex.org/W1979277605","https://openalex.org/W1998807269","https://openalex.org/W2009741116","https://openalex.org/W2010364625","https://openalex.org/W2011749833","https://openalex.org/W2015125841","https://openalex.org/W2022262721","https://openalex.org/W2022537085","https://openalex.org/W2035808749","https://openalex.org/W2047229718","https://openalex.org/W2049010566","https://openalex.org/W2049837989","https://openalex.org/W2118393301","https://openalex.org/W2118450335","https://openalex.org/W2119199043","https://openalex.org/W2154215674","https://openalex.org/W2561675875","https://openalex.org/W3091069852","https://openalex.org/W4234449987","https://openalex.org/W4248231217","https://openalex.org/W4252006888","https://openalex.org/W4256231703"],"related_works":["https://openalex.org/W7099276652","https://openalex.org/W785369442","https://openalex.org/W170259237","https://openalex.org/W7099636698","https://openalex.org/W2440387015","https://openalex.org/W1533276554","https://openalex.org/W3018411688","https://openalex.org/W4256231703","https://openalex.org/W1480532367","https://openalex.org/W7100272641"],"abstract_inverted_index":{"Correct":[0],"optimization":[1,153],"can":[2,30,89,133],"change":[3],"the":[4,36,45,81,92,103,114,135],"behavior":[5,67,74],"of":[6,94,113,122,138],"an":[7,32],"incorrect":[8],"program;":[9],"therefore":[10],"at":[11],"times":[12],"it":[13,150,160],"is":[14,143,161,175],"necessary":[15],"to":[16,41,83,97,165],"debug":[17],"optimized":[18,69],"code.":[19,116],"However,":[20],"optimizing":[21],"compilers":[22],"produce":[23],"code":[24,70,77],"that":[25,59,71,105],"impedes":[26],"source-level":[27],"debugging.":[28],"Optimization":[29,88],"cause":[31,91],"inconsistency":[33],"between":[34,54],"where":[35],"user":[37,82],"expects":[38],"a":[39,52,95,110,120,131,169],"breakpoint":[40,57],"be":[42,98,107],"located":[43],"and":[44,56,128,154,159],"breakpoint's":[46],"actual":[47],"location.":[48],"This":[49,117],"article":[50,118],"describes":[51],"mapping":[53,64],"statements":[55],"locations":[58],"ameliorates":[60],"this":[61,125],"problem.":[62],"The":[63,140],"enables":[65],"debugger":[66,73,132],"on":[68,75],"approximates":[72],"unoptimized":[76],"sufficiently":[78],"closely":[79],"for":[80],"use":[84],"traditional":[85],"debugging":[86],"strategies.":[87],"also":[90,176],"value":[93,104],"variable":[96],"noncurrent":[99],"\u2014to":[100],"differ":[101],"from":[102],"would":[106],"predicted":[108],"by":[109,168],"close":[111],"reading":[112],"source":[115],"presents":[119],"method":[121,142],"determining":[123],"when":[124],"has":[126],"occurred,":[127],"shows":[129],"how":[130],"describe":[134],"relevant":[136],"effects":[137],"optimization.":[139],"determination":[141],"more":[144],"general":[145],"than":[146],"previously":[147],"published":[148],"methods;":[149],"handles":[151],"global":[152],"many":[155],"flow":[156],"graph":[157],"transformations,":[158],"not":[162],"tightly":[163],"coupled":[164],"optimizations":[166],"performed":[167],"particular":[170],"compiler.":[171],"Necessary":[172],"compiler":[173],"support":[174],"described.":[177]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":1},{"year":2013,"cited_by_count":2},{"year":2012,"cited_by_count":1}],"updated_date":"2026-11-04T10:54:05.112534","created_date":"2016-06-24T00:00:00"}
