Home | History | Annotate | Download | only in libpp
      1 /**
      2  * @file libpp/populate_for_spu.h
      3  * Fill up a profile_container from inverted profiles for
      4  * a Cell BE SPU profile
      5  *
      6  * @remark Copyright 2007 OProfile authors
      7  * @remark Read the file COPYING
      8  *
      9  * @author Maynard Johnson
     10  * (C) Copyright IBM Corporation 2007
     11  */
     12 
     13 #ifndef POPULATE_FOR_SPU_H
     14 #define POPULATE_FOR_SPU_H
     15 
     16 class profile_container;
     17 class inverted_profile;
     18 class string_filter;
     19 
     20 /*
     21  * When profiling SPUs on Cell Broadband Engine, all sample file
     22  * headers get a flag set indicating "spu_profile".  This function
     23  * checks the first sample file for this indicator.
     24  */
     25 bool is_spu_profile(inverted_profile const & ip);
     26 
     27 /*
     28  * This is a special-purpose function for CELL BE SPU profiling.
     29  * See populate_spu_profile_from_files prologue for more details.
     30  */
     31 void populate_for_spu_image(profile_container & samples,
     32 			    inverted_profile const & ip,
     33 			    string_filter const & symbol_filter,
     34 			    bool * has_debug_info);
     35 
     36 enum profile_type {
     37 	unknown_profile = -1,
     38 	normal_profile,
     39 	cell_spu_profile
     40 };
     41 
     42 #endif /* POPULATE_FOR_SPU_H */
     43