Exemple C pour l'aspect interprocédural de l'analyse d, p.48 ,
du programme 6.6 avec les arcs points-to, p.150 ,
du programme 6.10 avec les arcs points-to, p.153 ,
du programme 6.15 avec les arcs points-to, p.154 ,
du programme 6.19 avec les arcs points-to, p.156 ,
next -> _p_1_2__1, pp.1-2 ,
next -> _p_1_2__1, pp.1-2 ,
L'analyse intraprocédurale étendue int init(list *p) { int i = 0, j, tab[20]; for(j = 0; j <= 19, p.tab ,
information exacte sur l'effet de la fonction appelée, soit parce que la traduction est imprécise, soit parce que la fonction appelée génère un arc points-to imprécis, il faut penser à modifier l'approximation des arcs exacts se trouvant dans pt caller et dont la source a peut-être été modifiée. La modification de l'approximation passe formellement par l'ajout d'un arc dans Kill via Kill 3 ,
Il doit être supprimé s'il n'existe pas d'arc équivalent dans pt caller . Par contre, la construction à la demande du contexte formel de la fonction appelante peut ne pas avoir encore abouti. S'il existe par exemple un arc (f p, _f p_1) dans In et que f p est associé à un paramètre formel de l'appelante ap qui est lui-même un paramètre formel ,
après projection des variables, c'est-à-dire après la suppression des variables locales qui ne sont pas visibles depuis le site d'appel, les arcs sont donnés par le programme 7.3. soit en termes de graphes de fonctions 1, = {(c1, _c1_1), pp.2-2 ,
calculée après l'analyse de la fonction f, est donnée par le programme 7 ,
nous pouvons déduire l'ensemble E qui contient six éléments : E = {_p_1, _p_1_1, _q_2, pp.2-2 ,
initialisation à la demande des paramètres formels et des variables qu'ils peuvent pointer pour constituer un contexte formel minimal. Ceci permet de ne pas propager une grande liste d'arcs points-to dans la procédure appelée et de ne pas consommer un grand espace mémoire ,
4 ? Appel à malloc dans une boucle Pour le programme ci-dessus, notre analyse conclura que p pointe vers le tas alloué à la ligne ,
Pips is not (just) polyhedral software, First International Workshop on Polyhedral Compilation Techniques, 2011. ,
An overview of the suif compiler for scalable parallel machines, Proceedings of the Seventh SIAM Conference on Parallel Processing for Scientific Computing, pp.662-667, 1993. ,
PIPS : An interprodedural, extensible, source-to-source compiler infrastructure for code transformations and instrumentations, tutorial at International Symposium on Code Generation and Optimization, 2011. ,
Improving software security with a c pointer analysis, Proceedings of the 27th international conference on Software engineering, pp.332-341, 2005. ,
Pointeurs et aliasing en c. Master's thesis, Mines ParisTech, Centre de Recherche en Informatique (CRI), 2008. ,
Program Analysis and Specialization for the C Programming Language, 1994. ,
Compilers : principles, techniques, and tools, 1986. ,
Flowinsensitive interprocedural alias analysis in the presence of pointers, LCPC '94 : Proceedings of the 7th International Workshop on Languages and Compilers for Parallel Computing, pp.234-250, 1995. ,
Polaris : Improving the effectiveness of parallelizing compilers, In PROCEEDINGS OF THE SEVENTH WORKSHOP ON LANGUAGES AND COMPI- LERS FOR PARALLEL COMPUTING, pp.141-154, 1994. ,
A practical automatic polyhedral parallelizer and locality optimizer, PLDI '08 : Proceedings of the ACM SIGPLAN 2008 conference on Programming language design and implementation, 2008. ,
DOI : 10.1145/1375581.1375595
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.151.5126
Modular interprocedural pointer analysis using access paths : design, implementation, and evaluation, Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation , PLDI '00, pp.57-69, 2000. ,
DOI : 10.1145/358438.349311
Interprétation abstraite. Technique et science informatique, pp.155-164, 2000. ,
Array Region Analyses and Applications, 1996. ,
DOI : 10.1007/bf03356758
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.217.3352
Interprocedural may-alias analysis for pointers : beyond k-limiting ,
OpenMP: an industry standard API for shared-memory programming, IEEE Computational Science and Engineering, vol.5, issue.1, pp.46-55, 1998. ,
DOI : 10.1109/99.660313
Type-based alias analysis, Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation, PLDI '98, pp.106-117, 1998. ,
DOI : 10.1145/277652.277670
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.41.8486
Context-sensitive interprocedural points-to analysis in the presence of function pointers, PLDI '94 : Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation, pp.242-256, 1994. ,
A pratical interprocedural alias analysis for an optimizing/parallelizing c compiler, 1993. ,
Connection analysis : A practical interprocedural heap analysis for c, LCPC '95 : Proceedings of the 8th International Workshop on Languages and Compilers for Parallel Computing, pp.515-533, 1996. ,
Putting pointer analysis to work, Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '98, pp.121-133, 1998. ,
DOI : 10.1145/268946.268957
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.40.9725
Pratical Techniques for Interprocedural Heap Analysis, 1996. ,
Interprocedural pointer alias analysis, ACM Transactions on Programming Languages and Systems, vol.21, issue.4, pp.848-894, 1999. ,
DOI : 10.1145/325478.325519
Designing the McCAT compiler based on a family of structured intermediate representations, Proceedings of the 5th International Workshop on Languages and Compilers for Parallel Computing, number 757 in LNCS, pp.406-420, 1992. ,
DOI : 10.1007/3-540-57502-2_61
Analysis of large code bases :the compile-link-analyse model, 1999. ,
Ultra-fast aliasing analysis using cla :a million lines of c code in a second, pp.254-263, 2001. ,
Abstract description of pointer data structures: an approach for improving the analysis and optimization of imperative programs, ACM Letters on Programming Languages and Systems, vol.1, issue.3, pp.243-260, 1992. ,
DOI : 10.1145/151640.151644
Pointer analysis :haven't we solved this problem yet ? In PASTE'01, pp.54-61, 2001. ,
Which pointer analysis should i use ?, Proc. of the, pp.113-123, 2000. ,
Demand-driven pointer analysis, SIGPLAN Conference on Programming Language Design and Implementation, 2001. ,
DOI : 10.1145/381694.378802
Semantical interprocedural parallelization : an overview of the pips project, ICS '91 : Proceedings of the 5th international conference on Supercomputing, pp.244-251, 1991. ,
URL : https://hal.archives-ouvertes.fr/hal-00984684
Newgen : A language-independent program generator, 1989. ,
Performance evaluation of the cray x1 distributed shared-memory architecture, IEEE Micro, vol.25, pp.30-40, 2005. ,
Performance Evaluation of the Omni OpenMP Compiler, Proceedings of International Workshop on OpenMP : Experiences and Implementations (WOMPEI), pp.403-414, 1940. ,
DOI : 10.1007/3-540-39999-2_39
Field-sensitive value analysis of embedded c programs with union types and pointer arithmetics, 2007. ,
Scalable parallel programming with cuda. Queue, pp.40-53, 2008. ,
DOI : 10.1145/1365490.1365500
Efficient field-sensitive pointer analysis for c, ACM workshop on Program Analysis for Software Tools and Engineering (PASTE, pp.37-42, 2004. ,
DOI : 10.1145/996821.996835
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.125.2104
Survey of alias analysis ,
On the importance of points-to analysis and other memory disambiguation methods for c programs, Proceedings of the 2001 ACM SIGPLAN Conference on Programming Language Design and Implementation, pp.47-58, 2001. ,
Optimizing Compilers for Modern Architectures, 2001. ,
Points-to analysis, 2005. ,
Pointer analysis overview and flow-sensitive analysis, 2005. ,
Pointer analysis overview and flow-sensitive analysis, 2005. ,
Concrete Memory Models for Shape Analysis, Electronic Notes in Theoretical Computer Science, vol.267, issue.1, pp.139-150, 2010. ,
DOI : 10.1016/j.entcs.2010.09.012
URL : https://hal.archives-ouvertes.fr/hal-00786330
MPI-The Complete Reference, p.2, 1998. ,
Parametric shape analysis via 3-valued logic, ACM Trans. Program. Lang. Syst, pp.217-298, 2002. ,
Points-to analysis in almost linear time, Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '96, pp.32-41, 1996. ,
DOI : 10.1145/237721.237727
http :http ://suif ,
Instance-wise points-to analysis for loop-based dependence testing, Proceedings of the 16th international conference on Supercomputing , ICS '02, pp.262-273, 2002. ,
DOI : 10.1145/514191.514228
Efficient context-sensitive pointer analysis for c programs, pp.1-12, 1995. ,
Shape Analysis, International Conference on Compiler Construction, number 1781 in LNCS, pp.1-16, 2000. ,
DOI : 10.1007/3-540-46423-9_1
Analyseurs statiques et parallélisation ,