• DocumentCode
    1631703
  • Title

    On the impact of naming methods for heap-oriented pointers in C programs

  • Author

    Chen, Tong ; Lin, Jin ; Hsu, Wei-Chung ; Yew, Pen-Chung

  • Author_Institution
    Dept. of Comput. Sci., Minnesota Univ., Minneapolis, MN, USA
  • fYear
    2002
  • fDate
    6/24/1905 12:00:00 AM
  • Firstpage
    221
  • Lastpage
    226
  • Abstract
    Many applications written in C allocate memory blocks for their major data structures from the heap space at run time. The analysis of heap-oriented pointers in such programs is critical for compilers to generate high-performance code. However, most previous research on pointer analysis mostly focuses on pointers pointing to global or local variables. In this paper, we study points-to analysis of heap-oriented pointers using profiling information. An instrumentation tool and a set of library routines are developed to measure points-to sets of memory references at run time. Different naming methods for heap-oriented pointers are studied. We found that it is very important to adopt appropriate naming methods to recognize wrapper functions for memory allocation and memory management functions defined by users. Based on these naming methods, the approaches in pointer analysis, such as flow sensitivity and context sensitivity, are examined with the run-time tool. The program characteristics are observed at run time to evaluate what kind of compiler analysis is needed. Experiments are conducted on SPEC CPU2000 integer benchmarks. We found that flow sensitivity and context sensitivity have little impact on the analysis of heap-oriented pointers
  • Keywords
    C language; data structures; naming services; program compilers; software libraries; software performance evaluation; storage allocation; storage management; C programs; SPEC CPU2000 integer benchmarks; compilers; context sensitivity; data structures; flow sensitivity; global variables; heap-oriented pointer analysis; high-performance code generation; instrumentation tool; library routines; local variables; memory management; memory references; naming methods; points-to analysis; profiling information; program characteristics; run-time memory block allocation; wrapper functions; Computer science; Instruments; Memory management; Optimized production technology; Optimizing compilers; Program processors; Read only memory; Runtime; Shape; Testing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Architectures, Algorithms and Networks, 2002. I-SPAN '02. Proceedings. International Symposium on
  • Conference_Location
    Makati City, Metro Manila
  • ISSN
    1087-4089
  • Print_ISBN
    0-7695-1579-7
  • Type

    conf

  • DOI
    10.1109/ISPAN.2002.1004290
  • Filename
    1004290