{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,10,25]],"date-time":"2023-10-25T09:11:47Z","timestamp":1698225107207},"reference-count":8,"publisher":"Wiley","issue":"11","license":[{"start":{"date-parts":[[2006,10,30]],"date-time":"2006-10-30T00:00:00Z","timestamp":1162166400000},"content-version":"vor","delay-in-days":4746,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[1993,11]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>We report our experiences with the implementation of <jats:italic>InterProcedural Alias Analysis<\/jats:italic> (IPA) for Fortran. Implicit aliasing caused by reference parameter passing can be uncovered in a program with multiple compilation units by interprocedural analysis. For scalar objects and for full arrays, the IPA processor described here finds all alias relations. For indexed array elements and partial arrays, conservative assumptions must still be made in the absence of precise knowledge about the subscripts. IPA has been integrated into <jats:italic>nascent<\/jats:italic>, the front\u2010end of a Fortran translator under development at the Oregon Graduate Institute (OGI). This report explains the goals and limitations of alias analysis for conventional procedural languages with reference parameters, shows in detail the actual design and implementation of IPA, and provides algorithmic and speed improvements over the best previously known aliasing algorithms. Empirical results gathered during the analysis of large Fortran programs are also listed and discussed.<\/jats:p>","DOI":"10.1002\/spe.4380231103","type":"journal-article","created":{"date-parts":[[2006,11,17]],"date-time":"2006-11-17T20:18:09Z","timestamp":1163794689000},"page":"1201-1233","source":"Crossref","is-referenced-by-count":3,"title":["Interprocedural alias analysis: Implementation and empirical results"],"prefix":"10.1002","volume":"23","author":[{"given":"Herbert G.","family":"Mayer","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael","family":"Wolfe","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"311","published-online":{"date-parts":[[2006,10,30]]},"reference":[{"key":"e_1_2_1_2_2","volume-title":"Flow Analysis of Computer Programs","author":"Hecht M. S.","year":"1977"},{"key":"e_1_2_1_3_2","doi-asserted-by":"crossref","unstructured":"K. D.CooperandK.Kennedy \u2018Fast interprocedural alias analysis\u2019 Conference Record of the Sixteenth Annual ACM Symposium on Principles of Programming Languages February1989 pp.49\u201359.","DOI":"10.1145\/75277.75282"},{"key":"e_1_2_1_4_2","doi-asserted-by":"crossref","unstructured":"J. B.Banning \u2018An efficient way to find the side effects of procedure calls and the aliases of variables\u2019 Proceedings of the Sixth Annual ACM Symposium on Principles of Programming Languages January1979 pp.29\u201341.","DOI":"10.1145\/567752.567756"},{"key":"e_1_2_1_5_2","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-06950-X"},{"key":"e_1_2_1_6_2","volume-title":"American National Standard Programming Language FORTRAN","author":"ANSI, Inc.","year":"1978"},{"key":"e_1_2_1_7_2","unstructured":"ANSI Inc. Reference Manual For The Ada Programming Language ANSI\/MIL\u2010STD\u20101815A\u20101983 1983."},{"key":"e_1_2_1_8_2","doi-asserted-by":"publisher","DOI":"10.1137\/0201010"},{"key":"e_1_2_1_9_2","volume-title":"Compilers Principles, Techniques, and Tools","author":"Aho A. V.","year":"1946"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.4380231103","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.4380231103","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,10,24]],"date-time":"2023-10-24T19:29:46Z","timestamp":1698175786000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.4380231103"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1993,11]]},"references-count":8,"journal-issue":{"issue":"11","published-print":{"date-parts":[[1993,11]]}},"alternative-id":["10.1002\/spe.4380231103"],"URL":"https:\/\/doi.org\/10.1002\/spe.4380231103","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"value":"0038-0644","type":"print"},{"value":"1097-024X","type":"electronic"}],"subject":[],"published":{"date-parts":[[1993,11]]}}}