{"id":"https://openalex.org/W33789212","doi":null,"title":"Interprocedural pointer analysis for c","display_name":"Interprocedural pointer analysis for c","publication_year":1998,"publication_date":"1998-01-01","ids":{"openalex":"https://openalex.org/W33789212","mag":"33789212"},"language":"en","primary_location":{"id":"mag:33789212","doi":null,"is_oa":false,"landing_page_url":"https://scholarship.rice.edu/handle/1911/19281","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null},"volume":null,"type":"dissertation","is_traditional":true,"indexed_in":[],"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/A5073381111","display_name":"Keith D. Cooper","orcid":"https://orcid.org/0000-0003-4288-4847","observed_orcids":["https://orcid.org/0000-0003-4288-4847"]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Keith D. Cooper","raw_affiliation_strings":[],"raw_orcid":"https://orcid.org/0000-0003-4288-4847","affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5008753978","display_name":"John Lu","orcid":"https://orcid.org/0009-0001-1789-7569","observed_orcids":["https://orcid.org/0009-0001-1789-7569"]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"John Lu","raw_affiliation_strings":[],"raw_orcid":"https://orcid.org/0009-0001-1789-7569","affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":8,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"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.948199987411499,"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/T10126","display_name":"Logic, programming, and type systems","score":0.948199987411499,"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.03680000081658363,"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.0027000000700354576,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/c-programming-language","display_name":"C programming language","score":0.8159999847412109},{"id":"https://openalex.org/keywords/alias-analysis","display_name":"alias analysis","score":0.8180000185966492},{"id":"https://openalex.org/keywords/program-optimization","display_name":"program optimization","score":0.6869999766349792},{"id":"https://openalex.org/keywords/memory-traffic-reduction","display_name":"memory traffic reduction","score":0.7490000128746033}],"concepts":[{"id":"https://openalex.org/C7263679","wikidata":"https://www.wikidata.org/wiki/Q5978076","display_name":"Pointer analysis","level":3,"score":0.9238067865371704},{"id":"https://openalex.org/C150202949","wikidata":"https://www.wikidata.org/wiki/Q107602","display_name":"Pointer (user interface)","level":2,"score":0.8680988550186157},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.83416348695755},{"id":"https://openalex.org/C46681722","wikidata":"https://www.wikidata.org/wiki/Q4725589","display_name":"Alias","level":2,"score":0.6771088242530823},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.606673002243042},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.5499134659767151},{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.5114377737045288},{"id":"https://openalex.org/C199519371","wikidata":"https://www.wikidata.org/wiki/Q942695","display_name":"Source lines of code","level":3,"score":0.46520334482192993},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.4318738579750061},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.37738513946533203},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.3333699107170105},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.3291577398777008},{"id":"https://openalex.org/C9390403","wikidata":"https://www.wikidata.org/wiki/Q3966","display_name":"Computer hardware","level":1,"score":0.1508786678314209},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.14095208048820496},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.10718223452568054}],"mesh":[],"locations_count":1,"locations":[{"id":"mag:33789212","doi":null,"is_oa":false,"landing_page_url":"https://scholarship.rice.edu/handle/1911/19281","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null}],"best_oa_location":null,"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":["https://openalex.org/W2361676265","https://openalex.org/W7099986104","https://openalex.org/W2036208810","https://openalex.org/W2117948828","https://openalex.org/W2347849237","https://openalex.org/W2150138144","https://openalex.org/W1885035175","https://openalex.org/W7096595200","https://openalex.org/W2131093354","https://openalex.org/W2363386825"],"abstract_inverted_index":{"Many":[0],"powerful":[1],"code":[2,304],"optimization":[3],"techniques":[4],"rely":[5],"on":[6],"accurate":[7,39,96],"information":[8,20,40,97,132,279],"connecting":[9],"the":[10,70,125,138,146,164,190,229,239,255,260,264,278,303],"definitions":[11],"and":[12,48,59,75,104,127,142,159,173,202,219,236],"uses":[13],"of":[14,72,113,120,124,129,156,163,171,181,193,238,263,302],"values":[15,35],"in":[16,36,91,295,305,324],"a":[17,169,290,298],"program.":[18],"This":[19,67],"is":[21,41,208,308,322],"difficult":[22,42],"to":[23,43,83,93,152,226,276,297,310],"produce":[24],"for":[25,78,89,137,145,179,215,300,316],"programs":[26,180,199],"written":[27],"with":[28,189,247],"pointer-based":[29,49,60,105],"languages":[30],"such":[31],"as":[32],"C.":[33],"For":[34],"memory":[37,50,65,100,106,296,326],"locations,":[38],"obtain":[44],"at":[45,228],"call":[46,57,102,121],"sites":[47,58,103],"operations.":[51],"Most":[52],"compilers":[53],"conservatively":[54],"assume":[55],"that":[56,176,205,254,272,292,320],"operations":[61,107],"may":[62,108],"access":[63],"any":[64],"location.":[66],"greatly":[68],"weakens":[69],"effectiveness":[71],"many":[73],"optimizations":[74],"leaves":[76],"opportunities":[77],"improvement.\r\nThis":[79],"dissertation":[80],"examines":[81],"how":[82],"implement":[84],"an":[85],"interprocedural":[86,130,248],"pointer":[87,114,154,177,282],"analyzer":[88,165,256],"C":[90],"order":[92],"provide":[94],"more":[95],"about":[98,182],"which":[99,306],"locations":[101],"access.":[109],"The":[110,196,213],"key":[111],"issues":[112],"analysis":[115,178,232,234,283],"versus":[116],"alias":[117],"analysis,":[118],"modeling":[119,123],"sites,":[122],"heap,":[126],"usage":[128],"path":[131],"are":[133],"discussed.":[134],"Solutions":[135],"given":[136],"first":[139],"two":[140,148],"questions":[141,149],"various":[143],"solutions":[144],"last":[147],"were":[150,166,200,244],"used":[151,225],"build":[153],"analyzers":[155],"varying":[157],"power":[158,192],"complexity.":[160],"All":[161],"versions":[162],"tested":[167],"over":[168],"suite":[170],"programs,":[172],"we":[174,203],"demonstrate":[175],"30K":[183],"lines":[184],"can":[185,257],"easily":[186],"be":[187],"done":[188],"computational":[191],"current":[194],"machines.":[195],"resulting":[197],"pointer-analyzed":[198],"tested,":[201],"show":[204,253,319],"their":[206],"performance":[207,218,223,237],"better":[209],"than":[210],"non-analyzed":[211],"programs.":[212],"data":[214],"each":[216,220],"analyzers'":[217],"analyzed":[221,240],"programs'":[222],"was":[224,273,284],"look":[227],"trade-offs":[230],"among":[231],"time,":[233],"accuracy,":[235],"code.":[241],"These":[242],"results":[243,315],"also":[245,252,285],"compared":[246],"MOD/REF":[249],"analysis.":[250],"We":[251],"speed":[258],"up":[259],"execution":[261],"times":[262],"rest":[265],"our":[266],"optimizer.\r\nA":[267],"new":[268],"optimization,":[269],"register":[270,299,317],"promotion,":[271],"specifically":[274],"designed":[275],"use":[277],"generated":[280],"by":[281],"developed.":[286],"Register":[287],"promotion":[288,318],"moves":[289],"variable":[291],"normally":[293],"resides":[294],"portions":[301],"it":[307,321],"safe":[309],"do":[311],"so.":[312],"Our":[313],"experimental":[314],"effective":[323],"reducing":[325],"traffic.":[327]},"counts_by_year":[],"updated_date":"2026-08-08T07:41:36.138363","created_date":"2016-06-24T00:00:00"}
