Alias-free parameters in C using multibodies

dc.contributor.author Assaad, Medhat
dc.contributor.department Computer Science
dc.date 2020-11-22T06:39:05.000
dc.date.accessioned 2021-02-26T09:02:43Z
dc.date.available 2021-02-26T09:02:43Z
dc.date.copyright Mon Jan 01 00:00:00 UTC 2001
dc.date.issued 2001-01-01
dc.description.abstract <p>Aliasing may cause problems for both optimization and reasoning about programs. Since static alias analysis is expensive, and sometimes, even impossible, compilers tend to be conservative. This usually leads to missing some optimization opportunities. Furthermore, when trying to understand code, one must consider all possible aliasing patterns. This can make reasoning about code difficult and non-trivial. We have implemented an approach for having alias-free parameters in C. This approach allows aliasing between the arguments at the call site, but guarantees that there will be no aliasing between arguments and between arguments and globals inside procedure bodies. This is done by having multiple bodies, up to one for each aliasing pattern. Procedure calls will be dispatched to the body that matches the aliasing pattern at the call site. By having alias-free parameters in the bodies, good optimization can be achieved. Furthermore, verification and reasoning about the code is easier when there is no aliasing. The main advantages of our approach are that code to determine the aliasing pattern is automatically generated, and the programmer does not have to code it by hand. We tested our implementation, and found that using this approach can be very practical. It is easy to convert already-existing code to use it. And in some cases, we had run-time execution speedup as much as 29%.</p>
dc.format.mimetype application/pdf
dc.identifier archive/lib.dr.iastate.edu/rtd/21056/
dc.identifier.articleid 22055
dc.identifier.contextkey 20252150
dc.identifier.doi https://doi.org/10.31274/rtd-20201118-20
dc.identifier.s3bucket isulib-bepress-aws-west
dc.identifier.submissionpath rtd/21056
dc.identifier.uri https://dr.lib.iastate.edu/handle/20.500.12876/98423
dc.language.iso en
dc.source.bitstream archive/lib.dr.iastate.edu/rtd/21056/Assaad_ISU_2001_A87.pdf|||Fri Jan 14 22:34:24 UTC 2022
dc.subject.keywords Computer science
dc.title Alias-free parameters in C using multibodies
dc.type article
dc.type.genre thesis
dspace.entity.type Publication
relation.isOrgUnitOfPublication f7be4eb9-d1d0-4081-859b-b15cee251456
thesis.degree.discipline Computer Science
thesis.degree.level thesis
thesis.degree.name Master of Science
File
Original bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
Assaad_ISU_2001_A87.pdf
Size:
1.13 MB
Format:
Adobe Portable Document Format
Description: